The sequence diagram represents the flow of messages in the system and is also termed as an event diagram. It helps in envisioning several dynamic scenarios. It portrays the communication between any two lifelines as a time-ordered sequence of events, such that these lifelines took part at the run time. In UML, the lifeline is represented by a vertical bar, whereas the message flow is represented by a vertical dotted line that extends across the bottom of the page. It incorporates the iterations as well as branching.

Purpose of a Sequence Diagram

An Activity diagram is a variant of a State diagram. Organized according to Actions, the Activity diagrams mainly depict the internal behavior of a method, i.e. The implementation of an Operation, or a Use Case. The activity diagram will give every possibility and show the flow of control within the system. Sequence diagrams on the other hand give a more detailed look at a system but only for a single use case. Thus if they are combined, there can be an overarching view through the activity diagrams and more specific instances with the sequence diagrams.

  1. To model high-level interaction among active objects within a system.
  2. To model interaction among objects inside a collaboration realizing a use case.
  3. It either models generic interactions or some certain instances of interaction.

The sequence diagram is used primarily to show the interactions between objects in the sequential order that those interactions occur. Much like the class diagram, developers typically think sequence diagrams were meant exclusively for them. Activity diagrams are quicker to create and at more of a ‘high level’ – they show you the information flow, but not when or in what order the information flows. Sequence diagrams take the classes with their data and operations, plus the general behavior modeled in the activity diagrams, and show how it all fits together. Activity and Sequence Diagrams are the types of UML diagrams to model the system behaviour/processes. Before you start drawing these diagrams,it is very essential to have the usecase diagram developed completely and understand what it does.This usecase helps us in identifying the actors involved and interactions that takes place when that particular usecase gets executed.It is recommended to.

Notations of a Sequence Diagram


An individual participant in the sequence diagram is represented by a lifeline. It is positioned at the top of the diagram.


A role played by an entity that interacts with the subject is called as an actor. It is out of the scope of the system. It represents the role, which involves human users and external hardware or subjects. An actor may or may not represent a physical entity, but it purely depicts the role of an entity. Several distinct roles can be played by an actor or vice versa.


It is represented by a thin rectangle on the lifeline. It describes that time period in which an operation is performed by an element, such that the top and the bottom of the rectangle is associated with the initiation and the completion time, each respectively.



The messages depict the interaction between the objects and are represented by arrows. They are in the sequential order on the lifeline. The core of the sequence diagram is formed by messages and lifelines.

Following are types of messages enlisted below:

  • Call Message: It defines a particular communication between the lifelines of an interaction, which represents that the target lifeline has invoked an operation.
  • Return Message: It defines a particular communication between the lifelines of interaction that represent the flow of information from the receiver of the corresponding caller message.
  • Self Message: It describes a communication, particularly between the lifelines of an interaction that represents a message of the same lifeline, has been invoked.
  • Recursive Message: A self message sent for recursive purpose is called a recursive message. In other words, it can be said that the recursive message is a special case of the self message as it represents the recursive calls.
  • Create Message: It describes a communication, particularly between the lifelines of an interaction describing that the target (lifeline) has been instantiated.
  • Destroy Message: It describes a communication, particularly between the lifelines of an interaction that depicts a request to destroy the lifecycle of the target.
  • Duration Message: It describes a communication particularly between the lifelines of an interaction, which portrays the time passage of the message while modeling a system.


A note is the capability of attaching several remarks to the element. It basically carries useful information for the modelers.

Sequence Fragments

  1. Sequence fragments have been introduced by UML 2.0, which makes it quite easy for the creation and maintenance of an accurate sequence diagram.
  2. It is represented by a box called a combined fragment, encloses a part of interaction inside a sequence diagram.
  3. The type of fragment is shown by a fragment operator.

Types of fragments

Following are the types of fragments enlisted below;

OperatorFragment Type
altAlternative multiple fragments: The only fragment for which the condition is true, will execute.
optOptional: If the supplied condition is true, only then the fragments will execute. It is similar to alt with only one trace.
parParallel: Parallel executes fragments.
loopLoop: Fragments are run multiple times, and the basis of interaction is shown by the guard.
regionCritical region: Only one thread can execute a fragment at once.
negNegative: A worthless communication is shown by the fragment.
refReference: An interaction portrayed in another diagram. In this, a frame is drawn so as to cover the lifelines involved in the communication. The parameter and return value can be explained.
sdSequence Diagram: It is used to surround the whole sequence diagram.

Example of a Sequence Diagram

Fl studio 12 price philippines. An example of a high-level sequence diagram for online bookshop is given below.

Any online customer can search for a book catalog, view a description of a particular book, add a book to its shopping cart, and do checkout.

Activity and sequence diagram

Benefits of a Sequence Diagram

  1. It explores the real-time application.
  2. It depicts the message flow between the different objects.
  3. It has easy maintenance.
  4. It is easy to generate.
  5. Implement both forward and reverse engineering.
  6. It can easily update as per the new change in the system.
Activity And Sequence Diagram

The drawback of a Sequence Diagram

  1. In the case of too many lifelines, the sequence diagram can get more complex.
  2. The incorrect result may be produced, if the order of the flow of messages changes.
  3. Since each sequence needs distinct notations for its representation, it may make the diagram more complex.
  4. The type of sequence is decided by the type of message.
Next TopicUML Collaboration Diagram

The Sequence diagram of UML

A sequence diagram shows object interactions arranged in time sequence. It depicts the objects involved in the scenario and the sequence of messages exchanged between the objects needed to carry out the functionality of the scenario. Sequence diagrams are typically associated with use case realizations in the logical view of the system under development. Sequence diagrams are sometimes called event diagrams or event scenarios.

A sequence diagram shows, as parallel vertical lines (lifelines), different processes or objects that live simultaneously, and, as horizontal arrows, the messages exchanged between them, in the order in which they occur. This allows the specification of simple runtime scenarios in a graphical manner.

Diagram building blocks[edit]

If the lifeline is that of an object, it demonstrates a role. Leaving the instance name blank can represent anonymous and unnamed instances.

Activity And Sequence Diagram

Messages, written with horizontal arrows with the message name written above them, display interaction. Solid arrow heads represent synchronous calls, open arrow heads represent asynchronous messages, and dashed lines represent reply messages.[1]If a caller sends a synchronous message, it must wait until the message is done, such as invoking a subroutine. If a caller sends an asynchronous message, it can continue processing and doesn’t have to wait for a response. Asynchronous calls are present in multithreaded applications, event-driven applications and in message-oriented middleware. Activation boxes, or method-call boxes, are opaque rectangles drawn on top of lifelines to represent that processes are being performed in response to the message (ExecutionSpecifications in UML).

Objects calling methods on themselves use messages and add new activation boxes on top of any others to indicate a further level of processing. If an object is destroyed (removed from memory), an X is drawn on bottom of the lifeline, and the dashed line ceases to be drawn below it. It should be the result of a message, either from the object itself, or another.

A message sent from outside the diagram can be represented by a message originating from a filled-in circle (found message in UML) or from a border of the sequence diagram (gate in UML).

Activity And Sequence Diagram

UML has introduced significant improvements to the capabilities of sequence diagrams. Most of these improvements are based on the idea of interaction fragments[2] which represent smaller pieces of an enclosing interaction. Multiple interaction fragments are combined to create a variety of combined fragments,[3] which are then used to model interactions that include parallelism, conditional branches, optional interactions.


  1. ^OMG (2011). OMG Unified Modeling Language (OMG UML), Superstructure, V2.4.1, p. 507.
  2. ^OMG (2008). OMG Unified Modeling Language (OMG UML), Superstructure, V2.1.2, p. 485.
  3. ^OMG (2007). OMG Unified Modeling Language (OMG UML), Superstructure, V2.1.2. p. 467.

What Is An Activity Diagram

External links[edit]

Wikimedia Commons has media related to Sequence diagrams.

Activity And Sequence Diagram For Atm System

  • UML Distilled by Martin Fowler
  • Current UML Specification by Object Management Group (OMG)
  • Introduction to UML 2 Sequence Diagrams by Scott W. Ambler.
  • A Quick Introduction to UML Sequence Diagrams by Yanic Inghelbrecht

Difference Between Activity And Sequence Diagram

Retrieved from 'https://en.wikipedia.org/w/index.php?title=Sequence_diagram&oldid=1019345802'