50% found this document useful (2 votes)
492 views69 pages

Business Process Modeling

Business process modelling involves creating visual representations of business processes to improve understanding and efficiency. Key aspects of business process modelling include defining business processes, creating process models using diagrams or templates, and categorizing models as patterns, templates, or specific instances. Process models can be used for various purposes like reengineering, automation, and simulation. Standards and languages help define processes for internal operations or external collaboration between organizations.

Uploaded by

Gangadhar
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
50% found this document useful (2 votes)
492 views69 pages

Business Process Modeling

Business process modelling involves creating visual representations of business processes to improve understanding and efficiency. Key aspects of business process modelling include defining business processes, creating process models using diagrams or templates, and categorizing models as patterns, templates, or specific instances. Process models can be used for various purposes like reengineering, automation, and simulation. Standards and languages help define processes for internal operations or external collaboration between organizations.

Uploaded by

Gangadhar
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
You are on page 1/ 69

Business Process Modelling

business process modelling, patterns, UML activity


and state diagrams, business process management
systems (BPMS)
What is a business process?

Hammer & Champy definition:

”A business process is a set of partially


ordered activity aimed at reaching a
well-defined goal”

[Hammer&Champy, 1994]
What is a business process?

Laudon & Laudon definition:

”The unique ways in which organisations


coordinate and organize work activities,
information, and knowledge to produce a
valuable product or service”
[Laudon&Laudon, 2000]
Example: A sales process

A sales process (order fullfilment) contains the


following activities:

• Accept customer order


• Select, inspect and package merchanise
• Ship merchanise
• Receive customer payment
[Denna et. al., 1995]
Examples of a business processes

• A sales process (order fullfilment)


• A manufacturing process
• A customer relationship process
• An IT System maintanance process ???

Another definition: ” A business


process is a set of related activities
that create customer value”
Business processes cross functions

Kurs

System Vakt- Kurs Undervisning


administration mästeri registrering
Why focusing on business processes?

• re-engineering the business processes to


make them more effective/efficient
• discover and adopt to changed customer
demands

• automate the activities in business processes


Business Modelling

•Syfte: att förstå organisationen samt de


behov och problem som systemet skall lösa

•Leverabler: use cases, objektmodeller,


dynamiska modeller, till exempel
verksamhetsprocessmodeller (eng.
“business process models”)
What is business process model?

A business process model:


• is a representation of a business process i the real world
• is a simplified description of a business process
• has a purpose ( - to be used for software development or
education - for software developers, users or business
managers, etc)

A business process model is often represented


(visualised) as a graph/diagram, because it:
Accept customer order

Select merchandise

• gives a better overview and structure Inspect merchandise

• makes it easier to communicate Package merchandise

between different stakeholders Ship mechandise

Receive customer payment


A sales process model

A sales process model:


- at different levels of abstraction Receive customer order

Check customer order

Accept customer order Accept customer order Accept customer order

Select merchandise Select merchandise

Inspect merchandise Inspect merchandise

Manage mechandise
Package merchandise Package merchandise

Ship mechandise Ship mechandise

Receive customer payment Receive customer payment Receive customer payment


Different modelling forms

Business process modelling forms

Pattern Template/ Instance


Type/
Metaprocess
A business process (a template/type)

Business process modelling forms

Pattern Template/ Instance


Type/
Metaprocess

”An organisation’s
sales business
process”
What is a pattern?

Robert Fowler definition:

”A pattern is an idea that has been useful in


one practical context and will propbably
be useful in others”

[Fowler, 1997]
What is a business process pattern?

Business process modelling forms

Pattern Template/ Instance


Type/
Metaprocess

”An general sales


business process that
can be reused”
A business process (template) or a pattern ?

Receive customer order

Check customer order

Accept customer order Accept customer order Accept customer order

Select merchandise Select merchandise

Inspect merchandise Inspect merchandise

Manage mechandise
Package merchandise Package merchandise

Ship mechandise Ship mechandise

Receive customer payment Receive customer payment Receive customer payment


A business process instance

Business process modelling forms

Pattern Template/ Instances


Type/
Metaprocess

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?

Business process modelling forms

Pattern Template/ Instance


Type/
Use pattern
Metaprocess
libraries
Validate a Track
(best Measure the
created Automate specific
practies) to efficiency of
business business process
create a new Make the executed
process processes instances’
business organisation’s instances
against histories
process stakeholders and find
best
aware of the common
practices Simulate
business bottlenecks
to re- business
processes
engineer it processes
Business processes repository

Collect and Create – acquire processes


Store and Maintain – the acquired processes are stored in a
repository. There is a need for a design mechanism to make the
processes easy to navigate and search (MIT handbook, ebXML Catalog
of Common Business Processes)
Share and Apply - process repository is employed, which require:
support for seach and navigate, interfaces/different views for
different users, and support for the user to understand the processes
stored
Monitor and Manage – supervise and control (timestamp)
Internal vs. shared business processes

Purchase process Sales process

Request
Shared
purchase process
order

Buyer’s internal process Seller’s internal process

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

Send message Receive message

Analyse purchase order

Receive message Send message

Analyse purchase order confirmation


An external business process

Request
Request purchase order purchase
- RosettaNet PIP 3A4 order

Buyer Seller

[RosettaNet, 2002]
Business process languages

To be able to describe the business processes, there is


a need for a (more or less formal) business process
modelling language/techniques/diagrams
Examples of business process modelling language:
• PetriNets
• Flowchart diagrams
• UML’s Dynamic Diagrams (Activity, State and Interaction
Diagrams)
• Event-driven process chain (EPC), that is the process modelling
language used in SAP R/3
• IDEF0, IDEF3
• Specification and Description Language (SDL)
• Business Modelling Language (BML)
Basic process language concepts

Four basic process language concepts, which have the following


intuitive meaning:

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
A activity is something that is performed in a process

[Söderström et.al., 2002]


Different meaning of basic terms

Two examples (there are more):

State
State State
State
State State

Activity Activity

Time points Time points


Meta models and reference meta model
Event

Meta Model consists of consists of

Level Precedes

-reference Transform-
ation State

meta model Succeeds

Meta Model Precedes/


succeeds
Level Precedes
Precedes

-modelling Function Event Activity State


techniques
Succeeds
Succeeds

Require-
Model Level ment
occured

Capture Capture
requirement requirement

Require-
ment Requirement
captured [captured]

Check material Check material


on stock on stock

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

• Communication oriented languages


- focus on the interaction between prople and systems, and
between systems, e.g UML sequence diagram, BML, SDL
[Bider&Johannesson&Perjons, 2002]
Data flow diagram

Bokinfo Budgetinfo Lev.info

Beställnings Katalog- Budget Beställnings


An- rutin
ställd mottagande kontroll kontroll

Bok-
handel
UML Activity Diagram
Find [no coffee] [no cola]
Beverage
[found cola]
[found coffee]

Put Coffee Add Water Get Get Can


in Filter to Reservoir Cups of Cola

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]

Put Coffee Add Water Get Get Can


in Filter to Reservoir Cups of Cola

” OR split
Put Filter
in Machine
” AND split”

Turn on
machine

Brew
Coffee

” AND join” Pour Drink


Coffee Beverage
” XOR join”
UML Activity Diagram

Ekonomifunktion Orderfunktion
Ordermottagning
Multiple trigger

* för varje orderrad


Kolla orderrad
Kreditkontroll [ej Stoppa order
mot lager
OK]
[OK]

Lägg till order

Swimlane

Skicka order
UML Activity Diagram

Aktivitetsdiagram används för att beskriva arbetsflöden

Exempel: Då en order kommit in kontrollerar man


kundens kreditvärdighet. Man kontrollerar varje
orderrad och ser om varan i fråga finns i lager. Då dessa
kontroller utförts skickar man iväg ordern.
UML State Diagram

[all items
[not all items checked&all
Checking items available] Dispatching
checked]
do/check item do/initiate
delivery

[all items Item received


Item received checked&some [all items
[some items not items not in stock] available]
in stock]
Waiting Delivered

[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

• Ett flygbolag har en flotta av flygplan, där följande kan


hända med varje plan under dess livstid:
– Inköp
– Underhåll
– Start
– Landning
– Skrotning
UML State Diagram

Underhåll

Inköp
PåMarken Skrotning

Tillverkad Landning
Start
Skrotad

ILuften
UML Activity vs. State Diagrams

UML Activity Diagram

- to understand use cases, workflows


- to describe behaviour with a lot of parallel processing
- to describe the order of activities, i.e. sequencing
- to deal with multi-threded applications
- an “activity” could be a task by a human or a computer, or an
method in a UML Class Diagram

UML State Diagrams

- to understand how objects behave over its lifetime


- state diagrams are sometimes called “life cycle diagrams”
- to describe how the object’s states change as a result of
events that reach the object
- to describe the order of states
[Fowler&Scott, 1997]
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

[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

Business Process Management Systems (BPMS)


- also called Process Brokers, Process Automation
Systems, Workflow Management Systems

- directly executable business models


- support process design (modelling),
Application A Application B

execution, analysis, simulation


and optimisation of business BPMS
processes
- automate the business processes, or
the information flow to the Application C Person A
activities in the business
processes
Demonstration of a BPMS

Demo of Visuera Process Manager


- using BML as a process modelling language
- execute the BML models
- has two main components: a modeller and a manager
- automate the electronic information flow
- monitor and track instances
Data warehousing and DSS

data warehousing, star-join schemas, decision support


system (DSS), OLAP, business intelligence tools
The data warehousing architechture
The back room The front room

Analysis/OLAP
Data warehouse Productt Time1 Value1 Value11
Product2 Time2 Value2 Value21

External sources Extract


Product3
Product4
Time3
Time4
Value3
Value4
Value31
Value41

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

Chaudhiri & Dayal:

”Data warehousing is a collection of decision support


technologies, aimed at enabling the knowledge
worker (executive, manager, analyst) to make better
and faster decisions.”
[Chaundhuri&Dayal, 1997]

A data warehouse is a decision support system (DSS)


according to Chaudhri&Dayal and Kimball
[Kimball, 1998]
DSS model for decision support

Intern data

• “What-if” analys
• Måluppfyllelse
Beslutsmodeller
• Riskbedömning

Extern data
Typical DSS/DW queries

– Which customer groups are most profitable?

– How much is the total sale by month for each sales office?

– Are some sales offices failing to sell some otherwise popular


products?

– Is there a correlation between promotion campaigns and sales


growth?

– Do we have adequate production capacity and stocks to meet


anticipated demand?
The data warehousing architechture

Analysis/OLAP
Data warehouse Productt Time1 Value1 Value11
Product2 Time2 Value2 Value21

External sources Extract


Product3
Product4
Time3
Time4
Value3
Value4
Value31
Value41

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

• Uttag från bankkonto


• Förfrågan om pris på en produkt
• Beställning av en vara

Hur ett TPS hanterar en transaktion

Step 1 Step 2 Step 3 Step 2


Bearbeta
Mata in data Validera data Lagra data
data
Source systems characteristics

Operational DBs/
OLTPs/TPSs

• the source data often in OLTP (Online Transaction Processing)


systems, also called TPS (Transaction Processing Systems)
• high level of transaction throughput
• already occupied by the normal operations of the organisation
• a OLTP system may be reliable and consistent, but there are often
inconsistencies between different OLTP systems
• different types of data format and data structures in different
OLTP systems

OLTP vs. DSS (Decision Support Systems)


The data staging area

Often the most complex part in Extract


Transform
the architecture, and involves... Load

• Extraction (E)
• Transformation (T)
• Load (L)
• indexing

ETL-tools can be used


Scripts for extraction, transformation and load are
implemented
Transformations system

Extract
Transform
Load

TRANSFORMATIONS
SYSTEM

REAKTIVA
SYSTEM

signalerar påverkar
till
Data staging area

Transformation involves… Extract


Transform
Load
• data conversion (to a common format)
• data cleaning
– data scrubbing (use domain-specific knowledge (e.g postal
adresses) to check the data)
– data migration (specify transformation rules, “replace the
string gender by sex”)
– data auditing (discover suspicious pattern, discover violation of
stated rules)
• data aggregation
• data enrichment
Presentation/OLAP servers
Data warehouse

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”

• A decision support system (DSS) that support ad-hoc querying, i.e.


enables managers and analysts to interactively manipulate data. The
idea is to allow the users to easy and quickly manipulate and visualise
the data through multidimensional views, i.e. different perspectives.

• “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]

• An OLAP system from 1970s: “Express”, today part of Oracle 9i.


Wellknown OLAP system today: Hyperion “Essbase”, Cognos
“PowerPlay”, IBM “DB2 OLAP Server”, Microsofts “Analysis service”

• Multidimensional view of data is the foundation for OLAP


Spreadsheet output of OLAP tool

product mounth office


product group quarter region

Column headers Column header


(join constraints) (application constraint) Answer set representing
focal event

Product Group Region First Quarter - 1997


Group A ABC 1245
Group A XYZ 34534
Group B ABC 45543
Group B XYZ 34533

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

Telephone calls Quarter


Service group - sum ($)
- number of calls
Region

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

Normalised entity-relationship (ER) modelling


- a logical design technique to eliminate data redundancy to keep
consistency and storage efficiency
- makes transaction simple and deterministic
- ER models for enterprise are usually complex, e.g. they often
have hundreds, or even thousands, of entities/tables

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?

• high performance by eliminating joins (denormalisation)


and make use of special indexes

• the logical model is easy understand

• strategy to handling aggregates, e.g. summery records


that are logical redundant with base table to enhance
query performance
[Kimball, 1998]
A family of stars

Common
dimension
Common
dimension

Common
dimension

Common
dimension

Star
schema 1

Star
schema 2
Star
schema 3
Star
schema 4
A family of stars

• A dimensional model of a data warehouse for a


large data warehouse consists of between 10 and 25
similar-looking star-join schemas. Each star join will
have 5 to 15 dimensional tables.

• Conformed (shared) dimensions for drill-across. A


Conformed dimension is a dimension that means the
same thing with every possible fact table to which
it can be joined.
Dependent vs. Independent data marts
Independent Data marts

Data warehouse

Dependent Data marts


Data warehouse

You might also like