Upload
cameron-smallidge
View
224
Download
2
Embed Size (px)
Citation preview
Informationssystem och databasteknik, 2I-1033
ProcesserProcessmodeller System
Definition of Business Process
A set of activities that takes one or more types of inputs and turns them into an output of greater value to the customer.
[Hammer]
input
input
output
Definition of Business Process
A specific ordering of work activities across time and place, with a beginning, an end, and clearly-defined inputs and outputs; a structure for action.
[Davenport]
outputinput
input
Why focusing on Business Processes?
• discover and adopt to changed customer demands
• automate the activities in business processes
• re-engineering the business processes to make them more effective/efficient
• to specify the requirements on IS
Order register
Add to order
Check order lineStop orderCredit check
Ship
* for each order line
OKi lager
notOK
Credit manager Order manager
A Workflow/Business Process model
Order register
Add to order
Check order lineStop orderCredit check
Ship
* for each order line
OKi lager
notOK
Credit manager Order manager
A Workflow/Business Process model
Task
Resource
Selection(OR split)
Parallelism(AND split)
Basic Workflow Concepts
• Task - a logical unit of work that is carried out as a single whole
• Resource - a person or a machine that can perform specific tasks
• Activity - the performance of a task by a resource
• Case - a sequence of activities performed to achieve some goal, an
order, an insurance claim, a car assembly (“ärende”)
• Work item - the combination of a case and a task that is just to be
carried out
• Process - describes how a particular category of cases shall be managed
• Control flow construct - sequence, selection, iteration, parallelisation
More Concepts
A time point is an instant in time, not further decomposible
An event is an noteworthy occurence
A state shows the condition of a process and can be represented in several way, e.g. as a set of attribute values
Problem: Different meaning of basic terms or not well-defined semantics
Time points Time points
Even
t
Even
tActivityActivity
State State State StateState State
Two examples (there are more):
What are Petri nets?
Petri nets are a method (process modelling language/technique) for describing and analysing processes Petri nets are an abstract, formal method, which means that two totally different processes can have the same structure but different meaning.
Why Petri nets?
Petri nets can be described graphically. Despite that, they also have a strong formal basis. Thanks to this formal basis, it is often possible to verify the correctness of the processes. Petri nets can be used to model computer hardware, software, workflow/business processes and information flow.
Why Petri nets?
Petri nets have available analysis techniques and tools to verify the correctness of the processes
For example, Petri nets can be used to verify software. A program can be converted into a Petri net. The Petri net can then be analysed to find out design errors.
Petri nets can give process modelling languges (like UML activity diagrams) a formal semantics
Application Process
applicationsunder
consideration
ready1
checkvalidity
accept
reject
tokens transition place
preparereject letter
prepareaccept letter
sendreject
sendaccept
ready2
Application Process
applicationsunder
consideration
ready1
checkvalidity
accept
reject
When a transition fires it removes one token from each input place andadds one token to each output place
preparereject letter
prepareaccept letter
sendreject
sendaccept
ready2
A transition is enabled (“loaded) when there is a token in each of its input places.
When a transition is enabled it can fire
Application Process
applicationsunder
consideration
ready1
checkvalidity
accept
reject
When a transition fires it removes one token from each input place andadds one token to each output place
preparereject letter
prepareaccept letter
sendreject
sendaccept
ready2
A transition is enabled (“loaded) when there is a token in each of its input places
When a transition is enabled it can fire
Application Process
applicationsunder
consideration
ready1
checkvalidity
accept
reject
When a transition fires it removes one token from each input place andadds one token to each output place
preparereject letter
prepareaccept letter
sendreject
sendaccept
ready2
A transition is enabled (“loaded) when there is a token in each of its input places
When a transition is enabled it can fire
Application Process
applicationsunder
consideration
ready1
checkvalidity
accept
reject
tokens transition place
When a transition fires it removes one token from each input place andadds one token to each output place
preparereject letter
prepareaccept letter
sendreject
sendaccept
ready2
When a transition is enabled it can fire
Application Process
applicationsunder
consideration
ready1
checkvalidity
accept
reject
When a transition fires it removes one token from each input place andadds one token to each output place
preparereject letter
prepareaccept letter
sendreject
sendaccept
ready2
A transition is enabled (“loaded) when there is a token in each of its input places
When a transition is enabled it can fire
Application Process
applicationsunder
consideration
ready1
checkvalidity
accept
reject
When a transition fires it removes one token from each input place andadds one token to each output place
preparereject letter
prepareaccept letter
sendreject
sendaccept
ready2
A transition is enabled (“loaded) when there is a token in each of its input places
When a transition is enabled it can fire
Application Process
applicationsunder
consideration
ready1
checkvalidity
accept
reject
When a transition fires it removes one token from each input place andadds one token to each output place
preparereject letter
prepareaccept letter
sendreject
sendaccept
ready2
A transition is enabled (“loaded) when there is a token in each of its input places
When a transition is enabled it can fire
Enabled Transition
A transition isenabled (“loaded”) whenthere is a tokenin each of itsinput places
Not enabled Enabled
When a transition fires...
When a transition occurs, the transition “fires”, and the transition removes (“consumes”) one token from each input place andadds (“produces”) one token to each output place
Enabled
Input places
Output place
When a transition fires …
When a transition “fires”, the Petri net change state, i.e. a new distribution of tokens.
Fired
What can Petri nets concepts represent?
Place - usually represents a condition, a substate, a geographical location
Transition - usually represents an event, an activity, a transformation
Tokens - usually represent (physical or information) objects, e.g. an insurance claim, an order, a resource (machine, a wheel), a case (“ett ärende”)
What can Petri nets concepts represent?
wheel
engine
chassis
production order/case
car
Dutch Traffic Light
red
yellow
green
yr
rg
gy
Dutch Traffic Light
red
yellow
green
yr
rg
gy
Dutch Traffic Light
red
yellow
green
yr
rg
gy
Dutch Traffic Light
red
yellow
green
yr
rg
gy
Two Traffic Lights
red1
yellow1
green1
yr1
rg1
gy1
red2
yellow2
green2
yr2
rg2
gy2
Two Traffic Lights
red1
yellow1
green1
yr1
rg1
gy1
red2
yellow2
green2
yr2
rg2
gy2
Two Traffic Lights
red1
yellow1
green1
yr1
rg1
gy1
red2
yellow2
green2
yr2
rg2
gy2
Two Traffic Lights
red1
yellow1
green1
yr1
rg1
gy1
red2
yellow2
green2
yr2
rg2
gy2
Two Traffic Lights
red1
yellow1
green1
yr1
rg1
gy1
red2
yellow2
green2
yr2
rg2
gy2
Two Traffic Lights
red1
yellow1
green1
yr1
rg1
gy1
red2
yellow2
green2
yr2
rg2
gy2
Two Traffic Lights
red1
yellow1
green1
yr1
rg1
gy1
red2
yellow2
green2
yr2
rg2
gy2
Using a place “free”
If we, for some reason, wish to limit the number of “cases”, which can be under consideration at the same time to n, we can modify the Petri net by using an additional place “free”, and put n tokens in it.
free
Control flow constructs(in a workflow)
AND SPLIT
OR SPLIT
AND JOIN
OR JOIN
High-level Petri nets
Classic Petri nets
High-level Petri nets- the colour extension- the time extension
vs.
Coloured Petri Nets
claims
underconsideration
ready1
checkvalidity
accept
rejectprepare
reject letter
prepareaccept letter
sendreject
sendaccept
ready2
[name: John Doe, amount: 5000]
[name: Mary Doe, amount: 400]
amount < 1000
amount > 1000
In a classical Petri net, tokens have no structure.In a coloured Petri net, each token isassociated with a data structure.
Coloured Petri Nets
claims
underconsideration
ready1
checkvalidity
accept
rejectprepare
reject letter
prepareaccept letter
sendreject
sendaccept
ready2
[name: John Doe, amount: 5000]
[name: Mary Doe, amount: 400]
amount < 1000
amount > 1000
Coloured Petri Nets
claims
underconsideration
ready1
checkvalidity
accept
rejectprepare
reject letter
prepareaccept letter
sendreject
sendaccept
ready2
[name: John Doe, amount: 5000]
[name: Mary Doe, amount: 400]
amount < 1000
amount > 1000
In a coloured Petri net, the valuesof a token’s data structure can be usedin preconditions that determine whichtransition that will fire.
Coloured Petri Nets
claims
underconsideration
ready1
checkvalidity
accept
rejectprepare
reject letter
prepareaccept letter
sendreject
sendaccept
ready2
[name: John Doe, amount: 5000]
[name: Mary Doe, amount: 400]
amount < 1000
amount > 1000
Coloured Petri Nets
claims
underconsideration
ready1
checkvalidity
accept
rejectprepare
reject letter
prepareaccept letter
sendreject
sendaccept
ready2
[name: John Doe, amount: 5000]
[name: Mary Doe, amount: 400]
amount < 1000
amount > 1000
Coloured Petri Nets
claims
underconsideration
ready1
checkvalidity
accept
rejectprepare
reject letter
prepareaccept letter
sendreject
sendaccept
ready2
[name: John Doe, amount: 5000]
[name: Mary Doe, amount: 400]
amount < 1000
amount > 1000
Coloured Petri Nets
claims
underconsideration
ready1
checkvalidity
accept
rejectprepare
reject letter
prepareaccept letter
sendreject
sendaccept
ready2
[name: John Doe, amount: 5000]
[name: Mary Doe, amount: 400]
amount < 1000
amount > 1000
Petri Net with Time
Every token gets a timestamp,indicating the time from which thetoken is available.
A transition is enabled when eachtoken to be consumed has a timestampequal or prior to the current time.
Each transition can give a delay to a tokenproduced by the transition.
Tokens are consumed on FIFO (first-in, first-out basis). The token with the earliest timstamp is the first to be consumed
15 20
10
Petri Net with Time
15 20
10
Before current time = 20, the transition is not enabled and cannot fire.At current time = 20, it will fire. The timestamp of the produced tokenequals the current time + the transition delay (=10 in the example)
10
30
Two Traffic Lights with Time
red1
yellow1
green1
yr1
rg1
gy1
red2
yellow2
green2
yr2
rg2
gy2
30 30
55
25 25
0 0
0
0
0
Current time = 0
Two Traffic Lights with Time
red1
yellow1
green1
yr1
rg1
gy1
red2
yellow2
green2
yr2
rg2
gy2
30 30
55
25 25
0 0
0
Current time = 0 (after the transition)
25
Two Traffic Lights with Time
red1
yellow1
green1
yr1
rg1
gy1
red2
yellow2
green2
yr2
rg2
gy2
30 30
55
25 25
0 0
0
Current time = 25 (after the transition)
30
Two Traffic Lights with Time
red1
yellow1
green1
yr1
rg1
gy1
red2
yellow2
green2
yr2
rg2
gy2
30 30
55
25 25
0 0
0
Current time = 30 (after the transition)
60
30
Two Traffic Lights with Time
red1
yellow1
green1
yr1
rg1
gy1
red2
yellow2
green2
yr2
rg2
gy2
30 30
55
25 25
0 0
Current time = 30 (after two transitions)
60
55
Swimming School Exercise
A student registers at the swimming school. The student willtake one or more swimming lessons followed by an examination.Every lesson has a beginning and an end. A student must have his or her individual teacher during a lesson. There are five teachers. Each swimming lesson is followed by another swimming lesson or an individual examination.An examiner is present at the examination, from beginning to end. There are two examiners. When a student has completed an examination, three things might happen:1. The student passes and leaves the school2. The student fails, takes additional lessons, and tries again3. The student fails and gives up
a) Model this using a classical Petri netb) Use a coloured Petri net to express that it is required to take 10 lessons before taking the exam and that students drop out after three failed examsc) Add time to model that a lesson takes one hour and an exam 30 min.
Swimming School Exercise
register
begin lesson end lesson
Free teachers
more
ready
begin exam
end exam
passdrop out
Free examiners
Swimming School Exercise
register
begin lesson end lesson
Free teachers
more
ready
begin exam
end exam
passdrop out
Free examiners
noOfLessons < 10
noOfLessons = 1060
30
Basic Workflow Concepts
• Task - a logical unit of work that is carried out as a single whole
• Resource - a person or a machine that can perform specific tasks
• Activity - the performance of a task by a a resource
• Case - a sequence of activities performed to achieve some goal, an
order, an insurance claim, a car assembly
• Work item - the combination of a case and a task that is just to be
carried out
• Process - describes how a particular category of cases shall be managed
• Control flow construct - sequence, selection, iteration, parallelisation
Workflow Concepts in Petri Nets
• Task - transition
• Resource - token
• Activity - transition that fires
• Case - token
• Work item - enabled transition
• Process - Petri net
• Control flow construct - modelled by places and transitions
Swimming School Exercise
register
begin lesson end lesson
Free teachers
more
ready
begin exam
end exam
passdrop out
Free examiners
ResourceTask
Work itemCase
Triggers
When do transitions fire?Sometimes, someone or something has to fire them.
A work item can only be transformedinto an activity once it has beentriggered.
Kinds of triggers
A resource initiative
An external event
A time signal
Triggers
receive order ask for customerinfo
customeranswer
no answer
manage
cancel
Klassifikation av informationssystem
BeslutstypVilka typer av beslut som systemet stödjer Strategiska Taktiska Operationella
FunktionerVilken funktion i organisationen som systemet stöder Marknadsföring Tillverkning och
tjänster Ekonomi Personal
Typer av beslutsstödssystem
TransactionProcessingSystems (TPS)
ManagementInformationSystems (MIS)
IntelligentSupportSystems (ISS)
INFORMATIONS-BEHOV
Alla dessa system stödjerbesluts-fattande
TPS - system som hanterar och lagrar transaktioner
Mata in data
Step 1
Validera data
Step 2
Bearbetadata
Step 3
Transaktion: ett utbyte mellan två parter• Uttag från bankkonto• Förfrågan om pris på en produkt• Beställning av en vara
Hur ett TPS hanterar en transaktion
Lagra data
Step 2
Note: TPS are also called OLTP (Online Transaction processing)
MIS - system som bevakar den interna verksamheten
Sammanfattningsrapport - aggregerar data från många transaktioner och presenterar dem i ett koncist format Månatlig försäljning Årlig personalomsättning
Avvikelserapport - beskriver avvikelser mellan prognos och faktiskt utfall Budgetöverskridande Försäljningsminskning
ISS - Intelligenta StödSystem
ISS - system som stödjer ledningen på högre nivåer att fatta beslut om ostrukturerade problem Decision Support Systems (DSS) Executive Information Systems (EIS) (DSS + MIS)
OLAP (Online analytical processing) (Business Intelligence systems (BI))
ISS - Intelligenta StödSystem
- snabba svar på komplexa, ostrukturerade (ad hoc) frågor
- interaktivitet som gör att beslutsfattare kan utforska olika alternativ
- använder oftast extern och intern data- DSS använder analytiska
beslutsmodeller- grafisk presentation
ISS: ger stöd för komplexa beslut
Samband mellan TPS, MISoch ISS
TPS: hanterar transaktioner
Omvärlds-bevakning
MIS: genererar rap-porter om företaget
Operationell
Taktisk
Strategisk
Organisatoriska funktioner
En funktion är en enhet inom en organisation som utför ett antal relaterade aktiviteter. Vanligen kräver dessa aktiviteter en viss kompetens eller specifik utrustning.
Funktioner på ettuniversitet
Vakt-Vakt-mästerimästeri
KursKursregistreringregistrering
UndervisningUndervisningSystemSystemadministrationadministration
IS för marknadsföring
System som stödjer försäljning, marknadsföringskampanjer, marknadsanalys, m.m. CRM (Customer Relationship
Management) System för försäljningsanalys
IS för tillverkning och tjänster
System som stöder, lagerhantering, produktionsplanering, kvalitetskontroll m.m. Logistiksystem Materialförsörjningssystem
IS för ekonomi
System som tillhandahåller finansiell information som underlag för beslut Intern och extern redovisning Ordermottagning Fakturering
IS för personaladministration
System som stöder planering, samordning, administration och ledning av personal (Human resource systems) Lönesystem Kompetensdatabas
Vakt-Vakt-mästerimästeri
KursKursregistreringregistrering
UndervisningUndervisningSystemSystemadministrationadministration
Processer korsar funktioner
Kurs
Funktioner och IS
FoUFoU MarknadMarknad ProduktionProduktion TjänsterTjänster EkonomiEkonomiPersonalPersonal
Funktioner
Informations-system
Varje informationssystem stödersin egen funktion
Integrerade informationssystem
Order- Order- hanteringhantering
Kund-Kund-tjänstertjänster
Ekonomi-Ekonomi-rapporteringrapportering
FoUFoU MarknadMarknad ProduktionProduktion Tjänster Tjänster PersonalPersonal
Produkt- Produkt- utvecklingutveckling
Ekonomi