Chapter -3
system modelling
1
Dr vasu pinnti ICT 2/10/2021
contents
2
What is model, why do we model
An Overview of UML
Building blocks of UML
Things in the UML
Relationships in the UML
UML diagrams
Dr vasu pinnti ICT 2/10/2021
What is Model
3
A model is a simplification of reality. A model
provides the blueprints of a system.
A model may be structural, represents the
organization of the system, or
it may be behavioural, represtents the dynamics of
the system.
Dr vasu pinnti ICT 2/10/2021
Why do we model
4
We build models so that
we can better understand the system we are developing.
Through modelling, we achieve four aims.
Models help us to visualize a system as it is or as we want
it to be.
Models permit us to specify the structure or behaviour of
a system.
Models give us a template that guides us in constructing
a system.
Models document the decisions we have made.
Dr vasu pinnti ICT 2/10/2021
An Overview of UML
5
The Unified Modeling Language is a standard
graphical language for writing software blueprints.
The UML is appropriate for modeling systems ranging
from enterprise information systems to distributed
Web-based applications and even to hard real time
embedded systems.
The UML is a graphical language for
Visualizing
Specifying
Constructing
Documenting
the artifacts of a software-intensive system
Dr vasu pinnti ICT 2/10/2021
Building blocks of uml
6
The vocabulary of the UML encompasses three kinds
of building blocks:
Things
Relationships
Diagrams
Things are the abstractions in a model;
Relationships are used to tie these things together;
Diagrams: group of interesting collections of things and
relationships
Dr vasu pinnti ICT 2/10/2021
Things in the UML
7
There are four kinds of things in the UML:
Structural things
Behavioural things
Grouping things
Annotational things
These things are the basic object-oriented building
blocks of the UML.
Dr vasu pinnti ICT 2/10/2021
Structural Things
8
Structural things are the nouns of UML models.
These are the mostly static parts of a model,
representing elements that are either conceptual or
physical.
Classes Interfaces
Collaborations Use cases
Active classes Components
Nodes
Dr vasu pinnti ICT 2/10/2021
Structural things -1 . class
9
Class is a description of a set of objects that share the same
attributes, operations, relationships, and semantics. A class
implements one or more interfaces.
Graphically, a class is rendered as a rectangle, usually
including its name, attributes, and operations.
Dr vasu pinnti ICT 2/10/2021
Structural things -2 . Interface
10
Interface is a collection of operations that specify a service of a class or
component.
An interface might represent the complete behavior of a class or
component or only a part of that behavior.
An interface is rendered as a circle together with its name.
it is typically attached to the class or component that realizes the
interface
Dr vasu pinnti ICT 2/10/2021
Structural things -3 . Collaboration
11
Collaboration defines an interaction and is a society of roles and
other elements that work together to provide some cooperative
behavior that's bigger than the sum of all the elements. Therefore,
collaborations have structural, as well as behavioral, dimensions.
A given class might participate in several collaborations.
Graphically, collaboration is rendered as an ellipse with dashed lines,
usually including only its name
Dr vasu pinnti ICT 2/10/2021
Structural things -4 . Usecase
12
Use case is a description of set of sequence of actions or scenarios that a
system performs that yields an observable result of value to a particular
actor
Use case is used to structure the behavioral things in a model.
A use case is realized by collaboration. Graphically, a use case is
rendered as an ellipse with solid lines, usually including only its name
Dr vasu pinnti ICT 2/10/2021
Structural things -5 . Active class
13
An Active class is a class whose objects own one or more processes or
threads
It is just like a class except that its objects represent elements whose
behavior is concurrent with other elements.
Graphically, an active class is rendered just like a class, but with heavy
lines, usually including its name, attributes, and operations
Dr vasu pinnti ICT 2/10/2021
Structural things -6 . Component, 7. Node
14
Component is a physical and replaceable part of a system that
conforms to and provides the realization of a set of interfaces.
Graphically, a component is rendered as a rectangle with tabs
Node is a physical element that exists at run time and represents a
computational resource, generally having at least some memory and,
often, processing capability.
Graphically, a node is rendered as a cube, usually including only its
name
Dr vasu pinnti ICT 2/10/2021
[Link] Things
15
Behavioral Things are the dynamic parts of UML models.
These are the verbs of a model, representing behavior over
time and space.
there are two primary kinds of behavioral things
Interaction
state machine
Interaction
Interaction is a behavior that comprises a set of messages
exchanged among a set of objects within a particular context
to accomplish a specific purpose
Graphically a message is rendered as a directed line, almost
always including the name of its operation
Dr vasu pinnti ICT 2/10/2021
State Machine
16
State machine is a behavior that specifies the
sequences of states of an object or an interaction
goes through during its lifetime in response to
events, together with its responses to those events
State machine includes states, transitions, events
and activities
Graphically, a state is rendered as a rounded
rectangle, usually including its name and its sub
states
Dr vasu pinnti ICT 2/10/2021
[Link] Things
17
Grouping Things are the organizational parts of UML models.
There is one primary kind of grouping thing, namely, package.
Package:-
A package is a general-purpose mechanism for organizing elements
into groups.
Structural things, behavioral things, and even other grouping things
may be placed in a package
Graphically, a package is rendered as a tabbed folder, usually including
only its name and, sometimes, its contents
Dr vasu pinnti ICT 2/10/2021
[Link] things
18
Annotational things are the explanatory parts of UML models.
These are the comments you may apply to describe about any element
in a model.
A note is simply a symbol for rendering constraints and comments
attached to an element or a collection of elements.
Graphically, a note is rendered as a rectangle with a dog-eared corner,
together with a textual or graphical comment
Dr vasu pinnti ICT 2/10/2021
Relationships in the UML
19
There are four kinds of relationships in the UML:
Dependency
Association
Generalization
Realization
Dependency is a semantic relationship between two things in which a
change to one thing may affect the semantics of the other thing
Graphically a dependency is rendered as a dashed line, possibly direct
Dr vasu pinnti ICT 2/10/2021
UML relationships: 2. Association
20
Association is a structural relationship that describes a set of links, a
link being a connection among objects.
Graphically an association is rendered as a solid line, possibly directed,
occasionally including a label, and often containing other adornments,
such as multiplicity and role names
Aggregation is a special kind of association, representing a structural
relationship between a whole and its parts.
Dr vasu pinnti ICT 2/10/2021
UML relationships: 2. Association
21
Generalization
in which objects of the specialized element (the child) are more specific
than the objects of the generalized element.
Graphically, a generalization relationship is rendered as a solid line
with a hollow arrowhead pointing to the parent
Realization is a semantic relationship between classifiers, wherein
one classifier specifies a contract that another classifier guarantees to
carry out. Graphically a realization relationship is rendered as a cross
between a generalization and a dependency relationship
Dr vasu pinnti ICT 2/10/2021
Diagrams in the UML
22
Diagram is the graphical presentation of a set of
elements, most often rendered as a connected graph of
vertices (things) and arcs (relationships).
In theory, a diagram may contain any combination of
things and relationships.
the UML includes nine diagrams:
• Class diagram
• Object diagram
• Use case diagram
• Sequence diagram
• Collaboration diagram
• State chart diagram
• Activity diagram
• Component diagram
• Deployment diagram
Dr vasu pinnti ICT 2/10/2021
class diagram
23
A class diagram shows a
set of classes, interfaces,
and collaborations and
their relationships.
class diagram is the most
common diagram found
in modeling object-
oriented systems.
Component diagrams
are variants of class
diagrams.
Dr vasu pinnti ICT 2/10/2021
Object diagram
24
An object diagram shows
a set of objects and their
relationships.
Object diagrams
represent static
snapshots of instances of
the things found in class
diagrams.
Dr vasu pinnti ICT 2/10/2021
usecase diagram
25
A use case diagram shows
a set of use cases and
actors (a special kind of
class) and their
relationships.
Use case diagrams are
especially important in
organizing and modeling
the behaviors of a system.
Modeling the
Requirements of a System
Dr vasu pinnti ICT 2/10/2021
Interaction diagrams: sequence and collaboration
diagrams
26
Interaction Diagrams
Both sequence diagrams
and collaboration
diagrams are kinds of
interaction diagrams
A sequence diagram
is an interaction diagram
that emphasizes the
time-ordering of
messages which are
exchanged among
objects
Dr vasu pinnti ICT 2/10/2021
Interaction diagrams: sequence and collaboration
diagrams
27
A collaboration diagram is an interaction diagram that
emphasizes the structural organization of the objects that send and
receive messages
Sequence diagrams and collaboration diagrams are isomorphic,
meaning that you can take one and transform it into the other
Dr vasu pinnti ICT 2/10/2021
State chart diagram
28
A state chart diagram
shows a state machine,
consisting of states,
transitions, events, and
activities
They are especially
important in modeling the
behavior of an interface,
class, or collaboration and
emphasize the event-
ordered behavior of an
object.
state chart diagrams are
useful in modeling the
lifetime of an object
Dr vasu pinnti ICT 2/10/2021
Activity diagram
29
An activity diagram is a
special kind of a state
chart diagram that
shows the flow from
activity to activity within
a system
They are especially
important in modeling
the function of a system
and represents the flow
of control among objects
Dr vasu pinnti ICT 2/10/2021
Component diagram
30
A component diagram
shows the organizations
and dependencies among a
set of components.
They are related to class
diagrams in that a
component typically maps
to one or more classes,
interfaces, or
collaborations
Component diagrams are
used in modeling the
physical aspects of object-
oriented systems.
Dr vasu pinnti ICT 2/10/2021
Deployment diagram
31
A deployment diagram shows
the configuration of run-time processing nodes
the components that live on them
And wired/wireless network connection among nodes
Dr vasu pinnti ICT 2/10/2021
Questions?
32
end
Dr vasu pinnti ICT 2/10/2021