jBPM4 Productization Requirements
modified by Administrator Administrator in jBPM - View the full document
Realized productization
Features- jPDL
- Control flow activities: start, state, decision, fork, join, end, task, sub-process, custom
- Automatic activities: java, script, hql, sql, mail
- Timers
- Asynchronous continuations
- JBoss integration
- Deployment as a service archive
- ProcessEngine in JNDI
QA- Integration test suite is formed by modules examples and the test-db
- Module examples contains tests that are explained in the user guide. Aka public test suite. The examples are also included as a project in the distribution.
- Module test-db contains tests that verify all aspects of functionality using public API. Aka private test suite.
- Both modules examples and test-db only make use of public API.
- CI is set up for the matrix {jdks}x{jboss's}x{databases}. See job jbpm4-jboss: http://hudson.qa.jboss.com/hudson/view/JBPM4/
Engine- A release is only done if the continuous integration runs OK.
- Clear, minimal session facade API
- XSD Schema for the jPDL language
- Automatic installer for installing jBPM into JBoss
- Parameters: jboss version, database, jdbc parameters, identity component
- Support is only given on these automated installations
Documentation- A userguide documents all the features and functionalities that are supported.
- Javadocs for the API
Designer- Each piece of supported functionality in the jPDL language must be supported by the designer
- Designer plugins included in JBossTools/JBDS
Migration- jBPM 3 should be able to run side by side with jBPM 4
Roadmap and prioritizationWork in progress
- Integration with JBoss IDM (Jeff Yu is working on this)
- Process conversion tool (Jim Ma is working on this)
- Controlled minimal tests for concurrent DB access: SOSE's (Joram Barrez)
- Designer support for older versions (Koen Aers)
- Support for multiple, configurable runtimes
Prioritization of new productization requirements
- Clustering
- Automated QA for console and/or documentation of manual test procedures
- Automated QA for designer and/or documentation of manual test procedures
- SEAM integration
- Pageflow
- Pageflow designer
- JMS support (and/or JCA inflow support) for asynchronous messaging
- ProcessInstance migration in case of new process definition deployment
- jBPM-ESB integration
- Locate services through the registry
- Invoke services without regard to their underlying implementation
- Support synchronous or asynchronous calls
- Make invocation layer pluggable so that third-party ESBs can be integrated as well
- Part of community download ?
- Putting script code in privileged blocks to allow security mgr to control authorization inside scripts. (Marc Schoenefeld)
Process- jBPM is consumed by EAP and SOA-P
- EAP and SOA-P can create issues in JBPM's bug tracker: https://jira.jboss.org/jira/browse/JBPM
- Platform people are responsible for creating platform issues and linking them to project issues.
- jBPM bug tracker will have releases defined corresponding the platform releases. E.g. SOA 4.3 CP02, EAP 5.0
- The jBPM team will discuss these issues with the platform team
- The jBPM team will assign product related issues into a platform release and the responsible team member
- Each jBPM community release can be identified as a product version.
- A product branch is created in the project
- Only productization issues (bug fixes) are committed to that branch
- The platforms consume that product branch in their build
- The jBPM team will commit issues before the platform code freeze date
- The platform teams are responsible for creating the platform tags that are based on the platform branches
|