Escolar Documentos
Profissional Documentos
Cultura Documentos
Orientacin a objetos
Definir, organizar, visualizar
Historia de UML
Diagramas bsicos UML
Metodologa de desarrollo
Versin 3.1
Noviembre 2000
Orientacin a Objetos
Manera
Orientacin a Objetos
Cambio de mentalidad
Mentalidad Procedural
Qu hace el sistema?
Qu objetivos tiene ?
Cmo diseo y codifico
para conseguir los
objetivos?
Enfoque dirigido a los
algoritmos
Enfoque centrado en los
datos
Mentalidad O-O
Qu objetos configuran el
sistema?
Cual es la estructura y
funcin de cada objeto?
Cmo puedo precisar la
dinmica del sistema a
travs del comportamiento
o la interaccin de sus
objetos?
Posponer las funciones
algortmicas
Posponer el modelo de
datos
Vilalta Consultores
Orientacin a Objetos
Encapsulacin
Orientacin a Objetos
Herencia
de mantenimiento
Vilalta Consultores
Orientacin a Objetos
Polimorfismo
y orden
Vilalta Consultores
Vilalta Consultores
comn
Evitar la trampa del lenguaje
Modelo de referencia
Evolucin ordenada de los cambios
Trazabilidad
Desde la funcionalidad al cdigo
Reduccin de costes
Evitar los costes ocultos de mantenimiento
Vilalta Consultores
Agentes
Usuario
Agentes
Responsable
de la certificacin
Preparar los tests de prueba a partir de las
interacciones previstas entre objetos
Jefe de proyecto
Entender la arquitectura del sistema y la
interdependencia de sus componentes
Cliente
Planificar el impacto del sistema dentro de la
organizacin
Vilalta Consultores
Historia de UML
UML
Inicio:
1995
1997
1999
Vilalta Consultores
Historia de UML
Jacobson
Jacobson
Booch
Rumbaugh
Vilalta Consultores
de Casos de Uso
Diagrama
de Actividad
Diagrama
de Secuencia
Diagrama
de Colaboracin
Diagrama
de Estado Transicin
Diagrama
de Clases
Diagrama
de Componentes
Diagrama
de Despliegue
Vilalta Consultores
principales
Configurar
Aplicacin
Tramitador
Supervisor
Matricular
Alumnos
Componer
Tribunal
Consultar
Listas/Eti.
Modificar
Matrculas
S. Tasas
Generar
Actas Exam.
Modificar
Actas Exam.
Profesor
Vilalta Consultores
S. Accesos
Matricular
Alumnos
Tramitador
<<Incluye>>
Validar
Requisitos
<<Incluye>>
Identificar
Alumno
Generar
NIP
<<Incluye>>
<<Incluye>> <<Incluye>>
<<Extiende>>
Generar
Cod. Anonimato
Generar
Mov. Tasa
Imprimir
<<Incluye>>
Abonar
Recibo
Generar
Rfaga Banc.
Vilalta Consultores
Calcular
Importe
Matrcula
Muestran
Organizan
usuario
Permiten
certificar contractualmente la
funcionalidad
Formalizan
Vilalta Consultores
Vilalta Consultores
Precondiciones
Activacin
A discrecin de un usuario
Realizar el proceso de
Parmetros aplicacin
habilitado
definidos
Vilalta Consultores
Flujo Principal
1. Usuario activa ventana de
matriculacin.
2. Usuario identifica alumno
con el UC Defini_alumno.
3. Sistema valida requisitos
matriculacin M25.
4. Usuario selecciona criterio
de destino.
5. Sistema muestra datos por
defecto: idioma, clase de
liquidacin, fecha de
matrcula.
6. Usuario registra la
matrcula.
7. Sistema asigna NIP y cdigo
de anonimato al alumno.
8. Sistema genera mov. de tasa.
Vilalta Consultores
Comprensin
Sistema
Acotacin
usuarios
Trazabilidad
Planificacin
de iteraciones para su
implementacin
Estimacin
Documentacin
Diagrama de Actividad
Muestra
Muestra
Vilalta Consultores
Diagrama de Actividad
Buscar Alumno
Introducir
Criterios de
Bsqueda
Validar
Criterios
Buscar
Alumnos
Sigma Ac
[Alumno NO Localizado[
[Alumno SI Localizado[
Dar
Alta
Alumno
Seleccionar
un
Alumno
[Matrcula SI Localizada[
[Matrcula NO Localizada[
Comprobar
Situacin
Matrcula
Vilalta Consultores
Comprobar
Situacin
Alumno
Diagrama de Actividad
Su
Se
Diagrama de Secuencia
Describe
Los
Cada
Diagrama de Secuencia
Descripcin de un escenario de Caso de Uso
:Alumno
:Parmetros Ap.
Activa
Identifica Alumno
Valida Alta
Valida
Requisitos
Crea nuevo Alumno
Solicita datos por defecto + Fecha Mat.
Registra Matrcula
Calcula
Importe Mat
:Matrcula
Vilalta Consultores
Diagrama de Colaboracin
Muestra
A diferencia
de un diagrama de secuencia no
hay referencia a una serie temporal
Su
Diagrama de Colaboracin
10: Commit( )
9: GetInfo( )
Order #1234 :
Order
Transaction Manager :
TransactionMgr
8: SaveOrder(long)
6: Create( )
Order Options Form :
OrderOptions
Order Manager :
OrderMgr
2: Open( )
1: Create( )
5: SaveOrder(long)
4: Save( )
3: SubmitInfo( )
Vilalta Consultores
Presenta
Describe
Identifica
Comprobando
[Alumno NO Localizado[
/Alta Matrcula
Localizar/
AlumnoM25
Comprobando
Verificar/
Ao Acadmico
Situacin Matrcula
Situacin Acceso U
Nueva Matrcula
Generar/Alta
Alumno M25
Comprobando
Formalizar/
Pago Matrcula
Matrcula
Validada
Conciliada
[Pago NO Conciliado[
/Anular Matrcula
Matrcula
Modificada
Matrcula
Anulada
Vilalta Consultores
Matrcula
Reactivada
Todas
objetos
Todas
Vilalta Consultores
evento no es un objeto
Un evento es la causa que justifica la
existencia de un objeto
Slo podemos conocer que un evento ha
ocurrido detectando sus efectos
Slo nos interesan los eventos que provocan
un cambio de estado en los objetos
Hay que distinguir un evento como tal, del
objeto que representa el registro de sus
efectos
Vilalta Consultores
Diagrama de Clases
Una
Las
La
Vilalta Consultores
Diagrama de Clases
Matrcula
Tramitador
Curso
Alumno
Agente
Profesor
Vilalta Consultores
Oferta Cursos
Diagrama de Clases
Un
Es
Es
Vilalta Consultores
Agentes
Usuario
Clases de Anlisis
No
entidad
control
Vilalta Consultores
Clases de Anlisis
Interface
Interface
de usuario
Interface de sistema
Interface de dispositivos
Entidad
Informacin
del sistema
A menudo persistente
Control
Comportamiento
del sistema
Lgica del negocio
Vilalta Consultores
Atributos
Vilalta Consultores
Clases de Diseo
Identificar
Vilalta Consultores
Patrones de Diseo
Pattern:
Composite
Problem:
Vilalta Consultores
Patrones de Diseo
Pattern:
Proxy
Problem:
Need to control access to
another object
Need to provide abstraction
between subsystem and client
Enhanced maintainability and
extensibility of the system
May reduce compilation
dependencies
Promotes layering of systems
Provides weak coupling between
clients and subsystems
Erich Gamma, Richard Helm, Ralph Johnson, and John Vlissides
Vilalta Consultores
Framework de Aplicaciones
Pattern:
Problem:
How can a medium to large system consisting of multiple and
possibly distributed programs employ a straightforward and
consistent message logging strategy?
Vilalta Consultores
Diagrama de Componentes
Muestra
Muestra
Presenta
Ejecutables
Libreras
de cdigo
Cada
Diagrama de Componentes
Vilalta Consultores
Diagrama de Componentes
Son
Diagrama de Componentes
Vista de los componentes ejecutables
Conta.exe
Matrcula.exe
Sistema
Contabilidad
Agentes.dll
Usuarios
Cursos.dll
Cursos
Alumnos
Curso
Oferta de
Cursos
Vilalta Consultores
Profesores
Diagrama de Despliegue
Muestra
Un
Presenta
de datos
Servidor de aplicaciones
Cliente
Vilalta Consultores
Diagrama de Despliegue
Vista de la distribucin fsica de nodos de proceso
Vilalta Consultores
Diagrama de Despliegue
Vilalta Consultores
Agentes
Arquitecto
del sistema
Rendimiento
Escalabilidad
Implementador
Arquitectura
Vilalta Consultores
Metodologa de desarrollo
Aprobacin
Anteproyecto
Realizacin
Plan Director
Documentacin
Interfaces
Implementacin
Especificaciones Bases de Datos Certificacin
Cdigo
Matrcula
Proyecto
Procesos
Principales
Funcionalidad
Vilalta Consultores
Anlisis
Diseo
Componentes
Despliegue
Metodologa de desarrollo
Fases
Procesos Generales
Concepcin
Elaboracin
Construccin
Transicin
Modelo de Negocio
Funcionalidad
Anlisis
Diseo
Implementacin
Certificacin
Entrega
Procesos de Soporte
Control de cambios
Gestin del Proyecto
Entorno
Iteraciones
prelim
Iter.
#1
Iter.
#2
Iter.
#n
Iter.
#n+1
Iteraciones
Vilalta Consultores
Iter.
#n+2
Iter.
#m
Iter.
#m+1
Concepcin
Misin
del proyecto
Matriculacin del proyecto
Glosario de conceptos
Estimacin de esfuerzo y cronograma
Apoyo en patrones de funcionalidad y anlisis
Umbral de riesgo
Aprobacin del anteproyecto
Proceso secuencial no iterativo
Vilalta Consultores
Elaboracin
Funcionalidad
Priorizacin
Construccin
Poner
el diseo en accin
Desarrollo de cdigo
Refactoring
Mapeo de la base de datos
Interface grfica de usuario: Navegacin
Pruebas de certificacin
Proceso iterativo
Vilalta Consultores
Transicin
Compilacin
y despliegue de componentes
Pruebas de certificacin
Actualizacin del modelo de referencia
Actualizacin del diseo y otros diagramas
Documentacin de usuario
Documentacin de administrador de sistema
Plan de formacin
Plan de soporte
Vilalta Consultores
Metodologa de desarrollo
Concepcin
Iteracin
Preliminar
...
Elaboracin
Iteracin
Arquitectura
Release
Release
...
Construccin
Iteracin Iteracin
Desarrollo Desarrollo
Release
Release
Transicin
...
Release
Iteracin
Transicin
Release
Release
...
Release
Metodologa de desarrollo
Requerimientos
Modelo
Casos de Uso
Diagr. de
Casos de Uso
Anlisis
Modelo
Diseo
Modelo
Anlisis
Diagr. de
Actividad
Diseo
Diagr. de
Secuencia
Implementacin
Modelo
de Componentes
Diagr. de
Diagr. de
Colaboracin Clases/Objetos
Vilalta Consultores
Modelo
de Despliegue
Diagr. de
Estados
Certificacin
Modelo
de Certificacin
Diagr. de
Diagr. de
Componentes Despliegue
Plan de certificacin
Certificacin de la Funcionalidad
Especificacin
Casos de Uso
Flujos de Trabajo
Escenarios
Vilalta Consultores
Dinmica
Estados
Plan de certificacin
Certificacin del Modelo de Referencia
Prueba Examen
Matrcula
Tramitador
aadirAlumno(Curso, DatosAlu)
Supervisor
nombre
Alumno
nombre
Profesor
Status
Curso
nombre
nmeroCrditos
abierto()
aadirAlumno(DatosAlu)
Oferta Cursos
Centro
abierto()
aadirAlumno(DatosAlu)
Diagramas de Clases
Interfaces
Modelo de Datos
Vilalta Consultores
Plan de certificacin
Certificacin de Componentes
Arquitectura
Vilalta Consultores
Requerimientos
Cdigo
Agente
Proceso cooperativo
Requerimientos
Cdigo
Modelo
Vilalta Consultores
y Jefe de proyecto
Usaran
Jefe
de proyecto
Usar
Vilalta Consultores
y Cliente
Usaran
Documentalista
Usar
Vilalta Consultores
y Desarrollador
Usaran
Controller
Usar
Vilalta Consultores
Implementador
Usar
los Agentes
Usaran
Proceso cooperativo
Requerimientos
d
a
d
ili
b
a
z
a
r
T Modelo
Vilalta Consultores
Cdigo
Http://www.vico.org
Vilalta Consultores