IBM® WebSphere® Business Modeler (hereafter called Modeler) is the industry leading business modeling tool for modeling and simulation. Using Modeler, business analysts and other non-technical users can create business models to document their processes, then simulate the models to understand the dynamic behavior. Users can generate reports from the process model and the simulation results. They can export models to environments like WebSphere Integration Developer (Integration Developer) and WebSphere Process Server (Process Server), and IBM FileNet P8, and store them in systems such as Rational® ClearCase and Rational Asset Repository. Models can be published using WebSphere Business Modeler Publishing Server (Publishing Server), enabling authorized users to view the models with a Web browser. They can also be linked to requirements in Rational RequisitePro, and reused in Rational Software Architect. Modeler V6.2 adds a number of enhancements to these capabilities. This article describes those enhancements in detail.
Note: The screen shots and instructions in this article were are based on a beta version of Modeler V6.2. The generally available version could contain slight variations. We'll update this article as needed when the product is released.
Design to deploy
Modeler V6.2 provides a new capability that enables business users to directly deploy their business modeling and monitoring projects to Process Server and WebSphere Business Monitor (Monitor). When the projects are deployed, a new business space called Test Space is automatically created with widgets for execution, management, and monitoring of the process. The new design to deploy feature supports certain human workflow scenarios.
- Dynamic assembler components for WebSphere Business Services Fabric (Fabric) are not supported by design to deploy in V6.2.
- design to deploy is only supported in Process Server modeling mode.
Integration Developer users can assist in debugging design to deploy projects. This scenario, called time to value, can reduce the number of iterations between the business and IT, bringing the process to completion more rapidly. IT will still be involved with the process, but the amount of their time required and the amount of work they must perform can be reduced, empowering the business users, and increasing time to value.
After a model has been fully tested, you can also leverage design to deploy to test a monitor model using one of the pre-built monitoring templates. Custom monitoring models cannot be directly deployed in V6.2.
To use the design to deploy capability, WebSphere Process Server must be configured for design to deploy testing. A configuration file is created by an administrator, and then loaded into Modeler. Mappings are created for the user roles in the user security registry, then imported into Modeler, so that any design to deploy processes can properly assign work to users in the test environment. Using Modeler, you can then model a process, and test it on the server using the Test Space. You can then correct any errors that you encounter in the model. For problems that require technical debugging, you can do a one-click error data capture. The error data can be loaded into Integration Developer, enabling the IT folks to analyze, recreate, and correct the error.
To test your process in Modeler, complete the following steps:
- You must first export the roles used in your process, so they can be mapped to the actual groups from the directory used by Process Server. Right-click your process and select Export.
- From the Export menu, select WebSphere people data
directory and click Next, as shown in Figure 1.
Figure 1. Export roles
- Select a target directory, verify the project name and the export name, then click Finish. A new file is created with an extension of .RMF, containing information about the roles used in the process. Listing 1 shows an example of a simple export for a process using a role named Role1. The group name in this generated file is left blank. The administrator who imports this file into the test server must specify which group in the directory will map to each role.
Listing 1. Sample export file
<?xml version="1.0" encoding="ASCII"?> <logicalMapping:LogicalEntityRoot xmlns:logicalMapping="http:///www.ibm.com/logicalMapping" peopleDirectory="bpe/staff/samplevmmconfiguration"> <role name="Resources/Role1" uniqueName="" uid="BLM-bf977ead946742747e8b730f20f107e0" description="" groupName=""/> </logicalMapping:LogicalEntityRoot>
- Ensure that you're in Process Server mode, and that you don't have any warnings or errors that will prevent the process from being deployed.
- Right-click your process and select Test on server, as shown
in Figure 2.
Figure 2. Test on server
- The Add Server dialog appears, as shown in Figure 3. You need to select the XML file with information about the server in order to test. An administrator exports the file from the test server. The XML refers to the role mappings you exported in Step 3. Click Browse, and select the XML file.
- The server name is filled in automatically. Specify the account ID and
password you'll use to test, then click OK.
Figure 3. Add server dialog
The process is deployed to the test server, and the Test Space business space is opened. This space is configured with widgets required to test the process. You can launch a process instance, view and claim tasks, and view a monitor dashboard for the process, if you have enabled monitoring on the server. You can use multiple browser windows to act as each of the roles in the process, or the administrator can define a user ID to be able to act as all of the roles in the process to simplify testing.
You can see a visual trace of the executing process, as well as details from each task. If an error occurs that is too complex to fix, you can click a button to export problem details into a ZIP file, which you can send to Integration Developer for detailed analysis.
Another new scenario supported by design to deploy is called task automation. Suppose a business user creates a process that includes an automated task. The task definition can be exported to Integration Developer, where the technical user can implement and test the required task. The service can then be installed in the production server, and published to the WebSphere Service Registry and Repository (Service Registry). The business model can be updated to consume the new service. Finally, you can test the whole process, including the new service as well as human tasks.
After a process has been fully tested and is ready for production deployment, you could export it directly to Rational Asset Manager, so that IT can use their standard deployment techniques to put the new process into production.
Modeler works with other products in the IBM BPM suite stack. This section describes the integration enhancements in V6.2.
WebSphere Business Services Fabric
In Modeler V6.1.2, you could select Fabric as the implementation type for a task, using the technical attributes. In V6.2, this capability has been enhanced to provide deeper integration. Modeler can connect to the Fabric runtime to import composite business application flows and the business vocabulary. The composite business application becomes a process, with each business service represented as a an element of the process.
When creating a new modeling project, an empty folder is added into the workspace, providing a blank slate for you to begin working with. Rather than having to start from an empty project, Modeler V6.2 provides support for industry content, giving you a head start on your modeling project.
When you create a new KPI, you can select whether to use one that is predefined, custom, or from KPI library. You can select a category, or expand the folder to select a subcategory. A list of KPIs available in the selected category is displayed on the right, as shown in Figure 4. This enables you to easily create industry-specific KPIs without having to create any complex logic.
Figure 4. KPI library
Support is also provided for the Fabric industry content packs, including banking payments, healthcare payer, insurance property and casualty, and telecommunications operations packs.
Rational Requisite Pro
Modeler can work with Rational Requisite Pro (Requisite Pro) for managing requirements. Existing requirements in Requisite Pro can be linked to tasks in Modeler, new requirements can be created in Requisite Pro based on existing tasks, and new tasks can be created based on existing requirements. Modeler V6.2 enhances this capability by improving performance when using a wide area network.
Modeler includes Lotus Forms, enabling business users to create input forms for human tasks. Forms are exported to Integration Developer, along with the process. Modeler V6.2 enhances these capabilities by enabling synchronization of the forms when changes occur. For example, you can modify the data for the business item used as the input and output, then synchronize with the form. This means that you can begin developing the form even before the data requirements are finalized.
Previous versions of Modeler enabled users to search for services in Service Registry, then import the service definitions into their workspace. In V6.2, you can now also import the business service classification system from Service Registry into Modeler. You can then use these classifications to qualify services in the business model at points of invocation. Figure 5 shows the new Import menu options, including WebSphere Service Registry and Repository classification system.
Figure 5. Import menu
When opening a new workspace, you'll see that the wizard for creating a new modeling project has changed. Along with selecting the project and process name, there is a new option to select the goal of the modeling project: either documentation or automation, as shown in Figure 6. When you select Automate a process, you'll see a menu from which you can select the target runtime. The mode is automatically switched to match the selected runtime target.
Figure 6. Start process modeling
When you create a new modeling project by right-clicking in the project tree and selecting New-Business Modeling Project, a new option in the wizard enables you to select a service to associate with your new modeling project, as shown in Figure 7.
Figure 7. Create a new business modeling project
As with previous versions of Modeler, V6.2 has an automatic layout function. Along with this capability, there's a new option on the context menu for a process called Compact Diagram. This option performs an automatic layout, as well as reducing the diagram size to be as small as possible. If you have a process with three steps for example, it would only take up a small amount of space in the initial diagram area. You can reduce the size by right-clicking in the diagram area and selecting Compact Diagram. Figure 8 shows the results, with the diagram reduced to the minimum size.
Figure 8. Compact diagram
The attributes for a process also now include the ability to associate a form with the process. You must define inputs and outputs before you can associate a form, as shown in Figure 9. The technical attributes now include checkboxes to indicate whether the process is long-running, and whether it runs as a child process.
Figure 9. Process attributes
A new Attributes tab enables you to customize the view, as shown in Figure 10. You can use this tab to indicate which tabs to show. If you don't use classifiers for example, you can uncheck the box, removing that tab from view.
Figure 10. Custom view tab
The menu bar has changed in V6.2, eliminating needless entries for Run and Data, while adding in a new menu for View, as shown in Figure 11.
Figure 11. Menu bar updates
The palette has changed in V6.2 to improve ease of use. As Figure 12 shows, collapsed folders are located at the top, rather than the bottom of the palette area. The icons for going into connection mode and selection mode are on a separate line now, making them easier to see. There is a new rectangle item on the palette that you can use to draw a rectangle in the process diagram to show a logical grouping of activities. As Figure 12 also shows, connections between tasks now use a rounded corner.
Figure 12. Updated palette
The menu bar at the top of the process editor has the following new and updated options:
- Undo and redo
- Zoom and center
- Zoom percentage
- Resize diagram
- Autolayout left to right
- Switch to swimlane layout
- Color by
- Select color
- Diagram settings
The Diagram Settings function in the menu bar of the process editor enables you to have greater control over the look and feel of the diagram. Under the Diagram Options of the Diagram Settings there is a new option to include a color legend, as shown in Figure 13.
Figure 13. Diagram Options
When the color legend is selected, a box is placed in the diagram to show the meaning of the colors used in the diagram, as shown in Figure 14.
Figure 14. Color legend
The page size for the process can be set from the Page option in the diagram properties. As Figure 15 shows, the page boundaries are indicated in the outline view and on the process diagram, enabling you to position the elements of your process so that they don't fall on page boundaries.
Figure 15. Outline view with page boundaries
When a task falls on a page break, it can be now be automatically moved. When you right-click on a page break, a new menu item provides an option to move nodes off of the page breaks, as shown in Figure 16. This eliminates the need to move each item manually.
Figure 16. Move nodes off page breaks
In the Diagram Settings, you can select an option for the page settings. Poster format is the classic diagram format used by previous versions of Modeler. You might use this format if you're going to print your report to a plotter. Report format is new to V6.2. You can use this format for printing to multiple small pages. Each page is labeled at the bottom, showing the current page number, such as "Page 12 of 15". An report style option enables you to split connections across page breaks, as shown in Figure 17.
Figure 17. Page settings
In previous versions of Modeler, you could drill into a container activity such as a loop or local process. If you clicked + to expand a while loop, the editor showed just the contents of the while loop. You needed to navigate up one level to see the process again. In V6.2, a new feature enables you to expand a container activity, while still viewing the main process. As Figure 18 shows, you can see elements from the main process, along with the expanded local process.
Figure 18. Local process expanded
You can right-click the local process and select Open in new page to open the local process in its own editor page, similar to previous versions of Modeler. Some editing options such as autolayout are not available when viewing the expanded container activity; you must open the activity in its own page to have full access. However, you can perform basic editing, such as adding new activities and creating connections.
When modeling a process, you sometimes discover that one or more activities should belong inside of a loop or a local process. In previous versions of Modeler, you had to cut and paste to move tasks into a loop. V6.2 offers a new feature to automatically perform these steps for you. To move a set of tasks into a while loop, do the following:
- Select one or more activities in your process.
- Right-click one of the selected activities, and select Move into => While Loop.
- The new while loop appears in your diagram with its name selected. Enter a new name or click Enter to keep the default.
- Click + to expand. The contents of the new while loop are expanded for view. As Figure 19 shows, connections between tasks are maintained when they are moved into the loop.
Figure 19. While loop
Modeling for export to WS-BPEL
Process Server V6.1.2 introduced a new feature called cyclic flows, in which the connections between tasks could flow backwards in the process. These flows are now called generalized flows in V6.2. A new feature in Modeler enables you to model these generalized flows. In previous versions of Modeler, processes with backwards flowing links were marked as errors when attempting to export to Integration Developer. In V6.2, a generalized flow is generated.
In previous versions of Modeler, a task could generate either a participating or an inline human task for Process Server. A new enhancement in V6.2 enables you generate an originating task as well, so that the human task interface can be used to start a new process instance. Originating tasks can be associated with forms, so that a Lotus Form can be used to start the process, as shown in Figure 20.
Figure 20. Associating a form with a process
V6.2 enables greater control over the generated WSDL for a task or for the overall process. You can now select a request/response operation or one-way operation in the technical attributes for a task. You can also create a second output for a task and use the output logic tab to mark it as an exceptional output rather than a normal output criteria, as Figure 21 shows. This results in a fault message being added into the generated WSDL, as well as a fault handler for the WS-BPEL process when exported to Integration Developer.
Figure 21. Marking an output as an exception
Two consecutive tasks in a business model may use different business items as the output and input. In previous versions of Modeler, you could add a map task between them. However, when exporting to Integration Developer, the map was transformed into an empty Java® component, which you needed to implement. Modeler V6.2 now supports data maps, enabling you to define the mapping from one business item to another.
Suppose that Step 1 uses Business Item1, while Step 2 uses Business Item2. To create a map between them, you would do the following:
- Drag and drop a Map from the Data folder of the palette into the diagram, keeping the default name Map.
- Connect Step 1 to the in put of Map, and the output of Map to Step 2.
- Select Map, then select the Mapping tab in the attributes.
- Click Open Map Editor. The map editor appears. You'll see that it looks similar to the mapping editor in Integration Developer.
- Draw connections from data fields of the input business item on the left over to the output business item on the right. A default function of Move is selected.
- If required, use the arrow icon on the function to select something other than the default. Figure 22 shows two fields using the Concat function to join into one single field.
- Save and close the map.
Figure 22. Map
If you want to remove the mapping after you have created it, you can click the Remove Transforms button on the Mapping tab.
- The definition of KPIs has been enhanced to enable you to create KPIs based on an expression involving other KPIs. The layout has been improved and simplified, eliminating the need for the Advanced Details tab.
- All reporting is performed by right-clicking a process, and selecting Reports. Report generation is handled from a single interface, as shown in Figure 23.
Figure 23. Generating a report
WebSphere Business Modeler Publishing Server
Publishing Server V6.2 includes several enhancements. New features of Modeler are now reflected in the published models, improving synchronization. Models can now be published using the Business Process Model Notation (BPMN) diagram style, enabling business users to determine which diagram style to use, as shown in Figure 24.
Figure 24. Published model viewed in business space
Previous versions of Publishing Server required the use of an Adobe® SVG viewer. V6.2 uses the Adobe Flash viewer instead.
Publishing Server includes several Web 2.0 widgets for use in Business Space powered by WebSphere. These widgets enable end users to create their own personalized Web applications without needing involvement from IT. These widgets enable users to view draft and released projects, as well as managing users, groups, and projects. In V6.2, these widgets have been enhanced to provide an integrated experience for users of WebSphere Dynamic Process Edition.
V6.2 has been enhanced to support the latest platforms. Oracle® 10g and 11g are now supported databases. Linux® on System z is now supported, with SLES 10.0 and RHEL 5.0. Firefox® 2 is now a supported Web browser.
In this article you learned what's new with Modeler V6.2, including new modeling features, enhanced integration with other products in the IBM stack, and improvements to the Publishing Server.
- developerWorks BPM zone: Get the latest technical resources for IBM BPM solutions, including tutorials, technical articles, downloads, webcasts, and more.
- WebSphere Business Modeler V6.2 announcement: Get information on Modeler V6.2 in the product announcement letter.
- WebSphere Business Modeler: Get product information, including features and benefits, demos, and more.