La ingeniería de sistemas en el siglo XXI 3 de Marzo de 2011 2011 2011 Atego. Atego. All All Rights Rights Reserved. Reserved. 1
Agenda 1. Bienvenida e introducción al webinar José Luis Fernández Sanchez, Incose Ambassador en España 2. Perfil corporativo de Atego Andrea Sanchez, Channel Manager de Atego 3. La ingeniería de sistemas en el siglo XXI Matthew Hause, Chief Consulting Engineer de Atego - Introducción a la ingeniería de sistemas - Ingeniería dirigida por modelos - El SysML (System Modeling Language) 4. Sesión de preguntas y respuestas 2
Perfil de Atego Fundada en 2010 Fusión entre Aonix y Artisan Software Tools Soluciones para el ciclo completo de desarrollo de sistemas embarcados, tiempo real, críticos y complejos Mercados de referencia: defensa, aeroespacial, aviónica, energía, transportes, automobilístico, telecomunicaciones, aplicaciones industriales, sistemas críticos (sistemas médicos, control de tráfico aéreo, etc) Sedes principales en San Diego, EEUU y Cheltenham, Reino Unido Oficinas directas en Francia, Alemania, Italia Red internacional de representantes y distribuidores Atos Origin en España 3
Soluciones de Atego Process Definition, Deployment and Management Requirements Interchange Java Modeling Co-Simulation Code Generation C / C++ IDE Ada Tool-Chain Collaboration and Hosting Professional Services (tool-dependent AND independent) 4
Introducción a la ingeniería de sistemas La ingeniería de sistemas es considerada frecuentemente como una disciplina emergente Aunque existe desde hace milenios... El término ingeniería de sistemas es muy común pero se presta a interpretaciones erróneas Lo mismo sucede con el concepto de ingeniero de sistemas Existe la necesidad de definir correctamente los conceptos pertenecientes al mundo de la ingeniería de sistemas 5
El manual de ingeniería de sistemas del INCOSE Manual de Mejores Prácticas para la ingeniería de sistemas Basado en ISO 15288 systems engineering systems life cycle processes Versiones previas basadas en EIA 632 Actualmente disponible en su versión 3.2 6
Definir la ingeniería de sistemas No hay una definición única para la ingeniería de sistemas Consultar las definiciones del manual de INCOSE Más otras definiciones adicionales La ingeniería de sistemas implica otras disciplinas Aplicable a todos los dominios No sólo a la ingeniería La ingeniería de sistemas se aplica al ciclo de vida completo de un sistema 7
Algunas definiciones Systems engineering is a discipline that concentrates on the design and application of the whole (system) as distinct from the parts. It involves looking at a problem in its entirety, taking into account all the facets and all the variables relating the social to the technical aspect (Ramo) La ingeniería de sistemas es una disciplina que se focaliza en el diseño y aplicación de un sistema en su totalidad, considerando ésta diferente a sus partes. Implica ver un problema en su totalidad, tomando en cuenta todas las facetas y todas las variables que relacionan el aspecto social al aspecto técnico (Ramo) 8
Otra definición Systems engineering is an iterative process of top-down synthesis, development and operation of a real-world system that satisfies, in a near optimal manner, the full range of requirements for the system (Eisner) La ingeniería de sistemas es un proceso iterativo descendente de síntesis, desarrollo y operación de un sistema del mundo real que satisface, en un modo casi óptimo, el conjunto completo de requisitos de un sistema (Eisner) 9
Y otras más.. Systems engineering is an inter-disciplinary approach and means to enable the realisation of successful systems (INCOSE) La ingeniería de sistemas es un enfoque interdisciplinario y se propone permitir la realización de sistemas... (INCOSE) Systems engineering is the implementation of common sense (Holt) La ingeniería de sistemas es la implementación del sentido común (Holt) 10
La necesidad de una ingeniería de sistemas Las cosas pueden ir mal muy facilmente... Todos sabemos de proyectos fracasados o cancelados Es esencial inspirar confianza En el propio equipo de trabajo En los clientes Es fundamental demostrar profesionalidad 11
La profesionalidad en la ingeniería de sistemas Las únicas noticias son buenas y malas Esencial para demostrar profesionalidad A nivel de la organización capacidad A nivel individual competencia Capacidad + competencia = confianza 12
Los tres males de la ingeniería Complejidad Subestimada o no suficientemente tomada en consideración Falta de comprensión De las necesidades, del problema y de la solución Problemas de comunicación En el proyecto, entre organizaciones y entre individuos Modelado con UML y SysML son remedios utilizados para combatir estos males 13
Ejemplo de complejidad Block 1 Block 1 Block 1 Block 2 Block 4 Block 2 Block 4 Block 2 Block 4 Block 3 Block 5 Block 3 Block 5 Block 3 Block 5 (a) (b) (c) 14
El brontosaurio de la complejidad 15
Problemáticas de la complejidad Las relaciones incrementan la complejidad En todos los niveles En cualquier momento del ciclo de vida El objetivo es la cola del brontosaurio Comenzar siempre por la cabeza Recorrido a través del cuerpo para llegar a la cola La complejidad alimenta otros males, y viceversa Es fundamental considerar todas estas problemáticas 16
El SysML (System Modeling Language) 2011 2011 Atego. Atego. All All Rights Rights Reserved. Reserved. 17
Ingeniería dirigida por modelos El cambio consiste en el pasaje de focalizado en documentos a focalizado en modelos Especificación de requisitos Definición de las interfaces Arquitectura del sistema Funcionalidades del sistema Análisis de alternativas (trade-off) Especificación de tests Enfoque anterior Nuevo enfoque 18
Los beneficios de la ingeniería de sistemas basada en modelos Mejora de comunicación a través del uso de un lenguaje visual estandardizado Contribuye a gestionar el desarrollo de sistemas complejos Separación de problemáticas Modelado jerárquico Desarrollo incremental Mejora en la calidad del diseño Menores errores y ambigüedad Representación más completa y consistente Verificación temprana y validación de actividades en curso para minimizar riesgos 19
Qué es SysML Es un lenguaje de modelado visual para ingenieros de sistemas, derivado de UML Soporta el análisis, la especificación, el diseño, la verificación y la validación de sistemas e incluye aspectos de hardware, software, datos, personal, procedimientos e instalaciones Es independiente del proceso y de la aplicación 20
Reuso de UML 2.0 por parte de SysML UML 2.0 SysML UML no requerido por SysML UML reutilizado por SysML Extensiones del SysML 21
Un lenguaje unificado de sistemas Requisitos de comportamiento Requisitos de performance Start Shift Accelerate Brake Control Input Power Equations Vehicle Dynamics Engine Transmission Drive Shafts Modelo de sistema Mass Properties Model Efficiency Model Safety Model Cost Model Componentes estructurales Otros modelos de análisis en ingeniería El modelo de sistema debe incluir distintos aspectos a considerar 22
Taxonomía de los diagramas de SysML Igual a UML Modificado de UML Nuevo de SysML Diagrama Diagrama de Estructura Diagrama de Requisitos Diagrama de Comportamiento Diagrama de Definición de Bloques[1] Diagrama de Bloques internos[2] Diagrama de Paquetes Diagrama de Actividad Diagrama de Máquinas de Estado Diagrama de Secuencia Diagrama de Caso de Uso Diagrama Paramétrico [1] Diagrama de clase de UML modificado [2] Diagrama de Estructura Compuesta de UML mejorado 23
Las cuatro vistas del SysML (Ejemplo del ABS) 1. Estructura bdd [Package] Vehicle [ABS] d1 m1 ibd [Block] Anti-Lock Controller1 c1:modulator interface act stmpreventlockup Tire [Traction] Detect Loss Of Traction Gripping 2. Comportamiento LossOfTraction/ interaction state machine Slipping TractionLoss Modulate Braking Force RegainTraction/ activity/ function definición uso par [constraint] StraightLineVehicleDynamics [Parametric Diagram] {f = (tf*bf)*(1-tl)} {F = ma} : AccelerationEquation tf f F c tl req [Package] Vehicle Specifications [Braking] Vehicle System Specification Braking Subsystem Specification 3. Requisitos bf a : DistanceEquation : VelocityEquation x v v {v = dx/dt} {a = dv/dt} a 4. Relaciones paramétricas 24 «derivereqt»
Como se combinan todos los elementos 1. Estructura 2. Comportamiento ibd [block] ibd [block] Anti-LockController satisfies satisfies [Internal [Internal Block Block Diagram] Diagram] «requirement» «requirement» Anti-Lock Anti-Lock Performance Performance ibd [block] Anti-LockController [Internal Block d1:tractiondetector Diagram] allocatedfrom allocatedfrom c1:modulator c1:modulator «activity»detectlos d1:traction Interface OfTraction Interface Of Detector c1:modulator interface m1:brakemodulator allocatedfrom Modulator allocatedfrom allocatedfrom allocatedfrom «ObjectNode» «ObjectNode» «activity»modulate «activity»modulate TractionLoss: TractionLoss: BrakingForce BrakingForce values DutyCycle: Percentage satisfy req req req [package] VehicleSpecifications [Requirements Diagram - - - Braking Requirements] act PreventLockup [Swimlane Diagram] «allocate» act PreventLockup :TractionDetector [Activity Diagram] DetectLossOf Traction TractionLoss: par [constraintblock] StraightLineVehicleDynamics [Parametric Diagram] v.chassis.tire. Friction: v.brake.abs.m1. DutyCycle: v.brake.rotor. BrakingForce: «allocate» :BrakeModulator Modulate BrakingForce allocatedto «connector»c1:modulatorinterface v.weight: Vehicle Vehicle System System Specification Specification Braking Braking Subsystem Specification Specification «requirement» «requirement» «requirement» «requirement» StoppingDistance Anti-LockPerformance StoppingDistance Anti-LockPerformance id= 102 id= 337" id= 102 text= The vehicle shall stop id= 337" text= Braking subsystem text= The from from 60 60 vehicle mph within shall 150 stop ft ft text= Braking shall prevent subsystem wheel lockup from on on a 60 a mph clean dry within dry surface. 150 ft shall under prevent all braking wheel conditions. lockup on a clean dry surface. under all braking conditions. VerifiedBy SatisfiedBy «interaction»minimumstopp «block»anti-lockcontroller ingdistance «derivereqt» 3. Requisitos «derivereqt» «derivereqt» par [constraintblock] StraightLineVehicleDynamics [Parametric Diagram] tf: tl: bf: m: tf: tl: bf: c :BrakingForce Equation :BrakingForce [f [f = (tf*bf)*(1-tl)] (tf*bf)*(1-tl)] Equation [f = (tf*bf)*(1-tl)] v: :DistanceEquation v: :DistanceEquation [v dx/dt] [v = dx/dt] :DistanceEquation [v = x: dx/dt] x: v.position: x: v.position: f: f: v: :Accelleration Equation :Accelleration [F [F = ma] Equation F: [F = ma] a: a: a: a: a: a: :VelocityEquation :VelocityEquation [a dv/dt] [a = dv/dt] :VelocityEquation v: [a = dv/dt] 4. Relaciones paramétricas F: F: v: v: 25
Atego Academic Resource Kit - SysML Programa académico de Atego Material para preparar cursos sobre SysML en la universidad Guía para el profesor Licencias de Artisan Studio Modelos de ejemplo Material adicional Para mayores informaciones: http://www.atego.com/community/university-program/university-program http://www.atego.com/downloads/arks/atego-academic-resource-kit-for- SysML.pdf 26
Discusión y comentarios Contactos: José Luis Fernández Sánchez: jose.fernandez@incose.org Matthew Hause: matthew.hause@atego.com Andrea Sánchez: andrea.sanchez@atego.com 27