La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

La utilización de UML para Modelizar Arquitecturas Complejas de sistemas de tiempo Real Traducción y agregados: Lic. DOMINGO F. DONADELLO UTN – FRBA –

Presentaciones similares


Presentación del tema: "La utilización de UML para Modelizar Arquitecturas Complejas de sistemas de tiempo Real Traducción y agregados: Lic. DOMINGO F. DONADELLO UTN – FRBA –"— Transcripción de la presentación:

1 La utilización de UML para Modelizar Arquitecturas Complejas de sistemas de tiempo Real Traducción y agregados: Lic. DOMINGO F. DONADELLO UTN – FRBA – DISEÑO DE SISTEMAS UNLM – CONSTRUCCION DE SISTEMAS II Fuente: Bran Selic - VP Advanced Technology – Object time Limited

2 Overview El Lenguaje (UML) Sistemas Complejos de Tiempo Real Requirimientos para modelizar arquitecturas de Sistemas Complejos de T.R. Aproximacion y metodo Construcciones para modelar la Arquitectura Resumen

3 Fuente: Bran Selic - VP Advanced Technology – Object time Limited El UML lenguaje unificado de modelización Un lenguaje OO de propósito general de modelización combina un número de probados metodos OMT (Rumbaugh) Booch OOSE (Jacobson) UML 0.9 1996 CatalysisROOMetc. UML 1.1 Nov. 1997 UML 1.4 Mar. 1999

4 Fuente: Bran Selic - VP Advanced Technology – Object time Limited Cual es el Standard UML? Metamodelo Semi-formal semántico que define los conceptos básicos de modelización objeto, clase, etc. »Incluye reglas bien formadas expresadas como Restricciónes formales en el Object Restricción Language (OCL) notación gráfica para modelización de conceptos »8 tipos de diagramas diferentes Dos dominios de extensión predefinidos

5 Fuente: Bran Selic - VP Advanced Technology – Object time Limited El UML metamodelo–ejemplo ElementoGeneralizable isRoot:Boolean isLeaf:Boolean isAbstract:Boolean Clasificación Construcción visibility:{public, protected, private} clase isActive:Boolean * not self.isAbstract implies self.allOperations->forAll(op | self.allMethods->exists(m | m.specification includes (op))) (Meta)clase Generalización asociación Composicion asociación OCL Restricción

6 Fuente: Bran Selic - VP Advanced Technology – Object time Limited El UML lenguaje unificado de modelización UML) Sistemas complejos de Tiempo Real Requerimientos para modelización de arquitecturas complejas de sistemas de TR Requerimientos para modelización Aproximación y método Construcciones de modelización de Arquitectura Resumen Overview

7 Fuente: Bran Selic - VP Advanced Technology – Object time Limited Sistemas Generales de Tiempo Real Un sistema que mantiene una continua interacción con su entorno basada en el tiempo entorno inputsoutputs Sistema de Tiempo Real (estado) outputs = f (inputs, estado)

8 Fuente: Bran Selic - VP Advanced Technology – Object time Limited Sistemas complejos de Tiempo Real Sistemas complejos de Tiempo Real caracterizado por: »extrema dependencia (confiabilidad, disponibilidad) »diversa y rica funcionalidad »continuo upgrade (requerimientos evolutivos) »Distribución física Muy utilizados en telecomunicaciones, defensa, aeroespacio, y control industrial

9 Fuente: Bran Selic - VP Advanced Technology – Object time Limited modelización de requerimientos para sistemas complejos de TR Esta complejidad requiere focalizar la modelización para soportar las siguientes areas: »Modelización de la arquitectura »modelización de tiempo y performance »Modelos de comunicación tiempo-aware »Administrador de Concurrencia »modelización de Recursos »modelización de sistemas Distribuidos »Técnicas de tolerancia a las fallas

10 Fuente: Bran Selic - VP Advanced Technology – Object time Limited El UML lenguaje unificado de modelización (UML) Sistemas complejos de Tiempo Real Requerimientos para modelización de arquitecturas complejas de sistemas de TR Requerimientos para modelización Aproximación y método Construcciones de modelización de Arquitectura Resumen Overview

11 Fuente: Bran Selic - VP Advanced Technology – Object time Limited Arquitecturas de Software de Tiempo Real arquitectura: La organización de componentes de software significtivos interactuando a través de interfaces, estos componentes se componen de sucesivos pequeños componentes e interfaces Es la clave del éxito en: »Construcción inicial del sistema »Evolución del sistema

12 Fuente: Bran Selic - VP Advanced Technology – Object time Limited arquitecturas y Evolución Dos arquitecturas iniciales equivalentes: A CB Mediator X A CB X A CB Mediador

13 Fuente: Bran Selic - VP Advanced Technology – Object time Limited Especificaciones de arquitectura de Tiempo Real Ejemplo: arquitectura de un sistema de telecomunicaciones comportamiento nivel Servicios nivel Aplicación TerminalATerminalB Canal1 Canal2 Estructura

14 Fuente: Bran Selic - VP Advanced Technology – Object time Limited Diseño de arquitectura de Componentes sistema2sistema1 Librería TerminalATerminalB Canal1 Canal2 TerminalA Terminal Tester Terminal Canal Terminal Tester

15 Fuente: Bran Selic - VP Advanced Technology – Object time Limited Refinando arquitecturas (Reuso) Canal2 TerminalATerminalB canal1 TerminalATerminalB Canal1

16 Fuente: Bran Selic - VP Advanced Technology – Object time Limited Resumen: requerimientos para modelización de la arquitectura La habilidad de modelar y forzar: »Gran granularidad (arquitectura) de componentes y sus interfaces »Composicion estructural de los componentes de la arquitectura »Patrones dinámicos de la interacción entre los componentes de la arquitectura »Refinamiento de arquitecturas

17 Fuente: Bran Selic - VP Advanced Technology – Object time Limited El UML lenguaje unificado de modelización (UML) Sistemas complejos de Tiempo Real Requerimientos para modelización de arquitecturas complejas de sistemas de TR Requerimientos para modelización Aproximación y método Construcciones de modelización de Arquitectura Resumen Overview

18 Fuente: Bran Selic - VP Advanced Technology – Object time Limited Requerimientos para modelización Aproximación y método La arquitectura necesaria para capacidades de modelización puede ser encontrada en ROOM Expresar los conceptos de modelización de la arquitectura usando el estandar UML ROOM Biblioteca de Dominio específico UML “macros” UML Conceptos de modelización modelización Tiempo-Real Biblioteca (UML-RT) Modelización del Negocio Biblioteca...

19 Fuente: Bran Selic - VP Advanced Technology – Object time Limited UML Mecanismos de extensibilidad Estereotipos, Restricciónes, tagged valores Cápsula not self.isAbstract implies self.allOperations->forAll(op | self.allMethods->exists(m | m.specification includes (op))) clase isActive:Boolean estereotipo Tag requerido Restricción (OCL)

20 Fuente: Bran Selic - VP Advanced Technology – Object time Limited Modelización de Tiempo Real Object-Oriented (ROOM) Conceptos de Dominio específico (tiempo real) conceptos »Estructuras de alto nivel dinámicas »Comportamiento reactivo (ROOM charts) Modelos ejecutables (formal) Generación automática de código (full) Aprobado en el campo de aplicaciones con un gran número de proyectos en gran escala en el campo industrial (>100) Herramienta disponible (Objectiempo Limited and Rational Software)

21 Fuente: Bran Selic - VP Advanced Technology – Object time Limited Fases Capacidades básicas de modelización (UML 1.1) »Patrones estructurales de modelización »(diagramas de colaboración) »Modelización de máquinas de estado »Construcciones específicas de Tiempo Real »Modelización de arquitectura (Marzo ‘98) »Otras construcciones (-Junio ‘99) »Colaboracion: Objectiempo & Rational Estandarización OMG (1999/2000) »Análisis y diseño WG RT

22 Fuente: Bran Selic - VP Advanced Technology – Object time Limited El UML lenguaje unificado de modelización (UML) Sistemas complejos de Tiempo Real Requerimientos para modelización de arquitecturas complejas de sistemas de TR Requerimientos para modelización Aproximación y método Construcciones de modelización de Arquitectura Resumen Overview

23 Fuente: Bran Selic - VP Advanced Technology – Object time Limited Cápsulas: arquitectura de Objetos Objetos Activos Encapsulación shell Ports

24 Fuente: Bran Selic - VP Advanced Technology – Object time Limited Cápsulas: Comportamiento Máquinas de estado jerárquicas opcionales (manejador de señales con semántica run- to-completion) S1 S2S3 S1 S2 S1 transitionS1toS2: {int x; x = 0; p2.send(s1); p3.send(s2); … };

25 Fuente: Bran Selic - VP Advanced Technology – Object time Limited Cápsulas: UML modelización Concepto de Etereotipo de clase («Cápsula») con semántica especializada (ejecutable) representacion: diagrama de clase «Cápsula» CápsulaClaseX #counter : int #x : char +portB : ProtocoloA::master #portC : ProtocoloB ports

26 Fuente: Bran Selic - VP Advanced Technology – Object time Limited Protocolos: Patrones contractuales de comportamiento Contratos de Interacción entre Cápsulas »e.j., llamada asistida por operador Llamada respuesta tiempo número Llamada respuesta habla transferencia LLamadorOperadorLlamado

27 Fuente: Bran Selic - VP Advanced Technology – Object time Limited Llamada asistida por operador AliciaCharlieRoberto LLamadorLlamado Operador inicial conectado conectando Protocolo maquina de estado LLamadorOperador Llamado Secuencias significativas Especificaciones de Protocolo Una forma especial de colaboración Juan

28 Fuente: Bran Selic - VP Advanced Technology – Object time Limited Protocolo de roles Especifica una parte en un Protocolo señalorigen LlamadaLLamador númeroLLamador respuestaLlamado señales entrantes señaldestino LlamadaLlamado transferenciaLLamador respuestaLLamador señales salientes OperadorRol LLamadorOperador Llamado Secuencias significativas inicial conectado conectando rol máquina de estado

29 Fuente: Bran Selic - VP Advanced Technology – Object time Limited Protocolo Refinamiento Uso de Herencia señalorigen LlamadaLLamador númeroLLamador respuestaLlamado señales entrantes señaldestino LlamadaLlamado transferenciaLLamador respuestaLLamador señales salientes Operadorrol señalorigen LlamadaLLamador númeroLLamador respuestaLlamado señales entrantes señaldestino LlamadaLlamado transferenciaLLamador respuestaLLamador señales salientes extendido Operadorrol queryLLamadorreplyLLamador

30 Fuente: Bran Selic - VP Advanced Technology – Object time Limited Protocolos: UML modelización Estereotipo Colaboración : «Protocolo» Estereotipo Rol Clasificador: «Protocolo Rol» «Protocolo» Llamada asistida por operador «Protocolorol» LLamador respuesta transferencia entrante Llamada número habla saliente «Protocolorol» Llamado «Protocolorol» Operador 1 11

31 Fuente: Bran Selic - VP Advanced Technology – Object time Limited Ports: Objetos de contorno Implementación en cápsulas totalmente aisladas de su entorno (en ambas direcciones) entorno Cápsula S1 S2 Creada y destruida sólo con su propia Cápsula

32 Fuente: Bran Selic - VP Advanced Technology – Object time Limited Ports y Protocolos Cada port realiza un rol de Protocolo simple (type) »Múltiples ports con el mismo tipo en lo posible «Cápsula» CápsulaClassX +portA : ProtocoloA::master #portB : ProtocoloB +portC : ProtocoloB~ ports

33 Fuente: Bran Selic - VP Advanced Technology – Object time Limited Ports: Notación de diagrama de colaboración Notación abreviada para instancias de Cápsula Forma iconificada «Cápsula» anX:CápsulaClassX portA : ProtocoloA::master portC : ProtocoloB~ «port» portA:ProtocoloA::master 1

34 Fuente: Bran Selic - VP Advanced Technology – Object time Limited Combinando Cápsulas Usando conectores conectores como modelo de canales de comunicación Cada conector soporta un Protocolo simple Se aplican reglas de tipo estáticas (Protocolos compatibles) Modelado como asociación de clases en UML «Cápsula» enviador: Fax remoto : FaxProt «Cápsula» receptor : Fax remoto : FaxProt conector

35 Fuente: Bran Selic - VP Advanced Technology – Object time Limited Faxllamada «Cápsula» enviador:Fax remoto:FaxProt c : Control «Cápsula» receptor:Fax remoto:FaxProt c : Control receiveCtrl : ControlsendCtrl : Control Relay port composición: Patrones estructurales como Componentes dinámicos (reusables) La composición es también una clase objeto

36 Fuente: Bran Selic - VP Advanced Technology – Object time Limited Semántica de Cápsula de composición Mecanismo de afirmación de la arquitectura: los elementos estáticos de la estructura interna de una cápsula compuesta son automáticamente llamados, creados y destruidos sólo en la cápsula Aplica recursivamente hacia abajo al interior de las hojas del árbol Nivel Cápsula: Sólo pueden ser instanciadas estructuras de arquitectura previstas »Esto también reduce significativamente la complejidad del modelo puesto que todo el código usado para establecer esas estructuras es eliminado

37 Fuente: Bran Selic - VP Advanced Technology – Object time Limited «Cápsula» enviador:Fax c : Control «Cápsula» receptor:Fax c : Control End Ports: Where Structure and Behavior Meet Ports directamente conectado con la máquina de estado receiveCtrl : Control~senderCtrl : Control~ c : sistemaControl inicial conectado conectando Cápsula máquina de estado Public End Port implementación End Port

38 Fuente: Bran Selic - VP Advanced Technology – Object time Limited Decomposición: vista de diagrama de clase Representación alternativa Más abstracta «Cápsula» Fax «Cápsula» Faxllamada 1receptor 1 sender

39 Fuente: Bran Selic - VP Advanced Technology – Object time Limited El UML lenguaje unificado de modelización (UML) Sistemas complejos de Tiempo Real Requerimientos para modelización de arquitecturas complejas de sistemas de TR Requerimientos para modelización Aproximación y método Construcciones de modelización de Arquitectura Resumen Overview

40 Fuente: Bran Selic - VP Advanced Technology – Object time Limited Resumen (1) El fenómeno de los Sistemas complejos de Tiempo Real requieren de soporte de modelización especializado El lenguaje ROOM ha sido probado en la industria para modelizar complas arquitecturas de Tiempo Real El beneficio de juntar ROOM con UML permite ganar en expresar las construcciones ROOM como estereotipos de UML. »UML-RT : es una extensión a UML para el complejo dominio de Tiempo Real

41 Fuente: Bran Selic - VP Advanced Technology – Object time Limited Resumen (2) Sólo cuatro estereotipos son suficientes (incluyendo definición formal de restricciones que aseguren consistencia y ejecutabilidad) estereotipoUML Metaclase «Protocolo»Colaboración «Protocolorol»Classifierrol«port»clase«Cápsula»clase  Complementado por una notación opcional de customización

42 Fuente: Bran Selic - VP Advanced Technology – Object time Limited Bibliography Tiempo Real modelización de arquitectura whitepaper by B. Selic and J. Rumbaugh: »http://www.objectime.com OMG’s UML 1.1 standard »http://www.rational.com ROOM »B. Selic, G. Gullekson, and P. Ward, “Real Time Object-Oriented modelization”, »John Wiley & Sons, NY, 1994.


Descargar ppt "La utilización de UML para Modelizar Arquitecturas Complejas de sistemas de tiempo Real Traducción y agregados: Lic. DOMINGO F. DONADELLO UTN – FRBA –"

Presentaciones similares


Anuncios Google