ACM Solution Replication

ACM Technical Solution Architecture
- Development and Deployment of ACM Solutions-
ECM Fast Start Workshop 1Q2011
IBM ECM Worldwide Business Partner Technical Enablement
Dr. Sebastian Goeser
[email protected]
1
© 2010 IBM Corporation
Agenda
1)The ACM Solution Domain
2) Case Manager 5.0 Product Architecture
3) Development and Deployment of ACM Solutions
4)Case Management Solution Patterns
a)Core Function Solution
b)Integration Solution
c) Extension Solution
d)Added Value Solution
e)Solution Replication
5)Summary
2
© 2010 IBM Corporation
What is Case Management ?
The Forrester definition of Case Management:
A semi-structured but also collaborative, dynamic, human, and informationintensive process that is driven by outside events and requires incremental
and progressive responses from the business domain handling the case.
Examples of case folders include a patient record, a lawsuit, an insurance
claim, or a contract.
The case folder would include all the documents, data, collaboration artifacts,
policies, rules, analytics, and other information needed to process and manage
the case (emphasis SG)
3
P8 & IBM Case Manager 5.0
© 2010 IBM Corporation
Case types by industry
4
P8 & IBM Case Manager 5.0
© 2010 IBM Corporation
IBM Case Manager: High-Level Component Architecture
WebSphere
IBM Case Manager
5
P8 & IBM Case Manager 5.0
Filenet P8 5.0
© 2010 IBM Corporation
IBM Case Manager at the core of a Solution Framework
A software solution framework is understood as a domain-specifc software system with variable and fixed
components which embodies mechanisms to define, partially derive and instantiate software solutions of
that domain.
•A domain is an area of business expertise where IT support is considered helpful, e.g. case management.
•We use Model-Driven Architecture (MDA) as a means for technical description of this solution framework where
MDA supplies well-defined terms.
•IBM Case Manager embodies deployment / transformation mechanisms for the following types of MDA models:
•Computation Independent Model (CIM)
Use cases, solution definition artifacts
•Platform-Independent Model (PIM)
ACM/P8 component models, class systems, and code for the respective CIM
•Platform-Specific Model (PSM)
Target infrastructure with ACM components installed/configured and ACM solution
deployed to it
6
P8 & IBM Case Manager 5.0
© 2010 IBM Corporation
IBM Case Manager from an MDA perspective
CIM
Use cases, case types, document models, task definitions,
activity diagrams, roles, product
components, interface specifications ...
Development
PIM
CMDOS content, solution components, workflow
definitions, class/interface models, ...
Deployment
PSM
7
Case Builder,
Rational Software Architect,
Eclipse Modelling Framework,
Lotus Mashups,
Business Process Definition tool
Case Builder, Lotus Mashups,
WebSphere Integration
Developer, Process Designer,
Filenet Enterprise Manager,
Filenet Deployment Manager
CMTOS's, target infrastructure, deployment model,
transferred workflows, solution component install&
config, ...
P8 & IBM Case Manager 5.0
© 2010 IBM Corporation
Re-usable Artifacts in ACM Solution Building
Artifact
Type
Solution definition file (SDF)
Development Context
Deployment Context
Specification XML (re­uses Case Builder, Document CMIS)
CMAC
Editing on CMDOS with Case Builder
Document types, roles, properties, case types, and tasks
Process Engine configuration
Part of SDF
as for SDF
Unidirectional mapping onto CMTOS with Case Builder, or CMAC
as for SDF
Specification XML
Document
Case Builder, Process Designer
Workflow definitions
Specification XPDL
Document
Case Builder, Process Designer
Document model with folder, properties, security, inheritance, etc. CMTOS physical design
Visual programming objects
UML 2.0 artifacts (use cases, Design component/ deployment/class document
models, activity and sequence diagrams etc.) Visual Service Component programming Architecture (SCA) objects
objects
Coding against REST APIs
Java code
Pages and widgets
8
P8 & IBM Case Manager 5.0
Format
Tool(s)
XML (re­uses as for SDF
CMIS)
Object Store configuration
Java Code /re­
uses Iwidgets standard) XML/ UML 2.0
XML object (e.g., SCA or XPDL)
Payload in JSON / CMIS XML
Editing on CMDOS with Case Builder
Development of tasks through Case Builder, process refinement with Process Designer, round­
tripping supported
Filenet Enterprise Editing on CMTOS with Manager, Workplace FEM, Workplace XT, XT
round­tripping not supported
Case Builder, Lotus Build new pages using Mashup Server Case Builder, and LMS
(LMS)
Rational Software Editing of XML Architect, Eclipse documents, creation of Modeling diagrams
Framework
WebSphere Provide implementations Integration for empty task definitions
Developer
Development tool
Get information about case status, modify document and process metadata
Deployed as queues, rosters, etc. on process database
Deployed into Process Engine work classes.
Deployment into production environment using FDM
Deployment to WebSphere Application Server
Transform Class models into Java code, component models into WSDL descriptions etc. Deploy jointly into WebSphere Process Server and Process Engine
Deploy as service or widget implementation, or other J2EE object
© 2010 IBM Corporation
Representation and Transformation Tools
Tool
Case Builder
Artifacts Represented
Solution Definition: Case Type, Roles, Document Model, Tasks, Properties
SCA objects, BPEL processes, Web Services, Java classes, adapters
Transformation supplied
ACM Solution Deployment
WebSphere Deployment to WebSphere Process Integration Server, WebSphere ESB etc. Developer
Rational Software Use cases, component models, activities, UML to SCA objects, UML to web services, UML 2.0 diagrams, deployment models, UML to Java, Architect
system infrastructure
Process Designer Workflow definitions, Business Process Transfer of XML workflow definitions into Components, Step Processors, etc. database work classes Lotus Mashups
Pages, Widgets, Wiring between widgets Deployment of pagees to WebSphere Application Server
Filenet Enterprise Document and Case Models, Security Configuration export/import, CE class Manager
elements, Inheritance
deployment 9
P8 & IBM Case Manager 5.0
© 2010 IBM Corporation
Standards-based Interfaces for ACM
•RESTful web services:
The three major APIs, namely the CE-based CMIS API, the PE REST API, and
the Case REST API, are all easy to use, HTTP-based REST APIs. Together, they can be
referred to as the Generic ACM REST API.
•CMIS interface:
The web services interface of Content Engine follows the Content Management
Interoperability Services (CMIS) standard and can be transparently used in Case
Management applications. The CMIS services return well-defined XML objects.
•JSON list format:
The CASE and PE REST APIs return data in the easily readable/writable and
platform-independent JavaScript Object Notation
•XML:
•XPDL:
10
All case management solution definition artifacts are persisted as XML objects
residing in the design object store (ADOS)
Workflow and task definitions follow the XPDL standard which
enables easy interchange with various process design tools
P8 & IBM Case Manager 5.0
© 2010 IBM Corporation
What is a Solution Template
■
Starting point for creating new solutions or extending an existing solution
■
Every solution definition file is also a solution template
■
A solution template must contain a solution definition file but optionally can
contain
– Process engine configuration and Workflow definition files
– A Pages subfolder containing the LM pages for deployment
■
Templates are used to provide industry-specific solution settings
■
See the following article on how to work with industry-specific solution
templates:
http://www.ibm.com/developerworks/data/tutorials/dm1101casemanagertemplates2/index.html?ca=drs-
11
© 2010 IBM Corporation
ACM Solution Types and their Transitions
•Core Function Solution:
Basic ACM Services centered around CRUDFunctionality for Cases and their constituents
•Extension Solution:
Combines ACM with business solutions from other
functional areas, e.g. industry-specific applications.
Extension
Solution
•Integration Solution:
Within an ACM solution approach, use alternative
components which are more or less co-extensive
with IBM Case Manager functionality
•Added Value Solution:
Use IBM or 3rd party components to provide
functionally enhanced ACM services
•Replication Solution:
Take any kind of ACM Solution and provide it it in
multiple instances, e.g. for a number of customers.
12
P8 & IBM Case Manager 5.0
Replication
Solution
Integration
Solution
Core ACM
Solution
Added Value
Solution
© 2010 IBM Corporation
Core Functions ACM Solution
•Leverages two main product component stacks: Filenet P8 infrastructure (red) and Basic
ACM (green).
13
P8 & IBM Case Manager 5.0
© 2010 IBM Corporation
The ACM Core Functions Solution Template
Description: The ACM Core Functions Template covers the editing functionality for
instances of the ICM Case Object Model, i.e. create, read, update and delete (CRUD) for
the case artifacts which are part of a “Solution”, plus the Solution artifact itself.
Solution Context: Introduction of a case management solution at a customer with limited
or no dependency of the production system on existing legacy solutions. This may be
greenfield situations or migrations of an existing document management repository into
ACM.
Tools to be used:
•Case Builder for basic definitions of all case artifacts
•Filenet Enterprise Manager (FEM) for the manipulation of document types (and
case types ?)
•Process Designer for manipulating workflow definitions, personal inbaskets, roles,
and role inbaskets, and for adding system functions to workflows
•Lotus Mashups to create Pages
•Process designer to connect Pages with Roles
14
P8 & IBM Case Manager 5.0
© 2010 IBM Corporation
The ICM Case Object Model
With Generalization relationships to an abstract class “Case Artifacts”
With Composite Association relationships for the “Solution” class, which show cardinalities
With Typed Properties
15
P8 & IBM Case Manager 5.0
© 2010 IBM Corporation
Extension Solution with 2
Legacy System Interfaces
•We don't consider connector extensions such as e.g. through IBM Content Connector, in this
workshop
•API level extension solutions through programming against legacy and ACM interfaces.
16
P8 & IBM Case Manager 5.0
© 2010 IBM Corporation
The ACM Extensions Solution Template
Description: The ACM Extensions Template comes to bear when ICM is deployed
in conjunction with an existing or co-deployed business solution not related to the
IBM Case Manager product stack. The business solution may be a specific
document management solution, such as, e.g., a proprietary procurement system,
or an industry application with database or workflow system association.
Solution Context: When introducing a case management solution at a customer in
conjunction with a technically non-related business application, either connectors if
existent, or solution-level integration programming may be used. In this workshop,
we will consider only the latter approach.
Focus: The key aspect of the extension solution template is on specific business
processes which require significant industry, domain, or company expertise. This
expertise is typically embodied in specialized applications. Generic ACM
functionality as provided through a core function solution is considered insufficient
here.
17
P8 & IBM Case Manager 5.0
© 2010 IBM Corporation
ACM APIs to be used for Extension Solutions
Generic ACM REST API – A RESTful, web services API covering ACM Core Functions and
providing case solution CRUD functionality both on the PIM and PSM level. This API (the
workshop's core) has the following constituents:

– Case REST API – Access and manipulate case-specific objects including solutions,
case types, tasks, case comments, and case histories
– CMIS API - Work with case management content objects such as (case) folders,
documents, and their respective metadata
– PE REST API - Manipulate the workflow-related aspects of tasks, specifically, to
access and manage workflows, application spaces, processes, roles, and in-baskets.
18
■
CE Java API – Very comprehensive API which serves as an interface realization for
Content Engine and offers all of its features in an in-depth programming model.
■
PE Java API - Very comprehensive API which serves as an interface realization for Process
Engine and offers all of its features in an in-depth programming model.
P8 & IBM Case Manager 5.0
© 2010 IBM Corporation
Integration Solution with WebSphere Components
•Considering WebSphere-based integration only
•Please note that integration covers both modeling/PIM (Case Builder-WID) and runtime/PSM elements
(e.g., WPS)
•The diagram shows ICM components in green boxes.
h
19
P8 & IBM Case Manager 5.0
© 2010 IBM Corporation
Integration Solution Template
Description: This template is for technical integration of an ACM solution with elements
not contained in the ICM product portfolio. These may be DBMS, portal systems, of
application servers, other such components, or any combination of them. Strictly
speaking, this template can be applied not just to core function solutions, but to
extension or added value solutions as well.
Context: A frequent context is provisioning of an ACM solution to a customer with a
product component strategy deviating from ICM in some respect.
Focus: The focus of this solution template is not on functional but on operational
enhancements under an otherwise conservative solution definition.
20
P8 & IBM Case Manager 5.0
© 2010 IBM Corporation
Added Value through further ICM and P8 Components
•Additional P8/ICM components for functionality exceeding basic ACM
•Note that most of these components originate from the P8 stack.
•Note also that Case Analyzer is based on the former Process Analyzer and has been enhanced to analyze case
task data.
21
P8 & IBM Case Manager 5.0
© 2010 IBM Corporation
Added Value Solution Template
Description: This template extends the core functionality towards a more knowledgeoriented, analytical processing of cases and their content. Also, it may be used for
complementing the case management base elements through specialized forms of task
processing or ad-hoc workflow. The common denominator for these extensions is that
they increase the means of users to engage with a case.
Context: Enhance generic document or case management solutions towards user
empowerment or knowledge management, e.g. through supplying functionality for
processing textual content under template-oriented or stochastic algorithms.
Focus: How can the work situation of end users be improved ? What kind of generic
tools would be helpful for them to better understand and work with case content ?
22
P8 & IBM Case Manager 5.0
© 2010 IBM Corporation
ACM Solution Replication
ICM provides a number of mechanisms to replicate a given case management solution built with it across different
sites, customers, organization units, or servers. From an MDA perspective, this is done through multiple deployments
of a given platform-independent model. The various deployment tools of the ACM framework are marked green in the
following diagram.
23
P8 & IBM Case Manager 5.0
© 2010 IBM Corporation
Solution Replication Template
Description: Replication of each of the four solution types described so far creates a
solution of its own, and may be very beneficial in business terms. While ACM replication
happens mostly through multiple deployments of the same PIM, it allows for
customization on the PIM and even CIM level.
Context: The context of this solution type is typically multiple provisioning of a solution
to more than one group of end users/customers. This may be a partner serving a
number of “similar” SMB customers, or a government agency supplying a case
management service to many authorities within that government.
Focus: The focus for the replication template is on the administrative and deploymentrelated tools to perform replication, if possible with no or only minimal information loss.
24
P8 & IBM Case Manager 5.0
© 2010 IBM Corporation
Deploying a Solution from Development to Production Environment
Development Domain
Case Builder
Initiates
Deployment
Production Domain
CMDOS
CMAC
Initiates
Deployment
FDM
CMDOS
Target
OS
PE
Sandbox
25
Target
OS
Target
OS
PE
PE
Production Target 1
Production Target n
© 2010 IBM Corporation
Summary
■
We have given introductions to the very domain of case management, to the product
architecture of ICM, and to the kinds of solutions that can be built with it.
■
The framework character of the IBM Case Manager product line offers many important
opportunities for partners to make business on this new kind of platform.
■
Building solutions with IBM Case Manager follows the well-known Agile approach and
can (but does not have to be) embedded into an MDA style of design, development,
and deployment.
26
P8 & IBM Case Manager 5.0
© 2010 IBM Corporation
Supplementary Charts
27
P8 & IBM Case Manager 5.0
© 2010 IBM Corporation