Message sequence chart: Difference between revisions

Content deleted Content added
m Live Sequence Charts: task, replaced: ACM Sigplan → ACM SIGPLAN
#suggestededit-add 1.0
Tags: Mobile edit Mobile app edit Android app edit
 
(9 intermediate revisions by 8 users not shown)
Line 1:
{{Short description|Interaction diagram from the SDL family}}
[[File:Typical MSC (Message Sequence Chart).png|thumb|The diagram shows three entities. At start the phone is disconnected. A user tries to establish a connection. A connection request is sent to the switch and a timer is started. An alternative deals with two possibles responses: 1 - The timer goes off because the switch did not reply and the phone goes back to the disconnected state.2 - The switch grants the connection and the call is established.]]
A '''message sequence chart''' (or '''MSC''') is an [[interaction diagram]] from the [[Specification and Description Language|SDL]] family standardized by the [[International Telecommunication Union]].
Line 6 ⟶ 7:
 
==History==
The first version of the MSC standard was released inon March 12, 1993.
 
The 1996 version added references, ordering and [[Inline expansion|inlining]] expressions concepts, and introduced HMSC<ref>{{cite web
Line 20 ⟶ 21:
|author = Øystein Haugen
|accessdate = 2009-09-19
|deadurlurl-status = yesdead
|archiveurl = https://web.archive.org/web/20110607104113/http://folk.uio.no/intime/msc2000.pdf
|archivedate = 2011-06-07
|df =
}}</ref> added object orientation, refined the use of data and time in diagrams, and added the concept of remote method calls.<ref>{{cite web
| url=http://www.sdl-forum.org/MSC2000present/sld007.htm
Line 53:
 
==Comparison to UML==
UML 2.0 [[Sequence diagram|Sequence Diagram]] is strongly inspired by the ITU-T MSC. Still, for historical reasons, the default basic principles are quite different:
* Lifelines
:* In an MSC, the vertical lines are autonomous execution entities. They usually represent state machines executing in parallel. The state machines need not be on the same computer.
Line 59:
* Arrows
:* In an MSC an arrow is usually an asynchronous message sent from one entity to another one. Once the message is sent the sending entity resumes its execution.
:* In a Sequence Diagram an arrow is usually understood as an operation call on a class. It is therefore synchronous and the calling entity hangs until the operation returns.{{fact|date=November 2022}}
It has been said that MSC has been considered as a candidate for the [[Unified Modeling Language#Interaction diagrams|interaction diagrams]] in UML.<ref>{{cite web
Line 84:
|title = Message Sequence Charts
|date = 2003-04-08
|author = [[David Harel]]
|accessdate = 2009-09-20
|deadurlurl-status = yesdead
|archiveurl = https://web.archive.org/web/20060826195305/http://www.comp.nus.edu.sg/~thiagu/public_papers/surveymsc.pdf
|archivedate = 2006-08-26
|author-link = David Harel
|df =
}}</ref><ref>{{cite journal
| url=http://www.springerlink.com/content/hfnna0r9jbl54ya4/
| title=LSCs: Breathing Life into Message Sequence Charts
| journal=Formal Methods in System Design
Line 97 ⟶ 96:
| pages=45–80
| date=2005-02-22
| author=[[David Harel]]
| accessdate=2009-09-20| doi=10.1023/A:1011227529550
| s2cid=1551133
|author-link = David Harel}}</ref><ref>{{cite journal
| url=http://portal.acm.org/citation.cfm?id=582429
| title=Multiple instances and symbolic variables in executable sequence charts
| journal=ACM SIGPLAN Notices
| volume=37
| issue=11
| pages=8383–100
| year=2002
| author=[[David Harel]]
| accessdate=2009-09-20| doi=10.1145/583854.582429
| citeseerx=10.1.1.20.5984
| author-link=David Harel
}}</ref>