0% found this document useful (0 votes)
18 views30 pages

MSIS-811 Unit 5

Uploaded by

xxzoroxx36
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
18 views30 pages

MSIS-811 Unit 5

Uploaded by

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

Advanced Systems Analysis and Design – MSIS811

Dr. Asif Khan

System Modeling

20/10/2024 Chapter 5 Architectural Design 1


Topics covered

 System modeling
 Context models
 Interaction models
 Structural models
 Behavioral models
 Model-driven engineering

20/10/2024 Chapter 5 System modeling 2


System Modelling

 System modelling is the process of developing


abstract models of a system, with each model
presenting a different view or perspective of that
system.
 System modelling has generally come to mean
representing the system using some kind of graphical
notation, which is now almost always based on
notations in the Unified Modeling Language (UML).
 Models are used during the requirements engineering
process to help derive the requirements for a system,
during the design process to describe the system

20/10/2024 Chapter 5 System modeling 3


System modeling continued..

Models may be developed of both the existing system and


the system to be developed.
 Models of the existing system are used during
requirements engineering that help clarify what the
existing system does and can be used as a basis for
discussing its strengths and weaknesses.
 Models of the new system are used during requirements
engineering to help explain the proposed requirements
to other system stakeholders.

20/10/2024 Chapter 5 System modeling 4


System perspectives

Models of a system may be developed in different


perspectives, for example:
 An external perspective, where you model the context
or environment of the system.
 An interaction perspective where you model the
interactions between a system and its environment or
between the components of a system.
 A structural perspective, where you model the
organization of a system or the structure of the data
that is processed by the system.

20/10/2024 Chapter 5 System modeling 5


System perspectives continued..

 A behavioral perspective, where you model the


dynamic behavior of the system and how it responds
to events.

The UML has many diagram types for creation of many


different types of system model, but five key types are
worth to discuss used in modeling of a system

20/10/2024 Chapter 5 System modeling 6


UML diagrams

 Activity diagrams, which show the activities involved in


a process or in data processing.
 Use case diagrams, which show the interactions
between a system and its environment.
 Sequence diagrams, which show interactions between
actors and the system and between system components.
 Class diagrams, which show the object classes in the
system and the associations between these classes.
 State diagrams, which show how the system reacts to
internal and external events.

20/10/2024 Chapter 5 System modeling 7


Context models
 At an early stage in the specification of a system, one should decide
on the system boundaries.
 This involves working with system stakeholders to decide what
functionality should be included in the system and what is provided
by the system’s environment.
 A decision can be made that automated support for some business
processes should be implemented but others should be manual
processes or supported by different systems.
 One should look at possible overlaps in functionality with existing
systems and decide where new functionality should be
implemented
 These decisions should be made early in the process to limit the
system costs and the time needed for understanding the system
requirements and design
20/10/2024 Chapter 5 System modeling 8
Context models continued..

• In some cases, the boundary between a system and its


environment is relatively clear.
For example, where an automated system is replacing an existing manual or
computerized system, the environment of the new system is usually the
same as the existing system’s environment

 Consider you are developing the specification for the patient information
system for medical clinic. This system is intended to manage information
about patients attending the clinics and the treatments that have been
prescribed.
 In developing the specification for this system, you have to decide whether
the system should focus exclusively on collecting information about
consultations (using other systems to collect personal information about
patients) or whether it should also collect personal patient information

20/10/2024 Chapter 5 System modeling 9


Context models continued..

• The figure is a simple


context model that shows Patient record
system
the patient information
system and the other
systems in its
environment. Statistics Admission
system system

• Context models normally


Patient management
show that the system
environment includes
several other automated
systems. However, they Appointment
Prescription system
system
do not show the types of
relationships between the
systems in the
environment and the
system that is being Report system
specified.

• External systems might


produce data for or
consume data from the
20/10/2024 Chapter 5 System modeling 10
system.
Context models continued..

 Once some decisions on the boundaries of the


system have been made, part of the analysis activity
is the definition of that context and the dependencies
that a system has on its environment. Normally,
producing a simple architectural model is the first
step in this activity

 Simple context models are used along with other


models, such as business process models. These
describe human and automated processes in which
particular software systems are used

20/10/2024 Chapter 6 Architectural Design 11


Processes in activity diagram

Activity diagrams are intended to show the activities that


make up a system process and the flow of control from
one activity to another.

The start of a process is indicated by a filled circle; the end


by a filled circle inside another circle.

Rectangles with round corners represent activities, that is,


the specific sub-processes that must be carried out.

You may include objects in activity charts

20/10/2024 Chapter 6 Architectural Design 12


Processes in activity diagram

Transfer to
Not police station
available
Confirm
detention
decision
Find secure Available Inform social
place care
Transfer to
secure
place

Inform next of
dangerous kin
Inform
patient rights

Update
Not register
Record
dangerous
detention Admit to hospital
decision

Patient Admission Patient


management system system management system

20/10/2024 Chapter 5 System modeling 13


Example

20/10/2024 Chapter 6 Architectural Design 14


Interaction models

 All systems involve interaction of some kind. This can be user


interaction, which involves user inputs and outputs, interaction
between the system being developed and other systems or
interaction between the components of the system.
 Modeling user interaction is important as it helps to identify
user requirements. Modeling system to system interaction
highlights the communication problems that may arise.
 Modeling component interaction helps us understand if a
proposed system structure is likely to deliver the required
system performance and dependability

20/10/2024 Chapter 5 System modeling 15


Interaction models continued..

 Interaction modeling uses two approaches i.e. use case and


sequence diagrams.
 Use case modeling, which is mostly used to model interactions
between a system and external actors (users or other systems).
 Sequence diagrams, which are used to model interactions
between system components, although external agents may
also be included
 Use case models and sequence diagrams present interaction at
different levels of detail and so may be used together

20/10/2024 Chapter 5 System modeing 16


Use case modeling

Use case modeling is widely used to support requirements


elicitation. A use case can be taken as a simple scenario that describes
what a user expects from a system.

Register in a
course

Administrator
Student

• Use case diagrams give a fairly simple overview of an interaction


so one has to provide more detail to understand what is
involved.

• This detail can either be a simple textual description, a


structured description in a table, or a sequence diagram

20/10/2024 Chapter 5 System modeling 17


Use case modeling continued..

Descriptive use case


Actors: Student, Administrator
Description: A student provides data for registration in a course and the information flows to
the
administrator and the data is maintained in registration system.
Data : Student’s personal & academic information
Response: Confirmation that data has been received
Comments: The student & administrator must have appropriate permissions to access
system
Use cases and actors Actors use communication sticks to interact with use cases

Register in a
course

Student Administrator

20/10/2024 Chapter 5 System modeling 18


Use cases are linked with each other by two types of
relationships i.e. include and extend

Login

e >>
<<includ

Search a
catalogue
Student
<<extend>>

Borrow a
book

Librarian

20/10/2024 Chapter 6 Architectural Design 19


Sequence diagrams
• Sequence diagrams in the UML are primarily used to model the
interactions between the actors and the objects in a system and
the interactions between the objects themselves.

• As the name implies, a sequence diagram shows the sequence


of interactions that take place during a particular use case or
use case instance

• The next diagram models the interactions involved in the View


patient information use case, where a medical receptionist can
see some patient information

20/10/2024 Chapter 5 System modeling 20


Sequence diagrams continued..

Receptionist

P: PatientInfo D: SystemDB A: Authorization

ViewInfo (PID)

Report (Info, PID, UID)

Authorize (Info, UID)

Authorization

alt Patient info


Authorization

Error (No Access)

Authorization Fail

20/10/2024 Chapter 5 System modeling 21


Structural models

 Structural models of software display the


organization of a system in terms of the components
that make up that system and their relationship.
 Structural models may be static models, which show
the structure of the system design or dynamic
models, which show the organization of the system
when it is executing.
 Structural models of a system are created when
designing of the system architecture is discussed.

20/10/2024 Chapter 5 System modeling 22


Class diagrams

 Class diagrams are used when developing an object-


oriented system model to show the classes in a
system and the associations between these classes

 A class can be thought of as a general definition of one kind of


system object. An association is a link between classes that
indicates that there is a relationship between these classes.

Patient
Patient
record
A simple class diagram showing two classes:
Patient and Patient Record with an association
between them

20/10/2024 Chapter 5 System modeling 23


Class diagrams continued..

 When showing the associations between classes, it is


convenient to represent these classes in the simplest possible
way.
 To define them in more detail, you add information about their
attributes (the characteristics of an object) and operations (the
things that you can request from an object).

Doctor
Name
ID
Phone
Office no
Time

Name()
Time()

20/10/2024 Chapter 5 System modeling 24


Class diagrams associations

 Associations between the classes can be represented in the


following forms
 Generalization: Generalization is an everyday technique that is
used to manage complexity.
 In modeling systems, it is often useful to examine the classes in a system
to see if there is scope for generalization. This means that common
information will be maintained in one place only
Employee

Manager Supervisor

Bank manager Store manager

20/10/2024 Chapter 5 System modeling 25


Class diagrams associations continued...

 In a generalization, the attributes and operations associated with


higher-level classes are also associated with the lower-level classes.

 In essence, the lower-level classes are subclasses inherit the attributes


and operations from their superclasses.

Aggregation: The UML provides a special type of association between


classes called aggregation that means that one object (the whole) is
composed of other objects (the parts).
Computer Keyboard
Mouse

Processor Monitor

20/10/2024 Chapter 5 System modeling 26


Behavioral models

 Behavioral models are models of the dynamic behavior of the


system as it is executing.

 They show what happens or what is supposed to happen when


a system responds to a stimulus from its environment.

 These stimuli can be considered as being of two types:

1. Data: Some data arrives that has to be processed by the


system.
2. Events: Some event happens that triggers system
processing. Events may have associated data but this is not
always the case.

20/10/2024 Chapter 5 System modeling 27


Model-driven engineering

 Model-driven engineering (MDE) is an approach to software


development where models rather than programs are the principal
outputs of the development process.
 Model-driven engineering has its roots in model-driven architecture
(MDA) which was proposed by the Object Management Group
(OMG) in 2001 as a new software development paradigm.
 MDE allows engineers to think about systems at a high level of
abstraction, without concern for the details of their implementation.
 This reduces the likelihood of errors, speeds up the design and
implementation process, and allows for the creation of reusable,
platform-independent application models.

20/10/2024 Chapter 5 System modeling 28


Model-driven architecture (MDA)

Model-driven architecture is a model-focused approach


to software design and implementation that uses a sub-
set of UML models to describe a system

Models at different levels of abstraction are created.


From a high-level platform independent model it is
possible, in principle, to generate a working program
without manual intervention

The MDA method recommends that three types of


abstract system model should be produced

20/10/2024 Chapter 6 Architectural Design 29


Model-driven architecture (MDA) continued..

A computation independent model (CIM) that models the important


domain abstractions used in the system. CIMs are sometimes called
domain models.

A platform independent model (PIM) that models the operation of the


system without reference to its implementation. PIM shows static
structure using UML.

Platform specific models (PSM) which are transformations of the


platform independent model with a separate PSM for each application
platform.

A transformation is applied to the PSM to generate


executable code that runs on the designated software
platform.
20/10/2024 Chapter 6 Architectural Design 30

You might also like