ibm bpm best practices - process modeling 5 golden rules - bh

31
Software Group BPM Process Modeling Best Practices Highlights Based on over a decade of BPM Services Engagements [email protected] Sr. Consulting BPM Solution Architect Open Group Master Certified SW IT Specialist http://IBMBPMDemos.com for more information and resources

Upload: gustavo-apodaca

Post on 05-Sep-2015

29 views

Category:

Documents


4 download

DESCRIPTION

Best practices for model modeling. Five golden rules.

TRANSCRIPT

Presenter Name Title Here

BPM Process Modeling Best Practices HighlightsBased on over a decade of BPM Services Engagements

[email protected]. Consulting BPM Solution Architect Open Group Master Certified SW IT Specialist

http://IBMBPMDemos.com for more information and resources

Software Group

1OutlineIntroductionDefinition of TermsFive Guidelines1) Rule of Seven2) Activity Granularity 3) Activity Description4) Inputs/Outputs5) The System LaneConclusion Q&A2What makes a good process model for BPM with WebSphere Lombardi Edition? Are there specific characteristics that make one process model better than another? What does it mean if two analysts interview the same process owners yet produce two different process models? This article introduces five guidelines to better process modeling to help answer these questions. With these principles your models will better serve you. Let us first quantify the characteristics that make a business process model a good one.A good process model is universally understood, is easily consumed by business people, and is directly implementable in a BPMS (i.e. WebSphere Lombardi Edition). For a process model to be universally understood by all parties means that the process owners and process participants (business) as well as analysts, authors, integration consultants, etc. (IT) easily understand each other and recognize the same concepts in the same context. There is no need by IT to re-draw a process model in order to provide additional clarity or a different point of view. A good process model provides views into a process that are clearly and easily communicated in 5 minutes or less at every level of granularity.

File Name Here.ppt2Definition of TermsBusiness Process Definition (BPD)PoolSwim LaneMilestoneParticipantStep/ActivityFlow LineBusiness EventUser Story

3File Name Here.ppt3Business Process Definition (BPD)A diagram that illustrates a business processincludes participants, steps, activities, and sub-processes

Business Process Definition objectives:Universally understood by both business and technologists Clearly and easily communicated in 5 minutes or less at any level of granularityExecutable in a Business Process Management System

4For the purpose of todays discussion, a business process definition is a diagram that illustrates a business process includes participants, steps, activities, and sub-processes

We want to focus on the executable aspect of a business process. Today we will explore how to define a business process that is executable in a BPMS.File Name Here.ppt4What is not a Business Process Definition?Entity State DiagramsUse Cases, Use Case Relationship DiagramsSystem Relationship DiagramArchitectural DiagramWorkflow Model (Application Development), Screen Flow

5Need a few example artifacts. Explain how these are useful and how they do complement a BPD, but are not a substitute or the same as a BPD.File Name Here.ppt5PoolComponent Default name Description 1 Lombardi pool The default pool to hold all lanes within the BPD. You can change the name by clicking the pool and editing its properties. 2 Participant lane A default lane for end user activities. You can change the name by clicking the lane and editing its properties. A container for all lanes within the BPD

6When you create a process, Lombardi automatically creates a pool to hold all added lanes. The default name of the pool is Lombardi, which you can change by clicking the pool in the diagram and then editing its properties.

File Name Here.ppt6(Swim) LaneHighlights role oriented activities versus the flow oriented activitiesA lane has a default set of participants

7File Name Here.ppt7MilestonesA milestone in a processRepresentsA period of timeGoal/transition in the processMay be expressed as a single moment in time e.g. graduationA milestone end-marker

May characterize period of timee.g. adolescenceA milestone should be achieved just once in a BPDLooping back across a milestone is discouraged8File Name Here.ppt8ParticipantA participant is a user of the WLE environmentSets of users are Participant Groups

9You need to expose a BPD to particular participant groups to establish who can: Start instances of the process in Lombardi Process Portal View data for instances of the process in reports in Lombardi Process Portal

Participant groups represent the groups of users in your enterprise. File Name Here.ppt9Activity/StepA unit of granularity in a process thatHas a goal that can be expressed as a singular outcomeImplemented asTask (human or system)Sub-processCan be a human task Single participant begins the activityCan contain multiple steps, (e.g. screens in a screen flow)These steps are not process stepsCan be a sub-processImplemented as another BPD10An activity is a singular unit of granularity (or step) in a process model that can be described as a goal with a particular outcome. While an activity may have multiple steps within it, these steps are not process steps. For example, Complete Background Check might be an example of a single activity in a Recruit To Hire process because it is performed by a single participant who begins this activity with the intent to finish. This activity has a singular outcome (pass/fail). Although performing this activity may include multiple steps and multiple screens to lookup the candidates name, address and SSN in order to submit to criminal background check and personal credit check via two 3rd party vendor-hosted systems, wait for results, compare to thresholds and complete the activity by making a pass/fail decision, this is a single activity. All of this workflow detail is part of the implementation (the application development layer) below the process model and need not be included in the process model/flowchart. These details can be captured in the textual description (or user story) for the activity.

---from BPMN 2.0An Activity is work that is performed within a Business Process. An Activity can be atomic or non-atomic (compound). The types of Activities that are a part of a Process are: Task, Sub-Process, and Call Activity, which allows the inclusion of re-usable Tasks and Processes in the diagram. However, a Process is not a specific graphical object. Instead, it is a set of graphical objects. The following sections will focus on the graphical objects Sub-Process and Task. Activities represent points in a Process flow where work is performed. They are the executable elements of a BPMN Process. File Name Here.ppt10Sequence Flow LinesA sequence flow lineDefines the transition from one step or event to another

11File Name Here.ppt11EventsA business eventIs the occurrence of a condition that triggers an activity.Can listen to catch a condition to trigger an activity orthrow a result upon occurrence.

Types of events include the following:Start /EndTimerMessageException

throwlisten12File Name Here.ppt12User StoryShort, high-level statement of requirementsStudents can purchase monthly parking passes onlineParking passes can be paid via credit cardsParking passes can be paid via PayPalProfessors can input student marksStakeholders and domain experts write user storiesCan include both functional and non-functional requirements Indicate the estimated size/implementation effortIndicate the priorityOptionally include a unique identifierImproves traceability

See Agile Modeling at http://www.agilemodeling.com/artifacts/userStory.htm13File Name Here.ppt13Five Guidelines to Better Process ModelingIntroductionDefinition of TermsFive Guidelines1) Rule of Seven2) Activity Granularity 3) Activity Description4) Inputs/Outputs5) The System LaneConclusionQ& A

14

File Name Here.ppt14Example of a bad Process Model

Click button to add a new line item.Select Company in dropdownClick OK15Here is an example of a Process Model. This model is not executable in a BPMS. This model cannot be explained or consumed easily takes 2 hours to present!The elements in the model are not consistently scoped (eg. Click OK)File Name Here.ppt15Example of a bad Process Model

4 System LanesConstellation PatternNo Milestones DefinedString of Pearls Pattern16Here is an example of a Process Model. This model is not executable in a BPMS. Constellation pattern illustrates a grouping of steps with a single flow line in, and a single flow line out.Without Milestones, we immediately flatten the view of the process.The large number of system lanes leads us to believe there is application logic in this diagram (vs. Process Flow/Logic).The String of Pearls patterns should be condensed into single steps/activities.

File Name Here.ppt16(1) Rule of SevenLimit any view to no more than 7 steps/activities for good fit.

Select CandidateInform recruiterEstablish compensation packageEstablish start dateBackground CheckCriminal record checkDrug screenRelease Candidate from ProcessReview resultsOfferCreate offer letterTransmit offer letterAccept offerAdd Candidate To HR RecordsInput employee information into databaseRequest equipmentRequest workspaceRequest access badgeSet employee status to activeOrientationNew hire orientation classBenefits overview classProvide orientation cd

Watch orientation cdComplete formsBegin WorkMeet managerObtain access badgeObtain equipmentGo to workspace

17Try to model your business process for good fit and follow the Rule of Seven at each level (level 1, 2, 3, etc.). We should be able to comprehend and communicate each level in 5 minutes or less. Each activity should be able to summarize work performed as a goal with an outcome.

In Discovery Map view, this means the width of any row and depth of any column should be seven or less. A good fit also means the process is roughly square in this view. A process that does not have good fit is characteristic of one of the following:The granularity is not parallel. The activities across any level should be similar in scope. The details are unknown. A milestone with fewer activities (1 or 2) than the others may be a good indicator that we have not yet explored that milestone, or experts for that area have not been available.

17(2) Activity GranularityActivities should be Similar in Scope at each levelLook for the String of Pearls pattern.Look for the Constellation pattern.Look for Flow Line Patterns

Remember that an ActivityIs a step in a process that can be implemented as a sub-process or a task.Definition in a Process Model should stop at task granularity.A task activity is a unit of work that a single participant (human or system) starts with the intent to complete.

Purchase Groceries18This is perhaps the most difficult concept for most modelers.

Patterns to watch out for.Series of activities in the same lane.Tightly grouped activities across 1-2 lanes (constellation) might follow Rule of Seven and push to a sub-flow might recognize the pack as sub-process (app layer).

An activity is unit of granularity (step) in a process thatHas a goal that can be expressed as a singular outcome or output.Can be implemented as a task (human or system) or sub-process.Can be a human task whereby a single participant begins the activity with intent to finish. Can contain multiple steps, (i.e. screens in a workflow) these steps are not process steps.Can be a sub-process that is implemented as another BPD (one level lower) and follows all the same guidelines as a parent BPD.

File Name Here.ppt18(2) Activity Granularity ScopeOverloaded Milestone (Rule of Seven)Dissimilar in ScopeToo Granular in DetailPlan PartyInvite GuestsPrepare MenuGet VeggiesGet CakeGet Ice CreamGet Chips & DipCheckoutPay with AMEXDrive HomePut Veggies in FridgePut Ice Cream in FreezerHost PartyWelcome GuestsServe SnacksServe Cake & Ice CreamPlay GamesOpen GiftsPlay GamesClean UpClean the HouseSend Thank You CardsGet VeggiesGet CakeGet Ice CreamGet Chips & DipCheckoutPay with AMEXDrive HomePut Veggies in FridgePut Ice Cream in FreezerOpen DoorSet Ice Cream on ShelfClose DoorWhere do we stop?1919(2) Activity Granularity ScopeActivities should be similar in scope at each level.

Plan PartyInvite GuestsPrepare MenuHost PartyWelcome GuestsServe SnacksServe Cake & Ice CreamPlay GamesOpen GiftsPlay GamesClean UpClean the HouseSend Thank You CardsPurchase GroceriesWill a single person complete the activity?Will the activity be started with the intent to finish?Is the duration similar to others at this level?Is the goal or outcome an input for the next activity?20This is perhaps the most difficult concept for most modelers. Might need to add 2-3 slides with both Good and Bad examples here.

Patterns to watch out for.Series of activities in the same lane.Tightly grouped activities across 1-2 lanes (constellation) might follow Rule of Seven and push to a sub-flow might recognize the pack as sub-process (app layer).

An activity is unit of granularity (step) in a process thatHas a goal that can be expressed as a singular outcome or output.Can be implemented as a task (human or system) or sub-process.Can be a human task whereby a single participant begins the activity with intent to finish. Can contain multiple steps, (i.e. screens in a workflow) these steps are not process steps.Can be a sub-process that is implemented as another BPD (one level lower) and follows all the same guidelines as a parent BPD.

File Name Here.ppt20(2) Activity Granularity String of Pearls PatternSeries of two or more activities in the same swim lane

May indicate missing participant detailsMay indicate too much detail at a low level of granularityMay indicate misalignment in scope

21File Name Here.ppt21

(2) Activity Granularity String of Pearls PatternCombine into a single Activity: Send Offer LetterBefore3 serial activities for Hiring ManagerReview ResultsCreate Offer LetterTransmit Offer Letter

After1 activity for Hiring Manger

22File Name Here.ppt22(2) Activity Granularity Constellation PatternFactor constellations to a sub-process. Look for

Tight groups of activities across 2-3 swim lanesSingle flow line in & out of the groupLane participant may be limited to activities in the group23File Name Here.ppt23(2) Activity Granularity Flow Line PatternsGenerally should not flow backward to a previous milestone.Generally should not skip a Milestone.Should avoid looping back to a previous step to repeat an activity (or sub-process) later in the processrepeat/re-use the activity instead.

24When there are flow lines going backwards through the process, try the following:Is the activity misplaced? Does it belong in a different milestone? Can the activity be brought forward?Does the activity represent detail that belongs as a part of (or sub-step) in the activity to which the flow line goes back to?

If your diagram has more than 3 decision gateways in any layer or more then 1 decision gateway in a series, perhaps your model is capturing application logic that belongs in the workflow or screen flow for the activity. Try capturing these details in a few sentences in the activity description.

File Name Here.ppt24(3) Activity Description Activity NamingActivity Name = Action + Entity[action verb] + [business object]Avoid vague action verbs such as Process and Perform [Step]Use action verbs that indicate a result/outputUse specific terms recognizable by the business users (even if they might be vague to others) and describe/define the terms in the description if necessary.Perform ReviewApprove Contract Terms25Use of vague action verbs often indicates the SME is unfamiliar with the content of that activity.

Replace text examples with activities from BlueWorks Live.

When to model and when to document that is the question? - Do not model workflow (i.e. the flows within an activity) - Modelling is time consuming and can get too detailed where a simple paragraph will do.File Name Here.ppt25(3) Activity Description User StoryCapture a 2-5 sentence description for each activity.As a [participant] I need to [do something] so that I can [create business value].

26File Name Here.ppt26(4) Inputs/OutputsDefine with business entities from the business object modelAvoid specifying state for the entity (eg. signed contract)Avoid specifying other qualifiers that are properties of the entity

CandidateJob DescriptionComp. Details

Offer Letter

27Keep the inputs & outputs defined in the process model to specific business entities (eg. Invoice, Purchase Order, Customer, etc.). When inclined to be more granular then the entity and define properties of those entities (eg. First Name, SSN, Order Number, Customer State, etc.) it is likely we are defining a particular function/method that is sub-process (application development layer) and important to the implementation of a step within the activity, but far too detailed to describe the activity itself.Avoid describing the entities in a specific state (New Purchase Order, Approved Purchase Order) and simply call attention to the entity itself. Use the description to describe the work completed within the activity that might take a new purchase order and approve it thereby maturing the business entity itself and make reference to the entity state diagram.

Add examples from BWLiveFile Name Here.ppt27(5) The System LaneDefine only one system lane.Contains activities performed by the BPMS or orchestrated by the BPMS to be performed by an external system.Should not contain human activities.Avoid the string of pearls pattern.

28The system lane is meant to represent the BPMS and all of the external systems with which the BPMS will interact.The lane can include activities performed by external systems, but orchestrated by the BPMS.The system lane should never include Human Activities or any activity that contains human interaction (screens).Avoid the string of pearls pattern in the system lane.

If there is a lot of activity between the system lane and a participant lane, there might be low-level granularity (workflow, screen flow) being captured where a few sentences in the description might do.File Name Here.ppt28ConclusionIntroductionDefinition of TermsFive Guidelines1) Rule of Seven2) Activity Granularity3) Activity Description4) Inputs/Outputs5) The System LaneQ&AQA&29Conclude by looping back to the introduction. The importance of these guidelines is to bring clarity to process models for improved communication. These guidelines will help yield process models that are executable and more easily implemented in a BPMS. Talk about MDD (model drive development).

File Name Here.ppt29IBM Software Services Zone for WebSphereibm.com/websphere/serviceszoneBPM-specific resources including proven, prescribed, and repeatable assets and offerings to accelerate BPM adoptionVisibility across the worldwide skills & capabilities that only IBM Software Services for WebSphere can bring to your projectAccess to WebSphere practitioners insight on project trends, best practices & emerging technologies through personal videos, blogs, articles & moreDiscover defined offerings to get your project started quickly

Whats New?

The destination for WebSphere services-related resources, offerings, & technical skills to help you on your path to business agility

30The destination for WebSphere services-related resources, defined offerings, and technical skills to help you on your path to business agilityVisibility across the worldwide skills and capabilities that only IBM Software Services for WebSphere can bring to your projectAccess to WebSphere practitioners insight on project trends, best practices and emerging technologies through personal videos, blogs, articles, and moreDiscover defined offerings to get your project started quickly Expand your support system with lab-based expertise and the people who deliver WebSphere software and solutionsReview client successes

IBM WebSphere ServiceZoneThe destination for WebSphere services-related resources, defined offerings, and technical skills to help you on your path to business agilityIBM Quick Win Pilot for Business Process and Decision ImprovementEnd-to-end production-ready solution using a prescriptive approach for clients to realize immediate ROI with process and decision improvement within 90 days IBM Process Improvement Discovery WorkShopHelps define business need, solution architecture and recommended implementation approach for process improvement initiatives that benefit from BPM and BRM technologiesIBM QuickStart for WebSphere MQ Advanced Message SecurityQuickly increases WebSphere MQ security capabilities to further mitigate risk and achieve compliance

IBM QuickStart for WebSphere MQ TelemetryQuickly enables a seamless bridge of remote devices to your business services infrastructure

IBM QuickStart for WebSphere MQ Low Latency MessagingSpeeds the assured, reliable delivery of high-volume, low latency transactions

IBM WebSphere Service for SOA GovernanceHelps implement a SOA governance process using WebSphere Service Registry and Repository to realize quick time to value

IBM WebSphere Integration Services for HospitalsFaster integration of hospitals, health plans and governments with a proven, secure solution

IBM GetStarted with Application VirtualizationControl costs and add flexibility to your application infrastructure

ConfidentialBPM Process Discovery & Modeling in the CloudBlueprint Process Modeling for inventory & mappingKnowledge sharing & collaborationProcess analysis & prioritizationBPM Process Modeling & ImplementationRapid process application developmentContinuous process improvementBPM program managementEducation, Enablement and on-demand ServicesQuick Win PilotsRole-based education & mentoringExpert Services when and where theyre neededLinks to Your Next StepsIBM BPM Delivery CapabilitiesIncluding Education and Enablement Services

http://BlueworksLive.com http://IBMBPMDemos.comhttp://www.ibm.com/developerworks/websphere/services/ Demos &Free Cloud Test-drive