Corporate Context A SOA BPM Alliance Via Business
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
Service Oriented Architecture (SOA) • An enterprise architectural style of design, deployment, management and governance of web 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
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)
Corporate SOA/BPM Alliance
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 Web. Sphere Integration Developer (WID 6. 1. 2) JSP/HTML: Client input – Fund/Account numbers, Global Reference Number WSDL – Operations • • get. BPMStatus() Real-Time Transaction Status in BPM. Reused get. Activity. Status() View of Transaction Activities. Composite, Re-Uses get. BPMStatus() get. Fnd. Acct. Status() Returns Pending Transactions Per Reference Number to Composes get. BPMStatus() and get. Activity. Status(). It Reuses them for Real-Time Status. Cancel. Transaction() Notifies partner to Cancel an in-flight transaction, Terminates Process Instance in BPM and Updates Global DB with a “Cancelled” Business Status. re. Submit. Tran() – Binding/HTTP transport – Port. Types: Corporate Context Service Servlet Web Services Proxy classes
Client
Pending Transactions
Transaction Summary
Transaction Activity
Cancelled Transaction
BPM Implementation • IBM Web. Sphere Application Server (WAS) – BPM Application Deployment – BPM Application exposed as a Web Service per WSDL Port. Type specification • IBM Web. Sphere Process Server (WPS 6. 1) – – Business Process Instance BPEL: BP Workflow BP Database (ORA) BP Choreography
BPEL (BPM)
- Slides: 24