Documente Academic
Documente Profesional
Documente Cultură
Puede hacerlo una sola persona Requiere: Modelado mnimo Proceso simple Herramientas simples
Construccin de un rascacielos
Construida eficientemente y en un tiempo razonable por un equipo Requiere: Modelado Proceso bien definido Herramientas ms sofisticadas
Extrada desde la presentacin Software Architecture and UML de Grady Booch Extrada desde la presentacin Software Architecture and UML de Grady Booch
Claves en Desarrollo de SI
Notacin
envo
Herramientas
Proceso
Figura Triangle for Success adaptada desde Visual Modeling with Rational Rose and UML de Terry Quatrani
Qu es UML?
UML = Unified Modeling Language Un lenguaje de propsito general para el modelado orientado a objetos Documento OMG Unified Modeling Language Specification
Mltiples Sistemas
UML combina notaciones provenientes desde: Modelado Orientado a Objetos Modelado de Datos Modelado de Componentes Modelado de Flujos de Trabajo (Workflows) UML es el lenguaje Standard para visualizacin, especificacin, construccin, y documentacin de los elementos de un sistema software intensivo Puede ser utilizado a travs de todo el ciclo de vida de desarrollo
Componentes Reutilizados
Promover la Reutilizacin
Situacin de Partida
Diversos mtodos y tcnicas OO, con muchos aspectos en comn pero utilizando distintas notaciones Inconvenientes para el aprendizaje, aplicacin, construccin y uso de herramientas, etc. Pugna entre distintos enfoques (y correspondientes gurs) Establecer una notacin estndar
Historia de UML
Comenz como el Mtodo Unificado, con la participacin de Grady Booch y Jim Rumbaugh. Se present en el OOPSLA95 El mismo ao se uni Ivar Jacobson. Los Tres Amigos son socios en la compaa Rational Software. Herramienta CASE Rational Rose
Historia de UML
2007 2003 2001 1999 1998 Nov 97
UML aprobado por el OMG
UML 1.2
Entradas a UML
Meyer
Before and after conditions
Harel
Statecharts
Diagramas de UML
Los diagramas expresan grficamente partes de un modelo
Use Case Use Case Diagramas de Diagrams Diagrams Secuencia Scenario Scenario Diagramas de Diagrams Diagrams Colaboracin Scenario Scenario Diagramas de Diagrams Diagrams Estados Use Case Use Case Diagramas de Diagrams Diagrams Casos de Uso State State Diagramas de Diagrams Diagrams Clases State State Diagramas de Diagrams Diagrams Objetos State State Diagramas de Diagrams Diagrams Componentes
Component Component Diagrams Diagramas Diagrams de
Gamma, et al
Frameworks and patterns,
Booch
Booch method
HP Fusion
Operation descriptions and message numbering
Rumbaugh
OMT
Embley
Singleton classes and high-level view
Jacobson
OOSE
Wirfs-Brock
Responsibilities
Modelos
Shlaer - Mellor
Object lifecycles
Odell
Classification
Diagramas de Actividad
Distribucin
Aspectos Novedosos
Definicin semi-formal del Metamodelo de UML Mecanismos de Extensin en UML: Stereotypes Constraints Tagged Values Permiten adaptar los elementos de modelado, asignndoles una semntica particular
Inconvenientes en UML
Definicin del proceso de desarrollo usando UML. UML no es una metodologa Falta integracin con respecto de otras tcnicas tales como patrones de diseo, interfaces de usuario, documentacin, etc. Ejemplos aislados Monopolio de conceptos, tcnicas y mtodos en torno a UML
Perspectivas de UML
UML ser el lenguaje de modelado orientado a objetos estndar predominante los prximos aos Razones: Participacin de metodlogos influyentes Participacin de importantes empresas Aceptacin del OMG como notacin estndar Evidencias: Herramientas que proveen la notacin UML Edicin de libros Congresos, cursos, camisetas, etc.
Modelos y Diagramas
Modelos y Diagramas
Un proceso de desarrollo de software debe ofrecer un conjunto de modelos que permitan expresar el producto desde cada una de las perspectivas de inters El cdigo fuente del sistema es el modelo ms detallado del sistema (y adems es ejecutable). Sin embargo, se requieren otros modelos ...
Un modelo captura una vista de un sistema del mundo real. Es una abstraccin de dicho sistema, considerando un cierto propsito. As, el modelo describe completamente aquellos aspectos del sistema que son relevantes al propsito del modelo, y a un apropiado nivel de detalle.
Diagrama: una representacin grfica de una coleccin de elementos de modelado, a menudo dibujada como un grafo con vrtices conectados por arcos
Cada modelo es completo desde su punto de vista del sistema, sin embargo, existen relaciones de trazabilidad entre los diferentes modelos
Diagramas de UML
Diagrama de Casos de Uso Diagrama de Clases Diagrama de Objetos Diagramas de Comportamiento Diagrama de Estados Diagrama de Actividad Diagramas de Interaccin Diagrama de Secuencia Diagrama de Colaboracin Diagramas de implementacin Diagrama de Componentes Diagrama de Despliegue
Organizacin de Modelos
4+1 vistas de Kruchten (1995)
Vista de Realizacin
Vista de Distribucin
Organizacin de Modelos
Propuesta de Rational Unified Process (RUP)
UML 2.0
Unified Modeling Language (UML) specification, version 2.1.1, is available. There are two specifications that comprise the UML 2.1.1 specification: Superstructure and Infrastructure. There are also two specifications that relate to the UML2 specification (Diagram Interchange and Object Constraint Language).
M. de Casos de Uso del Negocio (Business Use-Case Model) M. de Objetos del Negocio (Business Object Model) M. de Casos de Uso (Use-Case Model) M. de Anlisis (Analysis Model) M. de Diseo (Design Model) M. de Despliegue (Deployment Model) M. de Datos (Data Model) M. de Implementacin (Implementation Model) M. de Pruebas (Test Model)
Diagrama de Componentes
Media
Representa la estructura interna de un clasificador (tal como una clase, un componente o un caso de uso), incluyendo los puntos de interaccin de clasificador con otras partes del sistema.
Baja
Un diagrama de despliegue fsico muestra cmo y dnde se desplegar el sistema. Las mquinas fsicas y los procesadores se representan como nodos y la construccin interna puede ser representada por nodos o artefactos embebidos. Como los artefactos se ubican en los nodos para modelar el despliegue del sistema, la ubicacin es guiada por el uso de las especificaciones de despliegue.
Baja
Diagrama de Objetos
Un diagrama que presenta los objetos y sus relaciones en un punto del tiempo. Un diagrama de objetos se puede considerar como un caso especial de un diagrama de clases o un diagrama de comunicaciones. Un diagrama que presenta cmo se organizan los elementos de modelado en paquetes y las dependencias entre ellos, incluyendo importaciones y extensiones de paquetes.
Baja
Baja
Diagrama de Paquetes
Baja
Diagrama de Secuencias
Alta
Diagrama de Tiempos
Baja
Diagrama de Componentes
Media
Representa la estructura interna de un clasificador (tal como una clase, un componente o un caso de uso), incluyendo los puntos de interaccin de clasificador con otras partes del sistema.
Baja