Business Process Modeling
Business Process Modeling
[Hammer&Champy, 1994]
What is a business process?
Kurs
Select merchandise
Manage mechandise
Package merchandise Package merchandise
”An organisation’s
sales business
process”
What is a pattern?
[Fowler, 1997]
What is a business process pattern?
Manage mechandise
Package merchandise Package merchandise
An organisation’s An organisation’s
sales business sales business
process for process for
customer X customer Y
(Orderno: 158, (Orderno: 206,
Customer X, Customer Y,
Oct 15, 2002, Oct 15, 2002,
Ordersum: $50) Ordersum: $ 200)
Why different modelling forms?
Request
Shared
purchase process
order
A supply-chain/extended value-chain
An external business process
Request
Request purchase order purchase
- support trading partners to issue and order
acknowledge new purchase orders
Buyer Seller
Create purchase order
Request
Request purchase order purchase
- RosettaNet PIP 3A4 order
Buyer Seller
[RosettaNet, 2002]
Business process languages
State
State State
State
State State
Activity Activity
Level Precedes
-reference Transform-
ation State
Require-
Model Level ment
occured
Capture Capture
requirement requirement
Require-
ment Requirement
captured [captured]
X Requirements
[checked]
Material is
on stock
Material is
not on stock
[Rosemann&Green, 2002]
EPC UML Activity Diagram
Categorisation of Business process languages
• Static-oriented languages
-visualise the input and output from activities, but not the
logical order/time, e.g. IDEF0, data flow diagram (?)
• Activity-oriented languages
-decribes which activities follows and precede another in a
process, e.g EPC, UML activity diagram
• State-oriented languages
-describes which states follow and precede another in a
process, e.g UML state diagram
Bok-
handel
UML Activity Diagram
Find [no coffee] [no cola]
Beverage
[found cola]
[found coffee]
Put Filter
in Machine
Turn on
machine
Brew
Coffee
Pour Drink
Coffee Beverage
[Fowler&Scott, 1997]
UML Activity Diagram
Guard
Find [no coffee] [no cola]
Beverage
[found coffee]
[found cola] Decision
activity
Initial State
Synchronisation
Put Coffee Add Water Get Get Can Bar/Fork
in Filter to Reservoir Cups of Cola
Activity
Put Filter
in Machine
Transition
(Control Flow)
Turn on
Synchronisation machine
Bar/Join
Brew
Coffee
Final State
Pour Drink
Coffee Beverage
UML Activity Diagram
Find [no coffee] [no cola]
Beverage
[found cola]
[found coffee]
” OR split
Put Filter
in Machine
” AND split”
Turn on
machine
Brew
Coffee
Ekonomifunktion Orderfunktion
Ordermottagning
Multiple trigger
Swimlane
Skicka order
UML Activity Diagram
[all items
[not all items checked&all
Checking items available] Dispatching
checked]
do/check item do/initiate
delivery
[Fowler&Scott, 1997]
UML State Diagram
Guard
Initial State
[all items
State
[not all items checked&all
Checking items available] Dispatching
checked]
do/check item do/initiate Activity
delivery
Event
Transition
[all items Item received
checked&some (Control flow)
Item received [all items
[some items not items not in stock] available]
in stock]
Waiting Delivered
Wait
Final State
State
[Fowler&Scott, 1997]
UML State Diagram
Underhåll
Inköp
PåMarken Skrotning
Tillverkad Landning
Start
Skrotad
ILuften
UML Activity vs. State Diagrams
Customer
Order
Order Wait for Update answer= End
Order Event 1
update Timer answer OK
T1
Timer
T1 Order App A
answer= does not End
Not OK answer
App A Operator
[Johannesson&Perjons, 2002]
Business Modelling Language (BML)
Customer
Order
Order Wait for Update answer= End
Order Event 1
update Timer answer OK
T1
Timer
T1 Order App A
answer= does not End
Not OK answer
App A Operator
Business Modelling Language (BML)
Customer
Order BIA
App A Operator
Business Process Management Systems
Analysis/OLAP
Data warehouse Productt Time1 Value1 Value11
Product2 Time2 Value2 Value21
Transform Serve
Load Query/Reporting
Refresh
Operational DBs/
OLTPs/TPSs Data marts
Data mining
Falö aöldf
flaöd aklöd
falö alksdf
Data sources Back end tools ”The data warehouse” Front end tools
Legacy systems Data staging area Presentation (OLAP) servers End user applications
OLTP/TP systems
Why a data warehouse?
DB DBMS
End user
application A
DB DBMS
End user
application B
DB DBMS
End user
application C
DB DBMS
A data warehousing definition
Intern data
• “What-if” analys
• Måluppfyllelse
Beslutsmodeller
• Riskbedömning
Extern data
Typical DSS/DW queries
– How much is the total sale by month for each sales office?
Analysis/OLAP
Data warehouse Productt Time1 Value1 Value11
Product2 Time2 Value2 Value21
Transform Serve
Load Query/Reporting
Operational DBs/
OLTPs/TPSs Data marts
Data mining
Falö aöldf
flaöd aklöd
falö alksdf
Source systems Data staging area Presentation servers End user applications
OLTP (=TPS) handling and store transactions
Operational DBs/
Transaktion: ett utbyte mellan två parter OLTPs/TPSs
Operational DBs/
OLTPs/TPSs
• Extraction (E)
• Transformation (T)
• Load (L)
• indexing
Extract
Transform
Load
TRANSFORMATIONS
SYSTEM
REAKTIVA
SYSTEM
signalerar påverkar
till
Data staging area
OLAP
servers
Data marts
• What is OLAP?
• Star-join schemas/dimensional modelling
• Pre-aggregations
• ROLAP/MOLAP servers
What is OLAP?
• Acronym for “On-line analytical processing”
• “An OLAP session takes place online in real time, with rapid
responses to manager’s or analyst’s queries, so that analytical or
decision-making process is unsturbed” [O’Brien, 2002]
Row headers
“Multidimensional” view of the data
-a popular conceptual model that influenced front-end tools, database design,
and the query engine for OLAP
- numeric measures/facts (e.g. number of, sum, total sales) depends on a set of
dimensions
Spreadsheets: A data cube:
130
130
2 300
2 300
5 024 5 024
200
200
product
product
“Multidimensional” view of the data
promotion
campaign
product
product product
product
customer group
“Multidimensional” view of the data
Promotion
campaign
Quarter
Measures/facts Customer
group
Product
Office
Dimensional modelling - Star-join schema
Service used Time
- service name - date
- service group - month
- quarter
- year
1
Telephone calls 1
- sum ($)
0..* - number of calls 0..*
0..* 0..*
Customer
Sales Dimension 1 - customer name
- seller name - address
- office 1
- region
- income group
Snow-flake schema
Year
Service used
- service name Month
Time
- date
Customer
Sales Dimension - customer name
- seller name - address
Income group
Office
Dimensional modelling - Star-join schema
Service Dimension Time Dimension
Service
Key Service group Date/
S1 Local call Group A Key Month Quarter Year
S2 Intern. call Group A 991011 9910 4 - 99 99
S3 SMS Group B 991012 9910 4 - 99 99
S4 WAP Group C 1
1
Fact table - Transactions
Number
Sum of calls
C210 S1 F11 991011 25:00 3
0..* C210 S3 F11 991011 05:00 1 0..*
C212 S2 F13 991011 89:00 1
C213 S1 F13 991011 12:00 1
C214 S4 F13 991012 08:00 1
0..* 0..*
Customer Dimension
Sales Dimension Income
Key Customer Address Region group
Key Seller Office
1
F11 Anders C Sundsvall 1 C210 Anna N Stockholm Stockholm B
F12 Lisa B Sundsvall C211 Lars S Malmö Skåne B
F13 Janis B Kista C212 Erik P Rättvik Dalarna C
C213 Danny B Stockholm Stockholm A
C214 Åsa S Stockholm Stockholm A
Dimensional modelling - Star-join schema
Service Dimension Time Dimension
Service
Key Service group Date/
S1 Local call Group A Key Month Quarter Year
S2 Intern. call Group A 991011 9910 4 - 99 99
S3 SMS Group B 991012 9910 4 - 99 99
S4 WAP Group C
Fact table - Transactions
Number
Sum of calls Query:
C210 S1 F11 991011 25:00 3 For how much
C210 S3 F11 991011 05:00 1
C212 S2 F13 991011 89:00 1 did customers in Sthlm
C213 S1 F13 991011 12:00 1 use service “Local call”
C214 S4 F13 991012 08:00 1
in october 1999?
S=37:00
Customer Dimension
Sales Dimension Income
Key Seller Office Key Customer Address Region group
F11 Anders C Sundsvall C210 Anna N Stockholm Stockholm B
F12 Lisa B Sundsvall C211 Lars S Malmö Skåne B
F13 Janis B Kista C212 Erik P Rättvik Dalarna C
C213 Danny B Stockholm Stockholm A
C214 Åsa S Stockholm Stockholm A
Normalised ER vs. Dimensional modelling
Dimensional modelling
- a logical design technique that present data in a intuitive way and
that allow high-performance access
- aims at model decision support data
- easier to navigate for the user and high performance
[Kimball, 1998]
Why dimensional modelling?
Common
dimension
Common
dimension
Common
dimension
Common
dimension
Star
schema 1
Star
schema 2
Star
schema 3
Star
schema 4
A family of stars
Data warehouse