Curso uml-clase-01-1211931122395265-9

1,795 views

Published on

2 Comments
1 Like
Statistics
Notes
No Downloads
Views
Total views
1,795
On SlideShare
0
From Embeds
0
Number of Embeds
3
Actions
Shares
0
Downloads
60
Comments
2
Likes
1
Embeds 0
No embeds

No notes for slide
  • Se reconoce que el método Booch es mejor para el análisis y que OMT es mejor para el Diseño. GE: General Electric, donde Rumbaugh desarrolló OMT. OOSE: Object Oriented Software Engineering Objectory , la empresa de Jacobson, era parte del grupo Ericsson. Se les conoce como “Los tres amigos”, pues pese a traabajar juntos y presentar juntos los distintos productos (UML, RUP y Rose) frecuentemente discutían acerca de sus preferencias personales respecto de orientación a objeto.
  • Curso uml-clase-01-1211931122395265-9

    1. 1. “Lenguaje de Modelamiento Unificado” Clase 01 Curso: “Lenguaje de Modelamiento Unificado” Clase 01 Relatores: • Gerardo Cerda Neumann (gcerda@ucinf.cl) • Alejandro Reyes Zúñiga (areyes@infodesign.cl) • José Miguel Santibáñez Allendes (jms@caos.cl) 1
    2. 2. “Lenguaje de Modelamiento Unificado” Clase 01 Agenda • Desarrollo de Software • UML: Historia • Características de UML • Modelos y Diagramas • Ejemplos varios • Resumen UML • Reflexiones 2
    3. 3. “Lenguaje de Modelamiento Unificado” Clase 01 Contexto de Desarrollo: Grado de Complejidad 3
    4. 4. “Lenguaje de Modelamiento Unificado” Clase 01 Desarrollo de Software Metodología. 2. f. Ciencia del método. 3. f. Conjunto de métodos que se siguen en una investigación científica o en una exposición doctrinal. 4
    5. 5. “Lenguaje de Modelamiento Unificado” Clase 01 Fundamento Metodológico Análisis Diseño Construcción Pruebas Estructurados según alguno de los modelos conocidos: • Cascada. • Iterativo. • Incremental. • otros. 5
    6. 6. “Lenguaje de Modelamiento Unificado” Clase 01 Claves en el Análisis y Diseño de Software Notación UML Herramientas Procesop.e. Enterprise Architect p.e. RUP 6
    7. 7. “Lenguaje de Modelamiento Unificado” Clase 01 ¿Qué es UML?• UML = Unified Modeling Language• Un lenguaje de propósito general para el modelado orientado a objetos• Documento “OMG Unified Modeling Language Specification”• UML combina notaciones provenientes desde: – Modelado Orientado a Objetos – Modelado de Datos – Modelado de Componentes – Modelado de Flujos de Trabajo (Workflows) 7
    8. 8. “Lenguaje de Modelamiento Unificado” Clase 01 Situación de Partida  Diversos métodos y técnicas OO, con muchos aspectos en común pero utilizando distintas notaciones  Inconvenientes para el aprendizaje, aplicación, construcción y uso de herramientas, etc.  Pugna entre distintos enfoques (y correspondientes gurús) Establecer una notación estándar 8
    9. 9. “Lenguaje de Modelamiento Unificado” Clase 01 Historia de UML Todo se inicia en la empresa “Rational Machines”, (después, simplemente “Rational”). Comenzó como el “Método Unificado”, con la participación de Grady Booch (Método Booch en Rational) y Jim Rumbaugh (OMT en GE). Se presentó en el OOPSLA’95 El mismo año se unió Ivar Jacobson (OOSE en Objectory). Los “Tres Amigos” crean UML, RUP y la herramienta CASE: Rose. En el 2003, la empresa IBM adquiere Rational por 2 millardos. 9
    10. 10. “Lenguaje de Modelamiento Unificado” Clase 01 Historia de UML (2) • En 1996, los Tres Amigos deciden dejar de lado el “Método Unificado” y crean UML. • Presentan una versión preliminar al UML Partners (consorcio creado ad-hoc) quienes definen la propuesta al OMG (Object Management Group) eso será UML 1.0 • Es estándar internacional ISO/IEC 19501:2005 corresponde a UML versión 1.4.2 • En Octubre de 2004, OMG adopta oficialmente UML 2.0 como versión de trabajo actualizada. • Se esperaba la revisión 2.1 para este año, pero no 10
    11. 11. “Lenguaje de Modelamiento Unificado” Clase 01 Aspectos Novedosos  Definición semi-formal del Metamodelo de UML  Mecanismos de Extensión en UML:  Stereotypes  Constraints  Tagged Values Permiten adaptar los elementos de modelado, asignándoles una semántica particular 11
    12. 12. “Lenguaje de Modelamiento Unificado” Clase 01 Inconvenientes en UML  Definición del proceso de desarrollo usando UML. UML no es una metodología  Falta integración con respecto de otras técnicas tales como patrones de diseño, interfaces de usuario, documentación, etc.  Ejemplos aislados  “Monopolio de conceptos, técnicas y métodos en torno a UML” 12
    13. 13. “Lenguaje de Modelamiento Unificado” Clase 01 Perspectivas de UML  UML será el lenguaje de modelado orientado a objetos estándar predominante los próximos años  Razones: – Participación de metodólogos influyentes – Participación de importantes empresas – Aceptación del OMG como notación estándar  Evidencias: – Herramientas que proveen la notación UML – Edición de libros – Congresos, cursos, camisetas, etc. 13
    14. 14. “Lenguaje de Modelamiento Unificado” Clase 01 Modelos y Diagramas• Un modelo captura una vista de un sistema del mundo real. Es una abstracción de dicho sistema, considerando un cierto propósito. Así, el modelo describe completamente aquellos aspectos del sistema que son relevantes al propósito del modelo, y a un apropiado nivel de detalle.• Diagrama: una representación gráfica de una colección de elementos de modelado, a menudo dibujada como un grafo con vértices conectados por arcos 14
    15. 15. “Lenguaje de Modelamiento Unificado” Clase 01 Diagramas de UML State State Use Case Diagrams de Diagramas Use Case Diagrams State Use Case Diagrams de Diagramas Clases State Use Case Diagrams Diagrams de Diagramas Diagrams de Diagramas Casos de Uso Diagrams Diagrams Objetos Secuencia Scenario State Scenario State Diagrams de Diagramas Diagrams de Diagramas Diagrams Diagrams Colaboración Modelo Componentes Scenario Component Scenario Component Diagramas de Diagrams Diagrams de Diagramas Diagrams Diagrams Distribución Estados Diagramas de Actividad • Los diagramas expresan gráficamente partes de un modelo 15
    16. 16. “Lenguaje de Modelamiento Unificado” Clase 01 Diagramas de UML 16
    17. 17. “Lenguaje de Modelamiento Unificado” Clase 01 Diagramas de UML  Diagrama de Proceso de Negocio (extensión)  Diagrama de Clases  Diagrama de Casos de Uso  Diagramas de Interacción  Diagrama de Secuencia  Diagrama de Colaboración  Diagramas de Comportamiento  Diagrama de Actividad  Diagrama de Estado  Diagramas de Implementación  Diagrama de Componente 17
    18. 18. “Lenguaje de Modelamiento Unificado” Clase 01 Organización de Modelos 4+1 vistas de Kruchten (1995) Vista de Vista Lógica Realización Vista de los Casos de Uso Vista de Vista de Procesos Distribución Este enfoque sigue el CASE Enterprise Architect 18
    19. 19. “Lenguaje de Modelamiento Unificado” Clase 01 Ejemplos (Proceso de Negocio) od Business Process Model «objetivo» Proceso NUEVO Vender el Juguete Distribuidor Venta en Internet Solicitud de Compra salida «entidad de negocio» Venta entrada Base de Datos Juguetes 19
    20. 20. “Lenguaje de Modelamiento Unificado” Clase 01 Ejemplos (Clase y Visibilidad) Alumno RUT : char[10] número_exp : int nombre : char[50] alta() poner_nota(asignatura : char *, año : int, nota : float) matricular(cursos : asignatura, año : int) listar_expediente() 20
    21. 21. “Lenguaje de Modelamiento Unificado” Clase 01 Ejemplos (Asociación) dirige direc tor Departam ento Profes or 0..1 1 21
    22. 22. “Lenguaje de Modelamiento Unificado” Clase 01 Ejemplos (Diagramas de Casos de Uso) Verificar Situación del Cliente Supervisor Preparar Catálogo Administrativo Sis tema Inventario Ti pos de Venta 22
    23. 23. “Lenguaje de Modelamiento Unificado” Clase 01 Ejemplos • En el paquete tipos de venta: Venta Normal Venta en Rebajas Vendedor Venta en Ofertas 23
    24. 24. “Lenguaje de Modelamiento Unificado” Clase 01 Ejemplos Solicitar Préstamo Cliente [Tarjeta Caducada] <<extend> > Solic itar N ueva Tarjeta 24
    25. 25. “Lenguaje de Modelamiento Unificado” Clase 01 Ejemplos <<include>> Reintegro Cuenta Corriente Cliente Verificar Operación <<include>> Reintegro Cuenta de Crédito 25
    26. 26. “Lenguaje de Modelamiento Unificado” Clase 01 Ejemplos (Diagramas de Casos de ud CU Uso) Consultar Juguetes «extend» Agregar Juguete en Carro de Compra Distribuidor Confirmar Compra Registrar Venta «include» Contabilidad 26
    27. 27. “Lenguaje de Modelamiento Unificado” Clase 01 Ejemplos (Diagrama de Secuencia) : WInP réstamos :Socio :Video : Préstamo : Encargado prestar(video, socio) verificar situación socio verificar situación video registrar préstamo entregar recibo 27
    28. 28. “Lenguaje de Modelamiento Unificado” Clase 01 Ejemplos (Diagrama de Secuencia de Sistema) sd Consultar Juguetes :Distri bui dor Si stema Ingresar Fi l tro de Búsqueda Real i zar Búsqueda de Juguetes Despl egar Resultados de Búsqueda 28
    29. 29. “Lenguaje de Modelamiento Unificado” Clase 01 Ejemplos (Diagrama de Actividad) [no hay café] [no zumo] Buscar Bebida [hay café [hay zumo] Poner café en filtro Añadir agua al depósito Coger taza Poner filtro en máquina Coger zumo Encender máquina / cafetera.On Café en preparación indicador de fin Servir café Beber 29
    30. 30. “Lenguaje de Modelamiento Unificado” Clase 01 Ejemplos (Diagrama de Actividad parte 1) 30
    31. 31. “Lenguaje de Modelamiento Unificado” Clase 01 Ejemplos (Diagrama de Actividad parte 2) 31
    32. 32. “Lenguaje de Modelamiento Unificado” Clase 01 Ejemplos (Diagrama de Componente) Control y Análisis Interfaz de Terminal Comment Comment Gestión de Cuentas Acceso a BD Rutinas de Coneccion Comment Comment Comment 32
    33. 33. “Lenguaje de Modelamiento Unificado” Clase 01 Ejemplos (Diagrama de Despliegue) Servidor Central Control y Análisis Acceso a BD Comment Comment Rutinas de Coneccion Comment Terminal de Consulta Interfaz de Terminal Rutinas de Coneccion Comment Comment Punto de Venta Rutinas de Coneccion Comment Gestión de Cuentas Interfaz de Terminal Comment Comment 33
    34. 34. “Lenguaje de Modelamiento Unificado” Clase 01 Resumen • UML define una notación que se expresa como diagramas que sirven para representar modelos/subsistemas o partes de ellos • El 80 por ciento de la mayoría de los problemas pueden modelarse usando alrededor del 20 por ciento de UML-- Grady Booch 34
    35. 35. “Lenguaje de Modelamiento Unificado” Clase 01 Modelado de Software: Algunas Reflexiones • Modelar para concebir el sistema y/o para documentarlo • Pragmatismo, los modelos deben ser útiles • Sencillez y Elegancia • Distintos nivel de abstracción, diferentes modelos 35
    36. 36. “Lenguaje de Modelamiento Unificado” Clase 01 Modelado de Software: Algunas Reflexiones (2) • Seguimiento de transformaciones durante el proceso (Traceability) • Sincronización de modelos • Dificultades para la introducción de técnicas y herramientas de modelado • Necesidad de Herramientas CASE (Enterprise Architect) 36
    37. 37. “Lenguaje de Modelamiento Unificado” Clase 01 Finalmente • Apostar por enfoque Orientado a Objetos usando notación UML • Problemas actuales en implementación, al usar entornos de programación visual y/o bases de datos relacionales • Posibles mejoras a mediano plazo – Evolución: Uso de BDOO y/o mejoras en los LPOO – Revolución: Generación Automática de Código a partir de Modelos OO (Compilación de Modelos) 37
    38. 38. “Lenguaje de Modelamiento Unificado” Clase 01 Bibliografía RecomendadaUML http://www.omg.org/uml/ y http://www.uml.org http://en.wikipedia.org/wiki/Unified_Modeling_Language Meta-link http://www.cetus-links.org/oo_uml.html Pierre-Alain Muller “Instant UML” Martin Fowler, “UML Destilled” (“UML Gota a Gota”) Terry Quatrani, “Visual Modeling ...”, un caso de estudioHerramientas CASE Herramientas basadas en UML http://www.objectsbydesign.com/tools/umltools_byPrice.html International Council in SE (INCOSE) www.incose.org/ http://www.incose.org/ProductsPubs/products/toolsdatabase.aspxOtras Revista IEEE Software, Conferencias: OOPSLA, ECOOP Tutoriales en inglés http://www.ptcorp.com/training.htm 38
    39. 39. “Lenguaje de Modelamiento Unificado” Clase 01 Material basado en: • Archivo PPT: Taller de UML y Herramientas CASE” de Gerardo Cerda N. Universidad de Ciencias de la Informática. • Archivo PPT “Desarrollo de software orientado al objeto” preparado por Patricio Letelier Torres, Departamento Sistemas Informáticos y Computación (DSIC), Universidad Politécnica de Valencia (UPV) – España • Sitio Web “Craftware” http:www.craftware.net • Sitio Web “Wikipedia”: http://en.wikipedia.org/wiki/ Unified_Modeling_Language • Se recomienda: 39
    40. 40. “Lenguaje de Modelamiento Unificado” Clase 01 Curso: “Lenguaje de Modelamiento Unificado” Clase 01 Relatores: • Gerardo Cerda Neumann (gcerda@ucinf.cl) • Alejandro Reyes Zúñiga (areyes@infodesign.cl) • José Miguel Santibáñez Allendes (jms@caos.cl) 40

    ×