Gráfico de secuencia de mensajes
Un diagrama de secuencia de mensajes (o MSC ) es un diagrama de interacción de la familia SDL estandarizado por la UIT con la referencia Z.120 .
El propósito de la recomendación MSC (Message Sequence Chart) es proporcionar una notación para especificar y describir las interacciones entre los componentes de un sistema, entre sí o con su entorno, a través de mensajes. Debido a que MSC presenta el comportamiento de una manera intuitiva y transparente, especialmente con su representación gráfica, la notación MSC es fácil de aprender, usar e interpretar. En conexión con otros lenguajes, se puede utilizar para apoyar las metodologías de especificación, diseño, simulación, prueba y documentación del sistema.
Historia
La primera versión de la recomendación data de 12 de marzo de 1993.
Las referencias de la versión 1996 introducidas, el orden, los términos en línea, y la noción de hMSC ( H igh de nivel M ensaje S secuencia C harts) que combina MSC.
La versión MSC 2000 introduce la orientación a objetos, especifica el uso de datos y tiempo en diagramas e introduce llamadas a procedimientos remotos.
La última versión fue lanzada en febrero 2011.
Símbolos en el MSC
Los símbolos disponibles son:
- Cabeza de instancia, línea de vida y fin de vida: una línea vertical con una caja en la parte superior y una caja o una cruz en la base.
- Creación de instancia: una línea horizontal punteada hasta la nueva instancia.
- Intercambio de mensajes: flecha horizontal.
- Flujo de control: flecha horizontal con el prefijo 'llamada', flecha punteada para retorno, símbolo de suspensión o llamada de método en el medio.
- Temporizadores: inicio, cancelación y vencimiento.
- Intervalo de tiempo: relativo y absoluto con flecha vertical punteada.
- Condición: generalmente se usa para representar un estado de la máquina de estado subyacente.
- Acción: una caja.
- Expresión en línea: alternativa, secuencia, excepción, opción, paralelismo, bucle.
- Referencia: Referencia a otro MSC.
- Datos: El usuario puede utilizar cualquier tipo de datos, si el enlace no está definido, los tipos de datos predeterminados son los de SDL como se define en la recomendación Z.121 .
- Co-región: una línea de vida de doble punto permite describir eventos desordenados.
Extensión
-
Introducción de SDL-RT :
- un símbolo para representar instancias de semáforo.
- un símbolo para representar guardar mensajes.
Comparación con UML
El diagrama de secuencia de UML 2.0 se inspira en gran medida en los MSC de la UIT. Sin embargo, por razones históricas, los principios básicos se interpretan de manera diferente:
- Líneas de vida
- En un MSC, las líneas de vida son entidades autoejecutables. Suelen representar máquinas de estado que se ejecutan en paralelo. No es necesario que las máquinas funcionen en la misma máquina.
- En un diagrama de secuencia, una línea vertical suele ser un objeto (instancia de una clase). El objeto puede ser activo (en su propio contexto de ejecución) o pasivo (en el contexto de ejecución de un objeto activo).
- Flechas
- En un MSC, una flecha suele ser un mensaje asincrónico enviado de una entidad a otra. Una vez enviado el mensaje, la entidad emisora reanuda su ejecución.
- En un diagrama de secuencia, una flecha generalmente se interpreta como una llamada a un método en un objeto. Como resultado, representa una llamada síncrona y la entidad que llama se suspende hasta el final de la operación.
El MSC fue una gran inspiración para los diagramas de interacción UML 2.
Sin embargo, los promotores de MSC como Ericsson creen que los MSC son mejores que los diagramas de secuencia UML 2.0 para modelar grandes sistemas complejos.
Gráficos de secuencia en vivo
David Harel cree que las MSC tienen algunas deficiencias:
- El MSC propondría una semántica limitada sobre las nociones de orden que imposibilita la expresión de determinados comportamientos,
- La relación entre un requisito en forma de MSC y la especificación ejecutable no siempre sería clara.
Para abordar lo que él ve como deficiencias en MSC, David Harel ofrece una extensión estándar llamada LSC ( L ive S sequence C harts).
Herramientas
Ver también
-
Gráfico de secuencia de propiedades de PSC , un formalismo para describir propiedades en un diagrama de secuencia o MSC.
-
Lenguaje de descripción y especificación SDL , un lenguaje de la UIT asociado con el MSC.
-
Diagramas de interacción UML .
Referencias
-
" HMSC " , sdl-forum.org (consultado el 25 de agosto de 2014 )
-
Øystein Haugen, " MSC 2000 " , Ericsson (consultado el 19 de septiembre de 2009 )
-
" Novedades de MSC 2000 en relación con MSC 96 " , sdl-forum.org (consultado el 25 de agosto de 2014 )
-
Ekkart Rudolph, Jens Grabowski, Peter Graubmann, " Hacia una armonización de los diagramas de secuencia UML y MSC " , Universidad de Göttingen ,1999(consultado el 20 de septiembre de 2009 )
-
Øystein Haugen, “ UML 2.0 vs. SDL / MSC - Declaración de posición de Ericsson ” , Ericsson ,Junio de 2000(consultado el 19 de septiembre de 2009 )
-
David Harel, " Gráficos de secuencia de mensajes " ,8 de abril de 2003(consultado el 20 de septiembre de 2009 )
-
David Harel, " LSC: dar vida a los gráficos de secuencia de mensajes " , Métodos formales en el diseño de sistemas ,22 de febrero de 2005(consultado el 20 de septiembre de 2009 )
-
David Harel, " Varias instancias y variables simbólicas en gráficos de secuencia ejecutables " , Association for Computing Machinery ,2002(consultado el 20 de septiembre de 2009 )
-
Emmanuel Gaudin, Eric Brunel, " Verificación de propiedad con MSC " , Springer ,2013
enlaces externos