290 likes | 763 Views
SysML. Juan Carlos Olivares Rojas. MSN: juancarlosolivares@hotmail.com jcolivar@itmorelia.edu.mx http://antares.itmorelia.edu.mx/~jcolivar/ @jcolivares Social Network: Facebook, LinkedIn. G+. Introducción.
E N D
SysML Juan Carlos Olivares Rojas MSN: juancarlosolivares@hotmail.com jcolivar@itmorelia.edu.mx http://antares.itmorelia.edu.mx/~jcolivar/ @jcolivares Social Network: Facebook, LinkedIn. G+
Introducción • Hasta hace poco no existí un lenguaje de modelado común para diversas áreas de la ingeniería que trabajan bajo un enfoque de la Teoría General de Sistemas. • Un grupo de expertos (OMG y otras disciplinas) unieron esfuerzos por estandarizar un lenguaje común de modelado universal de sistemas. Para ello se basaron en UML 2.0
Introducción • Muchos proyectos del área de TICs no necesariamente se enfocan al desarrollo de software. • SysML no sólo puede modelar software (aunque se recomienda UML que es más específico), puede modelar cualquier tipo de sistema. • Los proyectos actuales y no sólo de TICs son multidsciplinarios.
Introducción • La Ingeniería en Sistemas como tal se caracteriza por la definición de los requerimientos de los clientes, la documentación, diseño y validación de los sistemas. • Todos estos procesos pueden llevarse acabo con SysML. • SysML es un lenguaje visual para especificar, comunicar y documentar sistemas.
Introducción • La mayoría de las herramientas de modelado de software y de diagramación empiezan a incluir SysML dentro de sus plantillas.
Relación con UML UML4SysML SysML Profile
Jerarquía de Diagramas SysML Diagram Structure SysML: Parametric Behaviour SysML: Requirements Activity Use Case State Machine SysML: Block Definition SysML Internal Block Package Interaction UML 1.x Sequence UML 2.0 SysML:
4 Pilares de SysML definition use 2. Comportamiento 1. Estructura 4. Parametrico 3. Requerimientos
Diagramas de Paquetes • Se utilizan para organizar los modelos • Generalmente se agrupan los elementos del mismo tipo en un paquete, aunque la organización depende de los autores del modelado, ya que se puden agrupar por diagramas, etc.
Ejemplo D. Paquetes pkg SampleModel [ by diagram type ] pkg SampleModel [ by level ] pkg SampleModel [ by IPT ] Architecture Use Cases Enterprise Team Requirements Requirements System Team Behavior Logical Design IPT A Physical Structure IPT B Design EngrAnalysis Verification IPT C Por tipos de Diagramas Por jerarquías Por equipos de Desarrollo
Diagrama de Bloques «block» BrakeModulator allocatedFrom «activity»Modulate BrakingForce values DutyCycle : Percentage • Son los elementos básicos de la estructura del proyecto: • Hardware • Software • Datos • Procedimientos • Personas • Los bloques definen las propiedades, operaciones, restricciones de cada elemento del proyecto. Son análogo a las clases en UML Compartment Label
D. de Bloques Internos • Define el uso de los bloques de forma interna
Diagramas Paramétricos • Se usan para expresar restricciones (generalmente ecuaciones) entre propiedades de los bloques • Se utilizan para realizar análisis, ayudando a identificar factores críticos.
Diagramas de Actividades • Son idénticos a UML y modelan los flujos de trabajos de un proceso. Son la versión moderna de los diagramas de flujo actOperate Car Turn Key :Driving to On Turn Key to Off Brake Pressure «continuous» «continuous» «continuous» Brake Pressure Braking Pressure :Braking «controlOperator» :Enable on Brake Pressure > 0 Modulation Frequency «continuous» «optional » «continuous» Modulation Frequency {control} :Monitor Traction
Interacción • Los diagramas de secuencia muestran la representación de mensajes entre los bloques (interacción). • Son indénticos a los de UML pero más reducios ya que no se tiene contemplados los diagramas de tiempo, interacción global y comunicaciones de UML 2.0
Ejemplo D. Secuencia sd StartVehicleWhiteBox ecu:PowerControlUnit epc:ElectricalPowerController 1: StartVehicle 1.1: Enable 1.2:ready
Máquinas de Estado • Representan generalmente el ciclo de vida de un bloque. • Generalmente modelan los eventos ocurridos en el sistema (transición de estados): disparadores, guardianes, actuadores, etc. • Son los mismos que en UML 2.0
D. Casos de Uso • Describen la funcionalidad de un sistema • Se recomienda que vayan acompañados de una descripción formal del caso de uso • Son idénticos a UML.
Ejemplo D. Casos de Uso uc HSUV _ UseCases [ Operational Use Cases ] HybridSUV Flat _ Tire «extend» Accelerate Drive _ The _ Vehi «include» cle Driver «include» Steer «include» Park «include» Brake
Diagrama de Requerimientos • El estereotipo «requirement» representa un requerimiento basado en texto. • Este tipo de diagrama modela una jerarquía de requerimientos. • Este tipo de diagrama no está presente en UML 2.X pero se recomienda su uso para el desarrollo de Software.
Ejemplo D. Requerimientos req [ package ] HSUVRequirements [ HSUV Specification ] HSUVSpecification RefinedBy «useCase» HSUVUseCases :: Accelerate «requirement» «requirement» Eco - Friendliness Performance «requirement» Power «deriveReqt» «requirement» «requirement» «requirement» Braking FuelEconomy Acceleration «requirement» Emissions VerifiedBy SatisfiedBy Id = “R 1 . 2 . 1 ” «testCase» MaxAcceleration «block» PowerSubsystem text = “The vehicle shall meet Ultra - Low Emissions Vehicle standards . ”
Referencias • SysML, http://www.sysml.org/specs/Consultado en Julio de 2011