Meddelandesekvensdiagram
Ett meddelandesekvensdiagram (eller MSC ) är ett interaktionsdiagram från SDL -familjen standardiserat av International Telecommunication Union .
Syftet med att rekommendera MSC (Message Sequence Chart) är att tillhandahålla ett spårspråk för specifikation och beskrivning av kommunikationsbeteendet hos systemkomponenter och deras miljö genom meddelandeutbyte. Eftersom kommunikationsbeteendet i MSC presenteras på ett mycket intuitivt och transparent sätt, särskilt i den grafiska representationen, är MSC-språket lätt att lära sig, använda och tolka. I samband med andra språk kan den användas för att stödja metoder för systemspecifikation, design, simulering, testning och dokumentation.
Historia
Den första versionen av MSC-standarden släpptes den 12 mars 1993.
1996 års version lade till referenser, ordnade och infogade uttryckskoncept och introducerade HMSC ( H igh-level M essage S equence C harts), som är sättet att uttrycka en sekvens av MSC.
MSC 2000-versionen lade till objektorientering, förfinade användningen av data och tid i diagram och lade till konceptet med fjärrmetodanrop.
Den senaste versionen har publicerats i februari 2011.
Symboler i MSC
De befintliga symbolerna är:
- MSC-huvud, livlina och ände: en vertikal linje med en ruta överst och en ruta eller ett kors längst ner.
- Skapa instans: horisontell streckad pil till den nyskapade instansen.
- Meddelandeutbyte: horisontell pil.
- Kontrollflöde: horisontell pil med prefixet 'samtal', streckad pil för svarssymbol, metod och avstängningssymboler däremellan.
- Timers: starta, avbryt, timeout.
- Tidsintervall: relativ och absolut med en streckad vertikal pil.
- Villkor: används vanligtvis för att representera ett tillstånd för den underliggande tillståndsmaskinen.
- Åtgärd: en låda.
- In-line uttryck: alternativ komposition, sekventiell komposition, undantag, valfri region, parallell komposition, iteration (loop).
- Referens: referens till en annan MSC.
- Datakoncept: Användaren kan använda vilket datakoncept som helst, om bindningen är odefinierad är standarddatakonceptet det från SDL enligt definitionen i Z.121-rekommendationen.
- Samregion: en dubbelstreckad instanslinje för att beskriva oordnade händelser.
Symboltillägg
-
SDL-RT har introducerat:
- en semaforinstansrepresentation.
- en spara-symbol för att spara meddelanden.
Jämförelse med UML
UML 2.0 Sequence Diagram är starkt inspirerad av ITU-T MSC. Fortfarande, av historiska skäl, är standardgrundprinciperna ganska olika:
- Livlinor
- I en MSC är de vertikala linjerna autonoma exekveringsenheter. De representerar vanligtvis tillståndsmaskiner som körs parallellt. Tillståndsmaskinerna behöver inte vara på samma dator.
- I ett sekvensdiagram är en vertikal linje vanligtvis ett objekt. Objektet kan vara aktivt (i sin egen exekveringstråd) eller passivt (i exekveringskontexten för ett aktivt objekt).
- Pilar
- I en MSC är en pil vanligtvis ett asynkront meddelande som skickas från en enhet till en annan. När meddelandet har skickats återupptar den sändande enheten exekveringen.
- I ett sekvensdiagram förstås en pil vanligtvis som ett operationsanrop på en klass. Den är därför synkron och den anropande enheten hänger sig tills operationen återkommer. [ citat behövs ]
Det har sagts att MSC har ansetts vara en kandidat för interaktionsdiagrammen i UML.
Förespråkare av MSC som Ericsson tycker dock att MSC är bättre än UML 2.0 för att modellera stora eller komplexa system.
Live Sequence Charts
David Harel föreslog att MSC hade brister som:
- MSC föreslår en svag partiell ordningssemantik som gör det omöjligt att fånga vissa beteendekrav,
- Förhållandet mellan MSC-kraven och den körbara specifikationen är inte klart,
och föreslagna Live Sequence Charts (LSC) som en förlängning av MSC-standarden.
Se även
- PSC Property Sequence Chart, ett sätt att beskriva egenskaper i ett MSC eller ett Sequence Diagram.
- SDL Specification and Description Language, ett MSC-relaterat ITU-T-språk.
- Interaktionsdiagram i UML .
externa länkar
- ITU-T Rekommendation Z.120 meddelandesekvensdiagram (MSC)