View
289
Download
0
Tags:
Embed Size (px)
DESCRIPTION
Bài giảng UML cho lớp 55PM1, Khoa Công nghệ thông tin, Trường Đại học Xây Dựng, ngày 14 tháng 01 năm 2014.
Citation preview
UNIFIED MODELLING LANGUAGE
Subject presented by:
Dr. Trần Khánh DungDepartment of Software Engineering
Email: [email protected]
01- 2014
2
Outline
● Goals
● Model & Modelling
● UML?
● Tools?
● UML Diagrams
● Review
3
Goals
• Equipes IT students with knowledge about
• basic elements and diagrams of the UML
• Helps IT students
• to use the UML elements
• to model and design information systems by UML
• to build software effectively
4
Model?
● A model is a simplified representation of a certain reality.
There can be many different
maps of the same territory,
depending on the purpose:
- riding a bike,
- visiting museums,
- analyzing votes,
- etc.
5
Model?
● Each model captures a certain aspect/view of the system
6
Model?
● A model is focused in one particular aspect of a system:
● A model is not intended to capture all the aspects of a system, but mainly to abstract out only some of these characteristics.
● A system is usually represented by a set of different models, each one capturing some specific aspects.
● Which aspects to capture depends on the purpose of the model.
● A model must not represent the system with absolute preciseness.
● A model is useful because it is a simplified copy.
7
Modelling?
●Modeling is the cost-effective use of something in place of something else for some cognitive purpose. It allows us to use something that is simpler, safer or cheaper than reality instead of reality for some purpose
●Modelling allows us to deal with the world in a simplified manner, avoiding the complexity, danger and irreversibility of reality
8
Modelling?
● The representation relationship
A model should be able to answer a given set of questions in the same way the system would answer these same
questions.
You can ask the map certain questions, but not others.
(+) What is the distance from Madrid to Warsaw?
(-) How many whales are there in the oceans?
9
Modelling?
● A model is a partial analogy of a system
● The analogy between the model and the represented reality is partial.
● The properties of the model are not identical to the properties of the reality.
I can’t smoke with this pipe!
10
Modelling?
● The conformance relationship
● A model is a simplified representation of a certain reality, according to the rules of a certain modeling language
The map conforms to its
legend.
The legend defines the
language to read the map.
11
UML?
● Unified Modeling Language (UML) is a standardized , general-purpose modeling language in the field of software engineering. The UML includes a set of graphic notation techniques to create visual models of object-oriented software-intensive systems.● 1990s: The UML was developed by Grady Booch, Ivar Jacobson
and James Rumbaugh at Rational Software
● 1997: It was adopted by the Object Management Group (OMG) and has been managed by this organization ever since
● 2000: The Unified Modeling Language was accepted by the International Organization for Standardization (ISO) as industry standard for modeling software-intensive systems
● The current version of the UML is 2.4.1 published by the OMG in August 2011 ( http://www.omg.org/spec/UML/)
12
UML tools?
● Visual Paradigm for UML (community edition)● http://www.visual-paradigm.com/download/vpuml.jsp?edition=ce
● Modelio (Modeliosoft)
● StarUML (Plastic Software)
● Enterprise Architect (Sparx System)
13
UML Diagram
Diagram I
Class Diagram
● What is Class?
● Class Diagram Elements
14
Class Diagram
● Description
● A class diagram is a type of static structure diagram. It represents static aspect of a system by showing the its classes (their attributes and operations), interfaces, associations and generalizations
15
Class Diagram elements
● Elements
●Class● A class is a definition of objects that share
given structural or behavioral characteristics. A class comprises a name, a number of attributes, and a number of operations
16
Class Diagram elements
● Elements
●Class● Attribute: An attribute is a typed value
attached to each instance of a class● Operation: An operation is a function that
can be performed by instances of a class. An operation may have return type in case it returns a value