Title: Introduction to UML
1Introduction to UML
- DIAGRAMS CLASS DIAGRAM
- Chapter 7,8
??? ??? jason_at_rtpc06.ee.ncku.edu.tw
2Outline
- Different Views of a System
- Diagrams
- Structural Diagrams
- Behavioral Diagrams
- Class Diagram
- Examples An ATM System
3Different Views of a System
- A view is a projection into the organization and
structure of a systems model, focused on one
aspect of a system. - Five most important views
- Use case view force the shape of system.
- Design view function requirements.
- Process view concurrency, synchronization.
- Implementation view component and files assemble
the physical system. - Deployment view nodes form H/W topology
4Diagrams
- A diagram is a graphical projection into the
elements that make up a system. - Each diagram provides a view into the elements
that make up the system. - Structural diagrams to view the static parts and
Behavioral diagrams to view the dynamic parts of
a system.
5Structural Diagrams
- The UMLs structural diagrams are used to
visualize, specify, construct, and document the
static aspects of a system. - Static aspects represent systems relatively
stable skeleton and scaffolding. - UMLs four structural diagrams
- Class diagrams
- Object diagrams
- Component diagrams
- Deployment diagrams
6Structure Diagrams - Class Diagrams
- A class diagram shows a set of classes,
interfaces, and collaborations and their
relationship. - Class diagrams are used to illustrate the static
design view of a system. - Class diagrams including active classes are used
to address the static process view of a system.
7Structure Diagrams - Object Diagrams
- A object diagram show a set of objects and their
relationships. - Object diagrams are used to illustrate data
structures, the static snapshots of instances of
the things founds in class diagrams. - Object diagrams address the static design view of
a system just as do class diagrams, but from the
perspective of real or prototypical case. - Ref. P.196, Fig 14-1
8Structure Diagrams - Component Diagrams
- A component diagram shows a set of components and
their relationships. - Component diagrams are used to illustrate static
implementation view of a system. - A component typically maps to one or more
classes, interfaces, or collaborations. - Ref. P.394, Fig.29-1
9Structure Diagrams - Deployment Diagrams
- A deployment diagram shows a set of nodes and
their relationships. - Deployment diagrams illustrate the static
deployment view of an architecture. - Ref. P.408, Fig. 30-1
10Behavioral Diagrams
- The UMLs behavioral diagrams are used to
visualize, specify, construct, and document the
dynamic aspects of a system. - Dynamic aspects represent a systems changing
parts. - UMLs five behavioral diagrams
- Use case diagrams
- Sequence diagrams
- Collaboration diagrams
- Statechart diagrams
- Activity diagrams
11Behavioral Diagrams- Use Case Diagram
- A use case shows a set of use cases and actors
and their relationships. - Used to illustrate the static use case view of a
system. - Especially important in organizing and modeling
the behaviors of a system.
12Behavioral Diagrams- Sequence Diagram
- A sequence diagram is an interaction diagram that
emphasizes the time ordering of messages. - It shows a set of objects and the messages sent
and received by those objects. - Used to illustrate the dynamic view of a system.
13Behavioral Diagrams- Collaboration Diagram
- A collaboration diagram is an interaction diagram
that emphasize the structural organization of
objects that send and receive messages. - It shows a set of objects, links among those
objects, and messages sent and received by those
objects. - Used to illustrate dynamic view of a system.
14(No Transcript)
15Behavioral Diagram- Statechart Diagram
- A statechart diagram shows a state machine,
consisting of states, transitions, events, and
activities. - Especially important in modeling the behavior of
an interface, class, or collaboration. - It emphasizes the event-ordered behavior of an
object, which is especially useful in modeling
reactive systems. - Illustrating dynamic view of a system.
16Statechart Diagram (p.333)
Activity Diagram (p.259)
17Behavioral Diagrams- Activity Diagram
- An activity diagram shows the flow from activity
to activity within a system. - It shows a set of activities, the sequential or
branching flow from activity to activity, and
objects that act and are acted. - Especially important in modeling the function of
a system. - It emphasizes the flow of control among objects.
18Class Diagram
- Class diagram commonly contains the following
things - Classes
- Interfaces
- Collaborations
- Dependency, generalization, and association
relationships. - It may also contains notes and constraints,
packages or subsystems
19Class Diagram
20Class Diagram
- A well-structured class diagram
- Focused on communicating one aspect of a systems
static design view - Contain only elements that are essential to
understanding that aspect - Provides detail consistent with its level of
abstraction, with adornments that are essential
for understanding - Is not so minimalist that it misinform readers
about important semantics.
21Class Diagram
- When drawing a class diagram
- Give name communicating its purpose.
- Layout elements with minimal cross line
- Semantically close, lay out close.
- Use notes and color to draw attention to
important features of system. - Try not to show too many kinds of relationships.
22An Example ATM System
- The ATM system.
- Model collaboration
- Identify the mechanism.
- Identify the classes, interface of each
mechanism. - Use scenarios to walk through these things.
- Populate these elements with their contents.
23An Example ATM System
1..
1
1
1..
1
1
24Object Diagram
25Component Diagram
26Deployment Diagram