2. SYSTEM MODELING
▪ System modeling is the process of developing abstract models of a
system, with each model presenting a different view or perspective of
that system. System modeling 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 to engineers implementing the system and after
implementation to document the system’s structure and operation. You
may develop models of both the existing system and the system to be
developed:
3. TYPES OF SYSTEM MODELING
▪ Context Modeling
▪ Interaction Modeling
▪ Structural Modeling
▪ Behavioral Modeling
4. CONTEXT MODELING
▪ At an early stage in the specification of a system, you 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. You 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.
▪ 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. In other cases,
there is more flexibility, and you decide what constitutes the boundary
between the system and its environment during the requirements
engineering process.
5.
6. INTERACTION MODELING
▪ 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.
▪ There are two related approaches to interaction modeling:
1. Use case modeling, which is mostly used to model interactions between
a system and external actors (users or other systems).
2. Sequence diagrams, which are used to model interactions between
system components, although external agents may also be included
7. USECASE MODELING
▪ A use case can be taken as a simple scenario that describes what a user
expects from a system. Each use case represents a discrete task that
involves external interaction with a system. In its simplest form, a use
case is shown as an ellipse with the actors involved in the use case
represented as stick figures.
Register Patient
Unregister Patient
View Patient Info
Transfer Data
Contact Patient
Medical Receptionist
8. SEQUENCE DIAGRAM
▪ 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. The UML has a rich syntax
for sequence diagrams, which allows many different kinds of interaction
to be modeled. As the name implies, a sequence diagram shows the
sequence of interactions that take place during a particular use case or
use case instance.
10. STRUCTURAL MODEL
▪ Structural models of software display the organization of a system in
terms of the components that make up that system and their
relationships. 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. You create structural
models of a system when you are discussing and designing the system
architecture.
▪ There are two methods in structural model:
1. Class Diagram
2. Generalization
11. CLASS DIAGRAM
▪ Class diagrams are used when developing an object-oriented system
model to show the classes in a system and the associations between
these classes. An association is a link between classes that indicate that
there is relationship between these classes consequently each class
may have to have some knowledge of its associative class.
▪ Class diagrams in the UML can be expressed at different levels of detail.
When you are developing a model, the first stage is usually to look at
the world, identify the essential objects, and represent these as classes.
The simplest way of writing these is to write the class name in a box.
You can also simply note the existence of an association by drawing a
line between classes.
13. GENERALIZATION
▪ Generalization is an everyday technique that we use to manage
complexity. Rather than learn the detailed characteristics of every entity
that we experience, we place these entities in more general classes and
learn the characteristics of these classes. We can make general
statements that apply to all class members.
▪ 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. This is good
design practice as it means that, if changes are proposed, then you do
not have to look at all classes in the system to see if they are affected by
the change.