UML 2.5 diagram (Structure diagram (Class diagram (when use it:…
UML 2.5 diagram
what is: Class diagram is a static diagram. It represents the static view of an application. Class diagram is not only used for visualizing, describing, and documenting different aspects of a system but also for constructing executable code of the software application.
when use it:
Describing the static view of the system.
Showing the collaboration among the elements of the static view.
Describing the functionalities performed by the system.
Construction of software applications using object oriented languages.
element : class, interface, feature, constraint, association, generalization, dependency.
Element: instance specification, object, slot, link
Object diagrams are used for
Making the prototype of a system.
Modeling complex data structures.
Understanding the system from practical perspective.
A graph of instances, including objects and data values. A static object diagram is an instance of a class diagram; it shows a snapshot of the detailed state of a system at a point in time.
purpose:package diagram are used to structure high level system elements. Packages are used for organizing large system which contains diagrams, documents or another key deliverables.
What is: package diagram , a kind of structure diagram, show the arrangement and organization of model elements in middle to large scale project. Package diagram can show both structure and dependencies between sub-systems or modules, showing different views of a system.
Elements: package, packageable element, dependency, element import, package import, package merge.
Composite structure diagram
Internal structure diagram
element: structured class, part, port, connector, usage.
when use it :Shows internal structure of a classifier - a decomposition of the classifier into its properties, parts and relationships.
Collaboration Use diagram
what is: Collaboration diagrams (known as Communication Diagram in UML 2.x) are used to show how objects interact to perform the behavior of a particular use case, or a part of a use case. Along with sequence diagrams, collaboration are used by designers to define and clarify the roles of the objects that perform a particular flow of events of a use case. They are the primary source of information used to determining class responsibilities and interfaces.
when use it: Shows objects in a system cooperating with each other to produce some behavior of the system.
element: collaboration, connector, part, dependency.
Component diagram: Shows components and dependencies between them.
Component diagrams can be used to
Model the components of a system.
Model the database schema.
Model the executables of an application.
Model the system's source code.
Elements: component, interface, provided interface, required interface, class, port, connector, artifact, component realization, usage.
Component diagrams are used to visualize the organization and relationships among components in a system. These diagrams are also used to make executable systems.
Deployment diagrams are used to describe the static deployment view of a system.
Deployment diagrams can be used
To model the hardware topology of a system.
To model the embedded system.
To model the hardware details for a client/server system.
To model the hardware details of a distributed application.
For Forward and Reverse engineering.
Elements: deployment, artifact, deployment target, node, device, execution environment, communication path, deployment specification,
what is: Profile diagram is structure diagram which describes lightweight extension mechanism to the UML by defining custom stereotypes, tagged values, and constraints
element: profile, metaclass, stereotype, extension, reference, profile application.
when use it:
Extension of the UML metamodel with language-inherent mechanisms
Extension and modification of the UML metamodel
Creation of a new metamodel
State machine diagram
State machine diagram is a behavior diagram which shows discrete behavior of a part of designed system through finite state transitions. State machine diagrams can also be used to express the usage protocol of part of a system
Purpose: Used for modeling discrete behavior through finite state transitions. In addition to expressing the behavior of a part of the system, state machines can also be used to express the usage protocol of part of a system. These two kinds of state machines are referred to as
behavioral state machines
protocol state machines
When to use
Modeling work flow by using activities.
Modeling business requirements.
High level understanding of the system's functionalities.
Investigating business requirements at a later stage.
Definition: Activity diagram is another important diagram in UML to describe the dynamic aspects of the system.
Activity diagram is basically a flowchart to represent the flow from one activity to another activity. The activity can be described as an operation of the system.
Purpose: Shows sequence and conditions for coordinating lower-level behaviors, rather than which classifiers own those behaviors. These are commonly called control flow and object flow models.
Element: activity, partition, action, object, control, activity edge.
Use case diagrams are usually referred to as behavior diagrams used to describe a set of actions (use cases) that some system or systems (subject) should or can perform in collaboration with one or more external users of the system (actors). Each use case should provide some observable and valuable result to the actors or other stakeholders of the system.
Use case diagrams are in fact twofold - they are both behavior diagrams, because they describe behavior of the system, and they are also structure diagrams - as a special case of class diagrams where classifiers are restricted to be either actors or use cases related to each other with associations.
se case diagrams are typically develop in early stage of development and people often apply use case modeling for the following purposes:
Specify the context of a system.
Capture the requirements of a system.
Validate a systems architecture
Drive implementation and generate test cases.
Developed by analysts together with domain experts
when use it:
Requirement analysis and high level design.
Model the context of a system.
Element: use case, actor, subject, extend, include, association.
To describe the message flow in the system.
To describe the structural organization of the objects.
To capture the dynamic behaviour of a system.
To describe the interaction among objects.
When to use:
o model the flow of control by time sequence.
To model the flow of control by structural organizations.
For forward engineering.
For reverse engineering.
Interaction diagrams include several different types of diagrams:
Purpose: Shows interactions when a primary purpose of the diagram is to reason about time. Timing diagrams focus on conditions changing within and among lifelines along a linear time axis.
Element: lifeline, state or condition timeline, destruction event, duration constraint, time constraint.
Purpose:Focuses on the interaction between lifelines where the architecture of the internal structure and how this corresponds with the message passing is central. The sequencing of messages is given through a sequence numbering scheme.
Element: lifeline, message.
Purpose: Most common kind of interaction diagrams which focuses on the message interchange between lifelines (objects).
Element: lifeline, execution specification, message, combined fragment, interaction use, state invariant, destruction occurrence.
Interaction overview diagram
Purpose:Defines interactions through a variant of activity diagrams in a way that promotes overview of the control flow. Interaction overview diagrams focus on the overview of the flow of control where the nodes are interactions or interaction uses. The lifelines and the messages do not appear at this overview level.
Element: initial node, flow final node, activity final node, decision node, merge node, fork node, join node, interaction, interaction use, duration constraint, time constraint.