Saturday, November 13, 2010

Timing Diagram

Timing Diagram are a part of the UML standard diagrams, and are useful to show the relationship of objects behavior with respect to time.

Basics:

Timing Diagrams in UML are a specific type of Behavioral diagram, and one of the four types of Interaction Diagram. The Timing Diagrams shows the changes in the behavior of one to many objects with respect to time. When I first saw the Timing Diagram being used in UML, I felt a strong connection to my Electronics Engineer background, I had always used these diagrams for digital signal processing. They are a part of the UML standard diagrams, and are useful in scenarios where the focus is on the timing constraint.


Types of Timing Diagrams

Concise notation Timing Diagrams
Robust notation Timing Diagrams


Timing Diagram Example

We will pick a general scenario to show the Timing Diagrams in action. Suppose that you are going for Java Certification, then the most likely time plan could be:-
  1. Plan for the exam ( You are 1st Jan to 31st March to plan for it)
  2. Enroll for the exam(Enrollment starts from 1st April to 30th April, so enroll within this time)
  3. Prepare for the exam(Prepare for the exam between 1st May, to 29th July)
  4. Give final exam(Give final exam on 30th July)
  5. Closed

We will show the Concise notation and Robust notation Timing Diagrams for the above scenario.

Concise notation Timing Diagrams
The Concise notation is less verbose, it can be implemented with less strict rules, and are therefore very fast to build. The example is shown below:-




Robust notation Timing Diagrams
The Robust notation is much more professional in look and feel. It gives a detailed overview of the time line and of the events. The example is shown below:-





When to Use Timing Diagram

Use Timing Diagram, when the focus is on the timing constraint of changing states of objects. For example, if one or multiple Objects changes from one state to another in some particular time, and you need to capture this information, then use a Timing Diagram.

References:-
http://en.wikipedia.org/wiki/Timing_diagram_%28Unified_Modeling_Language%29
http://www.agilemodeling.com/artifacts/timingDiagram.htm
http://www.uml-diagrams.org/timing-diagrams.html

No comments:

Post a Comment