flavours of process modelling - faculty of science...

24
1 Flavours of Process Modelling Models of the Software Development Process. – Key ideas: Process programming, process maturity, study of people, tools, measurement, notations. Models of Client (business) processes. – Business process modelling. – Strategic modelling, requirements and analysis. – Alignment of IT with strategy and operation. Software development as a business process.

Upload: lamduong

Post on 07-Mar-2018

214 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: Flavours of Process Modelling - Faculty of Science ...dec.bournemouth.ac.uk/staff/kphalp/bpm/bpm.pdf · Flavours of Process Modelling • Models of the Software Development Process

1

Flavours of Process Modelling

• Models of the Software Development Process.– Key ideas: Process programming, process maturity,

study of people, tools, measurement, notations.• Models of Client (business) processes.

– Business process modelling. – Strategic modelling, requirements and analysis.– Alignment of IT with strategy and operation.

• Software development as a business process.

Page 2: Flavours of Process Modelling - Faculty of Science ...dec.bournemouth.ac.uk/staff/kphalp/bpm/bpm.pdf · Flavours of Process Modelling • Models of the Software Development Process

2

A Strategic Iterative Model

Strategic Modelling

Analysis Modelling

Design Modelling

Role Models Enactable Role

models

Page 3: Flavours of Process Modelling - Faculty of Science ...dec.bournemouth.ac.uk/staff/kphalp/bpm/bpm.pdf · Flavours of Process Modelling • Models of the Software Development Process

3enact to validate

ProcessModel

Use Case

Use Case

roles /activities Actor

Use CaseDescriptions

Package Diagrams

Use CaseDiagram

search for classesin the descriptions

Class A

Class B

objectA objectB

classmodel

interactionmodel

enact to validate Recent Equivalent:EARTH

Page 4: Flavours of Process Modelling - Faculty of Science ...dec.bournemouth.ac.uk/staff/kphalp/bpm/bpm.pdf · Flavours of Process Modelling • Models of the Software Development Process

4

Categories of Notation

• Madhavji*, 91 notes that there at least nine ways to describe the current process, including:– process programming, design and analysis,

behavioural, method defining schema, rules, plan, Entity Task Validation Exit (ETVX), Functional, Knowledge Based.

Madhavji, N.H. (1991), The Process Cycle. Software Engineering Journal, September issue, pp234-242.

Page 5: Flavours of Process Modelling - Faculty of Science ...dec.bournemouth.ac.uk/staff/kphalp/bpm/bpm.pdf · Flavours of Process Modelling • Models of the Software Development Process

5

Categories by Perspective

• Curtis (Curtis, 92)– Informational (e.g., ERDs).– Organisational (e.g organisation charts).– Procedural.– Behavioural.

• Behavioural and Procedural most widely used. E.g., RADs and IDEF.

• Some hybrids, e.g., PWB.

Page 6: Flavours of Process Modelling - Faculty of Science ...dec.bournemouth.ac.uk/staff/kphalp/bpm/bpm.pdf · Flavours of Process Modelling • Models of the Software Development Process

6

Procedural e.g., IDEFprocess

mechanism

control

input output

conceive project

TOR

do design

detailedTOR

do initial planningplan

evaluate design

design

report

divisional director

project manager

project manager

designer

designer

developevaluated design

projectmanager

designer

divisional director

design

report

Page 7: Flavours of Process Modelling - Faculty of Science ...dec.bournemouth.ac.uk/staff/kphalp/bpm/bpm.pdf · Flavours of Process Modelling • Models of the Software Development Process

7

Behavioural:Roles

Divisional Director

new project approved

start new project manager

Agree TOR for project

Agree TOR and delegate

Obtain estimate

Give plan to designer

deliver design

start new designer

write TOR for designer

prepare a plan

produce project debrief report

carry out designquality check

produce design

design OK?no yes

Designer

Project Manager

prepare an estimate

choose a method

Page 8: Flavours of Process Modelling - Faculty of Science ...dec.bournemouth.ac.uk/staff/kphalp/bpm/bpm.pdf · Flavours of Process Modelling • Models of the Software Development Process

8

Behavioural Model 2

Project Managing

produce work-breakdown

End Usergather /analyse requirements

initial

writeintegratetest plan

initial requirements

requirements clarification

delegate tasks

sign-off requirements

requirements clarification

Prototyping

to DBase

build / test prototypeOK?

requirements clarification

demo prototype

recordcomments

requirements changes

documentrequirements

change request

rebuild

integrate testing

evaluate CRs

writeCRs

send to Board

evaluate changeimpact

return CR aprovals

Customer

BusinessControlBoard

approved change request

modify / extend

BCB approved CR

modify /extension

changes

negotiationnegotiation negotiation

change?

y

modify / extend

yn

write report

reporting

signing off

DBA

Page 9: Flavours of Process Modelling - Faculty of Science ...dec.bournemouth.ac.uk/staff/kphalp/bpm/bpm.pdf · Flavours of Process Modelling • Models of the Software Development Process

9

Levels of Formality

• Informal: Diagrams, text.• Semi-formal. Diagrams with rules, e.g.,

Yourdon SA/SD, IDEF.• More formal semantics. Petri-nets, RADs.• Process Programs.• Enactable notations. E.g. RolEnact• Mathematical, rigorous. E.g., CSP.

Page 10: Flavours of Process Modelling - Faculty of Science ...dec.bournemouth.ac.uk/staff/kphalp/bpm/bpm.pdf · Flavours of Process Modelling • Models of the Software Development Process

10

Faith, Maths, Validation and Debugging

• Formal: Rigour: Need checking by experts• Pragmatic: Typically diagrams:

– Sacrifice rigour for understandability. – Users validate. Suffer from multiple interpretation

• Enactable. Visual. Try it out.• Combinations.

– Understandability and rigour. – Flexibility and familiarity. – Separation of concerns.

Page 11: Flavours of Process Modelling - Faculty of Science ...dec.bournemouth.ac.uk/staff/kphalp/bpm/bpm.pdf · Flavours of Process Modelling • Models of the Software Development Process

11

Reasons for Modelling

ModelTo drive Process Support

To Check Understanding

To Estimate Quantities

The software systems we build are process support systems for the business process we’remodelling. However, may intend to use explicit process support tool.

Or run quantitativesimulations (PWB/iThink)

Of current or proposed processes. (PWB/Enact/Raditor)

Page 12: Flavours of Process Modelling - Faculty of Science ...dec.bournemouth.ac.uk/staff/kphalp/bpm/bpm.pdf · Flavours of Process Modelling • Models of the Software Development Process

12

Categories of Model Use

• Cumulative: Typically used:– where process well understood,– business objects as widgets, – process needs tweaking.

• Individual: Typically used:– to gain understanding,– to move towards support,– as one would use executable spec.

Page 13: Flavours of Process Modelling - Faculty of Science ...dec.bournemouth.ac.uk/staff/kphalp/bpm/bpm.pdf · Flavours of Process Modelling • Models of the Software Development Process

13

Notational Dependence

• Typically:– procedural more suited to cumulative.– Behavioural (e.g., RADs) more suited to individual.

Understanding business context, i.e., Strategic modelling.

• Same notation can be used in different ways (cumulatively or individually).

• More difficult to classify by persepctive. – Following slides all based on a petri-net approach.

Page 14: Flavours of Process Modelling - Faculty of Science ...dec.bournemouth.ac.uk/staff/kphalp/bpm/bpm.pdf · Flavours of Process Modelling • Models of the Software Development Process

14

Petri Net Components

transition (event, activity, process)

place (state, store, object)

firing ruletokens

Page 15: Flavours of Process Modelling - Faculty of Science ...dec.bournemouth.ac.uk/staff/kphalp/bpm/bpm.pdf · Flavours of Process Modelling • Models of the Software Development Process

15

Barber Shop - Cumulative

Enterwaiting Customers

idle Barbers

active Cuttingsstart Cut

end Cut

Page 16: Flavours of Process Modelling - Faculty of Science ...dec.bournemouth.ac.uk/staff/kphalp/bpm/bpm.pdf · Flavours of Process Modelling • Models of the Software Development Process

16

Enter

start Cut

end Cut

start Cut

end Cut

CustomerBarber

Barber Shop - Individual

Page 17: Flavours of Process Modelling - Faculty of Science ...dec.bournemouth.ac.uk/staff/kphalp/bpm/bpm.pdf · Flavours of Process Modelling • Models of the Software Development Process

17

Barber Shop - Data Centric

Enterwaiting Customers

idle Barbers

active Cuttingsstart Cut

end Cut

Customer Arrival Time

Barber Availability

Customer Start Time

Customer Barber

Customer End Time

Page 18: Flavours of Process Modelling - Faculty of Science ...dec.bournemouth.ac.uk/staff/kphalp/bpm/bpm.pdf · Flavours of Process Modelling • Models of the Software Development Process

18

initial initial

cutting

paying

final

cutting

billing

=initial

choose

accept

receive

Customer Barber

leave break

return

outside

Transitions for Barber

Page 19: Flavours of Process Modelling - Faculty of Science ...dec.bournemouth.ac.uk/staff/kphalp/bpm/bpm.pdf · Flavours of Process Modelling • Models of the Software Development Process

19

In Short: Notations Count

• Different notations have different capabilities.

• Huge choice of notation for modelling.• Different perspectives, strength of

semantics, levels of formality, ease of enaction.

• Same notations may be used differently (extended) depending on purpose.

• Still usually cumulative or individual.

Page 20: Flavours of Process Modelling - Faculty of Science ...dec.bournemouth.ac.uk/staff/kphalp/bpm/bpm.pdf · Flavours of Process Modelling • Models of the Software Development Process

20

• What do we want from a process modelling notation?– Impact of audience for models,– Wanting to map to analysis models,– Ways of knowing whether a model is right.

• What does this imply for methods. – The meta-process of modelling.

Still to come...

Page 21: Flavours of Process Modelling - Faculty of Science ...dec.bournemouth.ac.uk/staff/kphalp/bpm/bpm.pdf · Flavours of Process Modelling • Models of the Software Development Process

21

An Exercise: The Barber Shop

• Propose a simple process change to the shop • Model this change.

– How does the notation cope with the required change.

– What problems issues can the different models highlight.

– Barber is too simple. For what applications do we need the kind of support suggested. What kind of process support might be in place & how might the change impact existing (IT) support system.

Page 22: Flavours of Process Modelling - Faculty of Science ...dec.bournemouth.ac.uk/staff/kphalp/bpm/bpm.pdf · Flavours of Process Modelling • Models of the Software Development Process

22

Enter

start

end

You may enter the barber shop

Enter

start

end

You must wait

Enter

start

end

You have just been chosen by barber 1

Enter

start

end

You may choose a barber

Customer Handset

Page 23: Flavours of Process Modelling - Faculty of Science ...dec.bournemouth.ac.uk/staff/kphalp/bpm/bpm.pdf · Flavours of Process Modelling • Models of the Software Development Process

23

start

end

You may choose a customer

start

end

You must complete the cutting

start

end

You must wait for a customer Barber Handset

Page 24: Flavours of Process Modelling - Faculty of Science ...dec.bournemouth.ac.uk/staff/kphalp/bpm/bpm.pdf · Flavours of Process Modelling • Models of the Software Development Process

24

Enter

start

end

You mayenter thebarber shop

Enter

start

end

You mustwait

Enter

start

end

You have justbeen chosenby barber 1

Enter

start

end

You maychoose abarber

The customer’s handset start

end

You maychoose acustomer

start

end

You mustcomplete thecutting

start

end

You mustwait for acustomer

The Barber’shandset

Barber Shop

Customers Barbers

Register ClockIn

The Barber Shop