IBM Business Process Manager Advanced V7.5 includes Business Space powered by WebSphere, which provides an integrated Web 2.0 user experience for business users across the IBM Business Process Management portfolio. Also included are the Human Task Management widgets, which business users and managers exploit to interact with business processes and human tasks in Business Space.
Process Portal is the out-of-the-box user interface for business users available with all editions of IBM Business Process Manager. Coming from the WebSphere Lombardi Edition heritage, it allows users to interact with business processes and Human Services authored in Process Designer. Process Portal uses Coaches to provide the web forms for users working on tasks. In addition, you can create and save searches with specific search conditions and share saved searches with all users. You can also change the look and feel of the user interface by changing Cascading Style Sheet (CSS) files and redeploying the portal.
Business Process Choreographer Explorer is the out-of-the-box user interface for administrators in IBM Business Process Manager Advanced. Coming from the WebSphere Process Server heritage, it allows process administrators to observe and repair BPEL processes and human tasks authored with Integration Designer. You can provide list views with customized filters, business data, and subsets of actions that can be shared with all users.
Introduced in WebSphere Process Server V6.1.2, Business Space is the role-based user interface provided by IBM Business Process Manager Advanced for interacting with processes and tasks. You can also use Business Space to work with other artifacts, such as rules, work baskets, business categories, alerts, and key performance indicators (KPIs). Note that Business Space is a component commonly used across a number of other products including IBM Business Monitor, IBM Enterprise Content Management, WebSphere Enterprise Service Bus and WebSphere Service Registry and Repository.
Business Space and the Human Task Management widgets allow you to start with a comprehensive "out-of-the-box" experience for all participants in human-centric BPM, then adapt the experience to user roles and user interactions without programming. If needed, you can develop custom widgets, thus reducing the development effort compared to developing a complete custom user interface. Optionally, Business Space empowers business users to assemble their own user interface from building blocks.
This article gives you an overview of Business Space and the Human Task Management widgets and outlines the concepts that enable business and IT to build customized user interfaces.
What is Business Space?
Business Space is a browser-based, Web 2.0 user interface component, based on widgets that are grouped into pages within business spaces. These widgets adhere to the open iWidget 2.1 specification, which is also supported by IBM Mashup Center 3.0 and WebSphere Portal 7.0. IBM Business Process Manager Advanced embeds the Business Space component, associated widgets and templates, into its installation and configuration. Customers who can benefit from the additional value of WebSphere Portal can choose instead to use the Human Task Management widgets described in this article in WebSphere Portal together with other widgets and portlets on pages.
Business users experience Business Space as a portal. They can access several business spaces for different business purposes, for example, order processing or travel requests. The pages within these spaces provide the necessary information and functionality for specific work patterns, for example, checking the status of an order, or approving a travel request.
Figure 1. Business Space welcome page
Business users and IT developers can compose, wire, and configure the widgets on the pages to easily provide an integrated user experience that is customized for the content, user interactions, and business environment. Developers can also build their own widgets and exploit them in Business Space. Widgets developed with IBM Integration Designer, Rational® Application Developer, WebSphere Portlet Factory and IBM Mashup Center can be installed and run in Business Space pages.
Business Space can be configured so that only selected users can create new business spaces, while all other users can view and edit spaces that have been shared with them. Business Process Manager V7.5 provides additional ways in which you can customize aspects of business spaces, including themes and branding, banner, layout, and page navigation. Authoring and managing themes is made easier by directly editing and managing the related documents and files on web shares based on Web-based Distributed Authoring and Versioning (WebDAV).
Human Task Management widgets
The Human Task Management widgets are a comprehensive set of widgets that cover the spectrum of user scenarios found in human-centric BPM. These widgets can be combined with others, such as monitoring widgets from IBM Business Monitor, to create business spaces where users can tap into and interact with related information easily.
In Figure 2, you see a space created from the Interact with Processes and Tasks template. The space consists of two pages Initiate and Work with Tasks and Check Status. The current page is composed of three widgets. In the Task Definitions widget you see tasks you can create. This includes tasks you assign directly to other people such as Inquiry, Review and To-do, and processes and services that you can initiate such as Create Order. The Tasks widget is configured so that you see tasks available or assigned to you and take appropriate actions. In the Task Information widget you view task details and fill out forms when creating and working on tasks.
Figure 2. Sample page of Interact with Processes and Tasks template
You can adapt the widgets to the business environment, as well as to different user roles, such as data entry users, business professionals, and people managers. The widgets can also be composed, wired, and customized to support specific scenarios and user interaction patterns. For example, work assignment styles, such as personal in-box, team list, delegation by team lead, and the get-next style where tasks are pushed to participants, are all supported by the widgets.
The Human Task Management widgets comprise task-related widgets, process-related widgets, and work basket and business category widgets.
Task-related widgets enable business users to work with and manage tasks and escalations. The following task-related widgets are available:
- Tasks and My Team's Tasks widgets: Use these widgets to manage tasks and assign them to people on your team. Both widgets provide the same capabilities. In addition, the default configuration settings for the My Team's Tasks widget enable team leads to get an overview of the tasks for each of their team members.
- Task Information widget: Use this widget to display information about tasks and complete the work that you need to do on your tasks.
- Task Definitions widget: Use this widget as the starting point for creating tasks and to drill-down to tasks associated with specific task definitions.
- Escalations widget: Use this widget to view escalations for a task and to assess the escalation status of tasks that you own or initiated, or to start a task escalation.
- Send widget: This widget is a temporary widget that creates a task that you can send to another person as a message.
- My Work Organizer: Use this widget as a personal to-do list to manage your work, and to create and track tasks for yourself and others.
Process-related widgets enable business users to work with and manage processes.
- Processes widget
Use this widget to work with your processes and drill-down to tasks associated with specific processes.
- Process Information widget
Use this widget to display information about a process or a process definition and show the structure or status of the human workflow.
- Process Definitions widget
Use this widget as the starting point for working on processes associated with specific process definitions and to drill-down to processes, task definitions, and tasks associated with specific process definitions.
Work baskets and business category widgets
Work baskets provide an alternate way of assigning work to people. Work is assigned to a work basket. A work basket defines for each role of a task, like potential owner, reader or administrator, which individuals or groups should be assigned. Tasks can be transferred or distributed from one work basket to another, which implicitly changes the people assigned to a task. Business categories provide a mechanism for classifying work. These widgets allow you to configure and manage work baskets and business categories.
BPM user interaction patterns
When you implement a business process management system (BPMS), such as IBM Business Process Manager, to build a business solution, you model the business processes that comprise the solution into executable processes and the tasks that participants work on.
In the same way, you can identify common user interactions that business users perform when participating in business processes and apply them to the design of the user interface.
Common user interactions
Common user interactions go beyond selecting a task from a to-do list and completing a task. A number of these user interactions are described here.
- Assigning work: Work can be assigned in different ways:
- A participant receives tasks assigned to him in his personal in-box and chooses one to work on.
- Multiple participants share a list of tasks to be worked on. One participant takes a task (claim, accept, assign to himself) to work on it.
- A participant completes a task and gets the next task assigned to him automatically ("get-next" style).
- Tasks can be assigned to work groups or participants automatically by the system based on rules, or delegated by a manager who selects and assigns the tasks from his in-box.
- Completing work: A participant works on a task, fills out the form with the required information, and eventually completes the task. Work can be interrupted, and the current input is stored.
- Handling situations: A situation might occur that prevents participants from completing tasks. Some of the common ways in which these situations can be handled are: use a backlog, transfer work, reprioritize work, delegation, and escalation.
- Initiating a process or service: A participant selects a process or service to start, enters the required data and submits the task to start the process or service. For example, an employee starts a travel reimbursement service or a call center agent is called by a customer and creates a new order.
- Checking status: Participants and managers need to check the status and progress of processes. For example, an employee checks to see why his travel expenses have not yet been reimbursed, or a project manager checks the progress of various projects.
- Performing an action on a process: A process may allow specific participants and managers to perform selected actions depending on the process state. For example, a call center agent gets a customer call and cancels the customer order before it is shipped to delivery.
- Assessing and assigning work and workload: Participants and managers assess available tasks and the workload of groups based on start and due date and priority, as well as business-specific data and KPIs. For example, a tax consultant chooses the next task based on due date and priority.
- Assigning and transferring tasks to people: Participants claim tasks (assign to themselves) and transfer claimed tasks to other participants or release them for others to pick. Managers assign tasks to their team members or transfer them from one team member to another.
- Notifying participants about work and status: Alerts and notifications inform participants and managers about situations through e-mail or other communication channels, so that they can take action.
Common social BPM patterns
Following are aspects of common social BPM patterns that participants can exploit while working on processes and tasks. These social aspects enable users to work effectively together while participating in processes.
- Sharing notes: Participants share and view notes attached to tasks and processes.
- Collaborating to complete work: Participants assign a to-do or make inquiries to other participants to complete the task at hand.
- Organizing work: Participants organize tasks and to-dos in to-do lists.
User interaction patterns supported by the Human Task Management widgets
The following table shows how the common BPM user interactions are supported by the Human Task Management widgets.
Table 1. Widgets supporting user interactions
|User interactions||Tasks||Task Information||Processes||Process Information||Task Definitions||Process Definitions||Escalations||Work Organizer|
|Get next task to work on (Get-next style)||■|
|Work on and complete task||■|
|Get next task from list||■■■|
|Initiate process or service||□||■||■|
|Check status of process||□||□||■||■||□||□|
|Perform action on process||■|
|Assess work and workload||■||□||□||□||□||□|
|Assign and transfer task||■■■||■|
|Create tasks for other users on the fly||■||□||□|
|Create and track subtasks to complete task||□||■||□|
|Organize own work||■|
|Handle cases dynamically||■|
■ = support ■■■ = support (also as bulk) □ = supplemental
Building user interfaces for Business Space
When you design the user interface for a set of users who participate in business processes, you identify the user interactions these people need to perform and how they perform them. You group related user interactions according to scenarios and design the user interface for these scenarios.
Using the Business Space templates
Several templates are provided for you to create spaces to manage processes and tasks. This gives you out-of-the-box user interfaces to participate in processes. At the same time, you can study the composition, wiring and configuration of the widgets and use this as a starting point for your own customized spaces.
These templates, listed below, support specific usage patterns for working with and managing tasks and processes.
- Interact with Processes and Tasks template: Use this template to create a space for people who use a list of tasks, such as an in-box, as the basis for their work. Users of this space can also create new processes and services, and find detailed status information for specific process instances.
- Work on Tasks Continuously template: Use this template when you need to create a space for users who continuously work on tasks from a task queue. When users complete tasks, the next available task in the queue is assigned to them automatically.
- Advanced Management of Tasks and Processes template: Use this template to create a space for business users and team leads who work on tasks, collaborate with other people, organize their own task lists, and need to check the status of processes and tasks.
- Configure Work Baskets and Business Categories template: Use this template to create a space for users who are responsible for the configuration and management of work baskets and business categories within the organization.
Building customized interfaces
When building your user interface with Business Space, you use widgets as reusable building blocks. Your development effort becomes primarily an effort of composition and customization. You mainly perform the following tasks:
- Identify widgets for groups of user interactions: The user interactions determine which widgets to use, how to combine them to provide the expected behavior, and how to configure them to provide the expected content, actions and visualization for the user role.
- Build a page for each scenario: You create pages for each user scenario of a user role. You choose the layout and then you add, wire, and configure the widgets.
- Build a space for each participating role: You create a space, build the pages, customize the look and feel of the interface, and then share it with the user groups that represent the participating role in your organisation.
Supporting additional user interactions
You may need to support user interactions in your user interface that are not directly supported by the Human Task Management widgets. In this case, you do not have to completely develop and use your own widgets. Rather you can add support for additional user interactions in one of the following ways:
- Using widget events: The widgets handle various events including events to filter processes and tasks, work on a task, and refresh content. The widgets publish various events to notify of actions requested by the user or performed by the widget, such as task transfer, or task completion. The handled and published widget events are documented so that you can wire widgets with each other, with other product widgets, and with your own widgets.
- Using configurable actions: You can configure the widgets (except for the Work Organizer widget) to disable built-in actions and to add custom actions that fit specific user interactions. When the user performs a custom action, the widget publishes an event that you can handle in another widget to provide the functionality. For example, you can add a "Show on map" action to the Tasks widget and wire it to the Web Site widget to show a map with the customer's address using a service such as Google™ Maps™.
Federating tasks and processes
The Human Task Management widgets were introduced with WebSphere Process Server V6.1.2 to support interaction with BPEL processes and human tasks. With IBM Business Process Manager, the widgets allow participants to interact with business processes and tasks developed with Process Designer (BPDs and Human Services) and Integration Designer (BPEL processes and human tasks).
In addition, the widgets allow a single, federated user experience for interacting with tasks and processes from both authoring environments and multiple clusters.
Table 2. User interactions supported with the different types of process and task services
|User interactions||Federated processes and tasks||BPD processes and Human Services||BPEL processes and human tasks|
|Get next task to work on (get-next style)||■||■||■|
|Work on and complete task||■||■||■|
|Get next task from list||■||■||■|
|Initiate process or service||■||■||■|
|Check status of process||■||■||■|
|Perform action on process||■||■||■|
|Assess work and workload||■||■||■|
|Assign and transfer task||□||■|
|Create tasks for other users on the fly||□||■|
|Create and track subtasks to complete task||□||■|
|Organize own work||■|
|Handle cases dynamically||□||■|
■ = support □ = support for federated BPEL processes and human tasks
This article gave you an overview of Business Space and the Human Task Management widgets and outlines the concepts that enable business and IT to build customized user interfaces.
Business Space and the Human Task Management widgets offer an out-of-the-box experience for process participants, covering common and social user interactions and seamlessly federating processes and tasks from multiple systems. At the same time, they form a UI infrastructure and building blocks to build composite user interfaces with less effort than developing complete custom user interfaces.
Future articles in this series will provide more details about using the Human Task Management widgets, including:
- Part 2, Interacting with BPD processes and Human Services: With the help of a sample process, this article will show you how to use the widgets for BPD processes and Human Services modeled in Process Designer.
- Part 3, Interacting with Federated Processes and Human Tasks: This article explains the concepts of federating tasks and processes. It covers aspects for administrating the federation, for participating in federated processes using the widgets, and for building business spaces in a federated environment.
- Part 4, Developing Custom Form Renderers: This article explains the advantages of using a custom form renderer with the Task Information widget for human tasks authored in Integration Designer. It describes the steps for implementing and deploying a custom renderer.
- Part 5, Interacting with BPEL Processes and Human Tasks: This article will show you how to use widgets for BPEL processes and human tasks modeled in Integration Designer. It covers modeling concepts and aspects you need to consider.
- Part 6, Using Human Task Management Widgets in WebSphere Portal: This article will explain the concepts and aspects when using the widgets in WebSphere Portal.
- Get complete product documentation for IBM
Business Process Manager in the IBM
Business Process Management Version 7.5 Information Center. The
following topics are of particular interest:
- Business Space overview
- Human Task Management widgets
- Templates for managing processes and tasks
- Building user interfaces using process and task widgets
- Customizing Business Space
- Integration Designer
- Widget Events: Get reference information about the events published and handled by widgets in Business Space.
- IBM Mashup Center
wiki: Get complete product documentation and community-written
articles for IBM Mashup Center and its components.
- Widget programming documentation: Get the widget programming guide and iWidget specification, which may be helpful for your custom widget scenarios.
- WebSphere Portal 7 product documentation
- Rational Application Developer Information Center: Get complete product documentation for Rational Application Developer.
- WebSphere Portlet Factory product documentation
- Widget programming documentation
- developerWorks BPM zone: Get the latest technical resources on IBM BPM solutions, including downloads, demos, articles, tutorials, events, webcasts, and more.
- IBM BPM Journal: Get the latest articles and columns on BPM solutions in this quarterly journal, also available in both Kindle and PDF versions.