Tools and Techniques For Process Modeling
Tools and Techniques For Process Modeling
Process Modeling
Tools and Techniques for Process Modeling
Pfleeger and Atlee, Software Engineering: Theory and Practice Chapter 2.2
Tools and Techniques for Process Modeling
Static Modeling: Lai Notation
Pfleeger and Atlee, Software Engineering: Theory and Practice Chapter 2.3
2.3 Tools and Techniques for Process Modeling
Static Modeling: Lai Notation
Name Car
Synopsis This is the artifact that represents a class of cars.
Complexity type Composite
Data type (car_c, user-defined)
Artifact-state list
parked ((state_of(car.engine) = off) Car is not moving, and
(state_of(car.gear) = park) engine is not running.
(state_of(car.speed) =
stand))
initiated ((state_of(car.engine) = on) Car is not moving, but the
(state_of(car.key_hole) = engine is running
has-key)
(state_of(car-driver(car.))
= in-car)
(state_of(car.gear) = drive)
(state_of(car.speed) =
stand))
moving ((state_of(car.engine) = on) Car is moving forward or
(state_of(car.keyhole) = backward.
has-key)
(state_of(car-driver(car.))
= driving)
((state_of(car.gear) =
drive) or (state_of(car.gear)
= reverse))
((state_of(car.speed) =
stand) or
(state_of(car.speed) = slow)
or (state_of(car.speed) =
medium) or
(state_of(car.speed) =
high))
Sub-artifact list
doors The four doors of a car.
engine The engine of a car.
keyhole The ignition keyhole of a
car.
gear The gear of a car.
speed The speed of a car.
Relations list
car-key This is the relation between a car and a key.
car-driver This is the relation between a car and a driver.
Pfleeger and Atlee, Software Engineering: Theory and Practice Chapter 2.4
2.3 Tools and Techniques for Process Modeling
Static Modeling: Lai Notation (continued)
Pfleeger and Atlee, Software Engineering: Theory and Practice Chapter 2.5
2.3 Tools and Techniques for Process Modeling
Static Modeling: Lai Notation (continued)
Pfleeger and Atlee, Software Engineering: Theory and Practice Chapter 2.6
2.3 Tools and Techniques for Process Modeling
Dynamic Modeling
Pfleeger and Atlee, Software Engineering: Theory and Practice Chapter 2.7
2.3 Tools and Techniques for Process Modeling
Dynamic Modeling: System Dynamics
Pfleeger and Atlee, Software Engineering: Theory and Practice Chapter 2.8
2.3 Tools and Techniques for Process Modeling
Dynamic Modeling: System Dynamics (continued)
Pfleeger and Atlee, Software Engineering: Theory and Practice Chapter 2.9
2.3 Tools and Techniques for Process Modeling
Dynamic Modeling: System Dynamics (continued)
• A system
dynamic
model
containing
four major
areas
affecting
productivity
Pfleeger and Atlee, Software Engineering: Theory and Practice Chapter 2.10
2.4 Practical Process Modeling
Marvel Case Studies
Pfleeger and Atlee, Software Engineering: Theory and Practice Chapter 2.11
2.4 Practical Process Modeling
Marvel Case Study - 1 (continued)
Pfleeger and Atlee, Software Engineering: Theory and Practice Chapter 2.12
2.4 Practical Process Modeling
Marvel Case Studies (continued)
Pfleeger and Atlee, Software Engineering: Theory and Practice Chapter 2.13
2.4 Practical Process Modeling
Example of Marvel Commands
Pfleeger and Atlee, Software Engineering: Theory and Practice Chapter 2.14
2.4 Practical Process Modelling
Desirable Properties of Process Modelling Tools and
Techniques
Pfleeger and Atlee, Software Engineering: Theory and Practice Chapter 2.15
2.5. Information System Example
Piccadilly Television Advertising System
Pfleeger and Atlee, Software Engineering: Theory and Practice Chapter 2.16
2.5. Information System Example
Piccadilly System (continued)
Pfleeger and Atlee, Software Engineering: Theory and Practice Chapter 2.17
2.5. Information System Example
Lai Artifact Table for Piccadilly System
Pfleeger and Atlee, Software Engineering: Theory and Practice Chapter 2.18
2.6 Real Time Example
Ariane-5 Software
• Involved reuse of software from Ariane-4
• The reuse process model
– Identify reusable subprocesses, describe them
and place them in a library
– Examine the requirements for the new software
and the reusable components from library and
produce revised set of requirements
– Use the revised requirements to design the
software
– Evaluate all reused design components to certify
the correctness and consistency
– Build or change the software
Pfleeger and Atlee, Software Engineering: Theory and Practice Chapter 2.19
2.6 Real Time Example
Ariane-5 Software (continued)
Pfleeger and Atlee, Software Engineering: Theory and Practice Chapter 2.20