Вы находитесь на странице: 1из 64

Ultimus

Profit from the Process

Ultimus Version 6.0


Product Guide
October 2003

15200 Weston Parkway, Suite 106


Cary, NC 27513
Phone: (919) 678-0900
Fax: (919) 678-0901
E-Mail: info@ultimus.com
WWW: http://www.ultimus.com

The Information contained in this document is accurate as of October 2003.


Because of the speed at which technology is advancing, the information recorded
herein is dated and may have changed since this document was authored. All
specifications are subject to change without notice.

All the contents of this document are protected by Copyright Laws and
International Trade Agreements. Copyright 2001-2003 Ultimus, Inc. All rights
reserved
Introduction......................................................................................................................... 4
Typical Uses.................................................................................................................... 6
The Ultimus BPM Server.................................................................................................... 8
Providing an Open, Scalable Architecture for Business Process Management.............. 8
Enterprise Scalability through Clustering..................................................................... 12
Fail-Over Redundancy .................................................................................................. 15
Extensibility Options .................................................................................................... 16
Ultimus Process Designer ................................................................................................. 18
The Ultimus BPM Studio.................................................................................................. 20
Integrated Development Environment (IDE) for collaborative design, modeling,
automation, documentation and deployment of mission-critical business processes ... 20
The Environment .......................................................................................................... 21
Ultimus Flobots and FloStations....................................................................................... 40
Use Third-Party Applications As Workflow Robots .................................................... 40
The Ultimus Client............................................................................................................ 43
Providing process participants with a complete view of their business process
responsibilities. ............................................................................................................. 43
The Ultimus Org Chart ..................................................................................................... 49
Manage Users, Roles, and Responsibilities .................................................................. 49
The Ultimus Administrator ............................................................................................... 52
Integrated Process Management and Administration ................................................... 52
Managing Installed Processes ................................................................................... 52
Graphical Process Monitoring .................................................................................. 53
Workload View and Reassigning Tasks ................................................................... 53
Query Filters ............................................................................................................. 53
Exclusion Days ......................................................................................................... 54
Abort or Delete Incidents.......................................................................................... 54
Ultimus Logs............................................................................................................. 54
Ultimus Reports ................................................................................................................ 56
A comprehensive Web-based reports generator for managing the efficiency of
automated processes...................................................................................................... 56
Ultimus Reports Wizard ........................................................................................... 57
Reports Access Rights .............................................................................................. 58
Security ............................................................................................................................. 59
Collaborative Design Security .................................................................................. 59
Client Access via Network Domain Security ........................................................... 59
Unified Login............................................................................................................ 60
Access Rights............................................................................................................ 60
Secure Socket Layer ................................................................................................. 60
Ownership ................................................................................................................. 60
Controlled Participation ............................................................................................ 60
Database Access Security ......................................................................................... 61
Client Authentication and Non-Repudiation ............................................................ 61
System Requirements and Compatibility.......................................................................... 63
Windows Compatibility ................................................................................................ 63

2
The Ultimus BPM Server.......................................................................................... 63
The Ultimus BPM Studio server............................................................................... 63
The Ultimus Organization Chart............................................................................... 63
The Ultimus ActiveX Client, BPM Studio client, Administrator, Org Chart and
Reports ...................................................................................................................... 63
The Ultimus Thin Client ........................................................................................... 64
FloStation.................................................................................................................. 64
Database.................................................................................................................... 64
Web Server................................................................................................................ 64
Directory Service ...................................................................................................... 64
Flobot ........................................................................................................................ 64
E-Mail ....................................................................................................................... 64

3
Introduction
The Ultimus BPM Suite is a complete business process management system that
is used to improve organizational productivity and responsiveness, reduce costs,
and accelerate cycle times. Now in its sixth generation, it is the most feature rich
product on the market, with enhancements driven from real experience gained
from working with more than 1000 customers on thousands of processes.

It provides a collaborative, programming-free process modeling & development


environment, flexible integration and workflow capabilities, powerful
management tools, and easy to use Web interfaces for process participants,
delivering the lowest cost of ownership available in the industry.

The Ultimus BPM Suite allows organizations to model, automate, manage and
optimize their business processes using a collection of tightly integrated tools:

i. Ultimus BPM Server: is a scaleable, enterprise BPM engine that


proactively orchestrates and monitors the execution of business
processes.
ii. Ultimus Process Designer: enables business processes owners and
analysts to design, model, document and optimize business processes
without any IT involvement.
iii. Ultimus BPM Studio: provides a collaborative design environment for
teams of IT designers to convert business processes into deployable
solutions integrated with databases, electronic forms, business rules,
other processes and other systems.

4
iv. Ultimus Flobots: are workflow robots that enable third-part desktop
and enterprise applications to perform specific tasks in a business
process without human intervention.
v. Ultimus Client/Thin Client: provides flexible and configurable UI to
enable end users with different skill levels to participate in business
processes and mange their workload, and the workloads of their
subordinates. The clients provide access to forms to capture and
display business information and decisions with fidelity. Form choices
include Thin Forms, ASP .NET forms, Adobe PDF Forms, and
Microsoft InfoPath forms.
vi. Ultimus Organization Chart: provides a graphical representation of
the companys human resources so that the business process is aware
of all of the people, their job functions, reporting relationships and
group memberships. This knowledge is used for intelligent routing of
tasks during the course of a business process.
vii. Ultimus Administrator: provides the tools for the administration of
business processes and handling exceptions and special situations.
viii. Ultimus Reports: captures a variety of metrics from live processes
using customized reports that enable process owners to manage
resources and optimize business process.
ix. Ultimus Enterprise Integration Kit (EIK): provides developer tools
and documentation to create advanced integration with back office and
enterprise applications using modern technologies such as Web
Services and .NET objects.

With the Ultimus BPM Suite you can:


! Become a Process Enterprise, gaining control over your business
processes, to save money and time
! Use Ultimus BPM Studio, the collaborative process modeling and
development environment, to automate even the most complex
processes faster and easier than any other product on the market
! Empower your users to participate in processes from within Portals,
Microsoft Outlook, or their browserbasically any environment they
want.
! Handle the most complex process execution and routing logic quickly
and easilywithout extensive programming or scripting
! Leverage Web Services and .NET to integrate with virtually anything
! Monitor and analyze process execution in real-time

5
Typical Uses

Ultimus is used in organizations in every industry across many functional areas.


The following list includes some of the more common uses that provide our
customers with significant improvements in organizational efficiency and
effectiveness.

Functional Area Processes


Financial Invoice Processing
Loan Processing
Claims Processing
Forecasting
Purchase Requisitions
Budgeting
Capital Appropriation Requests
Manufacturing Engineering Change Requests
Change Order Management
Parts Management
Return Authorization
Quality Control
Internal/Administrative Compliance (Sarbanes/Oxley)
Help Desk
Expense Reports
Surveys
Document Routing and Approval
Human Resources Personnel Actions
Performance Reviews
Leave Requests
Travel Requests
New Hire Processes
Time Sheets
Marketing and Sales New Account Setup
Lead Management
Proposal Generation
Order Processing
Customer Care
Custom Quote Requests
Product Management New Product Introduction
Product Enhancement Requests
New Product Ideas
Defect Reporting

6
Having been used to automate and manage thousands of processes, the Ultimus
BPM Suite can be used for any and every business process in your organization.
The remainder of this document provides additional details on the various aspects
of the suite.

7
The Ultimus BPM Server
Providing an Open, Scalable Architecture for Business Process
Management
The Ultimus BPM Suite uses a scalable, open, and reliable architecture necessary
for business process management deployments that could involve thousands of
users. The architecture is based upon a Microsoft .NET foundation and leverages
industry-standard and powerful enterprise computing technologies, including Web
Services and XML. At the center of the product architecture is the Ultimus BPM
Server.

The Ultimus BPM Server is a powerful process execution engine that monitors
and controls business processes. It is responsible for the orchestration of events
within and across multiple business processes, and also manages integration with
existing enterprise systems for manipulation of process-related data. Human
interaction with the BPM Server is supported through a robust client interface,
which is leveraged by the Ultimus Client modules, and back-end integration is
supported through open technologies such as XML, Web Services and the
Ultimus Flobots.

The BPM Server consists of scalable components based on the Microsoft .NET
architecture and enterprise databases to provide transactional integrity, security,
scalability, redundancy and dynamic load distribution. Ultimus also supports
component load balancing, fail-over redundancy and network load balancing for
enterprise-level scalability.

Since the Ultimus BPM Server is .NET based and leverages open technologies
such as XML and Web Services, it has the ability to act as an underlying BPM
platform for multiple third-party enterprise applications. These qualities and its
database connectivity to SQL or Oracle enterprise databases ensure that it can
meet the demands of your organization for mission-critical workflow automation,
now and in the future.

The Ultimus BPM Suite leverages open industry standards, such as Microsoft
.NET, XML Schema, Web Services (WSDL, SOAP), MAPI, SMTP, LDAP and
ADSI. All server components are individual components that are modular and
scalable. Ultimus also provides extensive APIs to tailor business processes to
meet your unique requirements and is a true enterprise business process platform.
It uses SQL Server or Oracle enterprise databases for scalability. Ultimus offers
numerous open .NET and Web Services-based interfaces and an Enterprise
Integration Kit (EIK) for flexibility and ease of integration.

8
Figure 1: Architecture - Ultimus v6.0s open and scalable architecture
provides the flexibility and performance to meet your business needs.

The Ultimus BPM Server consists of the following modules:

The Process Orchestration Engine: This component is tightly integrated


with the Microsoft .NET architecture. The Process Orchestration Engine is
responsible for managing the execution of process components,
transaction processing and ensuring the integrity of these transactions. The
Process Orchestration Engine is also responsible for orchestrating the
interaction of different business processes, providing database
connections, allocating resources, thread-safety and un-allocating
resources and database connections at the conclusion of a transaction.
The Ultimus Integration Engine: This component is responsible for
managing connectivity to enterprise systems through support for open
standards such as XML, Web Services, SMTP, MAPI and .NET. It is
responsible for working hand-in-hand with the Process Orchestration
Engine. The Integration Engine manages the execution of Ultimus Flobots
that run on the BPM Server and Ultimus FloStations.
9
It also coordinates the automatic delivery of notifications via e-mail. The
BPM Server uses E-mail to proactively notify users of new or late tasks.
The URL of the BPM website is included in the message so that users can
quickly go to the site. Ultimus BPM Studio allows process designers to
customize the notification messages for every business process. The
customized messages may include process variables to notify the recipient
about important information relating to the incident. Custom messages can
be composed for late notifications, new tasks and other common
messages. For example, Ultimus features Late Task Escalation through
two levels of late notifications. Simple check boxes allow the designer to
select from notifications to the user or their supervisor after the
completion time expires and again after the extension time expires for
escalation. Further custom escalation can be added using event triggered
email Flobots.
The Ultimus BPM Server Database: This contains all the information
needed by Ultimus to control business process execution. Ultimus is built
on top of a database-driven architecture where all state information around
the execution of business processes is securely persisted to the database
engine, ensuring that transactional integrity of information is always
maintained. In essence, the database stores definition of all business
processes, the current status of all in-process workflow incidents, and the
tasks assigned to each individual client user. The Ultimus process
components use this information to decide what actions to take at the
conclusion of each step in the process.
The External Database: This may be any existing or new database that
contains information that belongs to the user. Ultimus is not concerned
about the structure or contents of this database. However, Ultimus
facilitates the use of these databases in business processes in Forms, in
fields defined as Databound Variables or via the Ultimus Database Flobot.
This feature allows processes to either use information saved in enterprise
databases, or collect and massage information that is then written to these
databases.

The other modules in the Ultimus BPM Suite interact with the Ultimus BPM
Server using standard protocols.

Process Design and Development


o Ultimus BPM Studio: This component supports the collaborative
design and deployment of business processes. BPM Studio
provides a centralized design repository or repositories for storing
business processes, and all process definitions are seamlessly
maintained in the underlying SQL Server or Oracle databases.
Users can connect to these repositories from their design
workstations locally or over the Internet using protocols such as
HTTP, HTTPS and DCOM. BPM Studio also allows users to
publish processes directly to a single BPM Server, or clusters of
BPM Servers.
10
Figure 2: BPM Studio Architecture - Ultimus BPM Studio allows developers
to collaboratively design business processes either behind the firewall using
protocols such as DCOM, or securely across the Internet using HTTP/HTTPS.

Run-Time Execution
o Ultimus Flobots: Flobots play the role of automation agents in
Ultimus processes and support out-of-the-box integration with a
variety of enterprise systems. Flobots leverage open standards such
as XML, Web Services, SMTP, MAPI, and .NET to accomplish
this integration, and also support synchronous and asynchronous
interaction with EAI solutions such as BizTalk. Flobots can either
execute within the context of the BPM Server (Inline Mode), or
can execute on Ultimus FloStations. Ultimus FloStations are
capable of running on the same machine as the BPM Server, or on
a different machine, and can also be clustered for added scalability.
o Ultimus Client and Thin Client. These components represent the
primary interface that process participants will use to initiate and
11
manage their tasks. Ultimus provides a choice of clients either
the rich ActiveX-based Client, or a leaner ASP.NET-based Client.
The ActiveX-based Client supports HTTP, HTTPS or DCOM
connectivity with the BPM Server, whereas the ASP.NET-based
Thin Client supports HTTP and HTTPS. The Ultimus Client also
supports multiple Form types, including:

Native ActiveX-based Ultimus Forms


Native HTML/ASP.NET-based Ultimus Thin Forms
Microsoft Office InfoPath Forms
Adobe Acrobat PDF Forms

Ultimus also supports integration with any custom client through a


robust Web Services/. NET-based API. Integration with portal
solutions such as Microsoft Office SharePoint Portal Server is
supported through the Ultimus FloPorts.
Management Tools
o Ultimus Org Chart: This component is responsible for the
managing process participants that will be involved in business
processes. Org Chart supports connectivity to a variety of directory
solutions, such as Active Directory, through standards such as
LDAP and ADSI. It is also supports integration with any custom
directory through a robust API. Ultimus Reports supports an
ActiveX-based client-side architecture, and is easily accessible
through Internet Explorer.
o Ultimus Administrator: This is a Microsoft Management Console
(MMC)-based application that allows process administrators to
manage the execution of live business processes. Through Ultimus
Administrator, administrators are able to manage multiple BPM
Servers. Ultimus Administrator supports HTTP, HTTPS, and
DCOM connectivity to BPM Servers.
o Ultimus Reports: Ultimus allows users to monitor the efficiency of
their business processes. Ultimus Reports is accessible from
Internet Explorer, leverages an ActiveX-based client-side
architecture, and supports HTTP/HTTPS connectivity to the BPM
Server.

The Ultimus BPM Suite has been architected to support the scalability,
redundancy, and extensibility requirements necessary for an enterprise platform.

Enterprise Scalability through Clustering

Ultimus is designed to be scalable and uses the best technologies available for
delivering solutions to fit every organizational requirement. Various
configurations illustrating the scalability of Ultimus are provided on the following
pages.

12
The scalability and redundancy of the Ultimus BPM Server is demonstrated by
the following block diagrams:

Figure 3: Single Server Deployment

For growing organizations, the Ultimus BPM Server can run on a single Windows
Server that also hosts the database. This simplifies and reduces the cost of the
implementation. The system can easily migrate to a multi-server architecture as
needed.

13
Figure 4: Separate Database Server and BPM Server - Ultimus is
deployed with a single BPM Server and separate database server
configuration.

You can have one Windows Server dedicated to business process execution and
another server dedicated to databases. The database must be an Oracle or SQL
Server database running on any platform. This architecture will support higher
loads and allow you to use an existing database used for other applications.

In this architecture, the database scales independently from the BPM Server.
Ultimus can continue to scale by moving modules to separate servers and
implementing a multi-server load balanced architecture.

14
Figure 5: Distributed Servers - Ultimus is deployed with multiple
BPM Servers in a parallel load-balanced configuration, and with a
separate database server.

For enterprise implementations, multiple Ultimus BPM Servers can be set up in


parallel for Network Load Balancing. In this configuration, requests would be
load-balanced across Ultimus servers for improved scalability. If more servers are
required, they can just be added to the server farm. This architecture allows for
fail-over redundancy of Ultimus BPM Servers.

In addition to these configurations, Ultimus also supports Microsoft Application


Center. Using Application Center, Ultimus supports clustering of up to 64 servers
using a component tier for Component Load Balancing and Web Tier for Network
Load Balancing. This architecture features fail-over redundancy. Adding servers
to relieve specific bottlenecks can enhance performance and reliability. If the
issue is access, additional Web tier servers can be added, if it is load, just add
more component tier servers. Flobots can be moved to separate servers and the
database can scale independently.

As you can see, Ultimus offers a great deal of deployment flexibility to support
the needs of your organization.

Fail-Over Redundancy

Ultimus, in combination with the Windows .NET architecture, provides high


availability that protects against single-server hardware or application outages.
When configured in a Windows server cluster, Ultimus will automatically re-
establish the application on a failover server and be fully functional, typically in
15
less than one minute. All process data, parameters and states are saved in a robust
database and will be unaffected allowing in-process workflow to continue after
the short disruption.

Extensibility Options

While out-of-the-box, Ultimus provides more features than any other BPM
product on the market, it also provides a wide variety of ways to extend its
functionality.

Conditional, Event-Triggered .NET Code for Extensibility


The Ultimus BPM Server offers practically unlimited extensibility through
the use of custom .NET Code that can run on the server. When .NET Code
is called from an Ultimus process, it is automatically compiled and
executes as managed code in the Common Language Runtime (CLR) on
the BPM Server. Process designers can execute .NET code from multiple
events in Ultimus, such as on the activation/completion of a Step, the
Click of a button in an Ultimus Form, or in an automated manner through
the .NET Code Flobot. .NET Code can be used to design custom process
logic, perform advanced calculations, extend the functionality of the BPM
Server, or trigger external applications under specific events and
conditions.

When triggered, process variables are automatically passed to the .NET


Code, and the return results of the .NET Code can also be passed into
Ultimus variables. When the code has completed its task, it can return the
process variables to the workflow process, which can be used to complete
the process.

Integration with 3rd Party Enterprise Systems through Web Services


Ultimus supports interaction with any Web Services-compliant enterprise
application. Consumption of external web services can be accomplished
through events in Ultimus, such as on the click of a button, or a step going
active/late. Web Services can also be consumed in an automated manner
through the Web Services Flobot.

All Web Services integration can be accomplished through point-and-click


interfaces, which can be modified repeatedly without the need to write any
code. For enterprise systems which are only XML-enabled, Ultimus also
supports XML-based integration through the XML Flobot.

Ultimus also acts as a Web Services producer. Enterprise applications can


initiate Ultimus processes that have been exposed as a Web Service. In
addition, those applications can participate during a process incident,
completing steps and checking status with simply Web Services requests.

16
Integrating Ultimus into the enterprise with the Ultimus Enterprise
Integration Kit (EIK)
The Ultimus EIK is designed for VARs, ISVs, and customers who wish to
customize or integrate the Ultimus software into proprietary applications.
The Ultimus EIK includes:

o Ultimus EIK .NET Interface that enables users to develop custom


clients using .NET classes, properties and methods.
o Ultimus EIK Web Services Interface that enables users to develop
custom clients using Web Services.
o Ultimus Flobot .NET Interface, enabling developers to create
custom Flobots.
o Ultimus Custom Forms Control Interface that documents how
controls in ASP.NET forms can be customized, or how JavaScript
can be integrated into Ultimus forms.
o Ultimus Client customization guidelines that describes how to
customize the login image and logos in the Ultimus Client.
o A directory interface library that can be called to integrate any
third party directory source with the Ultimus Org Chart.
o An XML schema that provides a framework for automated
communication of process data between Ultimus and any third
party applications.

With the Ultimus BPM Server at its core, the Ultimus BPM Suite delivers a
scalable, redundant, extensible platform to deliver business process management
across the enterprise.

17
Ultimus Process Designer
Ultimus Process Designer makes it easy for business owners and process analysts
to design, model, and document business processes, setting the stage for complete
business process management using the entire Ultimus BPM Suite.

Figure 6: Ultimus Process Designer - A view of a process being modeled based


on a particular scenario.

Ultimus Process Designer is a standalone application that runs on Windows


workstations. It can be used with little or not training for:

Business Process Design Graphically create process maps, identify the


resources for respective tasks, specify business policies and exceptions,
and specify performance boundaries for individual steps in the overall
process.
Business Process Modeling Provide information on the estimated time
and costs for individual steps, identify the probability that various events
in the process will occur, and then model the process based on those
assumptions.
Business Process Analysis Analyze reports to understand process costs;
expected lag, task, and elapsed time; and resource utilization. Identify
bottlenecks due to resource over-utilization. Once the process has been
fully analyzed, adjustments can be made to the design if necessary

18
changing resources or time and cost assumptions, followed by another
cycle of modeling and analysis.
Business Process Documentation Information such as resource
requirements, process flows, rules and exceptions can be integrated into a
variety of Microsoft Word documents automatically using easy to design
templates.

Complete Business Process Management Support - In many cases,


processes that you analyze using Ultimus Process Designer will greatly
benefit from automation and management. In that case, you can use the
Ultimus BPM Suite to complete the effort. The Ultimus BPM Suite
delivers consistently high ROI through a programming-free collaborative
development environment, flexible integration and workflow capabilities,
powerful management tools and easy to use Web interfaces for process
participants. The process maps and design documentation you have
developed in Ultimus Process Designer can be used directly in the Ultimus
BPM Studio, the development environment in the Ultimus BPM Suite. In
fact, all of the functionality of Ultimus Process Designer is integrated into
the Ultimus BPM Studio, providing a single, unified environment for
BPM teams to model, design, automate, integrate, and document any
business process.

Ultimus Process Designer provides an effective, low cost way to get more people
in your organization involved in business process management. It helps address
one of the biggest challenges of BPM, understanding and documenting processes.
With Ultimus Process Designer, you will be able to identify more opportunities
for process improvement, while also having more information to assess those
opportunities.

19
The Ultimus BPM Studio
Integrated Development Environment (IDE) for collaborative
design, modeling, automation, documentation and deployment of
mission-critical business processes.
The Ultimus BPM Studio fundamentally impacts the way teams design and
deploy business processes. In the past, the parties involved in BPM development
(process analysts, owners, designers, and developers) all worked independently
using their own tools. Collaboration occurred off-line in conference rooms and e-
mail. With Ultimus BPM Studio, these parties now have a unified environment
that supports multiple editing tools appropriate to the user role and skill level (e.g.
Ultimus Form Designer, Visual Studio.NET), provides a shared repository that
improves process integrity, and enables on-line collaboration (e.g. multiple users
working on different parts of the same process). The result of this new
environment is that process teams are more efficient and effective and the total
cost of ownership for the BPM Suite is significantly reduced.

The BPM Studio interface is split into 3 distinct areas for easy navigation:

Repository/Tree View: This dockable/floating window allows BPM


Studio users to browse processes and process components, and through
intuitive right-click menu-driven interfaces, perform various actions on
those components. 3rd party components, such as PDF files, C# and
VB.NET code can also be easily imported into the tree, and then managed
from the familiar BPM Studio environment.
Status Area: This window provides information around the design status
of components in BPM Studio who has the component checked out,
when the component was last updated etc.
Preview/Editor Area: This is the primary work area for the interface.
The context-sensitive view provides an easy-to-use interface for
previewing or editing information around process components that are
currently selected in the tree view

20
Figure 7: BPM Studio Interface - Ultimus BPM Studio allows designers to create and
manage process maps in a collaborative fashion

The Ultimus BPM Studio provides a unified environment to design, model,


automate, document, and deploy business processes. It includes:

i. A collaborative work environment with managed repository;


ii. Graphical process mapping w/integrated scenario based modeling;
iii. Flexible routing and management of process tasks and exceptions;
iv. Powerful, but simple, data management;
v. Rich forms design and integration;
vi. A simulation and testing environment; and
vii. Automated documentation tools.

The Environment

i. Collaborative Work Environment with Managed Repository


Process design participants can collaboratively design and deploy
processes from local or remote locations using industry standard protocols
such as HTTP and HTTPS.

Processes, process components, and related information can be


stored in logical, database repositories with security to prevent
access by unauthorized personnel.

21
Within each repository, fine-grained security controls can be used
to control each persons ability to view, delete, update, and publish
processes or process components.

Figure 8: Fine Grained Security - Ultimus BPM Studio component-based security lets
you control who can edit, delete, lock, and publish anything in the process repository.

Processes and process components, such as steps, can be reused


and shared among design participants from central process
repositories.
Design participants can check-in and check out processes and
process components, ensuring that participants do not overwrite
each others work.
Processes can easily be checked-out, and worked with in an offline
fashion without being connected to the process repository.
Design participants can easily rollback to previous versions of
processes and components through full version control and
rollback support.

22
Figure 9: Process history - An unlimited number of versions can be created, enabling
process rollback.

Existing processes or process maps created in the standalone


version of Ultimus Process Designer can be imported into the
repository for management and use.
Designers have the ability to easily plug-in 3rd party editing tools
for in-context creation and manipulation of any type of 3rd party
content such as Adobe PDF files, ASP.NET pages, and VB.NET
or C# code. This content will then be stored in the process
repository along with all other process-related objects.
One-click publishing of processes allows designers to easily and
quickly deploy new business processes and incremental process
changes to BPM Server. Administrators can control which servers
each user is authorized to publish processes to, providing another
layer of security and control.

ii. Graphical process mapping w/integrated scenario based modeling


Ultimus BPM Studio enables you to design process maps that show the
flow of work and its various activities. Ultimus gives you immense
flexibility to design maps and specify the tasks to be performed, who will
perform them, in what sequence and when. A process map consists of the
following elements:

23
Figure 10: Major components of a process map

Begin Step: Represents the first step of a process, which is used by


an individual to start a process incident. Begin Steps can also be
configured to invoke automatically on a periodic basis.
User Steps: Represent tasks to be performed by an individual or
group using an electronic Form.
Flobot Steps: Represent tasks to be performed by third-party
applications such as Microsoft Word, Excel, Adobe Acrobat,
Exchange, e-mail servers or enterprise databases. You can easily
access other applications or functionality with Managed Code,
Web Services and XML Flobots. By using the Enterprise
Integration Kit (EIK), you can also develop Flobots for other
systems, such as vertical packages or legacy applications.
Maplet Steps: Allows designers to break a large process into
smaller, manageable chunks. Maplets can be designed independent
of the main process and reused easily. The following rules apply
to the use of Maplets:
o One or more Maplets can be inserted into an Ultimus
business process.
o Any process designed using Ultimus can be used as a
Maplet in other processes. Therefore, the full power of the
Ultimus BPM Studio is available for designing, testing and
simulating Maplets.
o A Maplet can call other Maplets.
o A parent process can invoke a Maplet for synchronous or
asynchronous operation. Synchronous execution means that
the parent process stops at the Maplet step until the Maplet
is complete. Asynchronous execution means that the parent
process invokes the Maplet and proceeds to the next step
without waiting for the Maplet to complete.

24
o A parent process can transfer process data to a Maplet
when it is invoked, and data can be returned from the
Maplet to the parent process upon the completion of the
Maplet.
o The process map of a Maplet can be viewed in the Map
View of the parent process.
o The status of a process incident as it progresses through a
Maplet can be viewed from a client participating in the
process or the Monitor View of the parent process.
o The time and cost statistics of a Maplet are rolled-up into
the time and cost statistics of the parent process.
o If a Maplet is aborted, it triggers a Return event for the
Maplet step in the parent process. This provides the process
designer the full flexibility of the Event Condition Table to
decide what to do if a Maplet is aborted.
Inlets: Inlets are sections of a larger process that are grouped
together to allow distributed development. With inlets, you can
distribute control, without having to break things out into a
separate sub process (Maplet).
Links: Links are used to tie steps together. The placement of links
controls the sequence in which the steps are performed, in series or
in parallel.
Junctions: Junction Steps allow you to merge many links into one,
or split one link into many. Since junctions can also have Event
Conditions and built-in delay, you can use them for many
advanced capabilities, including the iterative execution of a group
of steps.
Anchors: You can place anchors anywhere on the link to change
the direction so that lines do not overlap and create confusing
visual effects.
End Step: The End Step is the last step of the workflow and
denotes the successful completion of the process.

Once a process map has been created, users have all of the capabilities of
Ultimus Process Designer available to them to create and run modeling
scenarios or for business users to provide documentation and guidance for
more technical BPM team members that will do the actual development.

iii. Flexible routing and management of process tasks and exceptions

The Step Properties in Ultimus BPM Studio provide powerful and


sophisticated means of specifying who, when, how long, under what
conditions, and at what cost a particular task will be performed. This
flexibility is important for defining your process to meet your business
rules and special situations. Among other things, Ultimus enables you to
control the following important attributes of each workflow step:

25
Figure 11: Step Properties.

Recipients: Since every organization has unique routing


requirements, you can specify who performs a task by Users, Job
Functions, Groups, Queues, Reporting Relationship, Ad Hoc,
Weighted Groups and Sequential Groups. In addition, Ultimus
offers a very powerful means of specifying recipients on the fly or
on a conditional basis through support for Relational, Relative and
Ad-hoc routing.
Task Rate: You can specify the burden rate for the person or the
resource that will perform the task. This enables Ultimus to capture
the cost of the task and consequently the cost of each incident.
Ultimus automatically computes the lag time for each step, and the
total time of each incident, including resubmissions. This real data
is used to generate process metrics and improve business
processes.
Completion and Extension Time: You can specify the time in
which the task must get done based on defined work hours, and
also allow a grace period. Based on the time specified in this
window, the task is categorized as Current, Overdue or Urgent in
the users Task List.
Escalation of Late Tasks: Ultimus supports two levels of late
notification. Notification to the Recipient or Supervisor can be
activated upon expiration of the Completion Time (Overdue) and
Extension Time (Late).
Archive: This feature allows you to automatically archive the form
for the task when the user has completed it. It is a simple yet
powerful means of creating an audit trail.

26
Private Tasks: A task may be designated as private so that others
may not view it.
Non-Assignable Tasks: A task may be declared non-assignable so
that it may not be delegated to others.
Delayed Activation: A task may be delayed by a specified time to
synchronize it with other events outside the workflow.

In addition to these standard properties, Ultimus also provides a simple yet


powerful solution for managing complex business conditions and
exceptions, Event Condition Tables.

In addition to the standard routing defined by the links in the process map,
each step in an Ultimus business process is associated with six different
events:

Activate: Occurs when the BPM Server invokes the step.


Complete: Occurs when a step is completed.
Return: Occurs when the client user or Flobot returns a step for
lack of information or some other reason.
ReSubmit: Occurs when a step is used to re-submit a task.
Late: Occurs when a step is late.
Recipient: Allows you to change who will perform the task based
on certain conditions.

The user can define an Event Condition Table for each event to dictate
what happens under every possible scenario. Each row in the table
represents a unique condition. Each column represents a process variable.
You can have up to 5000 rows (unique conditions) and 256 columns
(variables) for the Condition Table of each event of each step. For each
condition, you can specify an action such as the following:

Activate: Causes the process to activate a specified step.


Abort Step: The specified step is aborted and an E-mail notice is
sent to the step owner.
Abort Incident: The entire process incident is aborted and e-mail
messages are sent to all the step owners for the incident.
Execute Web Service: Any Web Service is invoked and bi-
directional transfer of information between Ultimus variables and
methods in the Web Service can be performed. This capability
allows designers to invoke logic in 3rd party enterprise applications
in real-time.
Execute .NET Code: Managed Code (C#, VB.NET) can be
invoked and bi-directional transfer of information between Ultimus
variables and Managed Code methods can also be performed. This
capability allows designers to easily and seamlessly leverage
Managed Code from within the familiar Ultimus environment.

27
Figure 12: Event Conditions Tables - Event Condition Tables allow you to easily and
graphically design conditional logic to account for the complexities and exceptions found
in every business organization when developing the flow for your automated process.

The Event Condition Table for a step is evaluated every time an event
occurs for the step. For example, when a step is late, you can make the
process jump to any other step in the process, abort certain steps, and
activate others. This provides immense power and flexibility in designing
conditional logic to account for the complexities and exceptions found in
every business organization. It is one of the most powerful and frequently
used capabilities of the Ultimus BPM Suite.

iv. Powerful, but simple, data management


Every BPM solution needs a way to move data from step to step, whether
that data is input to the step or generated by activity during the step. The
most common approaches to managing this data in BPM solutions are to
force designers to setup relational databases for all data and variables or to
manage them through specialized coding and scripting. Both of these
approaches add unnecessary complexity and development time and
resources to projects. While Ultimus does recommend the use of
relational databases for certain process data, it provides a patented
alternative for the data that is primarily used to drive process execution.

The Distributed Spreadsheet Model (U.S. Patent 6,157,934) provides a


simple way to create variables, calculations, and dynamic forms without
any programming by using a server-side spreadsheet metaphor familiar to
millions of people. The spreadsheet abstracts users from the Ultimus data
model and minimizes the need for specialized database development and
complex queries from the user community. A spreadsheet metaphor was
chosen because of its familiarity to process analysts and most users of

28
computers in a business environment and its ability to perform a wide
variety of calculations without programming. The Model consists of the
following:

Main Spreadsheet: Each process has a main spreadsheet that


resides at the server. The main spreadsheet is the super set. Its
function is to collect and distribute information to all the steps, and
to perform calculations that are common throughout the process.
Any process variable that is global, used by all steps, is managed in
the main spreadsheet.
Local Spreadsheet: Each step also has a local spreadsheet
associated with it. Cells in the local spreadsheet can be linked to
cells in the main spreadsheet for sending and receiving
information. Also, cells in the local spreadsheet can be linked to
controls in the electronic forms for each step. In this way,
information is exchanged between the form and the local
spreadsheet.
Global Variables: Any named cell or range in the Main
Spreadsheet is called a global variable. Variables are important
because the BPM server can make decisions based upon the values
of these variables. This provides a powerful means of
implementing business logic based upon actual conditions of each
incident.
Local Variables: Any named cell or range in the local spreadsheet
is called a local variable. Local variables are important because
they can be used to pass information to Flobots. Local variables
may also be linked to cells in the main spreadsheet.
Variable Link View: Provides a graphical view of how data is
linked across all the steps in a process. The user selects a process
variable and the software uses the process map to graphically show
all the steps to which the variable is linked. The process designer
can visually see how the data flows from step to step.

29
Figure 13: Main Spreadsheet - The Patented Distributed Spreadsheet Model provides
the framework to develop sophisticated business processes without having to do lots of
complex development using scripts and programs.

As soon as you create a process map, BPM Studio automatically creates


the main spreadsheet on the BPM server and the local spreadsheets for
each step. You can design the spreadsheets with all the powerful functions
of Excel. All of the calculations and logic that are common to the entire
process can be done in the main spreadsheet, and all those that are unique
to each step can be done in the local spreadsheet. Since each user step also
has an electronic form, and the form fields are easily linked to the local
spreadsheet, you can make the form intelligent without having the users
see the complexity of the data management that is occurring behind the
scenes.

Ultimus also allows the information to be easily saved in enterprise


databases, using databound variables. Any global variable may be linked
to a database table specified by the designer. The table must have two
required columns called Process Name and Incident Number. These two
columns are used by Ultimus as keys to uniquely identify the row in the
database table. During the execution of an incident, whenever a step has
been completed, the BPM server automatically updates the contents of the
table with the values of the variables. This means that process data from
any step can be easily written to the database table for persistent storage.
30
This information can also be used to customize views within a client task
list.

In addition to databound variables, Ultimus also recommends the use of


databases for managing structured information and large record sets. The
spreadsheets can hold pointers to this information for easy retrieval in
forms or Flobot steps.

v. Rich forms design and integration

Electronic forms are the logical way to present or collect data when
business users are involved. The Ultimus BPM Studio includes graphical
capability to create custom rich browser forms using ActiveX or pure
HTML forms. In addition, existing electronic forms can be easily reused
and integrated if that is preferred. Ultimus supports Web forms, Adobe
Acrobat, or Microsoft InfoPath. This allows you to use sophisticated
forms tailored to each users needs. You can design or use forms unique to
each step in the process, or share one form in several steps.

Rich Browser Forms Design


The integrated forms designer allows the designer to create powerful
custom forms with Dynamic HTML ideal for Internet Explorer. This
drag-and-drop tool has a complete set of formatting and editing features
making it easy to create professional forms. These features include
sophisticated tools for alignment, sizing, colors, fonts, linking, and testing
the Forms.

Ultimus Forms support all the popular controls you find in todays
Windows applications. These include the following:

Edit Fields List Boxes


Combo Boxes Check Boxes
Radio Buttons Bit Maps
Group Boxes Buttons
Text Fields

31
Figure 14: IE Form in Designer View - Ultimus allows you to design a unique form for
each step. Users in the workflow are only presented with information that is relevant to
their task.

In addition, Ultimus provides many advanced features that you will find
only in the most powerful form design tools:
Signature fields for digital signatures
Grid control for tabular data entry and display
Forms with multiple pages using tabs
Forms with dynamic sub-forms
Enhanced Placeholder controls
Attachment controls for planned or ad hoc attachment of
documents
Conditional controls
Graphical data linking

The Enhanced Placeholder control is also provided to allocate real estate


for third-party controls and integrate them with Ultimus Forms. To
simplify the use of third-party controls, the Placeholder control allows
users to choose an existing Windows control from the system and have
class id and startup parameters automatically entered in the control
32
properties. This gives users unlimited flexibility to customize the forms
for their unique requirements.

The Attachment Control allows users to attach files to an Ultimus Form


for internal routing or routing across the Internet. The designer can set the
number and type of files. For internal documents, the file location is
referenced in the control and the document is accessed across the network.
For Internet delivery, the file is saved on the Ultimus server in a specified
directory. When opened by a user as part of a process, the file is
temporarily saved on the users local hard drive. When the Form is
submitted, the file is shipped back to the Ultimus server where it
overwrites the existing file. This updates the file with any changes.
Ultimus also provides attachment controls for a variety of popular
document management systems including Documentum, Hummingbird,
Docuware, WinDream, and Microsoft SharePoint Portal Server.

The Ultimus BPM Studio includes the Form Object Library (FOL)for rich
browser forms, which allows you to group and save controls on a form as
reusable objects. These objects can be inserted into any form using a
simple drag-and-drop feature.

Figure 15: Form Object Library - The Form Object Library allows design elements
to be grouped and saved as a reusable object. This facilitates collaborative design and
enhances the modification and updating of forms.

33
The reusable nature of objects can greatly reduce the design effort of
complicated forms by duplicating objects with the click of a mouse. Form
Objects are files that can easily be shared across a network. This allows a
team of designers to share Form Objects to reduce design efforts and to
ensure consistency of design. Finally, since changes to an object can be
propagated to all incidents of the object in all forms, updates to forms are
fast and easy.

Objects in the FOL can be inserted in multiple steps, processes or even


different installations. Controls and components retain their positioning,
workflow and formatting properties in all forms.

At any point during the design process, the FOL window can be opened to
access objects and closed when not in use. Objects can be organized in
different libraries by categories such as type or owner. The libraries are
viewed in a window in the Forms Designer and are displayed using an
expandable tree structure. This graphical, multi-level view and
categorization makes organizing, locating and sharing objects easy.

Controls are grouped and added to a library by selecting the desired


controls and selecting the library where the object is to be added. Objects
are quickly inserted in a form by double clicking on them in the FOL
window or dragging the object to the desired location. Changes and
updates are just as easy. Changes to an object such as adding controls or
changing control properties or positions are updated by unlinking the
object, making the changes and adding it back to the library. Updates are
easily propagated to all forms on a per process basis using an update
feature in BPM Studio.

Calling Web Services and Managed Code from Forms

Ultimus includes the powerful capability of calling Web Services and


Managed Code directly from a form. A control in a form can be
configured to execute a Web Service or Managed Code when activated or
triggered by an event condition. The Web Service or Managed Code could
be used to invoke logic in 3rd party enterprise applications such as SAP, or
to perform sophisticated computations on data flowing through a business
process. This adds power and flexibility to a workflow process.

Web Services and Managed Code can be called based on an event or the
activation or state of a control allowing them to be called automatically or
controlled by a user from a form. As Web Services or Managed Code is
called, client-side process variables can be passed to the Web Service or
Managed Code, and returned variables can be used in the process.

34
Integrated Thin Forms Designer
Ultimus has an integrated Thin Forms Designer for creating pure HTML
forms, or ASP.NET-based forms for cross-platform applications. The Thin
Forms Designer also supports the design of dynamic forms based on
technologies such as Java Server Pages (JSP) as an example. Since many
enterprises operate with a variety of platforms, it is important to have a
client technology to include everyone from everywhere. HTML has
become the de facto standard to achieve this. Thin forms provide an
important alternative to the Ultimus client for Internet Explorer, providing
a subset of functionality that will work across a wide variety of platforms,
including Netscape browsers and mobile devices.

It is a graphical interface, similar to the standard Forms Designer, but it is


used for creating thin HTML forms based on technologies such as
ASP.NET. Dropping controls onto the form and linking those controls to
process variables and databases is all it takes to design a form. There is
also an edit window to allow you to access and edit the HTML code
directly. The form can be tested in a browser view with the click of a
button.

One exciting feature of the Thin Forms Designer is the import/export


capability. This allows the HTML files created in the Thin Forms
Designer to be exported to an external HTML editor such as Microsoft
FrontPage to extend the capabilities of the form, using ASP.NET or Java
functionality. Once completed, the form can be imported into the Ultimus
application and tested in the workflow environment. Or, a web form
designed using another application can be imported and used.

The Thin Forms Designer also supports a split screen view, where a
WYSIWYG representation of a page can be viewed in the left-hand pane,
and source HTML for the page can be viewed in the right-hand view. One
can update the page through either view, and the change will be reflected
in the other view automatically.

Ultimus Thin Forms include common formatting tools and the following
drop-in HTML controls functionality:

Edit Fields Buttons


Radio Buttons Attachment Controls
Password Signature Controls
Authentication Recordsets
Text Fields Custom
List Boxes HTML/ASP.NET
Check Boxes Controls
Bit Maps

35
Server-side Database Connections
Both types of Ultimus Forms can be linked easily with any enterprise
database using server-side database connections. Ultimus supports Oracle
and SQL Server enterprise databases. Since all database connections are
made once on the server-side, large numbers of participants can connect to
the database with security and without the need for database connectivity
at each client computer.

Linking forms to your databases allows you to automatically populate


form fields, update the contents of the databases, search the database for
specific information, or delete database records. Ultimus also allows you
to link a form to multiple database tables through Form Recordset
functionality. This enables you to design a form that reads a value from
one table, and based upon a particular value, also reads data from a second
table. All of this happens on the fly. Since form fields can be linked to a
database and to Local Spreadsheets, you can easily move data from the
database to the Local Spreadsheet or vice-versa.

Form Recordsets also provide the ability to logically group a collection of


controls on a form. This allows you to design forms with multiple
Recordsets, each Recordset potentially referencing a different physical
database. Each Recordset interacts with a database table independent of
other Recordsets. You can add action buttons to a Recordset for actions,
such as Next, Previous, Update, Add, and Delete. Furthermore, a record
set may be associated with a custom SQL query with local spreadsheet
cells as parameters.

Leveraging your existing investment in 3rd party Forms


Ultimus BPM Studio also provides a point-and-click interface for
seamlessly leveraging 3rd party electronic form solutions such as Adobe
PDF and Microsoft InfoPath forms in Ultimus Steps. At design-time,
Ultimus BPM Studio allows users to link process variables to controls on
these 3rd party form types, all without any programming effort. This
capability allows organizations to create best-of-breed process
implementations that combine the best capabilities of business process
management (workflow, escalation and exception management), and
electronic forms.

36
Figure 16: Seamlessly integrating existing Forms into Ultimus processes - In this
example, we show a Microsoft Infopath form being linked to a Step in an Ultimus
process.

vi. A Simulation and Testing Environment


Business processes can involve hundreds of people, other applications,
and other processes (Maplets). It is not practical to test such an application
by deploying it to production environments, without thorough pre-
deployment testing and QA through simulation.

Ultimus provides complete testing capability through the Simulation


feature of the BPM Studio. The designer can use Simulation to test all
aspects of the business process on the same PC on which the process was
developed. Moreover, through the collaborative design capabilities of
BPM Studio, multiple designers can simulate the same process at the same
time. Simulation provides a comprehensive testing capability that is
identical to a real life installation. It uses the same software components
as are used when the process is deployed. During simulation, you can also
use features in Ultimus BPM Studio such as the Variable Watch Window
to monitor the status of an incident and its associated process data. You
can, therefore, test all aspects of process, including the following:
Process logic and Data routing and linking
routing as defined by Database connections
the process map Flobot operation
Conditional logic Task Reassignment
Forms design and
layout
37
In addition to a full simulation, forms designers can test Ultimus Forms
from within the forms design tools. This allows them to ensure the forms
are working properly before moving on to a full simulation.

Figure 17: Integrated Testing - Simulation allows you to completely test your
business process before deploying it.

Simulation is not only an excellent and complete means of testing your


business process; it is also a great way of demonstrating it.

vii. Automated Documentation Tools


After you have designed a process, it is very important to document it so
that it is easy to maintain in the future. Documentation is also important
for organizations wishing to ensure that their business processes comply
with internal requirements as well as external standards, such as ISO 9000.
Finally, many customers have found that process documentation reduces
the ramp time and complexity for new employees.

38
Figure 18: Ultimus Process Documentation - Using Microsoft Word, detailed
process documentation is automatically generated from system variables and your
documentation template.

Ultimus provides a unique process documentation feature that is tightly


integrated with the Ultimus BPM Studio. This feature allows users to
create their own report templates using Microsoft Word. Once a template
has been created, the user can easily produce documentation for any
process designed in Ultimus BPM Studio. The user simply uses selects
configures the Word template to accept Ultimus data using a simple point-
and-click interface. Once the template is setup, the automated tool can be
run at any time to produce the actual document. Different templates can
be used for different purposes. Since the documents are produced in
Microsoft Word, it is easy for users to customize or edit if any additional
information is required.

39
Ultimus Flobots and FloStations
Use Third-Party Applications As Workflow Robots
Ultimus Flobots turn powerful and popular applications such as Microsoft Excel,
Microsoft Word, or enterprise applications like PeopleSoft and SAP into
workflow robots. Just as robots are used for their flexibility to perform many
different tasks on a factory floor, you can use the flexibility of popular
applications to perform specific process tasks. For example, you can train Excel to
calculate a graph, and Word to produce a report as a step in the process. When an
actual incident reaches the Flobot step, it passes data to the Flobot and makes it
perform the task for which it was trained. This gives you tremendous flexibility
and capability of using the power of third-party applications to enhance your
automated business processes.

Figure 19: Ultimus Flobots - Workflow robots that easily integrate 3rd party
applications into your business processes.

Ultimus supplies Flobots for the following:


Acrobat Flobot: Allows a BPM process to populate a PDF form and
save the filled in form, print it or both.
ASCII Flobot: Enables a process to automatically write data which can
be used by legacy applications.
Database Flobot: Allows a process to automatically insert or extract
information from SQL and Oracle databases.

40
E-Mail Flobot: Lets a process automatically and easily send messages.
Documents may also be attached to the messages.
Excel Flobot: Lets a process automatically insert or extract data from
Microsoft Excel spreadsheets, perform analysis, and create graphs and
charts. The ability to run Excel macros is also provided.
File Flobot: Lets a process execute file operations, such as copy,
rename, delete, attach, and un-attach.
.NET Code Flobot: Allows a process to automatically pass variables
and call managed code developed in VB, C#, or any other NET
compliant language. The code may perform calculations, invoke
executables, objects, DLLs or interface with legacy systems.
Web Services Flobot: Enables the Ultimus BPM Suite to invoke web
services in 3rd party applications through an automated step.
Word Flobot: Enables a process to automatically produce reports,
documents, letters, forms, printouts, and faxes using Microsoft Word.
The ability to execute Word macros is also provided.
XML Flobot: Can be trained to link variables with any XML schema.
It therefore enables Ultimus to exchange information with any XML-
compliant application.

Figure 20: Web Services Flobot - Web Services integration capabilities.


41
The Ultimus FloStation hosts the Flobots. It can operate as a standalone Windows
application or as a Service. The FloStation has the following useful
characteristics:

FloStations communicate with the Ultimus BPM Server via HTTP.


This means that FloStations can be located anywhere there is Web
access. This powerful feature enables Flobots to perform tasks at
remote locations.
Flostations can be grouped in the Administrator. A designer can select
a specific FloStation to carry out the task or select a Group. Any
member FloStation of the Group can perform the task. This provides a
simple but elegant load balancing mechanism for Flobots.
A Flobot Task may be routed dynamically to a FloStation based upon
run-time conditions and data. This capability could be used to print a
purchase order at a specific location that is driven by information in
the purchase request.

Figure 21: FloStation Groups - Flobot tasks being conditionally routed to the
nearest FloStation Group.

42
The Ultimus Client
Providing process participants with a complete view of their
business process responsibilities.

The Ultimus Client enables users to participate easily in automated business


processes using a Web browser without the need for any additional client-side
software. It manages all the communications with the Ultimus BPM Server and
provides a unified interface for the user to initiate new process incidents, view and
access tasks, or check the status of incidents that they have worked on. In
addition, users can be empowered to create custom views that let them organize
activities in unique ways or manage the workload of their subordinates. For
convenience and ease of use, customer data such as part numbers or order
numbers can be viewed in the Task List as well. When the user selects an item
from the Task List, the electronic form for the task is displayed. Users can simply
fill out the form and send it. The task is complete and the process moves
forward.

Figure 22: Flexible Work Environment - The Ultimus Client provides a unified
work environment for all activities associated with automated business processes that
runs in your web browser or Microsoft Outlook.

Ultimus offers multiple versions of the Client to support a wide variety of


platforms:

43
1. ActiveX Client: Incorporates sophisticated controls and functionality for
participating in processes via Internet Explorer. The ActiveX Client
includes support for multiple languages including right-to-left text,
automatic detection of locale, and presentation of the client UI in any of
16 languages. These features, along with Ultimus support for Unicode
make the Ultimus Client a truly global user interface.
2. Thin Client: This ASP.NET Client is cross browser compatible, across a
variety of platforms including Unix, Mac and supported PDAs. The
source code for the Thin Client is provided, making it fully customizable.

Figure 23: The Ultimus Thin Client.

3. FloPorts: These BPM web parts can be integrated into a corporate portal to
provide access to the Ultimus Initiate, Inbox and Completed tasks views.
FloPorts are ASP.NET-based and are designed to take minimal screen
space, making them ideal for use on PDAs.

44
Figure 24: Floports - Ultimus Web Parts that can be tailored to run in MS
SharePoint 2003 portal or any other portal environment.

4. Outlook Client: Provides the full functionality of the Ultimus Client in an


Outlook Folder. This provides a familiar interface for Outlook users.

45
Figure 25. Outlook Client - The Ultimus Client can be integrated with Microsoft
Outlook 2000/2002/2003. This provides a familiar interface for Outlook users.

The Ultimus Client provides the following capabilities:


Prioritized Task List: Maintains a list of all the tasks that the user has to
do. Tasks are prioritized as Current, Overdue, Urgent, Complete, Rejected
and Re-assigned.
Views: Allows users to define custom views. This enables them to see
only the tasks that they want to work with. An administrator from a central
location can also define custom views for ease-of-use and simple
administration.
Forms: The Client invokes the form for a task whenever the task is
selected in the Task List.
New Tasks: The Client allows the user to start new processes by selecting
a process from the Initiate Task View.
Defaults Templates: Users can set default templates for any new process
they initiate. For example, if a user initiates a purchase order frequently
for maintenance supplies, he can create a default purchase order form
called maintenance supplies and save it for use at any subsequent time.
Attachments: Users can attach a file or a document to any process using
the Attachment Control when used on a form. When a document is
attached, a pointer to the document is carried with the process so that other
participants downstream can review it. An Internet Attachment Control is
available for routing files over the Internet. This is an elegant way to route

46
memos, justifications, reports and other related documents with the
process.

Figure 26: Ultimus Form - Ultimus supports the use of ActiveX, ASP.NET, HTML,
Microsoft InfoPath and PDF Forms. This means that Ultimus processes can be deployed
across any enterprise environment.

Confer: Users can send a task to another user outside of the process to get
their opinion. The task can only be returned to the original task owner who
maintains responsibility for the task.
Return: Users can return a process step. This will cause the process to
move back to any previous step based on the Event Condition Tables.
Assign Task: Users with permission can assign a task to another user. The
assigning user can also take back the assigned task.
Archive: This powerful auditing feature causes the Client to automatically
archive a form after it is completed. Authorized users can review archived
Forms.
Status: The Client allows users to graphically monitor the status of any
incident in which they have participated.
Queue: This function allows users to retrieve tasks from a Task Queue.
Users can also select a task before retrieving it.
Step and Process Help: The Ultimus Client can provide HTML help on
individual steps or processes.
47
Client Customization: Additional flexibility is provided by customized
company logos and system and user preferences.

48
The Ultimus Org Chart
Manage Users, Roles, and Responsibilities

The Ultimus Org Chart is a unique and powerful Web-based component of the
Ultimus BPM Suite. It allows users to graphically design the organization chart of
their companies, while leveraging their existing investment in directory
technologies. The Org Chart can contain companies, divisions, departments,
sections, job functions and groups. With each job function, you can associate a
user name. With this information, Ultimus is aware of all the job functions in the
company, the individuals responsible for the job functions and their reporting
relationships. This allows Ultimus to intelligently route process tasks with the
knowledge of who the participants are, their job functions and their reporting
relationships.

Figure 27: Org Chart - The Ultimus Org Chart makes your processes relationship
aware. This makes it easy to design dynamic business processes.

The Ultimus Org Chart provides many useful features, including the following:
Drag and Drop Reorganization: Simply clicking on one part of the chart
and dragging it to another area will automatically adjust all underlying
relationships in the graph, and in the database.

49
Figure 28: Drag and Drop - Moving a Job Function and subordinates in Org Chart
automatically adjusts the org chart and all of the relationships in the database.

Groups: The Org Chart allows you to define Groups of users, job
functions, departments or other Groups. Groups are used to assign tasks to
a collection of individuals, such a Sales Engineers, Payable Clerks, or
Managers.
Sub-Charts: You can insert multiple sub-charts into another chart. This is
very useful for large organizations where it is not practical to have the
entire company represented in one chart. Furthermore, you can name the
sub-chart anything you want, such as department, division, section or
team.
Relationships: You can insert subordinates, superiors and assistants in the
Org Chart. All insertions are done graphically.
Multiple Job Functions/User: You can assign one user to multiple job
functions to account for multiple roles that employees have in todays
organizations.
Multiple Users/Job Function: You can assign a group of users to a job
function. For example, you can create a job function group called
Application Engineers and assign several individuals to this group. The
first member of the Group automatically becomes Application Engineer 1,
the second one Application Engineer 2 and so on.
Search: Search the Org Chart quickly for a user or a job function. This is
very useful if you have a large organization chart. Wildcard searches are
also supported.
Active Directory Integration: Ultimus Org Chart can be tightly
integrated with Active Directory. Changes to the Ultimus Org Chart are
immediately reflected in your Active Directory and visa versa. The
Ultimus Org Chart schema associates roles with each user in an Active
Directory to facilitate role-based decisions. Since the Ultimus Org Chart is
50
Web-based, it can be administered remotely, enabling distributed updates
to Active Directory.
LDAP Directory Support: Ultimus Org Chart also supports other LDAP
3.0 compatible directories using the Ultimus database. Roles are
associated with users in the Ultimus database for seamless administration.
Other Directory Systems: Ultimus provides a programmatic interface as
part of the Ultimus Enterprise Integration Kit (EIK), the OC Translation
Layer, which allows Ultimus to either read user information directly from
any third party directory or periodically transfer of information from the
directory to the Ultimus OC database.

51
The Ultimus Administrator
Integrated Process Management and Administration
The Ultimus Administrator provides powerful, centralized capabilities and for
managing and administrating automated business processes for small or large
organizations. Administrators can manage multiple servers via a local client or
remotely via the Internet using HTTP. It is tightly integrated with the Microsoft
Management Console (MMC) for a familiar administration interface and remote
management capabilities. This simplifies the learning curve and provides a
unified user interface for administrators to manage all their enterprise applications
including Ultimus.

Figure 29: Ultimus Administrator - The Ultimus Administrator allows you to monitor
your process incidents and make changes from within the Microsoft Management
Console.

Managing Installed Processes


The Ultimus Administrator enables you to view all of the processes installed on
the BPM Server in an organized list. From this view, the Administrator can
choose to disable a process if necessary (e.g. You many want to only enable a
benefits enrollment process during Open Enrollment). They can also enable any
disabled processes with a click of a button. In addition, the administrator can
install or de-install processes from the console interface, supplementing the
process installation capabilities available in the Ultimus BPM Studio.

In some cases, it may be useful to expose a process as a Web Service. This allows
third party applications to initiate process incidents with a simple Web Services
request rather than custom code. In Ultimus, any process can be exposed as a
52
Web Service by the Administrator, they can simply click a button and WSDL and
the associated Web Services file will be automatically created.

Graphical Process Monitoring


The Ultimus Administrator allows you to graphically monitor the status of any
incident or step. You no longer have to play telephone tag to find out where your
purchase order or document is located within the organization. Using a powerful
query builder, users can zoom in on the list of incidents that are in progress or
have been completed. Since there can be thousands of incidents and steps, the
query builder allows you to home in on only those in which you are interested.
When you select one, the software displays a color-coded workflow map that
shows the status of the incident or task. The Monitor View also provides the
following additional capabilities:

A tabular status list of all the process participants. This list displays all the
step names, the individual who is the recipient of each step, when they
received the task, when they completed it and the status of the task.
In the Step Monitor View, when viewing a process that has stalled (no
active steps in the incident), you may reactivate any step to continue the
process. The incident will continue as normal.
The AutoComplete function allows editing of the local spreadsheet for that
Process/Step only. After editing, click AutoComplete to pass the edited
data to the rest of the process.
Find and Replace This function allows you to replace any spreadsheet
value in either a single step of a single incident, or across all steps of a
single incident, via the main spreadsheet. As such, this function is
available in bot Step and Incident filter results.
The BPM administrator may reassign certain steps in the business process
to another user.

Workload View and Reassigning Tasks


The Workload View is a powerful feature that allows the administrator to
determine the current and future workload for each user. The Workload View of
any user displays the current tasks for the user, and the future tasks the user might
be called upon to perform. The Administrator can re-assign one or more of these
tasks to other users. This gives tremendous flexibility in handling personal issues,
such as emergency absence.

Query Filters
Ultimus provides a flexible query builder. This query builder is used to select the
sub-set of incidents or steps from the potentially large number that may be in the
database at any given time. You can use the query builder to select the incidents
or steps you wish to modify.

The query builder uses SQL statements to let you define queries. You can use any
of the following variables in the query: Process Name, Incident Summary,

53
Priority, Initiator, Start Time, End Time, and any Databound Variable. This gives
you a lot of flexibility to define, name, and save queries that meet your specific
criteria.

Once you have defined your query and opened the list of incidents or steps that
meet your criteria, you can take a number of actions to modify that incident or
step.

In one or many incident records, global variable values can be edited. For
example, an improperly typed email address, which could stall an incident, can be
changed, allowing the process to continue.

Using a Step filter, individual tasks can be activated, aborted, completed or


reassigned. In addition, values can be changed in the local spreadsheet for that
step, ensuring that incorrectly input data will not derail the process.

Exclusion Days
This capability in the Ultimus Administrator allows you to specify the days of the
year that should not be counted as working days. You can use the capability to
specify company holidays, Saturdays, Sundays and other days in the year, which
should not be used to calculate the task duration.

Abort or Delete Incidents


Any incident of a process may be aborted or deleted by the administrator. This is
useful to clear testing records or for incidents that are not valid. The person who
initiated it may also abort an incident from the Ultimus Client.

Ultimus Logs
Ultimus logs from local or remote Workflow Servers can be viewed from the
Ultimus Administrator in the Microsoft Management Console (MMC) in
Windows. All modules also report fatal errors to the Event Viewer. Since the
Event Viewer is a widely used administrative tool, training is reduced and server
administration enhanced.

54
Figure 30: MMC logs - BPM Server and FloStation activity is updated automatically
and can be viewed from the MMC.

Logging fatal errors to the Event Viewer means that BPM Servers can be
monitored centrally with other applications. This allows Ultimus to be integrated
into a third-party management system that reports, escalates and notifies based on
logs.

The logs from any FloStation can be viewed from the Event Viewer or MMC Log
View. This is useful because the administrator may need to troubleshoot a remote
FloStation.

55
Ultimus Reports
A comprehensive Web-based reports generator for managing the
efficiency of automated processes

The Ultimus BPM Suite includes a comprehensive Web-based report generation


module. This module allows administrators to evaluate and improve the
efficiency of their automated processes. Web-based reports can be designed,
generated and accessed securely from anywhere over the Internet. Tabular or
graphical reports suitable for management review can be created or modified on
the fly using the Reports Wizard. Ultimus Reports uses data from the Ultimus
database to generate the reports. Cost, time and status metrics can be viewed from
a user, step, department, queue or process perspective. Ultimus provides an open
schema for reports data so third party reporting tools can be used if desired.

Figure 31: Process Metrics. Use Ultimus Reports to generate and access a wide variety
of reports from real data to measure the cost and effectiveness of your processes.

Ultimus includes the following report types:


Incident Cost Reports: Calculates and displays the average, maximum,
minimum and standard deviation of cost for selected steps. Displays the
cost for each step selected in tabular view. Incidents can be filtered on
values such as incident number, time, date and status. Costs are
determined using the task rate property for that step.
Incident Elapsed Time Report: Calculates and displays the average,
maximum, minimum and standard deviation of elapsed time for selected
56
steps. Also displays the elapsed time for each step selected in tabular view.
Incidents can be filtered on values such as incident number, time, date and
status.
FloStation Activity Reports: View the number of active, completed,
aborted and failed Flobots for a specified FloStation or FloStation Group.
Incidents can be filtered on values such as incident number and date range.
Incident Activity Reports: Provides a view of a process at the incident
level. A collection of incidents can be selected and the report will show
the status, start time, end time and elapsed time for those incidents. The
graphical view shows incident status information while details on specific
incidents can be found in the tabular view. This allows the process to be
evaluated and improvements made based on time and status metrics and
their relationship to external data for an incident. For example, it might be
determined that purchase order incidents initiated on Friday take 25%
longer than other days.
Incident Monitor Report: Provides an incident level report on the status
of an incident. This is similar to the Incident Status in the Administer or
Client but in a convenient Web-based report.
Process Monitor Report: Provides a graphical process level report on the
status of all incidents for a given user and shows where they are in the
process. This is similar to the status monitor capability in the
Administrator but in a convenient Web-based report.
Step Activity Reports: Evaluate the performance of users for specified
types of tasks in a selected process. Choose between completed, active,
aborted or choose from urgent, overdue or tasks in queue.
Step Time Reports: Analyze the efficiency of steps in a process over a
specified number of incidents or period of time. The elapsed time for step
in a process is reported and the average, minimum, maximum and
standard deviation is calculated.
User Activity Reports: Evaluate the performance of specific users. This
report provides detailed information about the activity of specific user or
group including the average, maximum, minimum and standard deviation
for task time of completion and details of all tasks specified. This is
similar to the Step Report but can be over multiple steps.
Workload reports: View tasks pending for any process participant or
group over any time period. Setting the time period for the past presents
an historical view; setting it for the present a view of tasks currently due;
and setting it for the future displays tasks that may be late at a future time.
This is very helpful for managers that want to proactively manage users
workload.

Ultimus Reports Wizard


A Reports Wizard is included to make the design and generation of reports very
simple. It allows a user to quickly change the content and format of a report.
Complex queries can be defined to drill down into process data and reach
specific information.

57
The Reports Wizard is Web-based so changes can be made to reports and the
reports immediately accessed from your Web browser. Reports can be displayed
in tabular format or in one of many different types of graphical formats including
bar, pie, line and 3-D graphs.

Figure 32: Ultimus Reports Wizard - Design your reports to show specific
information in a variety of formats using the Ultimus Reports Wizard.

Reports Access Rights


Ultimus Reports Access Rights ensure that Ultimus Reports can only be created
or accessed by users with appropriate authority. This provides the security
necessary for sensitive process metrics while allowing the ease of access found in
Web-based reports. Reports are assigned either edit or view access rights to
control user access by groups. This ensures that only authorized people get access
to specific reports.

Ultimus Reports are Web-based so access rights can be controlled through


network access administration as well. This provides an added level of access
security.

58
Security
The Ultimus BPM Suite provides comprehensive, robust and extensive security
features to meet the demanding security requirements of modern enterprises.

Collaborative Design Security


The Ultimus BPM Studio supports two levels of design security:
Process Repository Access Rights: Administrators are able to define
which users are able to access particular process repositories on a BPM
Studio server. As an example, a BPM Studio server could house multiple
different process repositories, one for the Finance organization, another
for the Sales organization and so forth, and the administrator will be able
to control which users are able to access each repository for design
purposes, and which are not.
Process/Component Access Rights: In addition to the security level above,
process administrators are able to define at a highly granular level, which
users are able to model, automate, delete and publish business processes
and individual process components.

Client Access via Network Domain Security


The Ultimus Client software is designed for wide use across an organization.
Thus, it is important to provide a universal and centralized means of controlling
client access. Most users already have user names and password access to the
network. It is important to leverage existing user name and password information
to reduce the administrative burden and the number of passwords needed by
workflow participants.
The Ultimus Web-based browser client provides client access security. The
Ultimus browser software prompts the user to enter his or her Domain user name
and password when the user logs in from the browser. The user-entered
information is sent to the Ultimus BPM Server that verifies it against the
directory. Ultimus is tightly integrated with Active Directory, supports Windows
authentication, or LDAP.

The key user benefits of this scheme are as follows:


Users have to remember only one user name and password. They can be
on any desktop and use the same user name and password to access their
tasks.
System administrators have to manage only one directory of user names
and passwords for their network access as well as access to the Ultimus.
Ultimus uses a server-side Security DLL to validate user names and
passwords. Customers can replace the Ultimus-supplied Security DLL
with their own custom DLL to verify user names and passwords using
proprietary schemes or look-up in third-party directories. This is especially
useful if Ultimus is installed in an environment that is not using an Active
Directory or LDAP-compliant directory. Ultimus publishes the API for the
Security DLL.

59
Unified Login
The Ultimus Reports, Administrator, and Org Chart support unified login. When a
user starts the application, the software determines the users name from the
operating system, and then controls what they can do based upon their Access
Rights. The Ultimus Client also controls what a user can do based upon Client
Views assigned in the Administrator and is tied to the domain name of the user

Access Rights
The Ultimus Administrator allows administrators to assign Access Rights to
Groups. Each access right gives permission to access a program or a function
within a program. A user inherits the Access Rights of all Groups to which the
user belongs.

Secure Socket Layer


Ultimus supports the widely accepted Secure Socket Layer (SSL) security
technology and Secure HTTP (HTTPS) Web protocol for secure and encrypted
connectivity between the workflow server and client components. Ultimus uses
the Microsoft Web Server (IIS) as the link between the Web browser and the
Ultimus BPM Server. With SSL enabled, the Web server is authenticated and
sends encrypted data to the browser. This ensures that any data intercepted by an
outside party cannot be read and used.

Ownership
In an organization, it is often necessary or desirable to allow different individuals
to own a workflow process or some other design information. The Ultimus
BPM Suite supports the following types of ownership:

Process Owners: A Process Owner may be assigned to each process as an


option. The process owner receives e-mail notification (which you can
define) for events which warrant an emergency notification, such as
stalled processes. Process owners may be defined by user name or job
function.
Chart Owners: The individual who designs the chart may assign a Group
to each organization chart defined using the Ultimus Org Chart. If a Group
is assigned to a chart, only those users who belong to that Group will be
able to access the chart. This capability allows different individuals to
design and change charts that they own.
Report Owners: Administrators who define a report can specify the group
or individual who can view or edit the report. This provides security as
well as accessibility.

Controlled Participation
The Ultimus BPM Suite provides controlled participation in the automated
process. When a process is designed, the designer specifies the Recipient for each
step. Only those individuals specified as participants at specific steps in the
workflow process have access to the forms for that step. This ensures that only a

60
controlled list of participants receive the form and, therefore, the information, for
any step. Forms are distributed to participants only when they are needed.

Database Access Security


Business processes invariably require access to databases because processes use
or collect valuable business information. Most databases have their own login
names and passwords to control access. However, if the login names and
passwords of all the databases are widely circulated to all the participants of the
process, it is likely to defeat the very purpose of using them.

The Ultimus BPM Suite does not require participants to know the login names
and passwords of the databases used in the process. Only a few individuals
involved in designing the processes need to know them. The process designer
uses this information to connect Ultimus Forms to the databases. The Form design
also allows the designer to control what database actions can be performed at each
step of the workflow. Furthermore, since the designer also specifies who the
Recipients are for each step, he controls who will have access to which Forms
and, ultimately, to the databases.

Ultimus provides the following user database security:


Only a few individuals need to know the login names and passwords of
the databases used in the BPM environment. This information is not
widely distributed.
Process analysts or the core BPM team control what database actions can
be performed at each step of the process.
Process analysts or the core BPM team also control who performs each
process step.

Client Authentication and Non-Repudiation


When a participant performs a task, it is important to know that: (1) the person
who has performed the task is really who he says he is (authentication), and (2), if
the person says that she has approved something, she cannot later deny that she
did so (non-repudiation).

The Ultimus BPM Suite provides client authentication by using the Domain User
names and passwords described above. Non-repudiation is addressed in a similar
manner.

When designing a form, the process designer can place required or optional
signature fields on the forms. When a participant signs these fields, the Ultimus
client software will prompt them for their user name and password. If the user
provides the correct information, the software places the users name and a
special graphic in the signature field. This field is then displayed in subsequent
steps of the process. It is then known to other users at subsequent steps in the
process that only the named person could have signed the form.

As mentioned above, Ultimus allows users to use their own security and directory
scheme by creating a custom DLL to implement a proprietary signature
61
verification scheme. This allows great flexibility in implementing other signature
verification schemes and requires administration only at one location, the Ultimus
BPM Server.

62
System Requirements and Compatibility
Windows Compatibility
Ultimus is 100% compatible with and Windows 2003 and 2000. Ultimus is also
100% compatible with Active Directory and leading LDAP 3.0 compliant
directories. Ultimus is tightly integrated with Active Directory for user
management.

The Ultimus BPM Server


Intel-based PC with a 800 MHz (Dual processors recommended) or higher
Pentium processor
Windows Server 2003 or Windows 2000 Server
1 GB+ RAM
30GB Hard Disk Space
1.44 MB 3.5 Floppy Disk (If not installing from a network)
24X CD-ROM (If not installing from a network)

The Ultimus BPM Studio server


Intel-based PC with a 800 MHz or higher Pentium III OR IV processor
Windows 2000 Server 2003 or Windows 2000 Server with MMC 2.0
1 GB+ RAM
50GB Hard Disk Space
800x600 SVGA monitor
1.44 MB 3.5 Floppy Disk (If not installing from a network)
24X CD-ROM (If not installing from a network)

The Ultimus Organization Chart


Intel-based PC with a 500 MHz or higher Pentium III OR IV processor
Windows 2000
512 MB+ RAM
1GB Hard Disk Space
800x600 SVGA monitor
1.44 MB 3.5 Floppy Disk (If not installing from a network)
24X CD-ROM (If not installing from a network)

The Ultimus ActiveX Client, BPM Studio client, Administrator, Org Chart
and Reports
Intel-based PC with a 800 MHz or higher Pentium III OR IV processor
Windows98, XP Professional, 2000 or 2003
Internet Explorer 5.5 or higher
512 MB+ RAM
1GB Hard Disk Space
800x600 SVGA monitor

63
The Ultimus Thin Client
HTML 3.2 compatible browser including:
o Netscape
o Palm OS
o Windows Pocket PC

FloStation
Intel-based PC with a 800 MHz or higher Pentium III OR IV processor
Windows 2000 Advanced Server SP1 or Windows Serve 2003
512 MB+ RAM
30GB Hard Disk Space
1.44 MB 3.5 Floppy Disk (If not installing from a network)
24X CD-ROM (If not installing from a network)

Database
800 MHz Pentium III OR IV (Dual processors recommended) or higher
processor
1 GB+ RAM
80GB Hard Disk Space
SQL Server 7.0SP4 and 2000SP3a
Oracle 8i and 9i

Web Server
Same as the BPM Server
IIS 5.0 or 6.0

Directory Service
Active Directory 1.0
IPlanet 5.0
Netscape Directory Server 4.2 or 6.0

Flobot
MS Office 2000 SP3, MS Office XP SP2, MS Office 2003

E-Mail
Ultimus supports the following E-Mail protocols:
o MAPI (Microsoft Exchange)
o SMTP/POP (Internet Mail)

64

Вам также может понравиться