Examples of BPM + SOA joint work

0 views

Published on

For OMG BPM/SOA Integration working group

Published in: Technology, Business
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
0
On SlideShare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
340
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide
  • The business world understood a long time ago that processes and services are the backbones of most business systems. At present, many enterprises use the process-centric approach as a critical tool to organise their operations as a set of business processes and practices for their management, including improvement.
  • At a process-centric enterprise one may have many elementary nano-services which are organised into a mega-service, i.e. the whole enterprise
  • Titel / AutorIn Titel / AutorIn
  • Titel / AutorIn Titel / AutorIn
  • Examples of BPM + SOA joint work

    1. 1. FOR OMG BPM/SOA INTEGRATION WORKING GROUP EXAMPLES OF BP M + SOA JOINT WORK Dr Alexander Samarin www.samarin.biz
    2. 2. <ul><ul><li>top managers </li></ul></ul><ul><ul><li>enterprise architects </li></ul></ul><ul><ul><li>business line managers </li></ul></ul><ul><ul><li>process owners </li></ul></ul><ul><ul><li>super-users </li></ul></ul><ul><ul><li>normal users </li></ul></ul><ul><ul><li>project managers </li></ul></ul><ul><ul><li>business analysts </li></ul></ul><ul><ul><li>IT managers </li></ul></ul><ul><ul><li>IT architects </li></ul></ul><ul><ul><li>IT developers </li></ul></ul><ul><ul><li>IT operators </li></ul></ul>The main problem of BPM and SOA – too many internal stakeholders 2010-03-09 Examples of BPM+SOA joint work
    3. 3. <ul><li>Dynamic set of artefacts/assets/primitives </li></ul><ul><li>Artefacts are interconnected and interdependent </li></ul><ul><li>We have to anticipate potential changes: </li></ul><ul><ul><li>policies, compliance, technology, etc. </li></ul></ul><ul><li>Implementation of such changes necessitates the evolution of some artefacts and the relationships between them </li></ul><ul><li>It must be easy to modify all artefacts and relationships without causing any unexpected side effects </li></ul>System architecture view of an enterprise 2010-03-09 Examples of BPM+SOA joint work
    4. 4. <ul><li>Different estimations of the development/maintenance life-cycle cost ratio </li></ul>Enterprise business systems need to be adaptive 2010-03-09 Examples of BPM+SOA joint work 95 % 5 % 40 % 60 % 80 % 20 % 1 – Estimated average in the IT industry 2 – A real scenario (governmental client) 3 – Estimated by an IT staff member maintenance development 1 3 2
    5. 5. <ul><li>Who ( roles ) is doing What ( business objects ), When ( coordination of activities ), Why ( business rules ), How ( business activities ) and with Which Results ( performance indicators ) </li></ul><ul><li>Extra artefacts </li></ul><ul><ul><li>Events </li></ul></ul><ul><ul><li>Audit trails </li></ul></ul><ul><ul><li>Two types of business object </li></ul></ul><ul><ul><ul><li>data structures </li></ul></ul></ul><ul><ul><ul><li>documents </li></ul></ul></ul>Business processes are complex relationships between artefacts 2010-03-09 Examples of BPM+SOA joint work
    6. 6. BPM is a tool for improving enterprise business performance 2010-03-09 Examples of BPM+SOA joint work <ul><ul><li>BPM as a discipline (use processes to manage an enterprise) </li></ul></ul><ul><ul><li>BPM as software: </li></ul></ul><ul><ul><li>BPM suite (BPMS) </li></ul></ul>Any process-centric enterprise has some BPM, but how can we industrialise this BPM? A natural evolution of BPR, Lean, ISO 9001, 6 Sigma The aim is to have a single description of business processes: - model in design - input for project planning and execution - executable program for coordination of work - documentation for all staff members - basis for management decisions An enterprise portfolio of the business processes as well as the practices and tools for governing the design, execution and evolution of this portfolio A multitude of tools “handle” processes
    7. 7. <ul><li>Definition </li></ul><ul><ul><li>architectural approach for constructing software-intensive systems from a set of universally interconnected and interdependent services ( operationally independent functional units ) </li></ul></ul><ul><li>Advantages </li></ul><ul><ul><li>use of standard and pre-fabricated building blocks </li></ul></ul><ul><ul><li>high level of system flexibility </li></ul></ul><ul><ul><li>reducing complexity </li></ul></ul>Service-Oriented Architecture (SOA) 2010-03-09 Examples of BPM+SOA joint work
    8. 8. <ul><li>Services are considered to be explicitly-defined and operationally-independent units of functionality </li></ul><ul><li>There is a formal description of the service provided between the service provider and the consumer </li></ul><ul><li>Operational independence means that problems in one service do not affect the functioning of another service </li></ul><ul><li>Implementation of services is not visible and does not need to be </li></ul>Services and processes (1) Examples of BPM+SOA joint work 2010-03-09
    9. 9. <ul><li>Processes are considered to be an explicitly-defined coordination of services to create a particular outcome </li></ul><ul><li>There is a formal description of the relationship between the various services </li></ul><ul><li>Coordination means that processes serve as a conductor to manage bigger services which are constituted from smaller services </li></ul>Services and processes (2) 2010-03-09 Examples of BPM+SOA joint work
    10. 10. <ul><li>BPM, by revealing the artefacts and the relationships between them, provides the necessary context (e.g. granularity) for the definition of services </li></ul><ul><li>SOA provides recommendations for the implementation, execution and governance of services </li></ul><ul><li>BPM+SOA enable flexible, explicit and executable models of an enterprise </li></ul>Synergy between BPM and SOA – structuring relationships (1) 2010-03-09 Examples of BPM+SOA joint work
    11. 11. <ul><li>Each enterprise is a complex, dynamic, unique and “fractal” relationship between services and processes </li></ul><ul><ul><li>All processes are services </li></ul></ul><ul><ul><li>Some operations of a service can be implemented as a process </li></ul></ul><ul><ul><li>A process includes services in its implementation </li></ul></ul>Synergy between BPM and SOA (2) – structuring relationships 2010-03-09 Examples of BPM+SOA joint work service process
    12. 12. <ul><li>Classification of BPM artefacts </li></ul><ul><ul><li>defining services for their implementation </li></ul></ul><ul><li>A modelling procedure </li></ul><ul><ul><li>four-phase guidance to produce executable models </li></ul></ul><ul><ul><li>diagramming style </li></ul></ul><ul><ul><li>naming conventions </li></ul></ul><ul><ul><li>several practical patterns </li></ul></ul><ul><li>Promotion of joint work between the business and the IT </li></ul><ul><li>Quick iterations for building an operational prototype </li></ul>Example – mutual structuring of processes and services 2010-03-09 Examples of BPM+SOA joint work
    13. 13. <ul><li>Situation </li></ul><ul><ul><li>30 different tools in use for electronic publishing </li></ul></ul><ul><li>Task </li></ul><ul><ul><li>Define criteria for the selection of a single tool </li></ul></ul><ul><li>Action </li></ul><ul><ul><li>Use a common business process modelling procedure </li></ul></ul><ul><li>Result (after several meetings) </li></ul><ul><ul><li>agreed list of services generated to act as selection criteria </li></ul></ul>Example – selection of a single tool 2010-03-09 Examples of BPM+SOA joint work
    14. 14. <ul><li>Architecting for flexibility </li></ul><ul><li>Versioning of everything </li></ul><ul><li>Coordination of services via forms and processes </li></ul><ul><li>Comprehensive and constant monitoring of services </li></ul>Example – improving a complex production system (1) 2010-03-09 Examples of BPM+SOA joint work
    15. 15. <ul><li>Incremental transformation from typical inter-application data flows to end-to-end coordination of services </li></ul>Example – improving a complex production system (2) 2010-03-09 Examples of BPM+SOA joint work
    16. 16. Example – adding flexibility to an enterprise application 2010-03-09 Examples of BPM+SOA joint work Before After
    17. 17. Example – an e-Gov goal is to help partners work with the government (1) time But no local organisation wants to be responsible for the whole process instance 2010-03-09 Examples of BPM+SOA joint work For example, a partner’s changes have to be declared in many governmental organisations Partner Organisation C
    18. 18. Example – an e-Gov goal is to help partners work with the government (2) time Inter-organisation coordination capability by an e-Gov service 2010-03-09 Examples of BPM+SOA joint work Partner Organisation B Organisation C
    19. 19. <ul><li>Situation </li></ul><ul><ul><li>some “pieces of work” are being lost in a chain of applications </li></ul></ul><ul><ul><li>ESB is not enough </li></ul></ul><ul><li>Task </li></ul><ul><ul><li>coach how to apply new technologies </li></ul></ul><ul><li>Action </li></ul><ul><ul><li>make the business process explicit </li></ul></ul><ul><ul><li>mix BPM, BAM, BEM, CEP </li></ul></ul>Example – improving a core business application 2010-03-09 Examples of BPM+SOA joint work Primary importance: the result of working together, but not individual exchanges ESB-centric view: only flow of data Process-centric view: both flow of control and flow of data
    20. 20. <ul><li>Why do we need explicit coordination? </li></ul><ul><ul><li>better control and traceability </li></ul></ul><ul><ul><li>better governance </li></ul></ul><ul><ul><li>more predictable results </li></ul></ul><ul><ul><li>better testability </li></ul></ul><ul><ul><li>makes relationships explicit </li></ul></ul><ul><li>Coordination between </li></ul><ul><ul><li>enterprises, departments, people, systems, forms </li></ul></ul><ul><li>Note: special thanks to the events in BPMN </li></ul>Use of business processes to make coordination explicit 2010-03-09 Examples of BPM+SOA joint work
    21. 21. <ul><li>Q: Is an extra pool, e.g. “automated system” or “executable flow”, useful? </li></ul><ul><li>A: Use a “coordination pool” to define “ How the job is done irrespective of Who performs the task” </li></ul>Making coordination explicit (1) 2010-03-09 Examples of BPM+SOA joint work
    22. 22. <ul><li>Q: How many “coordination pools” should be used in any particular diagram: 0, only 1 or many? </li></ul><ul><li>A: As many as necessary – coordination may not be centralized (e.g. like in an orchestra), but shared (e.g. like in a “Submission Interface” pattern) </li></ul>Making coordination explicit (2) 2010-03-09 Examples of BPM+SOA joint work External participant Internal service
    23. 23. <ul><li>An extra pool defines rules for coordination between independent parties (e.g. “Game as a process” – three coordination pools) </li></ul>Making coordination explicit (3) 2010-03-09 Examples of BPM+SOA joint work
    24. 24. <ul><li>Q: Should the behavior of an external participant (e.g. a customer) be explicitly modelled? </li></ul><ul><li>A: Yes, because it helps an enterprise understand how its customers see the enterprise and thus gives some ideas about how to improve customer experience  </li></ul><ul><li>http://www.slideshare.net/Olbrich/process-experience-the-coffee-example-2103831 </li></ul>Making coordination explicit (4) 2010-03-09 Examples of BPM+SOA joint work
    25. 25. <ul><li>Different coordination logic: </li></ul><ul><ul><li>Template-based (or static coordination) </li></ul></ul><ul><ul><li>Token-based (or dynamic coordination) </li></ul></ul><ul><ul><li>Event-based (or non-structured coordination) </li></ul></ul><ul><ul><li>Instance-based (or networked coordination) </li></ul></ul><ul><li>To illustrate the logic of instances, see the pattern SOS (from www.slideshare.net/samarin) </li></ul>Making coordination explicit (5) 2010-03-09 Examples of BPM+SOA joint work
    26. 26. <ul><li>BPM </li></ul><ul><ul><li>reveals the artefacts and their relationships </li></ul></ul><ul><ul><li>provides an interface with the business </li></ul></ul><ul><li>SOA </li></ul><ul><ul><li>implementation, execution and monitoring of services </li></ul></ul><ul><ul><li>evolution and governance of services </li></ul></ul><ul><li>EA </li></ul><ul><ul><li>organizes everything as an applied science </li></ul></ul><ul><li>BPM + SOA + EA </li></ul><ul><ul><li>improved understanding between the business and the IT </li></ul></ul><ul><ul><li>explicit and executable models of an enterprise </li></ul></ul><ul><ul><li>significant reduction of barriers for business agility </li></ul></ul>Synergy between BPM, SOA and EA 2010-03-09 Examples of BPM+SOA joint work
    27. 27. <ul><li>http://www.slideshare.net/samarin </li></ul><ul><ul><li>How to use BPMN for modelling business processes </li></ul></ul><ul><ul><li>Animated patterns </li></ul></ul><ul><ul><ul><li>Submission Interface (SI) </li></ul></ul></ul><ul><ul><ul><li>Synchronisation Of Sources (SOS) </li></ul></ul></ul><ul><li>Blog http://improving-bpm-systems.blogspot.com/ </li></ul><ul><ul><li>BPM reference model </li></ul></ul><ul><li>Book </li></ul>Extra materials 2010-03-09 Examples of BPM+SOA joint work
    28. 28. Thank you! <ul><li>Contact information: </li></ul><ul><li>Alexander Samarin </li></ul><ul><li>[email_address] </li></ul><ul><li>www.improving-BPM-systems.com </li></ul>2010-03-09 Examples of BPM+SOA joint work
    29. 29. <ul><li>Template: 1, Instance: N –> classic workflows </li></ul><ul><li>Template: 1, Instance: 1 –> projects, e.g. a personal vacation trip </li></ul><ul><li>Template: 0, Instance: 1 –> plan as you go </li></ul>Ratio between templates and instances 2010-03-09 Examples of BPM+SOA joint work
    30. 30. <ul><li>Advanced Voting Solution pattern: many instances of the pool “VOTERS” for each instance of the pool “COOR” </li></ul>Making coordination explicit (5) 2010-03-09 Examples of BPM+SOA joint work
    31. 31. <ul><li>Weak coordination vs. strong coordination </li></ul><ul><ul><li>Army, Research, Administration, Rock climbing, Sports team, Orchestra </li></ul></ul><ul><li>Coordination may change over time (e.g. a crisis situation) </li></ul><ul><li>Important </li></ul><ul><ul><li>to anticipate correctly the level of coordination required for that process </li></ul></ul><ul><ul><li>to implement this level using an appropriate coordination technique </li></ul></ul><ul><ul><li>to provide a simple way to switch from one coordination technique to another (similar to changing gear as a function of the driving conditions) </li></ul></ul>Consider coordination 2010-03-09 Examples of BPM+SOA joint work

    ×