Corporate Context: A SOA & BPM Alliance Via Business Data Management Amir Bahmanyari Architect.
-
date post
15-Jan-2016 -
Category
Documents
-
view
217 -
download
0
Transcript of Corporate Context: A SOA & BPM Alliance Via Business Data Management Amir Bahmanyari Architect.
Corporate Context: A SOA & BPM Alliance Via Business Data Management
Amir Bahmanyari
Architect
Topics
• Abstract Highlights• A Corporate Context
– Client– BPM– SOA– Corporate Business Data– Operations Assets– Corporate Registry and Repository
• SOA: Service Oriented Architecture
• BPM: Business Process Management
• Business & Information Technology Alliance
• Case Study: Corporate Context Services
Abstract
• Business Process Management services are becoming the core providers of mission critical real-time corporate business data.
• Short List
– Business transactions status – Business Process Management data – Business partners’ data – Corporate Global data
This presentation demonstrates how BPM web services are architected to align with SOA principles to expose such services in a Corporate Context
A Corporate Context
• The Client, a business person, initiates the invocation of an operation implemented by a Web Service which providing access to certain type of corporate data such as the status of an in-flight transaction
• As a consequence of executing a Business Process workflow, the dynamic changes in the state of business transactions are persisted in distributed databases across corporate
– BPM Processes Instance data (process server)– BPM partners’ related data (adapters, etc.)– Global transactional data (audits and random corporate references)
• A corporate business application utilizing SOA principles to access such diverse corporate data provides the client with services to expose these data in real-time for control, monitor and reports generation purposes
• An enterprise architectural style of design, deployment, management and governance ofweb services in an enterprise
• A business-centric IT architectural approach that supports integrating your business as linked, repeatable business tasks, or “services” implemented as distributed web services
• A perception of distributed, loosely coupled, independent, autonomous, and reusable web services collectively or selectively implementing functions for completing a well defined Business Process
• Without BPM, SOA lacks supporting agile and competitive enterprise “business” scoped services
Service Oriented Architecture (SOA)
SOA Principles
• Consistency: Consistent behavior regardless of path to the behavior(Well defined Interfaces and Binding types to service providers)
• Commonality: It provides the business with common, enterprise wide information that is consistent and coordinated (business process encapsulation).
• Modularity: Reusability, and agile Composition(core function defined services)
• Decoupled: Total autonomy, and governance of business units, functions, components while integrated(well defined service life cycle)
• Manageability: Defined and independent SLAs to manage business functions
Business Process Management (BPM)
• BPM is a management approach focused on aligning all aspects of an organization with the wants and needs of clients
• Gartner: “BPM provides governance of a business's process environment to improve agility and operational performance”
• Simply put, BPM is a discipline for defining a set of distinct activities which collectively, and algorithmatically constitute a well defined business function.
• Without SOA, BPM “silo” does not extend to an enterprise service provider scope
In a Nutshell
SOA & BPM Alliance
• Corporate Data
• Transactional– Intermediate enterprise tiers– Business partners systems– Backend resources
• Business Process Instance (process choreography, restart, terminate etc.)
• Global (reference/tracking numbers)• Warehousing• Client Application (local app DBs)• Internet (search engines etc.)
Case Study: Corporate Context Services
• Architecture View• Corporate SOA/BPM Alliance
– Corporate Registry & Repository– Corporate Databases
• SOA Client Implementation• BPM Implementation• Demo
Architecture (out of a nutshell)JSP
Client App WSDL
Servlet ProxySOAP/HTTPS
Business Process(BPEL)
Process ServerApplication Server
Middleware: Enterprise Service Bus
Adapters:Business Services Components
`
Global Data Source
Business Flow Management
APIs
JDBC
Business Process Instance
Business Service
Data
ShareHolders Accounting System
International Transfer Agency
Global Payment System
Process Choreography
Corporate SOA/BPM AllianceCorporate Registry and Repository
JSP Client App WSDL
Servlet ProxySOAP/HTTPS
Business Process(BPEL)
Process ServerApplication Server
Middleware: Enterprise Service Bus
Adapters:Business Services Components
`
Global Data Source
Business Flow Management
APIs
JDBC
Business Process Instance
Business Service
Data
ShareHolders Accounting System
International Transfer Agency
Global Payment System
Process Choreography
Corporate Registry & Repository
• Enables SOA Governance (Life Cycle)– Publish a “Service” (WSDL)– Find the right available “Service”– How the web services are used (Endpoints,
Operations, Binding type etc.)– Who uses the services– Service reusability – Services composition
Corporate Databases(1)
• Global Database (Global Reference Number)
• Business Process Engine Database
– Process Instance
• Process Instance Id (PIID: PK for flow manager lookups APIs)
• Process Instance Status (Running, Terminated, Finished, Failed)
• Process Instance Activities States (BPEL)
– Process Choreography, Updates to the message contents, manual change of PI status, deletion, resubmission
• BPM Application database
– Long running processes reports data
– Microflows temporary data (if any)
Corporate Databases(2)
• Mid tiers business services components– Persist a BPM transaction request while in
progress– Persist the transaction status while posted to
backend– Update the transaction status as backend sends
notifications• Business partners backend systems
– Recording backend transaction status– Maintaining pending transactions data– Account details
• Operation Resources– Third party systems data– Legacy backend data
SOA Client Implementation
• IBM WebSphere Integration Developer (WID 6.1.2)• JSP/HTML: Client input
– Fund/Account numbers, Global Reference Number• WSDL
– Operations• getBPMStatus()
Real-Time Transaction Status in BPM.Reused
• getActivityStatus()View of Transaction Activities.Composite, Re-Uses getBPMStatus()
• getFndAcctStatus()Returns Pending Transactions Per Reference Number to Composes getBPMStatus() and getActivityStatus(). It Reuses them for Real-Time Status.
• CancelTransaction()Notifies partner to Cancel an in-flight transaction, Terminates Process Instance in BPM and Updates Global DB with a “Cancelled” Business Status.
• reSubmitTran()
– Binding/HTTP transport– PortTypes: Corporate Context Service
• Servlet• Web Services Proxy classes
Client
Pending Transactions
Transaction Summary
Transaction Activity
Cancelled Transaction
BPM Implementation
• IBM WebSphere Application Server (WAS)– BPM Application Deployment– BPM Application exposed as a Web Service per
WSDL PortType specification
• IBM WebSphere Process Server (WPS 6.1)– Business Process Instance– BPEL: BP Workflow– BP Database (ORA)– BP Choreography
BPEL (BPM)