Whitepaper New Case Management Functionalities in Oracle BPM Suite 11.1.1.7
New Case Management Functionalities in Oracle BPM Suite 11.1.1.7 Autor: Danilo Schmiedel Have any questions about this topic? Contact us! Your contact person: Danilo Schmiedel, Solution Architect bei OPITZ CONSULTING E-Mail: danilo.schmiedel@opitz-consulting.com Blogs: http://inside-bpm-and-soa.blogspot.de http://thecattlecrew.wordpress.com Twitter: dschmied Content Introduction Why Case Management? How to Define a Case in Oracle BPM Suite? Introduction You introduced BPM in your company? All of your process automations are a huge success? Stop reading - this might be the wrong article for you. Your processes are unpredictable; complex; they keep on changing and they are difficult to model? The users of your software complain that they cannot make proper business decisions because they are forced to certain process steps? Your processes rely on worker knowledge and involve human participants? Good with Oracle BPM Suite 11.1.1.7 and its new case management functionalities we are now ready to address those requirements. Text and figures have been prepared with great care. OPITZ CONSULTING cannot, however, accept material or non-material liability for any remaining inaccuracies or any consequences arising from such inaccuracies. All rights to any described processes, showcases, implementation examples and source code are reserved for the exclusive use of OPITZ CONSULTING. Seite 2
Why Case Management? Business Process Management becomes more and more important. With BPM Suite processes can be modeled, implemented, simulated and executed in a multi-user environment. There are also a lot of different reports available to monitor processes during runtime. We see in our projects, that this kind of automation is especially valuable for processes which are based on routine work. Some examples are Hiring, Order-to-Cash, Order Management, Travel Request Management and so on. However - we also notice quite a high amount of processes, which are too complex and too flexible to model them in BPMN. We call it knowledgeintensive work. Of course if you have a lot of time you might be able to model almost everything but is it a benefit to have processes which are not readable anymore? How fast is your time-to-market? How easy is it to implement process changes? How can you support the job of the knowledge worker? Some typical domains with a high amount of knowledgeintensive work are Insurances, Banks, Healthcare, Civil Services and Government Agencies. Let me try to explain the need of case management with our RYLC example. RYLC stands for Rent your legacy car and it was introduced in a series of articles as an overall solution example. The main target of RYLC was to explain concepts like service categories, loose coupling, canonical data model, service security and much more (see http://it-republik.de/jaxenter/ soa-spezial-ausgaben/soa-spezial-000319.html for details). The graphic below shows the complete End-to-End RYLC process in BPMN notation from receiving the request, selection of the car, checkout of the vehicle, returning it, creation of the invoice and cash clearance. I highlighted the checkin-part of the process, which covers the return of the car. It is based on an asynchronous message exchange pattern - the process execution stops until the checkin is completed or canceled. In this stage several things can happen. The happy path of the process would be that everything goes well and the customer returns the car at the date that has been agreed during the reservation. The extension of the rental period can trigger other actions which are necessary to satisfy the customer. In worst-case the customer might have an accident or somebody steals the car. A lot of effort and time is necessary to bring all the mentioned varieties into the process. Examples like an accident will result in claim notifications and extended communication with the appropriate insurances. It is difficult to model each potential option. This is where Case Management comes into the game. It helps us to combine different milestones with the appropriate task actions, business rules, stakeholders, resulting events as well as data and documents (see the image below). During the car-checkin different milestones like In Rental, Accident (optional), Stolen (optional), Returned and Approved might occur. Each milestone consists of mandatory and optional task actions. Their execution order is defined by business rules. The task actions can be system driven (implemented as services) or user driven. Of course similar to BPMN some data and documents are exchanged in each step. Case Management is mainly controlled by the knowledge worker, which means that they affect the flow of the case. Therefore the definition of stakeholders and their permissions is another important aspect. Some example stakeholders in RYLC are the insurance holder, driver, car park assistant, front desk clerk and the rental manager. Based on the milestones and the task actions different events can occur that trigger new situations. Case management can support the knowledge worker with the right information (but the knowledge worker keeps the decision & process authority). Better and faster process decisions are the benefits of it. Image 1: BPMN Example - Rent your legacy car (RYLC) Image 2: Key aspects in Case Management Seite 3
To conclude: Case Management covers complex and unstructured knowledge-intensive scenarios where modeling is too expensive and time consuming. It is non-deterministic, which means that the case flow is dynamically determined at run-time. The case participants choose actions to meet goals. It can be used to enrich existing processes (like in the RYLC example above) or as separate and independent solutions. How to define a Case in Oracle BPM Suite? In Oracle BPM Suite 11.1.1.7 the Case component is introduced as a first class artifact with support for milestones, events, adhoc activities stakeholders and so on. Like BPMN, BPEL, Human Task, Rules, etc. a Case can be created by just dropping it on the composite level. After completing the wizard a case component, a business rule component and an interface (exposed service) is visible (as illustrated in the image below). Furthermore it is necessary to define and implement the case activities. I noticed two ways of creating them. Option 1 is to open the wizard under New > BPM Tier and select Custom Case Activity. Option 2 is to promote an existing component as a case activity. For the article I decided to go for option 2 so I promoted the Human Task Evaluate Claim Notification. A case activity does have its own definition a file with a *.caseactivity extension. You can find an example with some of the parameters available for customization on the bottom of the next screenshot. Image 3: Composite.xml with Case component For now a composite can have only one Case component. Double-clicking on the case directs you to the definition of the component. Here you can define the milestones, case outcomes, data & documents, stakeholders & permissions, user events and translations. The image below shows how milestones and case outcomes can be defined. Image 5: Definition of a Case Activity Additionally the business rule created along with the case component needs to be configured. It comes with a set of predefined functions (e.g. activateactivity, withdrawactivity, reachmilestone and revokemilestone), Facts and Bucketsets (e.g. TEventType, TMilestoneEvent, etc.). The definition of rules is necessary to handle all the different situations of the case. Typical examples are ACTIVITY_EVENTS which trigger new activities or milestones, USER_DEFINED_EVENTS which have been specified in the case definition file or MILESTONE_EVENTS which trigger the appropriate case activities (see the screenshot below). There are many different options and I hope that some documentation material is going to be published soon. Image 4: Definition of a Case Seite 4
About OPITZ CONSULTING Image 6: Definition of a Case Rule OPITZ CONSULTING is a leading project specialist for custom-build applications and individual Business Intelligence solutions in the German market. The company's ambition is to help organizations to be better than their competitors. To achieve this we analyse the individual completive edge the customer has, optimize business processes for process automation and IT-support, choose and designs appropriate system architectures, develops and implements solutions and guarantee a 24/7 support and application maintenance. To ensure the necessary skill and qualification we have established a training center for customers and the internal staff. During runtime you can take advantage of the monitoring capabilities from the Enterprise Manager as you might already know from BPMN or BPEL processes. How many case-instances have been started in which time frame? Which milestones have been reached? Did there a fault occur? Which rules and which activities have been activated? The screenshot below shows the instance information of Oracle s "EURent" Case Management example. Since 1990 over 600 customers have a long lasting and successful business relationship with us. Over 2/3 of the German stock index (DAX) companies rely on services from the 400+ OPITZ CONSULTING consultants. OPITZ CONSULTING maintains offices in Bad Homburg, Berlin, Essen, Gummersbach, Hamburg, Munich, Nuremberg as well as in Kraków and Warsaw (Poland). Follow us: youtube.com/opitzconsulting slideshare.net/opitzconsulting @OC_WIRE xing.com/net/opitzconsulting Image 7: Monitoring of Case instances in EM With Oracle BPM Suite the modeling, simulation, implementation and execution of business processes in a multi-user environment is straightforward. We know quite a few companies who are in the situation that processes are unpredictable, complex, difficult to model and versatile. Their software users complain that they cannot make proper business decisions because they are forced to certain process steps and their processes rely on worker knowledge and involve a lot of human participants. Think about the claim notification after a car accident - it is very difficult to model each potential option of it and a lot of effort and time is necessary to bring all varieties into the process. Think about the user interface it has to be very dynamic in order to make optimal business decisions. With the new Case Management functionalities BPM Suite confirms its outstanding position. This is the base to provide complete BPM solutions. I couldn t wait to play with the software and I am really happy to demonstrate the new product capabilities to our customers. Seite 5