2. Introduction to Modelling
What is UML?
Building Blocks for UML
◦ Things, Relationships
Types of UML Diagrams
Identifying the Problem Domain
References
OUTLINES
3. Because there is a limit to how much a person can
understand at any one time, every complex system
can be modelled
Modelling is basically a way of expressing
information or knowledge of a system by
concentrating on the essentials
Models help get an abstract idea of the object the
software product consists of and their interactions
Models are also:
◦ A means of understanding the problem involved in building
something
◦ An aid in communication between those involved in the
project(requirement analyst and the user)
Modelling therefore provide these key benefits
◦ Visualization
◦ Complexity management
◦ And clear communication
What is Modelling?
4. Because models are constructed to express your
understanding of a particular system in expectation that
the model will help you pass the understanding to others
Choose a modelling language that is:
◦ Sufficiently expressive
◦ Easy enough to use
In developing a software application according to the
object oriented principles,UML has become an industry
standard
What is UML?
◦ UML stands for Unified Modelling Language and is a pictorial
language use to make software blue prints
◦ UML can also be seen as a general purpose visual modelling
language that helps you to :
Visualize
Specify
Construct
And document the artefacts of software system
What is UML?
5. The basic building blocks of UML are
◦ Things and Relationships
These are combined in different ways
following different rules to create different
types of diagrams
Things are used to describe the different
parts of a system. They can be:
◦ Structural
◦ Behavioural
◦ Annotational
◦ Grouping
Basic Building Blocks
6. Structural Things: These defines the
static part of the model and represents
the physical and conceptual elements
Brief description of Structural Things
◦ Class: A set of objects that share the same
attributes, operations, relationships and
semantics. class
Symbol for a Class: Attributes
◦ Node: It describes a physical resource that
exits in run time
Symbol :
Node
Structural Things
7. Interface: A set of operations which specify the
responsibility of the class
◦ Symbol : Interface
Collaboration: It defines the interaction between
elements
◦ Symbol:
Use Case: It describes a set of action a system
performs that produces an observable result of value
to a particular actor
◦ Symbol: usecase
Component: It describes the physical and
replaceable part that conforms to and provides
realisation of a set if interface
◦ Symbol:
8. Behavioural Things: These consist of
the dynamic part of the UML model.
They include:
◦ Interaction: It describes a set of messages
exchanged among a set of objects within a
particular context to accomplish a specific
purpose
Symbol:
◦ State Machine: It specifies the sequence of
state an object goes or interaction goes
through during its lifetime in response to an
event
Symbol: state
Behavioural Things
9. Grouping Things can be defined as a
mechanism to group elements of a UML
model together
◦ Packages: Is a mechanism for organising
elements into groups
Symbol:
Package
Grouping Things
10. Annotational Things can be defined as a
mechanism to capture
remarks, description and comments of a
UML model elements
◦ Note: Is used to render comments,constraits
etc of a UML element
Symbol :
Annotational Things
11. Relationship shows how the elements are
associated with each other
Relationship are used to connect things into
well defined models (UML diagrams)
◦ TYPES OF RELATIONSHIPS
Dependency: A semantic relationship
between two things in which a change to one
thing may affect the semantics of the
dependent thing
◦ Symbol : -----
Association: A set of links that connects
elements of an UML model
◦ Two Types : Aggregation and Composition
◦ Symbol:
RELATIONSHIP
12. Generalization: It is a relationship which
connects a specialized element with a
generalized element. It basically describes
the inheritance relationship in the world of
objects
◦ Symbol:
Realization: It is a relationship in which
two elements are connected. One element
describes some responsibility which is not
implemented and the other one
implement them
◦ Symbol : --------
Cont’d
13. The output of all the above is a UML diagram
All the Things and Relationships are used
to make a complete UML diagram and the
diagram represents the system.
The various types of UML diagrams :
Class Diagram
Object Diagram
Use case Diagram
Sequence Diagram
Collaboration Diagram
Activity Diagram
Statechart Diagram
Deployment Diagram
Component Diagram
UML DIAGRAMS
14. Class Diagram : Static relationship between class; it
shows how different entities ( people, things and
data) relate to each other; in other words it shows
the classes of the system, their interrelationship, and
the attributes and operations of the classes
Component Diagram: This provides a physical view
of the system. Its purpose is to show the
dependencies that the software has on other
software components(e.g. software libraries) in the
system
Deployment Diagram: This shows the hardware
for the system, the software that is installed on
that hardware, and the middleware used to connect
the disparate machines to one another
USES of UML DIAGRAMS
15. Package Diagram: Simplify complex class diagrams
by grouping them into packages( a collection of
logically related UML elements)
Use case Diagram: It helps you clarify what
exactly the system is supposed to do. The main
purpose of a use case diagram is to help development
team visualize the functional requirements of the
system, including the relationship of actors(human
beings who will interact with the system) to essential
processes, as well as relationship among different
use cases
State machine: It displays sequence of states
that an object of an interaction goes through
during its life in response to received stimuli, together
with its responses and actions
Diagram cont’
16. Activity Diagram: It shows the
procedural flow of control between two or
more class objects while processing an
activity
Object Diagram: It can be described as an
instance of class diagram, and are useful
for exploring real world examples of objects
and the relationship between them
Sequence Diagram: It shows how the
object interacts with others in a particular
scenario of a use case
17. It should be pointed out that, in developing a system;
there is a need to focus on the Problem Domain
Problem Domain is simply looking at the topics you
are interested in and excluding everything else.
Hence each model will have their own problem
domain
For instance in coming up with a Class diagram, you
need to write a problem domain class definition
This will help you define all the possible
Classes, attributes, methods and instances and their
relationship
Doing all this will enable you come out with a
complete Class Diagram
The same approached applies to other UML diagrams
Conclusion-Problem Domain
18. Introduction UML,Mikael Akerholm,Ivica
Crnkovic,Goran Mustapic
http://www.tutorialspoint.com/uml/uml_o
verview.htm
UML basic: An introduction to Unified
Modelling language by Donald Bell
References