Wednesday, February 11, 2015

Purpose Of different UML Diagram.



  • UML was developed primarily as a communication tool.
  • Normally, software is developed by a team of people. They might not even be at the same location. And so they need to have an effective communication tool so everyone understands how the software system is put together.
  • With UML they can see how the system is partitioned into static objects and they can see how those objects interact over time.
  • UML is very flexible and robust as it can do all of these things. Furthermore it is quite easy to learn and it is independent of any particular vendor. UML can work over many different operating systems and various hardware platforms.
  • UML can be used by people involved at every stage of the Systems Life Cycle starting with specification all the way through to maintenance.



A 'system' can be thought of as a number of smaller sub-systems joined together and interacting in some way.

UML includes

  • A way of visually showing the overall architecture of the system
  • A way of showing the same system from different points of view (abstraction)
  • A standard graphical set of shapes representing generic objects within a system
  • A standard way of documenting the attributes (data) of each object
  • A way of defining functions / methods that can change the state of each object
  • A way of showing how the objects interact with one another
  • Making it possible to generate code directly from an UML diagram
  • Making it possible to allow vendors to produce toolsets for developers
Structure diagrams show the static structure.(how modules are related to each other)
Behavior diagrams show the dynamic behavior over time.


Class diagram is a static structure diagram which describes structure of a system at the level of classifiers (classes, interfaces, etc.). It shows some classifiers of the system, subsystem or component, different relationships between classifiers, their attributes and operations, constraints.

Object diagram was defined is now obsolete IN old specification as "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." It also stated that object diagram is "a class diagram with objects and no classes."

Package diagram shows packages and relationships between the packages.

Model diagram is UML auxiliary structure diagram which shows some abstraction or specific view of a system, to describe architectural, logical or behavioral aspects of the system. It could show, for example, architecture of a multi-layered (aka multi-tiered) application - multi-layered application model.

Composite structure diagram could be used to show:

  • Internal structure of a classifier
  • A behavior of a collaboration

Internal Structure diagrams show internal structure of a classifier - a decomposition of the classifier into its properties, parts and relationships.

Collaboration use diagram shows objects in a system cooperating with each other to produce some behavior of the system.

Component diagram shows components and dependencies between them. This type of diagrams is used for Component-Based Development (CBD), to describe systems with Service-Oriented Architecture (SOA).

Deployment diagram shows architecture of the system as deployment (distribution) of software artifacts to deployment targets.

Specification level deployment diagram (also called type level) shows some overview of deployment of artifacts to deployment targets, without referencing specific instances of artifacts or nodes.

Instance level deployment diagram shows deployment of instances of artifacts to specific instances of deployment targets. It could be used for example to show differences in deployments to development, staging or production environments with the names/ids of specific build or deployment servers or devices.

While component diagrams show components and relationships between components and classifiers, and deployment diagrams - deployments of artifacts to deployment targets, some missing intermediate diagram is manifestation diagram to be used to show manifestation (implementation) of components by artifacts and internal structure of artifacts.
Because manifestation diagrams are not defined by UML 2.4 specification, manifestation of components by artifacts could be shown using either component diagrams or deployment diagrams.
Deployment diagrams could also be used to show logical or physical network architecture of the system. This kind of deployment diagrams - not formally defined in UML 2.4 - could be called network architecture diagrams.

Profile diagram is auxiliary UML diagram which allows defining custom stereotypes, tagged values, and constraints. The Profile mechanism has been defined in UML for providing a lightweight extension mechanism to the UML standard. Profiles allow to adapt the UML metamodel for different
  1. platforms (such as J2EE or .NET), or
  2. domains (such as real-time or business process modeling).
Profile diagrams were first introduced in UML 2.0.

Use case diagrams are 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) to provide some observable and valuable results to the actors or other stakeholders of the system(s).
Note, that UML 2.4 specification also defines use case diagrams as specialization of class diagrams.

Activity diagram 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.

State machine diagram is 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 and protocol state machines.

Interaction diagrams include several different types of diagrams:------

Sequence diagram is the most common kind of interaction diagrams, which focuses on the message interchange between lifelines (objects).

Communication diagram (previously known as Collaboration Diagram) is a kind of interaction diagram, which 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.

Interaction overview diagram 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.

Timing diagrams are used to show 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.





------------------------------------------------------------------------------------------------------------------------
source : http://www.teach-ict.com/ ,
http://www.uml-diagrams.org/

1 comment:

  1. Page Object Modeling --- "
    Page Object Modeling Online Training

    Send ur Enquiry to contact@21cssindia.com
    Page Object Modeling Course Contents
    Why POM and what is POM
    About page objet gem and its features" more… Online Training- Corporate Training- IT Support U Can Reach Us On +917386622889 - +919000444287 http://www.21cssindia.com/courses/page-object-modeling-online-training-231.html

    ReplyDelete