Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
Agenda
Desarrollo de Software UML: Historia Caractersticas de UML Modelos y Diagramas Ejemplos varios Resumen UML Reflexiones
Desarrollo de Software
Metodologa. 1. f. Ciencia del mtodo. 2. f. Conjunto de mtodos que se siguen en una investigacin cientfica o en una exposicin doctrinal.
Qu es UML?
UML = Unified Modeling Language Un lenguaje de propsito 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)
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
8
Historia de UML
Todo se inicia en la empresa Rational Machines, (despus, simplemente Rational). Comenz como el Mtodo Unificado, con la participacin de Grady Booch (Mtodo Booch en Rational) y Jim Rumbaugh (OMT en GE). Se present en el OOPSLA95 El mismo ao 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
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
11
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
12
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.
13
Modelos y Diagramas
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
Diagrama: una representacin grfica de una coleccin de elementos de modelado, a menudo dibujada como un grafo con vrtices conectados por arcos
14
Diagramas de UML
Use Case Use Case Diagramas Diagrams de Diagrams Secuencia Scenario Scenario Diagramas Diagrams de Diagrams Colaboracin Scenario Scenario Diagramas Diagrams de Diagrams Estados
Use Case Use Case Diagramas Diagrams de Diagrams Casos de Uso State State Diagramas Diagrams de Diagrams Clases
Modelo
Diagramas de Actividad
Distribucin
15
Diagramas de UML
16
Diagramas de UML
Diagrama de Proceso de Negocio (extensin) Diagrama de Clases Diagrama de Casos de Uso Diagramas de Interaccin Diagrama de Secuencia Diagrama de Colaboracin Diagramas de Comportamiento Diagrama de Actividad Diagrama de Estado Diagramas de Implementacin Diagrama de Componente Diagrama de Despliegue
17
Organizacin de Modelos
4+1 vistas de Kruchten (1995)
Vista Lgica Vista de Realizacin
Vista de Distribucin
Distribuidor
Solicitud de Compra
Venta en Internet
salida
entrada
19
20
Ejemplos (Asociacin)
Departamento
dirige 0..1
director 1
Profesor
21
Administrativo
Preparar Catlogo
Sistema Inventario
Tipos de Venta
22
Ejemplos
En el paquete tipos de venta:
Venta Normal
Vendedor
Venta en Rebajas
Venta en Ofertas
23
Ejemplos
Cliente
Solicitar Prstamo
24
Ejemplos
<<include>>
Cliente
25
Distribuidor
Confirmar Compra
include
Registrar Venta
Contabilidad
26
27
28
Encender mquina / cafetera.On Caf en preparacin indicador de fin Servir caf Beber
29
30
31
Acceso a BD Comment
32
Punto de Venta
33
Resumen
UML define una notacin que se expresa como diagramas que sirven para representar modelos/subsistemas o partes de ellos El 80 por ciento de la mayora de los problemas pueden modelarse usando alrededor del 20 por ciento de UML-- Grady Booch
34
35
Finalmente
Apostar por enfoque Orientado a Objetos usando notacin UML Problemas actuales en implementacin, al usar entornos de programacin visual y/o bases de datos relacionales Posibles mejoras a mediano plazo
Evolucin: Uso de BDOO y/o mejoras en los LPOO Revolucin: Generacin Automtica de Cdigo a partir de Modelos OO (Compilacin de Modelos)
37
Bibliografa Recomendada
UML
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 estudio
Herramientas 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.aspx
Otras
Revista IEEE Software, Conferencias: OOPSLA, ECOOP Tutoriales en ingls http://www.ptcorp.com/training.htm
38