El lenguaje de modelado de sistemas ( SysML ) [1] es un lenguaje de modelado de propósito general para aplicaciones de ingeniería de sistemas . Apoya la especificación, análisis , diseño , verificación y validación de una amplia gama de sistemas y sistemas de sistemas .
SysML fue desarrollado originalmente por un proyecto de especificación de código abierto e incluye una licencia de código abierto para distribución y uso. [2] SysML se define como una extensión de un subconjunto del Lenguaje de modelado unificado (UML) utilizando el mecanismo de perfil de UML . Las extensiones del lenguaje fueron diseñadas para soportar actividades de ingeniería de sistemas.
Contraste con UML
SysML ofrece a los ingenieros de sistemas varias mejoras notables sobre UML, que tiende a centrarse en el software. Estas mejoras incluyen lo siguiente: [2]
- Los diagramas de SysML son más flexibles y expresivos. SysML reduce las restricciones centradas en software de UML y agrega dos nuevos tipos de diagramas, diagramas de requisitos y paramétricos. El primero se puede utilizar para la ingeniería de requisitos ; este último se puede utilizar para análisis de rendimiento y análisis cuantitativo . Como consecuencia de estas mejoras, SysML puede modelar una amplia gama de sistemas, que pueden incluir hardware, software, información, procesos, personal e instalaciones.
- SysML es un lenguaje comparativamente pequeño que es más fácil de aprender y aplicar. [3] Dado que SysML elimina muchas de las construcciones centradas en software de UML, el lenguaje general es más pequeño tanto en tipos de diagramas como en construcciones totales.
- Las tablas de asignación de SysML admiten tipos comunes de asignaciones. Mientras que UML proporciona solo soporte limitado para notaciones tabulares, SysML proporciona tablas de asignación flexibles que admiten la asignación de requisitos, la asignación funcional y la asignación estructural. Esta capacidad facilita la verificación y validación automatizadas (V&V) y el análisis de brechas.
- La gestión de modelos SysML construye modelos de soporte, vistas y puntos de vista. Estas construcciones amplían las capacidades de UML y están alineadas arquitectónicamente con IEEE-Std-1471-2000 (Práctica recomendada de IEEE para la descripción arquitectónica de sistemas intensivos de software).
SysML reutiliza siete de los catorce diagramas de UML 2 y agrega dos diagramas (diagramas de requisitos y paramétricos) para un total de nueve tipos de diagramas. SysML también admite tablas de asignación, un formato tabular que puede derivarse dinámicamente de las relaciones de asignación de SysML. Una tabla que compara los diagramas SysML y UML 2 está disponible en las Preguntas frecuentes de SysML. [4]
Considere el modelado de un sistema automotriz: con SysML se pueden usar diagramas de requisitos para capturar de manera eficiente los requisitos funcionales, de rendimiento y de interfaz, mientras que con UML uno está sujeto a las limitaciones de los diagramas de casos de uso para definir requisitos funcionales de alto nivel. Asimismo, con SysML se pueden utilizar diagramas paramétricos para definir con precisión el rendimiento y las restricciones cuantitativas como la aceleración máxima , el peso mínimo en vacío y la capacidad total de aire acondicionado . UML no proporciona un mecanismo sencillo para capturar este tipo de información cuantitativa y de rendimiento esencial.
Con respecto al resto del sistema automotriz, se pueden usar diagramas de actividad mejorados y diagramas de máquinas de estado para especificar la lógica de control del software integrado y los flujos de información para las computadoras automotrices a bordo. Se pueden usar otros diagramas estructurales y de comportamiento de SysML para modelar las fábricas que construyen los automóviles, así como las interfaces entre las organizaciones que trabajan en las fábricas.
Historia
La iniciativa SysML se originó en una decisión de enero de 2001 del grupo de trabajo de Diseño de Sistemas Dirigidos por Modelo del Consejo Internacional de Ingeniería de Sistemas (INCOSE) para personalizar el UML para aplicaciones de ingeniería de sistemas. A raíz de esta decisión, INCOSE y el Object Management Group (OMG), que mantiene la especificación UML, constituyeron conjuntamente el OMG Systems Engineering Domain Special Interest Group (SE DSIG) en julio de 2001. SE DSIG, con el apoyo de INCOSE e ISO AP 233 , desarrolló los requisitos para el lenguaje de modelado, que posteriormente fueron emitidos por la división OMG en la Solicitud de propuesta de UML para ingeniería de sistemas (UML para SE RFP; documento OMG ad / 03-03-41) en marzo de 2003. [5 ]
En 2003 Cris Kobryn y Sanford Friedenthal organizaron y copresidieron SysML Partners , una asociación informal de líderes de la industria y proveedores de herramientas, [6] que inició un proyecto de especificación de código abierto para desarrollar SysML en respuesta a la RFP de UML para ingeniería de sistemas. [7] Los colaboradores técnicos originales y coautores de la especificación SysML 1.0a fueron Laurent Balmelli, Conrad Bock, Rick Steiner, Alan Moore y Roger Burkhart. Los socios de SysML distribuyeron sus primeros borradores de especificaciones de SysML de código abierto en 2004 y presentaron SysML 1.0a al OMG para su adopción de tecnología en noviembre de 2005.
Dios mío, SysML
Después de una serie de propuestas de especificaciones de SysML en competencia, se propuso un equipo de fusión de SysML a la OMG en abril de 2006. [8] Esta propuesta fue votada y adoptada por la OMG en julio de 2006 como OMG SysML, para diferenciarla del código abierto original. especificación de la que se derivó. Debido a que OMG SysML se deriva de SysML de código abierto, también incluye una licencia de código abierto para su distribución y uso.
La especificación OMG SysML v. 1.0 fue emitida por OMG como una especificación disponible en septiembre de 2007. [9] La versión actual de OMG SysML es v1.6, que fue emitida por OMG en diciembre de 2019. [10] Además, SysML fue publicado por la Organización Internacional de Normalización (ISO) en 2017 como una Norma Internacional (IS) completa, ISO / IEC 19514: 2017 (Tecnología de la información - Lenguaje de modelado de sistemas de grupos de gestión de objetos). [11]
El OMG ha estado trabajando en la próxima generación de SysML y emitió una Solicitud de propuestas (RFP) para la versión 2 el 8 de diciembre de 2017, siguiendo su proceso de estandarización abierta. [12] [13] La especificación resultante, que incorporará mejoras del lenguaje de la experiencia en la aplicación del lenguaje, incluirá un perfil UML, un metamodelo y un mapeo entre el perfil y el metamodelo. [12] En junio de 2018 se publicó una segunda RFP para una interfaz de programación de aplicaciones (API) SysML v2 y una RFP de servicios. Su objetivo es mejorar la interoperabilidad de las herramientas de ingeniería de sistemas basadas en modelos .
Diagramas
SysML incluye 9 tipos de diagramas, algunos de los cuales se toman de UML .
- Diagrama de definición de bloques
- Diagrama de bloques interno
- Diagrama del paquete
- Use el diagrama del caso
- Diagrama de requisitos
- Diagrama de actividad
- Diagrama de secuencia
- Diagrama de la máquina de estado
- Diagrama paramétrico
Herramientas
Hay varios proveedores de herramientas de modelado que ya ofrecen soporte SysML o están en proceso de actualizar sus herramientas para cumplir con la especificación OMG SysML. Las listas de proveedores de herramientas que apoyan, o han anunciado soporte de, SysML u OMG SysML se pueden encontrar en los sitios web del Foro SysML [14] o SysML [15] , respectivamente.
Intercambio de modelos
Como perfil OMG UML 2.0 , los modelos SysML están diseñados para intercambiarse utilizando el estándar XML Metadata Interchange (XMI). Además, se están realizando trabajos de alineación arquitectónica para respaldar el estándar AP-233 ISO 10303 (también conocido como STEP, el estándar para el intercambio de datos de modelos de productos) para intercambiar y compartir información entre aplicaciones y herramientas de software de ingeniería de sistemas .
Ver también
- SoaML
- Lenguaje de sistemas energéticos
- Metodología de proceso de objetos
- Lenguaje de sistemas universales
- Lista de herramientas SysML
Referencias
- ^ Vistas flexibles para el desarrollo basado en modelos basados en vistas de Burger, Erik. KIT Scientific Publishing, 14 de noviembre de 2014. Pg. 250.
- ^ a b Foro de SysML. "Preguntas frecuentes sobre SysML" . Consultado el 3 de diciembre de 2018 .
- ^ Seguridad de sistemas integrados. Por David Kleidermacher, Mike Kleidermacher. Elsevier, 2012. Pág. 180.
- ^ "Foro SysML: Preguntas frecuentes sobre SysML - ¿Qué es SysML? ¿Por qué usar SysML? ¿Quién creó SysML?" . sysmlforum.com . Consultado el 4 de diciembre de 2014 .
- ^ Dios mío SE DSIG. "RFP UML para Ingeniería de Sistemas" . Consultado el 29 de junio de 2006 .
- ^ "Socios de SysML" . Consultado el 29 de junio de 2006 .
- ^ Foro SysML. "Preguntas frecuentes sobre SysML" . Archivado desde el original el 16 de julio de 2006 . Consultado el 29 de junio de 2006 .
- ^ Anuncio de documento OMG / 06-03-01 Archivado 2008-12-01 en Wayback Machine
- ^ "SysML 1.0" . omg.org . Consultado el 4 de diciembre de 2014 .
- ^ "SysML" . omg.org . Consultado el 14 de enero de 2020 .
- ^ "ISO / IEC 19514: 2017 - Tecnología de la información - Lenguaje de modelado de sistemas de grupo de gestión de objetos (OMG SysML)" . www.iso.org . Consultado el 29 de diciembre de 2017 .
- ^ a b "sysml-roadmap: sysml_v2_requirements_review_page [OMG SysML Portal]" . www.omgwiki.org . Consultado el 29 de diciembre de 2017 .
- ^ "Introducción al proceso OMG | Grupo de gestión de objetos" . www.omg.org . Consultado el 29 de diciembre de 2017 .
- ^ "Foro SysML: ¿Qué es SysML? - Lo que necesita saber" . sysmlforum.com . Consultado el 4 de diciembre de 2014 .
- ^ "OMG SysML" . omgsysml.org . Consultado el 4 de diciembre de 2014 .
Otras lecturas
- Balmelli, Laurent (2007). Una descripción general del lenguaje de modelado de sistemas para el desarrollo de productos y sistemas (PDF) . Revista de tecnología de objetos, vol. 6, no. 6, julio-agosto de 2007, págs. 149-177.
- Delligatti, Lenny (2013). SysML Distilled: una breve guía del lenguaje de modelado de sistemas . Addison-Wesley Professional. ISBN 978-0-321-92786-6.
- Holt, Jon (2008). SysML para Ingeniería de Sistemas . La Institución de Ingeniería y Tecnología. ISBN 978-0-86341-825-9.
- Weilkiens, Tim (2008). Ingeniería de Sistemas con SysML / UML: Modelado, Análisis, Diseño . Morgan Kaufmann / The OMG Press. ISBN 978-0-12-374274-2.
- Friedenthal, Sanford; Moore, Alan; Steiner, Rick (2016). Una guía práctica de SysML: el lenguaje de modelado de sistemas (tercera edición). Morgan Kaufmann / The OMG Press. ISBN 978-0-12-800202-5.
- Douglass, Bruce (2015). Ingeniería de Sistemas Ágiles . Morgan Kaufmann. ISBN 978-0128021200.
enlaces externos
- Introducción al lenguaje de modelado de sistemas (SysML), parte 1 y parte 2 . YouTube.
- Proyecto de especificación de código abierto de SysML Proporciona información relacionada con las especificaciones de código abierto de SysML, preguntas frecuentes, listas de correo y licencias de código abierto.
- Sitio web OMG SysML Proporciona información relacionada con la especificación OMG SysML, tutoriales SysML, documentos e información sobre proveedores de herramientas.
- Artículo "Artículo de EE Times sobre SysML (8 de mayo de 2006) "
- Equipo del SE ^ 2 MBSE Challenge: " Modelado de telescopios "
- Documento " Explicación del lenguaje de modelado del sistema " (formato PDF)
- Bruce Douglass: Desarrollo de software y sistemas ágiles en tiempo real
- Lista de herramientas de modelado SysML populares