JBoss Community

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

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 prioritization

Work 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

Comment by going to Community

Create a new document in jBPM at Community