LENGUAJE DE MODELAMIENTO UNIFICADO
UML es un lenguaje estándar para escribir planos de software
UML puede utilizarse para visualizar, especificar, construir y documentar los artefactos de un sistema.
UML es solo un lenguaje y por lo tanto es solo una parte de un método de desarrollo de software.
UML es independiente de un proceso, aunque para utilizarlo óptimamente se debería usar en un proceso que fuese dirigido por los casos de uso, centrado en la arquitectura, iterativo e incremental.
LENGUAJE DE MODELAMIENTO UNIFICADO
UML cubre la documentación de la arquitectura de un sistema y todos sus detalles.
UML también proporciona un lenguaje para expresar requisitos y pruebas.
UML proporciona un lenguaje para modelar actividades de planificación de proyectos y gestión de versiones.
UML se ha utilizado en: Sistemas de Información de Empresa, Bancos y Servicios Financieros, Telecomunicaciones, Transporte, Defensa, Industria Aeroespacial, Comercio, Electrónica Medica, Ámbito Científico, Servicios Distribuidos Basados en la WEB.
LENGUAJE DE MODELAMIENTO UNIFICADO
Para comprender UML se necesita adquirir un modelo conceptual del lenguaje.
Esto requiere aprender tres elementos principales: los bloques básicos de construcción, las vistas de la arquitectura y el ciclo de vida de desarrollo del software, que se aplican a través de UML.
Una vez comprendidas esta ideas, se pueden leer modelos UML y crear algunos modelos básicos hasta ganar mas experiencia y poder utilizar otras características mas avanzadas del lenguaje.
LENGUAJE DE MODELAMIENTO UNIFICADO (BLOQUES DE CONSTRUCCION)
El vocabulario UML incluye tres clases de bloques de construcción: Elementos • • • •
Relaciones • • • •
Elementos Estructurales Elementos de Comportamiento Elementos de Agrupación Elementos de Anotación Relaciones de Dependencia Relaciones de Asociación Relaciones de Generalización Relaciones de Realización
Diagramas
LENGUAJE DE MODELAMIENTO UNIFICADO (ARQUITECTURA)
La visualización, especificación, construcción y documentación de un sistema requiere que el sistema sea visto desde varias perspectivas.
Diferentes usuarios y/o desarrolladores siguen diferentes agendas en relación al proyecto y cada uno mira a ese sistema de formas diferentes en diversos momentos a lo largo de la vida del proyecto.
La arquitectura de un sistema es quizás el artefacto mas importante que puede emplearse para manejar estos diferentes puntos de vista y controlar el desarrollo iterativo e incremental de un sistema a lo largo de su ciclo de vida.
LENGUAJE DE MODELAMIENTO UNIFICADO (ARQUITECTURA)
La arquitectura de un sistema puede describirse mejor a través de cinco vistas interrelacionadas. Cada vista es una proyección de la organización y la estructura del sistema centrada en un aspecto particular de ese sistema.
LENGUAJE DE MODELAMIENTO UNIFICADO (ARQUITECTURA)
Vista de Casos de Uso
Comprende los casos de uso que describen el comportamiento del sistema tal y como es percibido por los usuarios finales, analistas y encargados de pruebas. Con UML los aspectos estáticos de esta vista se capturan en los diagramas de casos de uso; los aspectos dinámicos de esta vista se capturan en los diagramas de interacción, diagramas de estados y diagramas de actividades.
Vista de Diseño
Comprende las clases, interfaces y colaboraciones que forman el vocabulario del problema y su solución. Con UML los aspectos estáticos de esta vista se capturan en los diagramas de clases y de objetos, los aspectos dinámicos se capturan en los diagramas de interacción, diagramas de estados y diagramas de actividades.
LENGUAJE DE MODELAMIENTO UNIFICADO (ARQUITECTURA)
Vista de Procesos
Comprende los hilos y procesos que forman los mecanismos de sincronización y concurrencia del sistema. Con UML los aspectos estáticos de esta vista se capturan con el mismo tipo de diagramas que la vista de diseño pero con énfasis en las clases activas que representan estos hilos y procesos.
Vista de Implementación
Comprende los componentes y archivos que utilizan para ensamblar y hacer disponible el sistema físico. Con UML los aspectos estáticos de esta vista se capturan en los diagramas de componentes y los aspectos dinámicos se capturan en los diagramas de interacción, diagramas de estados y diagramas de actividades.
LENGUAJE DE MODELAMIENTO UNIFICADO (ARQUITECTURA)
Vista de despliegue
Contiene los nodos que forman la topología de hardware sobre la que se ejecuta el sistema. Con UML los aspectos estáticos de esta vista se capturan en los diagramas de despliegue; los aspectos dinámicos de esta vista se capturan en los diagramas de interacción, diagramas de estados y diagramas de actividades.
Cada una de estas vistas puede existir por si misma, de forma que diferentes usuarios pueden centrarse en las cuestiones de la arquitectura del sistema que mas les interesen. Estas cinco vistas también pueden interactuar entre si.
LENGUAJE DE MODELAMIENTO UNIFICADO (PUD Y UML)
Modelado del Negocio
Construir el Modelo del Negocio (Diagrama de Componentes)
Requisitos
Elaborar lista de Requerimientos con la siguiente tabla:
No.
Requisito
Descripción
Estado
Coste
Prioridad
Riesgo
La lista de valores son: • • •
Estado = Aprobado, Propuesto, Incluido o Validado Costo = Coste estimado de implementación en términos días/persona Prioridad = Indica la necesidad de contar con este requisito en el sistema; puede ser: critico, importante o secundario. • Riesgo = Es el nivel de riesgo asociado a la implementación del requisito; puede ser: critico, significativo u ordinario
LENGUAJE DE MODELAMIENTO UNIFICADO (PUD Y UML)
Requisitos
Elaborar el Modelo del Dominio (Diagrama de Clases Preliminar) Realizar la captura de requisitos como casos de uso. Utilizar la siguiente tabla: Caso de Uso:
Nombre del Caso de Uso
Actores:
Lista de Actores Participantes
Propósito:
Intención del caso de Uso
Resumen:
Descripción del caso de uso
Tipo:
Primario, secundario, opcional
Referencia:
Casos de uso relacionados (Lista Requisitos)
Elaborar el Modelo de Casos de Uso (Diagrama de Casos de Uso genérico)
LENGUAJE DE MODELAMIENTO UNIFICADO (PUD Y UML)
Análisis
Construir Modelo de Análisis (Diagrama de Componentes) Realizar cada “componente” (Diagrama de Casos de Uso) Especificar cada “caso de uso”. Usar tabla siguiente:
Caso de Uso:
Nombre caso de uso
Actor:
Lista de actores
Activación:
Descripción de la forma de activación
Propósito:
Descripción del propósito
Precondiciones:
Descripción condiciones previas
Flujo principal de eventos de actor Descripción de los flujos principales Flujo principal de eventos sistema Descripción de los flujos principales Variaciones – Extensiones
Descripcion variaciones/extensiones
Excepciones
Descripciones excepciones
LENGUAJE DE MODELAMIENTO UNIFICADO (PUD Y UML)
Análisis
Elaborar Modelo de Casos de Uso del Análisis Realizar cada “caso de uso” (Diagramas de colaboración) Elaborar el Modelo de Dominio (Diagrama de Clases del Análisis)
Diseño
Elaborar Modelo de Diseño (Diagrama de Componentes) Elaborar Modelo de Despliegue (Diagrama de Despliegue) Elaborar Modelo de Procesos (Realizar cada caso de uso del análisis usando diagramas de secuencia. Diagrama de Estados. Diagrama de Actividad.) Elaborar el Modelo de Dominio (Diagrama de Clases del Diseño) Elaborar Diseño Físico y Lógico de la B.D. (Mapeo, Tablas) Elaborar Diseño de Interfases.
LENGUAJE DE MODELAMIENTO UNIFICADO (PUD Y UML)
Implementación
Pruebas
Elaborar Modelo de Implementación (Diagrama de Componentes, Diagrama de Despliegue)
Elaborar Modelo de Pruebas (Diagramas de casos de uso)
Despliegue
Elaborar Modelo de Despliegue (Diagrama de despliegue final)