Business-Driven Software Engineering

Transcription

IBM Research – ZurichProcess Management TechnologiesBusiness-Driven Software EngineeringLecture 11 – Business Process Simulation with WebSphereBusiness ModelerJochen Küster jku@zurich.ibm.com 2011 IBM Corporation

IBM Research – ZurichProcess Management TechnologiesAgenda Foundations of Process Simulation Planning a Process Simulation Simulation Experiments in the IBM WebSphereBusiness Modeler Summary and References2Dr. Jochen Küster BDSE 2011 2011 IBM Corporation

IBM Research – ZurichProcess Management TechnologiesFoundations of Process Simulation3Dr. Jochen Küster BDSE 2011 2011 IBM Corporation

IBM Research – ZurichProcess Management TechnologiesSimulation of Process Models Simulation– "The technique of imitating the behaviour of some situation or system bymeans of an analogous model, situation, or apparatus, either to gaininformation more conveniently or to train personnel." (Oxford EnglishDictionary) Simulation is a well-known concept in Computer Science, applied in manyareas (Operating systems, etc.) Business process simulation is based on discrete event simulation Execution of the process model according to its semantics Automated simulation in Process Modeling Tools4Dr. Jochen Küster BDSE 2011 2011 IBM Corporation

IBM Research – ZurichProcess Management TechnologiesDiscrete Event SimulationSimulationcomponentClocke1e2e3.Event listModel Simulation component removes an event from the event list, processesthe event, causes changes in the model Each event has a time stamp attached to it Processing of event gives rise to new events, insertion into event list Simulation component advances the virtual time by advancing theclock Clock advances from one “discrete” time to the next5Dr. Jochen Küster BDSE 2011 2011 IBM Corporation

IBM Research – ZurichProcess Management TechnologiesDiscrete Event Simulation of Process Modelse1e2e3.SimulationcomponentClockEvent listGrantClaimCloseClaimRegisterClaimRejectClaim Simulation component “interprets” the business process model Simulates the transitions of activity instances such as active andterminated Events generated depend on the business process model6Dr. Jochen Küster BDSE 2011 2011 IBM Corporation

IBM Research – ZurichProcess Management TechnologiesSimulation of Process Models – Goals (1) Animated simulation for getting an understanding of the model– Explain the process model to the customer by using a simulation Validation of process model (increase the quality)– Identify deadlocks or lack of synchronization errors– Identify deviations from the “real world” process Prediction of effects of process changes– if more resources are available– if the process flow is changed– if the cost or profit of activities can be increased/decreased7Dr. Jochen Küster BDSE 2011 2011 IBM Corporation

IBM Research – ZurichProcess Management TechnologiesSimulation of Process Models – Goals (2) Analysis of resources used in process models Analysis of process execution times Analysis of process costs based on executions times and activityexecutions costs Analysis of process profit based on executions times and activityexecutions costs and profits Evaluation of alternative models8Dr. Jochen Küster BDSE 2011 2011 IBM Corporation

IBM Research – ZurichProcess Management TechnologiesProcess Simulation: Analysis VariablesMeasured Variablesin Process SimulationRelated to Process ExecutionRelated to ResourcesExecution timesTimeWaiting timesOperating timesTimeThroughput timeDown timesProcess costsValuesProcess profitsWaiting timesValuesIdle time costsUse capacity costsProcess revenueQuantitiesExecuted activitiesNon-executed activitiesQuantitiesObject inputObject outputObjects remaining9Dr. Jochen Küster BDSE 2011 2011 IBM Corporation

IBM Research – ZurichProcess Management TechnologiesPlanning a Process Simulation10Dr. Jochen Küster BDSE 2011 2011 IBM Corporation

IBM Research – ZurichProcess Management TechnologiesSimulation of Process Models - Requirements Process model needs to be suitable for simulation Goals of the simulation have to be clear Process model needs to be stable enough such that the results can beused (e.g. resources, costs, profits of actions) Process model needs to be annotated with simulation data Simulation data has to be available in the company Simulation requires detailed planning– Plan the simulation, analyze company data for setting simulation data,simulate the model, validate the model, interpret simulation results11Dr. Jochen Küster BDSE 2011 2011 IBM Corporation

IBM Research – ZurichProcess Management TechnologiesSimulation – Detailed Steps (1) Plan the simulation– Define goal of the simulation– Decide whether simulation is feasible (costs of the simulation) Analyze company data for setting simulation data– Select processes which have to be simulated (includes modeling ofprocesses)– Identify variants of processes for the simulation Define and collect data Incorporate relevant data into process models– Includes refinement as well as abstraction of process models12Dr. Jochen Küster BDSE 2011 2011 IBM Corporation

IBM Research – ZurichProcess Management TechnologiesSimulation – Detailed Steps (2) Perform the simulation– Run the simulation over a longer period of time for computing simulationresults Interpret simulation results– Identify strengths and weaknesses according to the simulation results– Analyze average waiting times Perform alternative simulation runs– Depending on the simulation results, adapt certain parameters and re-run thesimulation Present results of the simulation13Dr. Jochen Küster BDSE 2011 2011 IBM Corporation

IBM Research – ZurichProcess Management TechnologiesAnnotation of Process Model Attributes (1)GrantClaimRegisterClaimXXCloseClaimRejectClaim Costs of executing activities (e.g Register Claim: 50 ) Time of executing activities (e.g. Register Claim: 20 sec) Profit of executing activities (e.g. Register Claim: 100 ) Resources required for executing an activity (e.g. roles required) Costs of resources needed to execute actions Probabilities at decision nodes (e.g. 60%-40%, 70%-30%)14Dr. Jochen Küster BDSE 2011 2011 IBM Corporation

IBM Research – ZurichProcess Management TechnologiesAnnotation of Process Model Attributes (2)GrantClaimRegisterClaimXXCloseClaimRejectClaim Process instantiation frequency (“arrival rate of cases”) Resource availability plans Resource priorities15Dr. Jochen Küster BDSE 2011 2011 IBM Corporation

IBM Research – ZurichProcess Management TechnologiesProbability distributions in process simulation Attributes can be associated with probability distributions if constantvalues do not model the reality correctly Candidates for probability distributions:– Decisions in process models– Task duration– Time between process instantiationsExamples of probability distributions: Uniform distribution Normal distribution Logarithmic normal distribution16Dr. Jochen Küster BDSE 2011 2011 IBM Corporation

IBM Research – ZurichProcess Management TechnologiesProbability distributions in process simulation - aimDecision probability: Constant probabilities: 40 %, 60 % Based on the value of a business object, this value is based on aprobability distribution17Dr. Jochen Küster BDSE 2011 2011 IBM Corporation

IBM Research – ZurichProcess Management TechnologiesModeling of process instantiation In constant time intervals– Frequency of process instantiation needs to be specified Stochastic instantiation can be modeled in a process instantiation model– Uniform distribution of new process instances on weekdaysWeekday18Dr. Jochen Küster BDSE 2011Number of process instances: 10Distribution: uniform 2011 IBM Corporation

IBM Research – ZurichProcess Management TechnologiesModeling of resource availability Resource Availability Plan specifies whether a resource is available at agiven point in time Resource Availability Plan can be modeled and then taken into accountin the simulation Takes into account shifts and recreational timesWeekdayShiftLunchBreak19Length: 1 hourDr. Jochen Küster BDSE 2011Length: 8 hoursCoffeeBreakLength: 20 minutes 2011 IBM Corporation

IBM Research – ZurichProcess Management TechnologiesSimulation Experiments in the IBM WebSphere BusinessModeler20Dr. Jochen Küster BDSE 2011 2011 IBM Corporation

IBM Research – ZurichProcess Management TechnologiesSimulation Experiments in IBM WebSphere Business Modeler (1)50 200 50 50 10 How much does a process execution cost on average? If we reject 80% of the claims, how much does a process execution coston average? If the settle claim cost increases to 220 , how much does a processexecution cost on average?21Dr. Jochen Küster BDSE 2011 2011 IBM Corporation

IBM Research – ZurichProcess Management TechnologiesSimulation Experiments in IBM WebSphere Business Modeler (2)1h1h1h1h1h What effect do our resources cost have on the cost of the process What effect do our resources have on the throughput of the process? What is the average response time of the process? What happens if we have another person working on the settlement ofclaims?22Dr. Jochen Küster BDSE 2011 2011 IBM Corporation

IBM Research – ZurichProcess Management TechnologiesSimulation Experiment (1) “How much does a process execution cost on average?” Goal: Average process execution cost– annotate costs– run simulation– do analysis of result Expected result: mean between 350 and 110 230 (in the 50/50 case)23Dr. Jochen Küster BDSE 2011 2011 IBM Corporation

IBM Research – ZurichProcess Management TechnologiesSimulation Experiment (2) “If we reject 80% of the claims, how much does a process execution cost onaverage?” Goal: Average process execution cost– annotate costs– run simulation– do analysis of result Result:24Dr. Jochen Küster BDSE 2011 2011 IBM Corporation

IBM Research – ZurichProcess Management TechnologiesSimulation Experiment (3) “If the settle claim cost increases to 220 , how much does a processexecution cost on average?” Goal: Average process execution cost– annotate costs– run simulation– do analysis of result Result:25Dr. Jochen Küster BDSE 2011 2011 IBM Corporation

IBM Research – ZurichProcess Management TechnologiesSimulation Experiment (4) “What effect do our resource cost have on costs of theprocess?” Goal: Average process execution cost with resourcescost– annotate costs– assign roles to activities, assign resource costs toresources– run simulation– do analysis of result26Dr. Jochen Küster BDSE 2011 2011 IBM Corporation

IBM Research – ZurichProcess Management TechnologiesAnalysis of Simulation Results (1) Aggregated results:– What is the average cost of the process?– What is the average time duration of the process?– What is the average profit of the process?– What is the average time of resource usage? Instance-related results:– How often has an activity been executed?– What is the time duration of a particular process instance? Resource-related results:– Which resource is understaffed?– Which resource is overstaffed?27Dr. Jochen Küster BDSE 2011 2011 IBM Corporation

IBM Research – ZurichProcess Management TechnologiesAnalysis of Simulation Results (2) Process improvement by comparing AS-IS with TO-BE simulationresults What-if analysis for– Resource availability– Costs and Profits– Execution times Supported by the simulation tools Key within Business Process Reengineering Methodologies28Dr. Jochen Küster BDSE 2011 2011 IBM Corporation

IBM Research – ZurichProcess Management TechnologiesProcess simulation results – AS-IS and TO-BE Example Decrease the average cost of the Insurance Agent Compare the results of the simulation29Dr. Jochen Küster BDSE 2011 2011 IBM Corporation

IBM Research – ZurichProcess Management TechnologiesSummary of Lecture and References Introduction to IBM WebSphere Business Modeler 7.0 Concepts of business process simulation Foundations of discrete event simulation Detailed steps for performing a simulation Annotation of process models (costs, profits, resource costs, etc.) Samples of simulation experimentsFurther Reading: S. Neumann, M. Rosemann, A. Schwegmann: Simulation vonGeschaeftsprozessen. In J. Becker et al., Herausgeber, Prozessmanagement,Springer, 2004. K. Tumay: Business Process Simulation. Proceedings of the 1995 WinterSimulation Conference, 1995. J. Misra: Distributed Discrete-Event Simulation. ACM Computing Surveys, Vol.18, No. 1, March 1986.30Dr. Jochen Küster BDSE 2011 2011 IBM Corporation

IBM Research – ZurichProcess Management TechnologiesHelp Sheet for Setting Up a Simulation Create the process model, annotate with appropriate data (activity costs,activity duration, roles, resources) Create a simulation snapshot (using “Simulate” in the context menu) Set token creation settings as detailed on the next slides Run simulation using simulation control panel Analyze resultsStart simulation here!Open simulation control panel here!31Dr. Jochen Küster BDSE 2011 2011 IBM Corporation

IBM Research – ZurichProcess Management TechnologiesSetting Token Creation Settings (1) Open simulation snapshot after creating it using “Simulate” Open token creation settings as explained in red colorDouble-click here to go to the token creation settings on the next slide!32Dr. Jochen Küster BDSE 2011 2011 IBM Corporation

IBM Research – ZurichProcess Management TechnologiesSetting Token Creation Settings (2) Specify token creation settings and increase total number of tokens (here 10) Add other properties if required33Dr. Jochen Küster BDSE 2011 2011 IBM Corporation

Introduction to IBM WebSphere Business Modeler 7.0 Concepts of business process simulation Foundations of discrete event simulation Detailed steps for performing a simulation Annotation of process models (costs, profits, resource costs, etc.) Samples of simulation experiments Further Readin