UML Diagrams
Introduction to the UML Diagrams
- They are graphical representations of the model
- They are connected graphs of vertices (things) connected by links (relationships)
- Diagrams are drawn to visualize a system from different perspectives
- An element in the system may appear in multiple diagrams
The UML diagrams are mainly classified as:
- Class Diagram
- Object Diagram
- Use Case Diagram
- Sequence Diagram
- Collaboration Diagram
- Statechart Diagram
- Activity Diagram
- Component Diagram
- Deployment Diagram
Structural diagrams representing static aspects of a system
Behavioral diagrams representing dynamic aspects of a system
Class Diagram:
- It is the most common diagram found in object-oriented analysis and design
- It shows set of classes, interfaces, collaborations and their relationships
- Models the static view of the system
- Object Oriented Design(OOAD) has two types of diagrams, static and dynamic
- Static diagrams are represented as Class diagrams, while Dynamic diagrams are represented as State, Sequence and/or Collaboration diagrams
Object Diagram:
- A snapshot of a class diagram
- Models the instances of things contained in a class diagram
Use Case Diagram:
- Models WHAT the system is expected to do
- Shows a set of Use Cases (sets of functionality performed by the system), the actors and their relationships
- Use Case diagrams model the behavior of a system, a subsystem or a class
- Use Case diagrams are important for visualizing, specifying and documenting behavior of an element
Sequence Diagram:
- Sequence Diagrams are a kind of object interaction diagrams
- Sequence Diagram models the flow of messages by time-ordering
Collaboration Diagram:
- It is a another kind of object interaction diagrams
- Merely depicts the messages passed between objects
Statechart Diagram:
- Statechart diagram shows a state machine that consist of states, transitions, events and activities
- They are important in modeling the behavior of an interface, class or collaboration
Activity Diagram:
- It shows the flow of activity from one activity to another within a system
- Important in modeling the functions of a system
Component Diagram:
- It shows the physical packaging of a system in terms of components and dependencies between them
Deployment Diagram:
- It shows the configuration of the processing nodes at runtime and the components that live on them