Documentos de Académico
Documentos de Profesional
Documentos de Cultura
UML Proceso Software (Modo de Compatibilidad)
UML Proceso Software (Modo de Compatibilidad)
Software
1
Proceso
Define “quién” está haciendo “qué”, “cuándo” y
“cómo” para alcanzar un determinado objetivo.
3
Proceso de desarrollo de software (PDS)
5
Lenguaje de modelación
= +
6
Lenguaje de modelación
= +
(Forma de (Descripción
expresar el de lo que
modelo) significa esa
modelación)
7
Notación visual
Manejar la complejidad
Interface de Usuario
(Visual Basic,
Java, ..)
Lógica del Negocio
(C++, Java, ..)
Múltiples Sistemas
Servidor de BDs
(C++ & SQL, ..)
Modelar el sistema
independientemente Componentes
Reutilizados
del lenguaje de
implementación
Promover la Reutilización
8
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)
9
?
UML
¿Qué es el UML- Unified
Modeling Language?
Lenguaje Unificado de Modelación
• Descrito en "The Unified Modeling Language for
Object-Oriented Development" de Grady Booch,
James Rumbaugh e Ivar Jacobson.
• Basado en las experiencias personales de los
autores.
• Incorpora contribuciones de otras metodologías. 10
?
UML
¿Qué es el UML- Unified
Modeling Language?
Lenguaje Unificado de Modelación
• Ofrece un estándar para describir un “plano” del
sistema.
• Incluye aspectos conceptuales tales como procesos
de negocio y funciones del sistema y aspectos
concretos como espresiones de lenguajes de
programación, esquemas de BD y componentes de
11
software reutilizables.
UML
Visualizar Especificar
Documentar
Construir 12
UML no es un método
14
Creación del UML UML 2.0
UML 1.5
OMG Acceptance, Nov 1997 Version 1.1
Final submission to OMG, Sep ‘97 UML 1.1
public First submission to OMG, Jan ´97
feedback
UML partners UML 1.0
15
¿Por qué UML 2.0?
21
Limitaciones de UML
22
Un proceso de desarrollo de
software debe ofrecer un conjunto
de modelos que permitan expresar
el producto de software desde cada
una de las perspectivas de interés
23
¿Qué es un producto de software?
Un producto de software es el código
máquina y los ejecutables de un sistema
Un producto de software es el conjunto de
artefactos que se necesitan para
representarlo en forma comprensible para:
• Las máquinas.
• Los trabajadores.
¿artefactos? • Los usuarios.
• Los interesados.
24
¿Artefactos?
Término general aplicable a
cualquier tipo de información
creada, cambiada o utilizada por
los trabajadores en el desarrollo
del sistema
Ejemplos:
• Diagramas UML y su texto.
• Bocetos de interfaz.
• Planes de prueba.
25
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 de Casos de
Uso del Negocio
Diagrama de Casos de
Uso del Sistema
Diagrama de Actividades
Diagrama de Estado
Diagrama de Paquetes 28
Diagramas de UML
Casos de uso
Diagrama de casos de uso
29
Diagrama de casos de uso
Casos de Uso es una técnica para capturar
información de cómo un sistema o
negocio trabaja, o de cómo se desea que
trabaje
30
Solicitar Préstamo
Cliente
Diagramas de UML
31
Diagrama de clases
Departamento Profesor
0..1 1..*
32
Diagramas UML
Diagramas del comportamiento
Diagramas de Estado
Diagramas de Actividad
Diagramas de Secuencia
Diagrama de Comunicación
Diagrama de tiempo
alta baja
Socio
núm ero : i nt
nom bre : char[50] número_préstamos = 0
núm ero_ prestamo s : int = 0 sin préstamos
alta()
baja()
prestar(c ó digo_libro : int, fecha : date)
devolver(códi go_libro : int, fecha : date)
prestar devolver[ número_préstamos = 1 ]
número_préstamos > 0
con préstamos
pres tar
Buscar bebida
NO ¿hay jugo?
¿hay café?
SÍ NO
SÍ
Poner filtro en
máquina
Encender
máquina
Hacer café
prestar(video, socio)
verificar situación socio
registrar préstamo
entregar recibo
36
Diagrama de comunicación
:Socio
:Video
5: entregar recibo
: Encargado 4: registrar préstamo
:Préstamo
37
Diagramas de UML
Diagramas de implementación
Diagramas de componentes
Diagramas de instalación/Distribución
(Despliegue)
Diagrama de componentes
38
Diagrama de componentes
Interfaz de Terminal
Control y Análisis
39
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
Comment Comment
40
¿Cómo se relacionan los diagramas?
Tomado de:
Rosenberg, Doug, Kendall Scott. Applying use case driven object 41
modeling with UML: an annotated e-commerce example.
¿Cómo se relacionan los diagramas?
Tomado de:
Rosenberg, Doug, Kendall Scott. Applying use case driven object 42
modeling with UML: an annotated e-commerce example.
¿Cómo se relacionan los diagramas?
Tomado de:
Rosenberg, Doug, Kendall Scott. Applying use case driven object 43
modeling with UML: an annotated e-commerce example.
¿Cómo se relacionan los diagramas?
Tomado de:
Rosenberg, Doug, Kendall Scott. Applying use case driven object 44
modeling with UML: an annotated e-commerce example.
Resumen
45
UML y PUDS
Desarrollo
en equipos
Lenguaje de Proceso
Modelamiento Unificado
46