Implementing Business Process Management or BPM initiatives is different then we’re used to. The go-live of a BPM application is the first release in many to follow, and since we’re dealing with a lot of stakeholders an agile way of working is crucial for success. Oracle supports the Build and the Run phase of Business Agility by means of the Unified Modeling concept with Oracle BPM. The Build phase is supported by Process Composer, JDeveloper and the BPM Workspace, and supports fully an agile way of working. Process Composer supports the Design part and has just been released in full operational model.
This blog gives an evaluation of Process Composer and how Business Analysts work with the product and hand over their work to development.
The Build Phase needs to be supported by an Agile approach. Iterations of Design workshop and Development work take place enabling the business owner and end-users to participate closely in the implementation process. Development supports the workshops by creating intermediate demonstration of the design material delivered so far. By directly showing the result we’re able to get the buy-in of the end-users. Oracle supports the complete BPM Closed loop. Looking at the Build phase of the project how can we ensure a smooth hand-over between the Business Analysts and the Developers. Oracle has delivered an integrated analysis, development and run-time environment.
All work outcomes during the Design, Build and Execute activities are stored in a centralized Meta Data Store. This enables smooth hand-over between the different phases. The Design work is done with Oracle Process Composer, the development work is done in JDeveloper (including BPM Studio) and the execution part is handled by the BPM Workspace.
Business Analysis with Process Composer
Oracle Process Composer is a lite weight design tool aimed at Business Analysts who don’t want the fuzz of a complete and rich technical development environment. The tool is exposed in a browser supported by Flash enabling easy accessibility. BPM Composer is not positioned as an Enterprise Architecture tool such as BPM Ares, Troux or Sparx Enterprise Architect. In these tools the context is Enterprise level, enabling level 1,2,3 process modeling, relationships between artifacts and impact analysis too name a few. The context of Process Composer is process level. The one reason to use Process Composer is the ease of exchanging ideas from workshops towards developers, in both directions. The version delivered in February 2012 (11G PS5, 22.214.171.124.6) supports all the work needed to support the Build phase.
Process Composer is designed with two viewpoints. First of all to support the Business Analysts with their design work, this one I agree fully with. Secondly support for process delivery and deployment towards a BPM run time environment. This last one I can’t agree, from a deployment perspective you don’t want direct deployment from within your tool without any checks or versioning. From a Developers perspective Process Composer is too lite weight, they can find all the rich support needed for development and deployment within JDeveloper. All those extra features needed for deployment with tabs like Implementation and Validation make the tool too techie savvy and therefore attracts less apatite for Business Analysts then it deserves. So as a future improvement I’d say, keep the tool simple and (only) aimed at the Business Analysts and remove all techie features.
Improvement points The version of Process Composer as of writing (PS6 126.96.36.199.6) has some annoying little features, which can be resolved via a work-around.
• Changing a project/process name
• Moving projects between directories
• Forgetting to save process documentation with Apply changes
Product features and way of working
What does the product contain? First of all, let’s have a look at the Process definition capability. Within Process Composer all process related material is collected in Projects. Projects are the container where related processes are combined.
The project view shows a Business Analyst all information around the project, containing the available processes, history, quick-start actions.
When the process is edited by one of the Business Analysts the project is locked.
The process view simply displays the flow of the process, containing swim lanes, activities and gateways. Process design (and execution) within Oracle tooling is based upon the BPMN20 standard, which is aimed at simplicity and understandability for all involved in this process, Business Analysts, end users, developers and testers.
Design for Execution The context of Process Composer is process level. This means you ‘Design for Execution’ within Process Composer. Business Analysts design the process in Process Composer, which after hand-over to Development, can directly be used to add implementation details, such as pages, integration details etc. Designing in Process Composer can be brought back to the bare essentials.
Role definition Start with identifying which roles, organization parts, are part of the process.
The process owner is special role and is in charge of the process execution. The process owner is able to intervene at any point in the process.
Design your process Designing the process within Process Composer is an easy job of dragging-and-dropping BPM components on the swim lanes. Drag and drop functionality from the right hand-side of the browser onto the process. The More button at the right hand lower part show more activities of the same type Document the process and the process component steps is also possible within Process Composer.
All the way in the lower right part is the restore button (the triangle button below the More button).
This will show the Documentation pane. The other two panes Implementation and Validation are not important for Business Analysts. Documentation can be created for End Users, Use Case Documentation, and Internal, for internal discussions. For every activity within the Process documentation can be created. Don’t forget to apply changes!!!! Due to a glitch in the PS5 (188.8.131.52.6) version you will not be warned when you leave the Documentation area without saving the changes.
Enabling Agile delivery with Draft mode During Agile delivery Design workshops are used to create the process models. In order to test the result with the business, the development team will work out a part of the process, such as pages, interfaces, connecting roles to actual users. Usually only a small part of the process will be worked out for the next workshop. The Draft mode is an excellent functionality to support creating only those parts that are needed. Every activity within the process has it’s properties.
The “Is Draft” mode functionality is only a tick box in the properties pane of a component, and is both available in Process Composer and in JDeveloper.
In the process view all activities ,which are put in Is Draft mode, are greyed-out, and more importantly are not used at run-time. This gives an excellent means to be able to model all process parts while at the same time not having to develop all process parts when a demo is needed to show certain parts of the process.
Handing over the work After finishing the design work after the workshop the work can be handed over to development. This involves releasing the lock, sharing the project with the development team and optionally making a snapshot as a versioned label.