Your SlideShare is downloading. ×
0
Making Things Simpler: How Primitives Help Integrate BPM and Enterprise Architecture
Making Things Simpler: How Primitives Help Integrate BPM and Enterprise Architecture
Making Things Simpler: How Primitives Help Integrate BPM and Enterprise Architecture
Making Things Simpler: How Primitives Help Integrate BPM and Enterprise Architecture
Making Things Simpler: How Primitives Help Integrate BPM and Enterprise Architecture
Making Things Simpler: How Primitives Help Integrate BPM and Enterprise Architecture
Making Things Simpler: How Primitives Help Integrate BPM and Enterprise Architecture
Making Things Simpler: How Primitives Help Integrate BPM and Enterprise Architecture
Making Things Simpler: How Primitives Help Integrate BPM and Enterprise Architecture
Making Things Simpler: How Primitives Help Integrate BPM and Enterprise Architecture
Making Things Simpler: How Primitives Help Integrate BPM and Enterprise Architecture
Making Things Simpler: How Primitives Help Integrate BPM and Enterprise Architecture
Making Things Simpler: How Primitives Help Integrate BPM and Enterprise Architecture
Making Things Simpler: How Primitives Help Integrate BPM and Enterprise Architecture
Making Things Simpler: How Primitives Help Integrate BPM and Enterprise Architecture
Making Things Simpler: How Primitives Help Integrate BPM and Enterprise Architecture
Making Things Simpler: How Primitives Help Integrate BPM and Enterprise Architecture
Making Things Simpler: How Primitives Help Integrate BPM and Enterprise Architecture
Making Things Simpler: How Primitives Help Integrate BPM and Enterprise Architecture
Making Things Simpler: How Primitives Help Integrate BPM and Enterprise Architecture
Making Things Simpler: How Primitives Help Integrate BPM and Enterprise Architecture
Making Things Simpler: How Primitives Help Integrate BPM and Enterprise Architecture
Making Things Simpler: How Primitives Help Integrate BPM and Enterprise Architecture
Making Things Simpler: How Primitives Help Integrate BPM and Enterprise Architecture
Making Things Simpler: How Primitives Help Integrate BPM and Enterprise Architecture
Making Things Simpler: How Primitives Help Integrate BPM and Enterprise Architecture
Making Things Simpler: How Primitives Help Integrate BPM and Enterprise Architecture
Making Things Simpler: How Primitives Help Integrate BPM and Enterprise Architecture
Making Things Simpler: How Primitives Help Integrate BPM and Enterprise Architecture
Making Things Simpler: How Primitives Help Integrate BPM and Enterprise Architecture
Making Things Simpler: How Primitives Help Integrate BPM and Enterprise Architecture
Making Things Simpler: How Primitives Help Integrate BPM and Enterprise Architecture
Making Things Simpler: How Primitives Help Integrate BPM and Enterprise Architecture
Making Things Simpler: How Primitives Help Integrate BPM and Enterprise Architecture
Making Things Simpler: How Primitives Help Integrate BPM and Enterprise Architecture
Making Things Simpler: How Primitives Help Integrate BPM and Enterprise Architecture
Making Things Simpler: How Primitives Help Integrate BPM and Enterprise Architecture
Making Things Simpler: How Primitives Help Integrate BPM and Enterprise Architecture
Making Things Simpler: How Primitives Help Integrate BPM and Enterprise Architecture
Making Things Simpler: How Primitives Help Integrate BPM and Enterprise Architecture
Making Things Simpler: How Primitives Help Integrate BPM and Enterprise Architecture
Making Things Simpler: How Primitives Help Integrate BPM and Enterprise Architecture
Making Things Simpler: How Primitives Help Integrate BPM and Enterprise Architecture
Making Things Simpler: How Primitives Help Integrate BPM and Enterprise Architecture
Making Things Simpler: How Primitives Help Integrate BPM and Enterprise Architecture
Making Things Simpler: How Primitives Help Integrate BPM and Enterprise Architecture
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

Making Things Simpler: How Primitives Help Integrate BPM and Enterprise Architecture

2,861

Published on

Presentation about the US Department of Defense Primitives project, which aims at creating design guidelines for modelers using BPMN and related techniques. Presented at the 2010 Building Business …

Presentation about the US Department of Defense Primitives project, which aims at creating design guidelines for modelers using BPMN and related techniques. Presented at the 2010 Building Business Capability conference, Alexandria, VA, October 21, 2010.

Published in: Business
0 Comments
5 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
2,861
On Slideshare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
0
Comments
0
Likes
5
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. Making Things Simpler How Primitives help integrate BPM and Enterprise Architecture Michael zur Muehlen, Ph.D. Center for Business Process Innovation Howe School of Technology Management Stevens Institute of Technology Hoboken NJ Michael.zurMuehlen@stevens.edu 1
  • 2. Why Enterprise Architecture? To Understand Analyze what already exist Assess what will be Main purpose: People Integration/Conversation To Build Design what will be within today’s constraints Set objectives and constraints for detailed specifications Main purpose: Instruction/Guideline To Verify Provide a framework for others Evaluate current practice against existing guidelines Main purpose: Compliance/Control 2
  • 3. Background Business Enterprise Architecture (BEA) Captures Business Mission Area Processes Acquisition Management Common Supplier Engagement Human Resource Management Financial Management Real Property Management Department of Defense Architecture Framework (DoDAF) Defines Architecture Perspectives Subsets mandated (e.g. for large systems development) 3
  • 4. What are Good Models? Correct Relevant Economical Model Quality Clear Comparable Systematic 4
  • 5. Part 1 Painting the right Picture 5
  • 6. Why BPMN? Dominant Standard for Process Modeling Better Event-handling than UML Activity Diagrams Better Organization Modeling than IDEF0 Better Cross-Organization Modeling than FlowCharts Ratified by Object Management Group = Open Standard Over 70 Implementations = Tool Support Certification and Training Available = Modeler Support 22
  • 7. Isn’t That Enough? Tool Vendors support BPMN subsets Not all constructs implemented, supported at runtime Tool Vendors “enhance” BPMN with proprietary symbols Pretty, but not interoperable 23
  • 8. BPMN Support Enterprise Architect 7.1 Process Platform 4.5 System Architect 11 Enhydra JaWe 2.4-1 Modeler for Visio IDS Scheer ARIS TIBCO Business itPearls Process SunGard Infinity Sparxsystems ProVision 6.1 BizAgi 0.66.2 Toolset 7.02 Studio 3.0.1 BPMN Primitives Symbol Connecting Objects Sequence Flow X X X X X X X X X Message Flow X X X X X X X X Association X X X X X X X Task X X X X X X X X X Sub-Process (Collapsed) X X X X X X X Activities Sub-Process (Expanded) X X X X Loop X O X X X X X X Multiple Instance X O X X X X X Start Event X X X X X X X X X Start Message X X X X X X X X Start Events Start Timer X X X X X X X X Start Conditional X X X X X X X X Start Signal X X Interm. Catching Events Intermediate Catching Message X X X X X X Intermediate Catching Timer X X X X X X Intermediate Catching Conditional X X X X X X Intermediate Catching Signal X X Interm.Throw Intermediate Throwing Message .Events X X Intermediate Throwing Signal X X End Event X X X X X X X X X End Events End Message X X X X X X X End Signal X X Swimlanes Pool X X X X X X X X Lane X X X X X X X X Data-based Exclusive Gateway X X X X X X X X Gateways Event-based Exclusive Gateway X X X X X X X Parallel Gateway X X X X X X X X Inclusive Gateway X X X X X X X 8 Arti- fact Data Object X X X X X X X
  • 9. Isn’t That Enough? Tool Vendors support BPMN subsets Not all constructs implemented, supported at runtime Tool Vendors “enhance” BPMN with proprietary symbols Pretty, but not interoperable BPMN is too rich for its own good Multiple ways to depict the same content Slow uptake of full symbol-set in practice Even experienced modelers make mistakes using more exotic symbols 23
  • 10. Current Practice (Legal) 10
  • 11. Current Practice (Not so Legal) ‣ Events cannot have any attached events: Syntax violation ‣ Start Event Type cannot be attached to other objects: Syntax violation ‣ Precedence relationship among messages is not clear ‣ Uncontrolled Sequence Flow does not clarify preconditions ‣ Relation of additional Document Flow to Sequence Flow is not clear
  • 12. Design Primitives BPMN Symbols Some Symbols are “outlawed” Conditional Sequence Flow Certain Event Types Certain Activity Types Complex Gateways Best practices for common modeling scenarios 6
  • 13. Which BPMN Modeling subset do Practice people use? Δ = untapped potential Δ = skill deficit OR unnecessary features What can the How should you BPMN use BPMN? express? Modeling Practice BPMN BPMN Best Features Practice Δ = standard design flaws 13
  • 14. + Pool, Lane, Grouping, Annotation, Document, Transaction Boundary... BPMN 1.0 - Elements Available 14
  • 15. + Pool, Lane, Grouping, Annotation, Document, Transaction Boundary... Sample Project - Elements Used 15
  • 16. Normal Flow Task End Event Start Event / Event Pool Data-Based XOR Start Message Text Annotation Message Flow Parallel Fork/Join Lanes Gateway Sub-Process (Collapsed) Association Data Object Intermediate Timer Intermediate Message End Terminate Sub-Process (Expanded) End Link Default Flow Inclusive Decision/Merge Activity Looping Exception Task Start Link End Message End Exception Complex Decision/Merge Event-Based XOR Multiple Instance Group three sources: Transaction Intermediate Event End Cancel Compensation Intermediate Compensation Long-tail usage pattern Consulting Projects Conditional Flow Exception Flow Intermediate Link Web (random collection) Start Timer BPMN Seminar participants Off-page connector Start Rule Source: 126+ BPMN diagrams from Intermediate Rule be found among any of the diagrams Intermediate Multiple Some BPEL-related primitives could not End Compensation Start Multiple Web Frequency of BPMN Symbol Use Intermediate Exception Seminar Intermediate Cancel Consulting End Multiple 16 Compensation Association
  • 17. 17
  • 18. Solution: Primitives 18
  • 19. Common Pitfalls Conditions as Activities Gateways without Decisions States as Activities 19
  • 20. Conditions as Activities Situation: After an Exclusive of Inclusive OR Gateway I need to show how work is routed based on the evaluation of a condition 20
  • 21. Gateways without Decisions Situation: As soon as work arrives it is sorted into different categories for further processing. 21
  • 22. States as Activities Situation: How do I model work where no value-added work is performed? 22
  • 23. Solution: Primitives & Patterns 23
  • 24. Patterns are composed of Primitives! Low- and High-Level Patterns 24
  • 25. BPMN 2.0 Conformance Class 25
  • 26. Part 2 Finding the right Words 26
  • 27. Model Design Conventions BPMN Model Design Naming Conventions for Activities Best practices for labeling of activities and objects Ties to Common Vocabulary Layout Conventions Use of Pools/Lanes Placement of Gateways 20
  • 28. Enterprise Architecture Big Picture Defined by Architecture Modeling Language described by Model captures Structure Model Model Model Model Domain captures Content Organized by DM2 28
  • 29. Enterprise Architecture Big Picture Defined by Architecture Modeling Language described by Model captures Model Data Structure saved as Model Model Model Model Domain captures Vocabulary Content saved as Organized in Taxonomy 29
  • 30. Consistent Rendering from Requirements Capture to Implementation Architecture Target Audience: Engineer/Implementer described by Model captures Model Data Structure saved as Model Model Model Model Domain captures Vocabulary Content saved as Target Audience: Domain Expert Fit-for-Purpose Rendering based on Stakeholder Needs 30
  • 31. <<TupleType>> <<type>> C apability::CapabilityP erformerManifestation C apability::Capability place1Type place1Type <<pow ertype>> 31 A ctivities::Condition <<TupleType>> place1Type Goals::E ffectP artOfCapabi lity place1Type <<Tupl eType>> A ctivities::A ctivityR esultsInE ffect place2Type place2Type pl ace2Type <<TupleType>> <<TupleType>> <<TupleType>> <<Indi vidual Type>> A ctivities::A ctivityC ondi tionOverlap A ctivities::A ctivityP artOC apability <<TupleType>> <<pow ertype>> place3Type place2Type place1Type Goal s::V isi onsR ealizedB yD esiredE ff Goals::V ision Goals::D esiredE ffectD irectsA ctivity Goals::D esi redE ffect ect place2Type pl ace1Type place2Type 0..1 place1Type <<pow ertype>> A ctivities::A cti vity place3Type place1Type place2Type place1Type place1Type <<IndividualType>> Goals::Goal <<TupleType>> Defense (2009) A ctiviti es::A cti vityP erformerOverl ap place1Type <<pow erType>> <<pow erType>> <<TupleType>> A ctiviti es::S erviceFunction A ctiviti es::E vent A ctivi ties::A ctivi tyC hangesE ffectObject 1..* Source: Department of <<pow ertype>> P roject::P lan <<TupleType>> <<Tupl eType>> <<TupleType>> <<TupleType>> A ctivities::P erformerS upportingA ctivity A ctivities::A ctivityP erformedB yP erformer A ctivities::A ctivityW holeC onsumingP artOfA ctivity A ctivities::A ctivityW holeP roduci ngP artOfA ctivi ty <<Indi vidual Type>> <<TupleType>> P roject::P roject P roject::GoalsR ealizedB yP roj ect pl ace1Type pl ace2Type place2Type place2Type <<TupleType>> <<pow ertype>> <<pow ertype>> R ules::R uleGuidanceOfA ctivityV al idUnitorC ondition A ctivities::ConsumingP artOfA ctivi ty A ctivities::P roducingP artOfA ctivity <<individualType>> R ules::Guidance pl ace2Type <<TupleType>> R ules::R uleConstrainsA ctivi ty pl ace1Type <<individualType>> place1Type <<i ndivi dualType>> pl ace3Type <<TupleType>> place2Type 0..* R ules::S ecurityA ttributes <<pow ertype>> R ules::R ule A ctivities::A ctivityR esourceOverlap pl ace2Type Group Measures::Measure Type 1 0..* <<IndividualType>> <<TupleType>> Measures::Measure A ctivi ties::P erformerRuleC onstrainsA ctivityOverlap place4Type <<individual Type>> <<individualType>> <<individualType>> <<type>> <<type>> <<type>> <<type>> <<type>> <<type>> <<type>> R ules::S tandard R ules::A greement R ules::C onstraint Measures::P hysi cal Me Measures::E ffectsMea Measures::P erformanc Measures::NeedsS atisfacti on Measures::Maintainability Measures::A daptability Measures::Organizational asure sure eMeasure Measure Measure Measure Measure <<individualType>> <<pow erType>> <<pow erType>> R ules::Functi onalS tandard R ules::TechnicalS tandard R ul es::S erviceP oli cy <<type>> <<type>> <<type>> <<type>> <<type>> <<type>> Measures::S patialMea Measures::A ccuracyP r Measures::RateThroug Measures::Capacity Measures::Interoperabi Measures::Cost sure eci si on hput lity <<type>> <<type>> <<type>> Measures::Timeliness Measures::Dependabil i Measures::S ervi ceLev ty el <<type>> R esourceFl ow s::E ffectObject place2Type <<type>> <<type>> <<type>> place1Type Measures::Trustw orthi Measures::Rel iability Measures::S ecurity ness place2Type <<type>> R esourceFl ow s::R esource pl ace2Type 0..* place2Type <<type>> Locations::IntentionallyC onstructedInd ividual <<IndividualType>> <<type>> <<pow ertype>> <<type>> R esourceFl ow s::Individual R esou R esourceFlow s::P erformer R esourceFlow s::R esourceType R esourceFlow s::Means rce place1Type <<IndividualType>> place1Type place2Type Locations::Location <<TupleType>> <<Tupl eType>> place2Type R esourceFlow s::P erformerLocationOverlap S ervi ces::P ortP artOfP erformer <<type>> InformationA ndD ata::Thing place1Type <<IndividualType>> <<Indivi dualType>> <<IndividualType>> <<IndividualType>> <<Indi vidual Type>> tupl eP lace1 <<IndividualType>> <<IndividualType>> <<type>> <<pow ertype>> Locations::GeoFeature Locations::S oli dV olum Locations::S urface Locati ons::Line Locations::P oint <<pow ertype>> <<pow ertype>> <<pow ertype>> associateOne R esourceFlow s::IndividualP erfo S ervi ces::P ort place2Type <<TupleType>> <<TupleType>> e Locations::GeoP oliti calE xtent place2Type R esourceFlow s::P erformerType R esourceFlow s::Materi el R esourceFlow s::Information R esourceFlow s::D ata pointOnLine rmer InformationA ndD ata::D ataA ss InformationA ndD ata::tuple place1Type associateTwo ociation 2 place2Type place1Type place2Type place3Type relationship tupl eP lace2 w holeInformation dataP art place2Type <<TupleType>> R esourceFlow s::D ataP artOfInformation <<TupleType>> <<TupleType>> <<TupleType>> pl ace1Type <<IndividualType>> <<Indivi dualType>> <<Indi vidual Type>> <<IndividualType>> <<IndividualType>> InformationA ndD ata::D escribedB y S ervices::S erviceE nablesA ccessTo R esourceFlow s::MaterielP artOfS ystem description Locations::P l anerS urface Locati ons::RealP ropert Locations::Instal lati on Locations::Country R esourceFlow s::Organizatio thingD escribed y n place1Type pl ace2Type place1Type pl ace1Type <<Tupl eType>> InformationA ndD ata::namedB y <<type>> <<pow ertype>> <<pow ertype>> <<pow ertype>> <<pow ertype>> <<pow ertype>> <<pow ertype>> <<pow ertype>> <<NameType>> place1Type <<Indivi dualType>> <<Indi vidual Type>> <<TupleType>> S ervices::S ervi ceP ort R esourceFlow s::S ervice R esourceFl ow s::Organ R esourceFlow s::S ystem R esourceFlow s::P ersonnelTyp R esourceFlow s::S erviceD escription R esourceFlow s::D omainInformation R esourceFlow s::A rchitectureOverview A ndP urpose R esourceFlow s::N ame <<IndividualType>> Locations::Facility Locations::S i te Locati ons::S iteP artOfIn Locations::RegionOfCo izationType e nameType stallation untry thingB ei ngDescribed pl ace2Type place2Type <<TupleType>> R esourceFlow s::nameTypeInstance nameInstance place1Type pl ace2Type nameType place2Type place1Type <<NameType>> R esourceFl ow s::A ddress place1Type <<Tupl eType>> <<TupleType>> Locations::Facil ityP artOfS ite <<pow ertype>> R esourceFlow s::P ersonnelTypeP artOfS ystem R esourceFlow s::N ameType place1Type <<TupleType>> S ervices::InterfaceType place1Type <<Tupl eType>> R esourceFlow s::S ki llP artOfP ersonnelType <<pow erType>> S ervi ces::S erviceC hannel place2Type <<pow ertype>> TrainingS killE ducation::S kill pl ace1Type DODAF Taxonomy (DM2)
  • 32. Vocabulary-driven Development What is the Which Which data/ Who/What will architecture processes/ resources will be involved? supposed to activities will be consumed achieve? provide the or produced? capabilities? Define Define Define Define Capabilities Activities Resources Performers Items: Items: • Objectives Items: Items: • Roles • Features • Verbs •Nouns • Systems • Services • Actors Source: Business Transformation Agency (2009) 32
  • 33. Relationships Among Vocabulary Define Define Define Define Capabilities Activities Resources Performers realized Activity Capability through Performs (Process) Decomp. Sub-Activity Resource In/Out (Activity) (Data) Resource Source: Business (System/ is a Performer Transformation Agency (2009) Person) 33
  • 34. Capturing the Information: Vocabulary Template 1. 2. 3. Enter Term & Classify Term as Matrix Auto- Definition C/A/R/P Populates 34 11/12/2008 47
  • 35. Sample Application provides synchronized provides 35
  • 36. Part 3 Building the right Structure 36
  • 37. Process Architecture BPMN Model Composition Four Different Levels of Hierarchy Milestones Handoffs Decisions Procedures Each level can have multiple layers (parent/subprocesses) 20
  • 38. Milestones Process Modeling Handoffs Levels Decisions Procedures
  • 39. Process Milestones (Major Phases) 16
  • 40. Process Handoffs 17
  • 41. Decisions 18
  • 42. Procedures 19
  • 43. Primitives and Model Quality Correct Clear Guidelines for the proper use of Modeling Techniques Relevant Design Process that ensures Core Information Capture Economical Capability-oriented Architecture Development Clear Semantic Matching to establish Common Vocabulary Comparable Representation Standards (Patterns) Systematically Designed Methodology for Architecture Development 5
  • 44. Benefits Minimize modeling errors Ensure consistent look & feel Ensure models can be read and understood by many stakeholders Ensure that interface points are explicitly marked Ensure that models can be transferred to runtime Preserve investments in modelers, tools, and models 21
  • 45. Design Factors to Keep in Mind purpose determines required semantics / pu semantics determine ics rp os nt e capabilities se ma BPMN Subset in es tra inin el guid g guidelines and training affect modeling practice 45
  • 46. Thank You - Questions? Michael zur Muehlen, Ph.D. Center for Business Process Innovation Howe School of Technology Management Stevens Institute of Technology Castle Point on the Hudson Hoboken, NJ 07030 Phone: +1 (201) 216-8293 Fax: +1 (201) 216-5385 E-mail: mzurmuehlen@stevens.edu Web: http://www.stevens.edu/bpm slides: www.slideshare.net/mzurmuehlen 46

×