Mauricio Salatino [
https://community.jboss.org/people/salaboy21] modified the document:
"Human Task Module RoadMap"
To view the document, visit:
https://community.jboss.org/docs/DOC-18617
--------------------------------------------------------------
I've being working with the Human Task module since I've started with my first
steps in the jBPM community more than 3 years ago. Now it's time to take this
component to the next level.
This wiki page describes the features and improvements that I will be tackling down on the
next few months. If you have feedaback about this roadmap please leave a comment here or
contact me.
Most of the changes and new features comes from people that is using jBPM or Drools and
the Human Task module to handle Human Interactions, so feel free to drop a your
suggestions or features that you would like to see in the short term.
I've divided the work into two different sides:
* External Improvements :* Starting from the Local Task Service I will be focused in the
following topics*
https://community.jboss.org/docs/DOC-18641 API improvements :Well
defined interfaces and factories to interact with the human task functionality. Refactor
towards CDI/WELD I will be adding here the proposed changes.
* Documentation & Examples: Documentation about the exposed APIs and about the
semantic of each method.
**
https://community.jboss.org/docs/DOC-18719 Transport improvements (probably using
switchyard/apache camel/quartz) and integration with different environments (Application
Server, Servlet Containers)
* Internal Refactorings*
https://community.jboss.org/docs/DOC-18641 Review Task, TaskData
and I18N structures and queries
* Admin Operations and Queries
* Task Events and Queries
* Refactoring for callbacks mechanisms (Task Parent)
* Task Definition Deployment ( (deploy + new instance) instead of add)
* Lifecycle hooks
* Sub Tasks mechanisms
Notice that the External Changes will happen gradually and in parallel with the internal
reviews.
*
#Review_Task_TaskData_and_I18N_structures_and_queries Review Task, TaskData and I18N
structures and queries
*
#Admin_Operations_and_Queries_Improvements Admin Operations and Queries Improvements
*
#Task_Events_and_Queries Task Events and Queries
*
#Callbacks_Mechanisms_Review Callbacks Mechanisms Review
*
#Task_Definition_Deployment_and_Instantiation_mechanisms Task Definition Deployment and
Instantiation mechanisms
*
#LifeCycle_Hooks LifeCycle Hooks
*
#Sub_Tasks_and_Ad_Hoc_Sub_Tasks_Creation Sub Tasks and Ad Hoc Sub Tasks Creation
I've added my personal priority, but feel free to leave a comment if you have another
topics or if you feel that one of these bullets needs to be prioritized.
(10 is Top Priority and 1 Low)
h1. Review Task, TaskData and I18N structures and queries
A deep process of documentation and review of the core data structures that are being used
by the module will be done. The main focus
of this revision is to improve these structures to be easily accessed and work in the best
way possible. The queries associated to these entities
will be reviewed, extended and documented as necessary. Migration scripts should be
provided for migrating the old structures to the new ones in case that new structures
modifies core fields.
A detailed documentation about these structures and the generated tables should be
provided by this revision.
A categorization about the provided queries should also be included to identify missing
bits.
A set of mock task structures and tests for the queries should be provided to guarrantee
the expected results.
Update: Based on revisions to the WS-HT specification and the current structures, I've
started to belive that including the concept of
TaskDefinition will help us to create a simplier API, a simple deployment and
instantiation mechanism and the relationship between the
different pieces of information that are kept.
This will help us to create simple queries on TaskInstances and more straight forward
mechanisms.
All the Presentation, Assignment and delegation related fields can be extracted from the
task itself and query only when an operation is executed.
For rendering the only information that matters is the one related with each particular
task instance. We can avoid the need of querying for all the
other bits of information.
Update 2:
https://community.jboss.org/wiki/HumanTaskAPIAndDataStructuresProposal
(
https://community.jboss.org/docs/DOC-18641)
Salaboy Priority: 9
h1. Admin Operations and Queries Improvements
All the administrative operations will be centralized in one place. Removing, archiving
and querying finished tasks, and all the associated data.
These operations will include:
* Archive Finished Tasks
* Delete Finished Tasks
* Get all the finished tasks by Process instance
* Get all the finished tasks by Process Definition
* Etc.
Salaboy Priority: 7
h1. Task Events and Queries
Provide a mechanisms to record all the events derived by the Task interactions.
The WS-HT Specification defines 30 events that will be emited by the Human Task component
depending on the different interactions against a human task instance.
A mechanism to record and query these events will be implemented.
Salaboy Priority: 7
h1. Callbacks Mechanisms Review
The main focus of this review is to extend and abstract the current methods that are being
used for registering callabacks from third party components that wants to
keep track of the tasks' lifecycle.
Having different strategies for setting up callbacks will decouple the responsability for
this module to decide how to contact the interested components. Providing
an interface to implement these callbacks in an application dependant way will allow us to
describe best practices depending on the third party application requirements.
Salaboy Priority: 6
Topic included here also:
https://community.jboss.org/wiki/HumanTaskAPIAndDataStructuresProposal
(
https://community.jboss.org/docs/DOC-18641)
h1. Task Definition Deployment and Instantiation mechanisms
The WS-HT specification defines to phases to Deploy a task definition and then to create
an instance for a specific task definition.
This feature will allow us to have global tasks definitions that can be instantiated
multiple times once we get a definition deployed. This mechanism
will give us a fine grained control about who creates a task and how the interactions are
done.
Salaboy Priority: 4
Topic included here also:
https://community.jboss.org/wiki/HumanTaskAPIAndDataStructuresProposal
(
https://community.jboss.org/docs/DOC-18641)
h1. LifeCycle Hooks
A flexible mechanism to define and plug your own task lifecycles will be provided,
increasing the flexibility of the Human Task module to fit more simpler and more complex
scenarios.
Salaboy Priority: 4
h1. Sub Tasks and Ad Hoc Sub Tasks Creation
Having a good and flexible mechanisms for creating sub tasks is a very important feature
to have and to show. It will allows us to have new tasks defined on the fly depending on
a parent User Task defined in our business processes.
Salaboy Priority: 6
--------------------------------------------------------------
Comment by going to Community
[
https://community.jboss.org/docs/DOC-18617]
Create a new document in jBPM at Community
[
https://community.jboss.org/choose-container!input.jspa?contentType=102&a...]