BPMS or human-based), or a transaction (the passing of

BPMS provides a new technology platform that takes the model
and metrics defined by the business and turns it into an executable implementation.
This platform automates the human workflow, integrates data between disparate
backend systems, and executes the business rules, controlled by the process
model. And while it’s executing the business process, BPMS continuously records
snapshots of data that allow the process to be not only measured end-to-end,
but monitored in real time, and corrected easily when the need arises.

 

BPMS is not an application. It does not replace NAVSUP’s
existing enterprise applications. It merely automates the process logic that
connects application systems, databases, and human tasks in the
cross-functional business processes that NAVSUP needs to manage and
improve.  BPMS provides an integrated
suite of components that include modeling, executable design, workflow automation,
business rule management, application integration, and performance
management.  Desired BPM capabilities for
NAVSUP are listed in the following sub-sections.

We Will Write a Custom Essay Specifically
For You For Only $13.90/page!


order now

2.1 Modeling

A process is made up of a series of activities. An activity
can be considered as a conceptualization of a task (either machine- or
human-based), or a transaction (the passing of data from one point to another).
Therefore, a process is a super-set of activities, not the individual
activities themselves. Processes are large, often long-running and
complex.  BPMS provides a process
modeling environment that is used to build, execute,
manage, report, and optimize decision-intensive applications. It provides a
graphical and rapid solution development environment, execution engine, and management
dashboard. Business analysts can design, and model process flows visually, and
quickly access the most granular levels of the application to review rules and
dependencies within the same graphical interface.  BPMS automates and executes tasks and provides
self-monitoring to identify bottlenecks and track performance against set
goals.

 

Process models are abstract in that activities are not bound
to an implementation. They provide many functions valuable to NAVSUP:

·        
Capture of existing process flow in a structured
diagrammatic notation often associated with a methodology, to indicate lines of
visibility between collaborating organizations or systems.

·        
Diagramming new or modified processes using BPMN 2.0, which
associates resources, processing time, cost, inputs and outputs with each
process activity.

·        
Simulation of process performance based on various scenarios
of instance volume, resource allocation, branching ratios at decision points in
the flow, and other process parameters.

·        
Analysis and reporting of expected average cycle time
(service level), throughput, and cost for various scenarios, and optimization
of the parameters.

·        
Documentation of the process in some exportable format.

2.2 Repository

Fundamental to BPMS’s promise is the understanding that processes
change over
time, either in response to changing business demands or to optimize
implementation based on runtime experience. Generally, what needs to change is
the process logic, not the internals of individual activities. BPMS allows
process logic to be done quickly with no programming, creating a new version of
the process model. Versions are managed in a process model repository within
the BPMS. Implementing the new process logic requires deploying the new
version, often in parallel with the existing version. Usually process instances
already in execution continue to follow the old version, and new instances
follow the new version.

 

Information has to be held about business processes that are
implemented within NAVSUP. As with many elements of BPMS an analogy can be
drawn between what is required from the process side and what has already been implemented
within other areas. For data to be used effectively, certain data about that
data also needs to be stored; the same is true for process. A repository for process
metadata gives the level of control that is required. The repository forms the
store for business rules, from which extraction and change can take place. Repository
is also needed to support configuration management and versioning.

2.3 Agile Development

BPMS accelerates the implementation of business process
solutions, allowing NAVSUP to introduce new products and services more quickly,
and respond more nimbly to continually changing business demands. Initial
implementation types are typically 45 to 90 days, not the many months required
using traditional development tools and methodologies. The keys to BPMS’s
agility are flowchart-like process logic design, code-free task design,
facilitated component reuse, and real-time problem resolution.

 

Process logic, the flow of process activities – including
exceptions – is designed like a flowchart. Changing it is simple – you just
redraw the diagram. In the favored collaborative design paradigm, the
executable design and the business analyst’s original process model share a
common flow diagram, ideally using the Business Process Modeling Notation
(BPMN) standard from OMG.

The “work” in BPMS is done by the process tasks, which
typically represent either human tasks performed using a web application created
by the BPMS or integrating with an existing backend application or web service.
With traditional waterfall development, creating web applications and
integrating external systems required code, lots of it, with its attendant
debugging, testing, and other things that get in the way of agility.  BPMS contains form design tools – in the best
products, full web application design – based entirely on drag-and-drop
components. Moreover, integration uses special middleware components called
adapters that are also configured using point-click wizards. And as companies
increasingly adopt service oriented architecture, integration gets even easier
– you just bind process activities to reusable services.  All these features make BPMS an essential
tool to promote agility in the enterprise.

2.4 User Experience

BPMS provides multiple rules-driven user interfaces that can
all be tailored to the needs of specific users and their roles in single or
multiple processes.  Portal Rule Forms
are used to help design user experience to ensure that third-party portal complies
with NAVSUP standards and automatically generates the proper HTML layout. The
form itself requires no HTML programming. This approach has been extended for
standard BPMS user interfaces that allows for graphical user interface (GUI)
components to be dragged and dropped onto the screen, with the system
automatically generating the HTML to support it.

 

The portal-based design of BPMS user interface allows the
developer or the user to modify or display the content and data needed by that
user at that particular step or even task in a process. Given that all elements
of the user interface are driven by rule sets, the product allows a significant
level of flexibility for not only adapting the user interface to a process, a
step, a task, and role – but for doing so dynamically, based on the unique
conditions within the process. The result is a navigation screen flow that the
business user can use as a guide through the data entry or other screen
required to complete his or her work.

 

Within the process design and administration components at
this layer, a key differentiator for BPMS is that all the elements of process
design and administration including classes, process flows, decision rules, methods,
properties, and services are all rule sets that can be developed and
manipulated to provide rapidly customized BPMS applications.

2.5 Integration

Integration capability allows process activities to directly
execute APIs (application programming interfaces), object methods, or web
service operations on external applications and information systems with little
or no programming.  BPMS are expected to
be compliant with SOA for seamless integration with NAVSUP applications, data
and processes.  The essential components for
SOA include a communications bus, integration adapters, and data
transformation. The communications bus supports reliable transport of requests
and responses between the process engine and the target business systems. While
some integration actions can be performed synchronously as remote procedure
calls over the network, the general case requires a communications bus based on
message queuing, such as an ESB (Enterprise Service Bus). On JEE (Java
Enterprise Edition) application servers, standard capabilities such as JMS (Java
Message Service) provide a common API to enterprise messaging from multiple bus
providers.

 

Integration adapters are software components that expose the
native APIs and object methods of enterprise applications and information systems
as service requests and responses for access by the process engine. In the BPMS
design tool, the adapters allow users to introspect the available APIs and
methods of the target system. Selected functions are then turned into integration
components that can be attached to process activities and invoked at runtime
either synchronously or asynchronously.

 

Data transformations map process data into the elements and
formats required by the integration component. 
Each component has a request format – typically XML schema but in some
cases a list of Java parameters.  The
BPMS design environment provides a graphical tool to build the mappings, and a
transformation engine to perform them at runtime.

 

BPMS integration capability allows the process to coordinate
the functions of multiple external systems, even though they may be based on
different platforms, languages, and data models, and to do it with little code.
BPMS provides standard activity types that can execute an integration component
(i.e. issue it a service request) and receive the response. First, the process needs
to perform a data transformation to populate the request variable. The
integration component, via the adapter and communications bus, translates the
request into the native API of the target system, executes it, and returns the
response to the process.

2.6 Deployment and Execution

A key feature of executable process models is their ability
to be transferred, or deployed, to a runtime BPMS component called the process
engine. When triggered by conditions specified by the model, the engine creates
a new instance of the process and executes it automatically. For each instance,
the process engine automates and monitors process flow. When routed to an interactive
step, the instance becomes a work item accessible from the assigned
participant’s worklist.

For automated steps, the process engine invokes an
executable object as specified by the model, typically an integration component
generated in the BPMS design tool. Integration components receive a set of data
elements from the process engine and use them to invoke an API or object method
on an external business system or enterprise application, via an integration
adapter. Data returned from the invocation is passed back to the process by the
integration component. Conversion of process data to the formats required by
the integration component is performed by a data transformation engine within
the BPMS runtime. Definition of transformations (also called data mappings) is
provided graphically by the BPMS design tool.

 

Another key capability for BPMS is in the handling of
events. Events are signals received by the process engine either from an
external system, as a message, or from another part of the BPMS, such as a rule
engine.  A process can respond to a event
in one of two ways: It can launch a new instance of a process, or it can complete
an activity defined to wait for the event or message. The list of events a BPMS
can listen for and respond to (without custom programming) varies widely from
one offering to the next, again reflecting each vendor’s emphasis on process
use cases.

 

BPMS process engine provides exception handling and
transaction management. Exceptions come in two types: system exceptions and
business exceptions. A system exception is typically a fault raised by an
automated step in the process. For example, the data passed to the integration component
may not match the required structure or schema, or the external system invoked
may be down, resulting in a timeout. A business exception is an event issued by
a participating user or system, such as a change or cancellation of an order in
process. Upon detection of a system exceptions, the process engine suspends the
normal flow of control and triggers a special exception handler flow defined in
the modeling tool and attached to an individual activity, a group of
activities, or the process. The process model also allows a block of activities
to be grouped as a single transaction scope, meaning if an exception occurs
within that block, the effects of any completed activity within the scope must
be “undone,” a feature called compensation. In most (not all) BPMS process
models, a compensating activity can be defined for each normal activity in a
transaction scope for this purpose. Unlike classical “ACID (Atomicity,
Consistency, Isolation, Durability” transactions using protocols like two-phase
commit, compensation works with long running transaction scopes. For example,
during the order creation process, if the customer does not have sufficient
funds, the BPMS compensates by creating the order cancellation process.  Some process engines, particularly those that
run in a JEE container, also support ACID transaction recovery (rollback,
retry) for those activities where it is applicable.

2.7 Management and Administration

As stated previously, BPMS is the tool that brings control
back; to manage the actual process rather than have a model and a procedure
manual which bears little resemblance to the actual execution of that process.  There is a need to be able to track the
progress of an individual process, which can also be called the process
instance, against where the BPMS says it should be. It needs to examine the
state of the process as it proceeds towards the goal, whether that is the
delivery of the correct goods to a customer, or the successful launch of a new
product. The real goal of BPMS is to build better business, and NAVSUP can
realize a substantial return on their investment in BPMS solutions if they can shave
time, costs, and errors off their core processes.

 

BPR was a one-time event that was difficult and painful to
do. BPMS is an iterative process, where monitoring, managing, and analyzing how
the process model compares to reality is then used to hone the process, make
the model gradually more real, and enable continual process improvement.  One of the key elements in BPMS is the
ability to have flexible rules, and one way in which flexibility can be
achieved is by allowing for human intervention within the process flow. At
first glance, automating a business process to eliminate human intervention may
seem to achieve a greater cost-cutting benefit than that of BPMS, which may
still rely on human intervention at points along the process. However, many times
this comes at the price of having complex exception handling routines embedded
within the implementation.  If human
intervention is allowed for; that is, the process is not considered as a closed
loop, then two benefits can be immediately gained. Firstly, exception and error
handling routines can become more generalized, instead of having to pre-identify
every possible set of circumstances that could ‘break’ the process, a more
general set of routines can be implemented. Secondly, which can be considered
as an extension to the first benefit, exception and error handling can be based
on self-analysis of the running processes.  

 

Beyond agile problem resolution, the management component of
BPMS called business activity monitoring (BAM) delivers strategic business
value. Many companies today have no way even to measure business performance at
the end-to-end process level. BPMS’s BAM component provides that visibility.
With a few BPMS offerings, it’s not even necessary to model and execute the
process to measure performance.  NAVSUP
can “instrument” the various backend systems, the way they work today, and
capture a performance baseline. Many companies find this a good place to start,
since it identifies the key problem areas to attach with modeling and an improved
to-be process.

 

As part of a BPMS process solution, BAM puts KPIs in a
process context: where is the problem occurring, under what conditions BAM lets
NAVSUP define rule-triggered actions, ranging from user notifications to
automated escalation procedures, to resolve problems in real time. Moreover,
BAM provides a comprehensive dashboard of KPI charts and gauges, allowing
process owners to continuously monitor the health of the business, visualize
operational performance trends or breakdowns by any number of dimensions, and
drill down from high-level measures to selected subsets, or even individual
instances, to resolve problems.  Because
BPMS assumes change and implements it easily, performance visibility leads
naturally to continuous performance optimization, the key to competitive
advantage.

2.8 Architecture and Standards

Consistency with established platforms and standards at
NAVSUP is always a factor. Although the web and XML web services are smoothing
over some of the barriers between platforms, familiar platform issues like
Windows vs Unix, JEE vs .NET, and supported DBMS (Database Management Systems)
will usually rule out certain BPMS offerings right off the bat. The ability to
leverage expensive existing infrastructure like integration middleware,
business rule engines, or enterprise architecture (EA) modeling tools may also
favor certain BPMS contenders.

 

As discussed
previously, BPMS architecture and modeling language standards should be taken
into consideration. A key enabler is BPMN 2.0, the process definition language
standard from OMG.