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

Slides:



Advertisements
Presentaciones similares
MODELOS ORIENTADOS A OBJETOS
Advertisements

U.M.L A/Gx. Diego Gutiérrez Application Analysis and Design.
Lenguaje Unificado de Modelado
TECNICATURA UNIVERSITARIA EN INFORMATICA
Tomado de:
UML 1.4 Peter Emerson Pinchao Solis.
Arquitectura de software dirigida por modelos (Model-Driven Architecture) Liliana Favre UNCPBA 2006.
Metodologías OMT Republica bolivariana de Venezuela
Fundamentos de Ingeniería de Software
Aplicación de diseño de clases y generación de código, orientado hacia la arquitectura multicapas y el mapeo objeto/relacional Juan Timoteo Ponce Ortiz.
UML.
INTRODUCCIÓN A UML Oscar Miguel Alonso Moreno.
Ingeniería del Software
DIAGRAMAS DE CLASES Completando los diagramas de interacción, es posible identificar la especificación de las clases que participarán en la solución indicando.
Análisis y Diseño O.O. Click to add notes Preguntas del diseño :
Aspectos Avanzados de la Tecnología de Objetos
DIAGRAMA DE COMPONENTES INTEGRANTES Córdova Vásquez Giovanny Escobar Alvares Calixto Gomez Quinteros Adelaida Pinto Flores Yarmila.
El paradigma de la orientación a objetos La programación orientada a objetos genera códigos eficientes y estandariza la metodología de programación, además.
Unified Modeling Language (Lenguaje de Modelamiento unificado)
Análisis y Diseño orientado a objetos con UML.
Profesor: Miguel Angel Vidal
Ingeniería de Software Orientada a Objetos
DEPARTAMENTO DE INGENIERÍA INFORMÁTICA
Algunas Herramientas de Apoyo al Diseño de Software Agustín J. González ELO329: Diseño y programación orientados a objetos.
Modelado Arquitectónico
UML – Lenguaje de Modelado Unificado
Lenguaje de Modelado Unificado Unified Modeling Languaje
(c) P. Gomez-Gil, INAOE DISEÑO DE COMPONENTES DE SOFTWARE * NOTAS DEL CURSO Ingeniería de Software I DRA. MARIA DEL PILAR GÓMEZ GIL INAOEP.
* FRAUSTO JIMENEZ GABRIELA * * HERNANDEZ TORRES ANA LAURA * * MANDUJANO JUAN CARLOS * * NOVA MARIN YARELI PAULINA * * ZAVALA CORTE JOCELYN ARELI *
ING. PERCY OQUENDO CARREÑO PROCESO UNIFICADO DE DESARROLLO DE SOFTWARE.
Ingeniería de Software

Ingeniería de Software Orientado a Objetos
DISEÑO DE SOFTWARE 1ª. Parte
Fundamentos de programación
Poder Expresivo de UML 2.0 para especificar arquitecturas de Software
METODOLOGÍA OMT Diseño de sistemas.
Introducción al modelado Unificado
UML 2.0 Integrantes: Diana Carolina Valencia M. Jhon Fernando Lopez T. Carlos Alberto Castillo.
Universidad Central de Venezuela Facultad de Ciencias Postgrado en Ciencias de la Computación Sistemas Distribuidos Albany Márquez.
Arquitectura de software dirigida por modelos (Model-Driven Architecture) Liliana Favre UNCPBA2006.
Ingeniería de software
Algunas Herramientas de Apoyo al Diseño de Software Agustín J. González ELO329: Diseño y programación orientados a objetos.
UML Carlos Becerra C. ¿Qué es orientación a objetos? Conceptos de OO  Objetos, características de los objetos, clases e instancias,
Introducción a UML DIAGRAMA DE CLASES Departamento de Informática
Subsecretaría de Educación Superior Dirección General de Educación Superior Tecnológica INSTITUTO TECNOLÓGICO DE SALINA CRUZ TEMA: herramientas de programación.
ANÁLISIS Y DISEÑO DE SISTEMAS II
La Universidad de Guayaquil Carrera de Ingeniería en Sistemas.
Clasificación de Diagramas
Introducción a UML Departamento de Informática Universidad de Rancagua
Conceptos Fundamentales
Ingeniería de Requisitos
Taller de Sistemas de Programas Clase 6 Dpto. de Computación y T.I.
UML.
Relación con otras asignaturas del plan de estudio
(Lenguaje Unificado de Modelado)
Prof. Joel Moreno Molina
Unified Modeling Language (Lenguaje de Modelamiento unificado)
Técnica: es un procedimiento o conjunto de procedimientos, (reglas normas o protocolos), que tienen como objetivo obtener un resultado determinado, ya.
Análisis y Diseño de Aplicaciones 3º Educación Media Tecnológica
Introducción AOO. Contenido - Introducción - Repaso de Orientación a Objetos - UML - Casos de Uso.
MODELAMIENTO VISUAL Y UML
Presentación De UML Lenguaje estándar para escribir planos de software Se usa para visualizar, especificar, construir y documentar los artefactos de un.
Modelado UML Diagrama de Clases
CURSO:PRACTICA INTEGRAL III ALUMNO: RARÁZ TINOCO, JORGE LUIS PROFESOR:DAVILA, JUAN CICLO:II CICLO.
VERIFICACIÓN Y VALIDACIÓN DE SISTEMAS 3.10 Fase de manejo de requerimientos 4.1 Modelado de pruebas en UML Ponente: ing. Alejandro tapia vazquez.
 Tipo de diagrama estático que describe la estructura de un sistema mostrando sus clases, interfaces, relaciones y colaboraciones.  Se utiliza durante.
Universidad Nacional de Ingeniería Comprendiendo los Fundamentos de
Estructura de Datos Departamento de Programación Universidad Metropolitana Contenido: UML. Envío de mensajes. Relaciones. Asociación. Agregación o composición.
Arquitectura de software dirigida por modelos (Model-Driven Architecture) Liliana Favre UNCPBA2006.
Transcripción de la presentación:

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

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

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 CatalysisROOMetc. UML 1.1 Nov UML 1.4 Mar. 1999

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

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

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

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)

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

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

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

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

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

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

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

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

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

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

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...

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)

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)

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

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

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

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); … };

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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