OutSystems Agile PlatformBPT Patterns & Best PracticesGonçalo Borrêga - OutSystems
AgendaMindset
BPT vs. Rest of the World
Simple techniques
Advanced patterns
Q&ABackground & GroundRulesMindset
MindsetBackgroundClaims processing process708 Activities501 Decisions>4.000.000 instances (>1.800.000 human)Processes thatlastfrom 2 minutes to 2 yearsRefactoringproject
MindsetBackground – One of the “old” processes
MindsetGround rulesKnow your processAnalyze earlyDesign deepTop down approachParallelize manual activitiesGuideyourusers
MindsetGround rulesAim for simplicityShow it to yourusers
Use sub-processes
Considerversioning
But…
AvoidrefactoringThe things you really should take advantageBPT vs. Rest of the World
BPT vs. Rest of the WorldThe things you really should take advantageImpactanalysisProcess upgrades ARE possiblePlandeploymentwisely
BPT vs. Rest of the WorldThe things you really should take advantageTheprocessisclose to the dataNo data dictionariesTrueChangeTM  built inAmazing event model
BPT vs. Rest of the WorldThe things you really should take advantageTheprocessisclose to the UISynchronous closing and validationUI iseasilycontrolledfromtheprocessUI caneasilyreflecttheprocess
Smallsteps for you, bigsteps for your processesSimple techniques
Simple techniquesSmall steps for you, big steps for your processesEmpowersub processesForkandJoinUse input parameters to refine behaviourUse ouputparameters to controlparentbehaviourDo notforgetreporting
Simple techniquesSmall steps for you, big steps for your processesSmartlabelingHierarchicalIncrementalRelational
Simple techniquesSmall steps for you, big steps for your processesCycles?Sure, whentheybelong to theprocessNever as procedurallogic
Simple techniquesSmall steps for you, big steps for your processesRun again… with no impactImplementautomaticactivitiesconsideringtheywillberunseveraltimesDesign theprocesssoitcanbe “restarted”
Use and extend the modelAdvanced patterns
Advanced patterns Use and extend the modelProcessintercommunicationDatabase/EventbasedDecouplefromprocessspecificactions“Statemachine”
Advanced patterns Use and extend the modelStatesDatabaseflag-based statusAllowseasyreportingEasyprocesslockers
Advanced patterns Use and extend the modelBPT awareapplicationSingleentrypointsSession.ActivityIdEveryactionwithanactivity
Advanced patterns Use and extend the modelCustominboxesContextualTaskorientedCustompriorities
Advanced patterns Use and extend the model – Custom inboxes
Advanced patterns Use and extend the model – Custom inboxes
Advanced patterns Use and extend the modelConditionalstartsSupportsadhoc processesAuto launchhiddenby UI
Advanced patterns Use and extend the model – Conditional start

BPM Patterns & Best Practices with OutSystems BPT

Editor's Notes

  • #14 Demo: Claim Process -> Damage report
  • #16 Demo: Cycle vsCycleOk
  • #17 Demo: Claim process -> If liability determinedCycle Sub ->OrderLineStatus
  • #19 Demo: Damage report -> Perform assessment -> Wait
  • #25 Demo: Cancel claim; Cancel damage report -> Check on Wait
  • #26 Demo: Cancel claim; Cancel damage report -> Check on Wait
  • #27 Demo: Add a wait for WebService and a Comments structure
  • #28 Demo: Screen controlled via behaviour
  • #29 Demo: Custom SLA
  • #30 Demo: show the template process