BPEL disadvantage: more time to product BPEL advantage: better reusability, analysis



Similar documents
Project Planning and Scheduling

Operational Research. Project Menagement Method by CPM/ PERT

Cambridge International AS and A Level Computer Science

Project Scheduling: PERT/CPM

Project Time Management

Goals of the Unit. spm adolfo villafiorita - introduction to software project management

MECH 896 Professional Development for MEng Students. Homework Discussion. Scheduling Overview. Winter 2015: Lecture #5 Project Time Management

The work breakdown structure can be illustrated in a block diagram:

MnDOT Project Management Office Presents: Schedule Float. Presenter: Jonathan McNatty, PSP Senior Schedule Consultant DRMcNatty & Associates, Inc.

Project and Production Management Prof. Arun Kanda Department of Mechanical Engineering Indian Institute of Technology, Delhi

Basic Concepts. Project Scheduling and Tracking. Why are Projects Late? Relationship between People and Effort

Scheduling Glossary Activity. A component of work performed during the course of a project.

Collaborative Scheduling using the CPM Method

PROJECT EVALUATION REVIEW TECHNIQUE (PERT) AND CRITICAL PATH METHOD (CPM)

CHAPTER 1. Basic Concepts on Planning and Scheduling

The management of the projects with MS Project

Use project management tools

MnDOT Project Management Office Presents: Schedule Updates. Presenter: Eric Costantino Senior Schedule Consultant DRMcNatty & Associates, Inc.

CISC 322 Software Architecture. Project Scheduling (PERT/CPM) Ahmed E. Hassan

ME 407 Mechanical Engineering Design Spring 2016

Network analysis: P.E.R.T,C.P.M & Resource Allocation Some important definition:

22 Project Management with PERT/CPM

Network Diagram Critical Path Method Programme Evaluation and Review Technique and Reducing Project Duration

Chapter 1.7 Project Management. 1. Project financing is one of the step of project management- State True or False

Dashboards and Reporting for Program Management

Scheduling Resources and Costs

8. Project Time Management

PROJECT COMPLETION PROBABILITY AFTER CRASHING PERT/CPM NETWORK

Backward Scheduling An effective way of scheduling Warehouse activities

ONLINE SUPPLEMENTAL BAPPENDIX PROJECT SCHEDULES WITH PERT/CPM CHARTS

PERT/CPM. Network Representation:

Module 11. Software Project Planning. Version 2 CSE IIT, Kharagpur

Chapter 3 Managing the Information Systems (IS) Project

Scheduling 101 CPM Basics. Phoenix Project Management Systems, LLC

Time Management. Part 5 Schedule Development. Richard Boser

Project Planning. Lecture Objectives. Basic Reasons for Planning. Planning. Project Planning and Control System. Planning Steps

10 Project Management with PERT/CPM

Egypt Scholars Presented by Mohamed Khalifa Hassan Jan 2014

PROGRAM EVALUATION AND REVIEW TECHNIQUE (PERT)

Chapter 2: Project Time Management

Network Calculations

Chapter-6. Developing a Project Plan

Object-Oriented Analysis. with the Unified Process. John W. Satzinger Southwest Missouri State University. Robert B. Jackson Brigham Young University

SE351a: Software Project & Process Management

SYSTEMS ANALYSIS AND DESIGN DO NOT COPY

A GUIDE TO NETWORK ANALYSIS by MICHAEL C GLEN

Real Time Scheduling Basic Concepts. Radek Pelánek

Project Management Glossary

ICT Project Management. Software Project Planning By J. Ogutu

Project Management Dr. James A. Bednar

Chapter 6: Project Time Management. King Fahd University of Petroleum & Minerals SWE 417: Software Project Management Semester: 072

Importance of Project Schedules. matter what happens on a project. projects, especially during the second half of projects

Chapter 9 Computer Scheduling Projects should be scheduled one byte at a time

Unit 1: Project Planning and Scheduling

HOW TO START WORKING WITH P2WARE PROJECT MANAGER 7?

Project Scheduling by Critical Path Method (CPM)

Section Four Learning Module C: Planning for Project Success

Lecture 26 CPM / PERT Network Diagram

MISSISSIPPI STATE UNIVERSITY Office of Planning Design and Construction Administration

IJSRD - International Journal for Scientific Research & Development Vol. 3, Issue 10, 2015 ISSN (online):

Deming s 14 Points for TQM

Project management: a simulation-based optimization method for dynamic time-cost tradeoff decisions

CPM and GANTT: The Next Step in Multi-Project Management

Precedence Diagram Method. CSTM 462 Planning & Scheduling

(Refer Slide Time: 01:52)

Project Management Chapter 3

A. O. Odior Department of Production Engineering University of Benin, Edo State.

Scheduling Fundamentals, Techniques, Optimization Emanuele Della Valle, Lecturer: Dario Cerizza

Chapter 11 Monte Carlo Simulation

CRITICAL PATH METHOD (CPM) SCHEDULES

Project Scheduling: PERT/CPM

PMP : Project Management Professional Study Guide Kim Heldman

LECTURE 5: SOFTWARE PROJECT MANAGEMENT. Software Engineering Mike Wooldridge

EdExcel Decision Mathematics 1

ANALYSIS OF PROJECT PLANNING USING CPM AND PERT

Project Scheduling & Tracking

SECTION CONSTRUCTION SCHEDULE B. Part 1 - General Work Included Related Requirements Reference Standards...

Critical Path Method (CPM)

PROGRAMMING TECHNIQUES. Chapter 5(Part 2)

Quantitative Risk Analysis with Microsoft Project

SYSM 6304: Risk and Decision Analysis Lecture 5: Methods of Risk Analysis

A Generalized PERT/CPM Implementation in a Spreadsheet

Scope management can be defined as controlling what is and what is not a part of the project.

Scheduling. Anne Banks Pidduck Adapted from John Musser

Figure out the early start and early finish. Early start. Early finish

A Computer Application for Scheduling in MS Project

Test Fragen + Antworten. October 2004 Project Management Wilhelm F. Neuhäuser IBM Corporation 2003

Software Engineering. Pert and Gantt exercises. Lecturer: Giuseppe Santucci

Information Technology Project Management, Sixth Edition. Note: See the text itself for full citations. More courses at cie-wc.edu

Systems Analysis and Design

Leaving Certificate Technology. Project Management. Teacher Notes

Test Fragen. October 2003 Project Management Wilhelm F. Neuhäuser IBM Corporation 2003

WebSphere Business Modeler

CIS Project Management

Introduction to Project Management ECE 480. Erik Goodman

CHAPTER 4 LINEAR SCHEDULING METHOD (LSM) AND ITS APPLICATIONS

Transcription:

Modeling Page 1 To BPEL or not to BPEL? 5:56 PM To BPEL or not to BPEL? BPEL disadvantage: more time to product BPEL advantage: better reusability, analysis

Modeling Page 2 A tale of two strategies 5:57 PM A tale of two strategies The older strategy: salesforce.com: Write business logic in a custom language. Provide a large variety of services. No BPEL. The newer strategy: intalioworks.com: Write overall strategy in BPMN; Refine into BPEL; Plumb BPEL to services graphically without writing code.

Modeling Page 3 The big picture of BPEL 10:47 AM The big picture Define your business processes via BPMN, and (using design patterns in WS-CDL), convert them to executable BPEL, which you execute on a BPEL engine, e.g., Apache ODE or IBM Websphere, which contacts web services (e.g., generated by apache AXIS or salesforce APEX), which utilize cloud services via java APIs.

Modeling Page 4 So, why are we this high up? 10:51 AM So, why are we this high up? BPMN is the Cobol of the new millenium! Easily readable by a manager, and Clearly expresses observable intent, but Darn near impossible for a manager to write! BPEL is not understandable to managers, but need not be, because it only implements the BPMN observables. It might be argued that BPEL caused clouds as we know them, by justifying their use.

Modeling Page 5 The real effect of BPMN 10:57 AM The real effect of BPMN Allows one to judge just how important reliability is, by answering "what-if" questions about service performance, and analyzing the cost of service delays, which justifies high-reliability services, which led to clouds!

Modeling Page 6 The hidden use for BPMN models 11:01 AM The hidden use for BPMN models Can use the model, without code, to predict business performance and value. Can model the effects of performance and reliability. Can predict bottom-line behaviors.

Modeling Page 7 How to analyze BPMN 11:03 AM How to analyze BPMN BPMN analysis is a simple generalization of PERT (Program Evaluation and Review Technique), which is a generalization of Critical Path Method analysis (CPM).

Modeling Page 8 Critical Path Method Wednesday, December 02, 2009 11:08 AM Critical Path Method A basic tool for project management Express task precedences as a task graph. Task A -> B means A should precede B. Has a Start node: when project starts. Has an End node: when project is finished.

Modeling Page 9 Relationship between CPM and BPMN 11:16 AM Relationship between CPM and BPMN: BPMN processes take time. Time delays are measurable and predictable. Effects of delays are predictable. Can use statistics on delays, as well as traces of business load, to predict overall performance, and even profit. Can determine which processes are critical, which determines which cloud functions are critical. Can ask "what-if" questions about what will happen if critical processes change. E.g., via a different SLA.

Relating CPM and BPMN 11:27 AM Two BPMN processes (request and response) One CPM task (get data). Modeling Page 10

Modeling Page 11 Trace-driven simulation 11:21 AM Trace-driven simulation A common business decision support technique Input: statistics on subprocess time requirements, and an actual trace of customer requests for a given day. Output: predictions of how that day would have gone if processes had been more (or less) efficient. Key is cost/value analysis: Cost: what you pay for service, or what it costs you to provide it yourself. Value: what customers do, and how much money you make.

Modeling Page 12 The big deal 6:24 PM The big deal: BPEL can be tuned based upon observation. It is not static, but its performance changes when you reassign parts of it to different services.

Modeling Page 13 Definitions Wednesday, December 02, 2009 11:28 AM CPM Definitions Duration: how long it takes to do a task. Earliest start time: earliest time a task can be started = max of earliest completion times for prerequisites. Latest start time: latest time a task can be started and still finish with minimum completion time for project. Earliest completion time: earliest start time + task duration. Latest completion time: latest start time + task duration. Slack time: latest completion time - earliest completion time = latest start time - earliest start time. A task is critical if its earliest start time is its latest start time, i.e., slack time = 0! Changing the time of a critical task changes overall behavior. Key idea: if a service is critical, improving it means something.

Modeling Page 14 The critical path theorem Wednesday, December 02, 2009 11:30 AM The critical path theorem Critical tasks do not occur in isolation, but instead lie on a critical path from start to finish. There may be multiple critical paths. If any task on a critical path changes in duration, the whole project duration can change.

Modeling Page 15 The critical path algorithm Wednesday, December 02, 2009 11:33 AM The critical path algorithm Objective: compute slack time for every task. Two phases: forward scan and backward scan. Forward scan: compute earliest completion time. Backward scan: compute latest completion time.

Modeling Page 16 A task graph Wednesday, December 02, 2009 11:16 AM A task graph has a start, end, and intermediate tasks.

Modeling Page 17 Forward algorithm Wednesday, December 02, 2009 11:24 AM Forward scan: Label each task with its time. Mark start's earliest start time and earliest completion time as 0. From left to right (start to finish), If a task's predecessors are marked with their earliest completion times, its earliest start time is the maximum of predecessor earliest completion times and its earliest completion time is its earliest start time plus its duration. At the end, every node is labeled with its earliest start and completion times.

Forward scan example Wednesday, December 02, 2009 11:16 AM Start at beginning Compute earliest start time and earliest completion time. Modeling Page 18

Modeling Page 19 Backward algorithm Wednesday, December 02, 2009 11:24 AM Backward scan: Mark end's latest start time and latest completion time as its earliest start time and completion time. From right to left (finish to start), If a task's successors are marked with latest start time, its latest completion time is the minimum of successor latest start times and its latest start time is its latest completion time minus its duration. At the end, every node is labeled with its latest start and completion times.

Modeling Page 20 Backward scan example Wednesday, December 02, 2009 11:16 AM Start at end Compute latest completion and start times from end to beginning

The critical path Wednesday, December 02, 2009 11:16 AM A critical path has earliest start time = latest start time. Modeling Page 21

Modeling Page 22 CPM and PERT Wednesday, December 02, 2009 12:11 PM CPM and PERT CPM: Critical Path Method input: task times and precedences output: minimum completion time, slack time, etc. PERT: Program Evaluation and Review Technique input: task time probability distributions and precedences output: probability distribution of minimum completion time, slack time, etc.

Modeling Page 23 PERT Wednesday, December 02, 2009 12:14 PM How (simple) PERT works Assign a normally-distributed probability distribution n(μ,σ) to each task: μ=mean completion time σ=standard deviation of completion time n(μ,σ)(t) = exp(-(t-μ) 2 /σ 2 ) Compute the PDF of the earliest start time and latest start time from the PDF of the task completion times! If we have two tasks in sequence, and they're independent, then the probability that the two take time t is the integral of the product of PDF(t1)*PDF(t2), for all t=t1+t2 (convolution).

Modeling Page 24 Example of PERT analysis 6:36 PM Suppose we have an empirical distribution as follows: 0-10 50 instances p=50/100 10-20 40 instances p=40/100 20-30 10 instances p=10/100 Caveat: distributions change over time. sensitive to time of day and external load. sensitive to external events. Call this d If 0<=d<10, d is not critical, delay is 35 with p=1/2 If 10<=d<20, d is not critical, delay is 35, p=4/10 if 20<=d<30, d is critical, delay is 35-45, p=1/10 SO We can compute the expected value, which is the sum of value * Prob(value), where the value is an interval = (35, 35)*9/10 + (35,45)*1/10

Modeling Page 25 Two probability distributions 6:44 PM Suppose that d is 10 p=.2 20 p=.5 30 p=.3 and e is 10 p=.1 20 p=.3 30 p=.6 10+10 at probability.2*.1 10+20 at probability.2*.3 10+30 at probability.2*.6.

Practical modeling 11:43 AM Practical modeling Completion times expressed in terms of frequency tables for observations: Completion time range on X Frequency on Y Empirical probability: frequency/total trials. Modeling Page 26

Modeling Page 27 Limitations of BPMN modeling 11:48 AM Limitations of modeling Response times for external services vary with (unpredictable) external load (and time of day). Cannot model unforeseen situations. Amusement: IBM has tried to beat this, by doing modeling that injects unforeseen situations! E.g., gnomes running around causing hardware failures!

Modeling Page 28 Alas, 10:59 AM Alas, I haven't been able to locate a freeware BPMN analyzer, that: Assigns probabilities to failures, Simulates resulting operational behavior, and predicts effects upon profits. But these do exist; they just cost money!