fase de gestación - unicauca
TRANSCRIPT
[1]
Fase de Gestación
Arquitecturas de Sistemas TelemáticosDr. Ing. Álvaro Rendón Gallón
Cali, mayo de 2012
Especialización en Telemática
2Temario
Introducción Requisitos en RUP y XP Modelado de la Organización Captura de Requisitos
(Modelo de Casos de Uso)
[2]
3¿Cálculos astronómicos?
4Tragicomedia en cuatro cuadros
Cuadro #1: Lo que se describe en la solicitud del cliente
[3]
5Tragicomedia en cuatro cuadros
Cuadro #2: Lo que entiende el analista
6Tragicomedia en cuatro cuadros
Cuadro #3: Lo que se entrega
[4]
7Tragicomedia en cuatro cuadros
Cuadro #4: Lo que necesita el cliente!
8Cualquier parecido…
[5]
9Rational Unified ProcessOrganización por Organización en el tiempo
COMPONENTES DE SOPORTE
COMPONENTES DEL PROCESO
Iteraciones
Inicial
Gestación Preparac. Construcción Transición
Prep.#1
Prep.#2
Const.#1
Const.#2
Const.#N
Trans.#1
Trans.#2
FASES
Hitos
Componentes
Captura de RequisitosAnálisisDiseñoImplementaciónPruebasPuesta en Servicio
Modelado de la Organización
Gestión de Configuración y CambiosGestión del ProyectoEntorno
Hitos
10
Fase de Gestación
RUP: Organización por Componentes
Flujos de trabajo del proceso– Modelado de la Organización: ¿Cuál es el problema?– Captura de Requisitos: ¿Qué hace el sistema?– Análisis: ¿Cómo funciona?– Diseño: ¿Cómo se construye?– Implementación: Archivos– Pruebas– Puesta en Servicio
[6]
11Extreme Programming
http://members.cox.net/cobbler/XPDangers.htm
Mantenimiento
Planeación Iteraciones paraentrega Producción
Exploración
12RUP: Componentes y Modelos
Captura deRequisitos
Diseño Implemen-tación Pruebas
Componentes del Proceso
Modelo deCasos de Uso
Modelo deDiseño
Modelo deImplementac.
Modelo dePruebas
Código Objeto
OKOKFalla
ImplementadoporRealizado por
Verificado por
ModeladoOrganizac.
Modelo de laOrganización
Análisis
Modelo deAnálisis
Realizado por
Modelos
[7]
13RUP: Fase de Gestación
Modelo de laOrganización Cuál es el problema?
Modelo de Casosde Uso
¿Para qué (y a quién)sirve el sistema?
14Modelado de la Organización
Propósito• Entender la estructura y la dinámica de la
organización en la cual se va a implantar el sistema(organización objetivo)
• Entender los problemas actuales e identificar lasmejoras potenciales.
• Asegurarse de que los clientes, usuarios finales ydesarrolladores tienen una idea común de laorganización objetivo.
• Derivar los requerimientos del sistema necesariospara soportar la organización objetivo
[8]
15Modelado de la Organización
Fase de Gestación
ClienteEquipo deDesarrollo
SOLUCIÓN
Organización Objetivo
PROBLEMA
Organización Inicial
Aplicación Informática
16Modelado de la Organización
• Más completo que el Modelo del Dominio– El Modelo del Dominio sólo captura las clases del dominio– El Modelo de la Organización captura mejor la estructura y
además la dinámica de la organización• Varias notaciones para modelar las organizaciones
Modelado de la Organización (Business Modeling):– Philippe Kruchten (Kruchten, 2000)– UML 1.5 (OMG, 2003)Modelado de Procesos de la Organización (Business Process
Modeling):– Eriksson & Penker (2000): patrones organizacionales, UML– BPMN: Business Process Modeling Notation (BPMI, 2004)
=> v2.0
[9]
17Modelo de la Organización (Kruchten)
Unidad de laOrganización
Trabajador de laOrganización
Realización deCaso de Uso dela Organización
Entidad de laOrganización
Actor de laOrganización
Caso de Uso dela Organización
Estereotipos del Modelo de la Organización
18Modelado de la Organización
Lector Prestar Libro
Modelo de Casos de Uso de la Organización
Reservar Libro
Solicitar Artículo Sist. Nal.Intercambio
Biblioteca
[10]
19Modelado de la Organización
Lector Prestar Libro
Modelo deCasos de Uso dela Organización
:Catálogo:TarjetaLector :Libro
:Lector
:Director:Monitor
Modelo deObjetos de laOrganización
20Modelado de la Organización
:Lector :Director:Monitor :Catálogo:TarjetaLector :Libro
Solicita libro
Busca libroVerifica libroSolicita autorización
Verifica registroVerifica registro
Autoriza préstamoEntrega libro
Verifica lector
Diagrama de Secuencias
[11]
21
Recibirsolicitud libro
Modelado de la OrganizaciónDiagrama de
Actividad
Verificarestado Lector
Verificarestado libro
Solicitarautorización
Entregar libro
Autorizarpréstamo
Verificarregistro libro
Buscar libro Verificarregistro lector
Monitor Director
22
Modelo deAnálisis TarjetaLector Catálogo Libro
:TarjetaLector :Catálogo :Libro
:Lector
:Director:Monitor
Modelo deObjetos de laOrganización
Modelo de la Organización
Lector Prestar Libro
Modelo de Casosde Uso de laOrganización
Lector Prestar Libro Director
Modelo deCasos de Uso
[12]
23Vistas de UML
Vista deComponente
Vista deCasos de Uso
Vista deImplantación
Vista deConcurrencia
VistaLógica
24Vista de Casos de Uso
Muestra la funcionalidad del sistema comoes percibida por actores externos Para clientes y equipos de diseño,
desarrollo, y prueba Utiliza: Diagramas de Casos de Uso Diagramas de Actividad (opcional)
Su contenido conduce el proceso dedesarrollo y verificación
[13]
25Modelo de Casos de Uso
Frontera delsistema
Actor
Caso de uso
Relación
Lector Consultar Libro
MonitorPrestar Libro
Gestionar LectorDirector
acción (verbo)+ objeto (nombre)
Gestión Biblioteca
Nombre delsistema
AutorizarAcceso
Modelo deCasos de Uso
Consultar Libro
Director
Lector
Reservar Libro
<<extend>>
Borrar Reserva
Prestar Libro
<<include>>
Gestionar Lector
Monitor
SI_Administrativo ConsultarMultas
[Lector hace reserva]
Gestionar Monitor
Más descripciónUsuario
[14]
27Herencia entre actores
Reservar Libro
Monitor Prestar Libro
Autorizar Acceso
Gestionar MonitorDirectorGestionar Monitor
Reservar Libro
Monitor Prestar Libro
Autorizar Acceso
Director
Usuario
“Monitor” y “Director” heredan loscasos de uso de “Usuario”
“Autorizar Acceso” nopuede tener dos actoresiniciadores
28Relación «include»
Usuario
Insertar Página
Eliminar Página
Cambiar Formatode Página
RecalcularPaginación
«include»
«include»
«include»
“Recalcular Paginación” es incluido siempreen los otros casos de uso
[15]
29Relación «extend»
Cada opción extiende a “Gestionar Lector”cuando se cumple una condición: op= Agr | Act | Supr
Monitor
Agregar Lector
Actualizar Lector
Suprimir Lector
GestionarLector
«extend»[op=Agr]
«extend»[op=Act]
«extend»[op=Supr]
Director
30Refinamiento de Casos de Uso
• De Alto Nivel• Extendidos
– Abstractos– Reales
Autorizar Acceso
Monitor
[16]
31Casos de Uso
Según el nivel de detalle:– Casos de Uso de Alto Nivel
Dos o tres frases– Casos de Uso Extendidos
Mayor detalle: enumeran paso a paso los eventos quese presentan durante una ocurrencia típica del casode uso
32Casos de Uso
De acuerdo al nivel de abstracción:– Casos de Uso Abstractos
Abstraen los detalles de tecnología eimplementación (e.g. maquetas de E/S)
– Casos de Uso RealesIncluyen detalles de las tecnologías empleadas en
las entradas y salidas
[17]
33Caso de uso de alto nivel
Caso de uso: Gestionar Lector Actores: Monitor (iniciador), Director Tipo: Primario [secundario, opcional] Descripción:
– El Monitor solicita al sistema gestionar la informaciónde un Lector.
– El sistema presenta la información actual del Lector yofrece las opciones de adición, actualización y borrado.
– El Monitor elige la opción.– El sistema modifica la información del Lector.
Director Gestionar Lector
Monitor
34Descripción de «include» y «extend»
Actualizar LectorGestionarLector
«extend»[op=Act]
RecalcularPaginación
Eliminar Página
«include»
Caso de Uso “Eliminar Pagina”Descripción:– Evento 1– Evento 2– …– Caso de Uso “Recalcular Paginación”– …
Caso de Uso “Gestionar Lector”Descripción:– Evento 1– Evento 2– …– Si ( op = Act )
Caso de Uso “Actualizar Lector”– …
[18]
35Caso de Uso Extendido
S-nS-1
FlujoPrincipal
[Precondición]
…
Subflujos
E-m
E-1
Flujos deExcepción
Info.General
36Caso de Uso Extendido (1)
Caso de uso: Reservar Libro Actores: Monitor (iniciador) Propósito: Asignar a un Lector un libro para que pueda
retirarlo más tarde. Resumen: El Monitor ingresa la información del Lector
y del libro solicitado. El sistema verifica e informa ladisponibilidad del libro solicitado, y modifica el estado delítem, asignándolo al Lector. Tipo: Primario y abstracto Referencias cruzadas: Funciones: R1.1, R1.6.
Casos de Uso: Autorizar Acceso, Consultar Libro
[19]
37Caso de Uso Extendido (2)
Precondición El sistema debe contar con la siguiente
información:- Información del Lector: Código, nombre, estado
(Activo, Suspendido, etc.).- Información de los libros: Código, título, estado
(Disponible, Reservado, Prestado, etc.). El Monitor debe ejecutar el caso de uso Autorizar
Acceso. Puede iniciarse con el caso de uso Consultar Libro
38Caso de Uso Extendido (3)
Flujo Principal- Este caso de uso empieza cuando el Monitor elige en el
menú principal del sistema la opción Reserva.- El sistema presenta al Monitor
el Formulario de Reserva de laFigura 1, que solicita:- Código del lector- Código del libro a reservar
Figura 1. Formulario de reserva
[20]
39Caso de Uso Extendido (4)
Flujo Principal (cont.)- El Monitor captura total o parcialmente la información de
reserva, y selecciona una de las opciones del final delformulario: Aceptar y Cancelar.
- Si elige la opción Aceptar, Subflujo S1: Verificar Lector yEstado de un Libro.
- Si elige la opción Cancelar, Subflujo S2: Cancelar laReserva de un Libro.
40Caso de Uso Extendido (5)Subflujos S1: Verificar Lector y Estado de un Libro.- El sistema verifica el código del Lector (E1).- El sistema verifica el código del libro solicitado (E2)- El sistema consulta el estado del libro solicitado.- Si el libro solicitado está disponible, el sistema
modifica su estado a Reservado, lo asigna al Lectorindicado al comienzo, y presenta al Monitor el cuadrode diálogo de la Figura 2 para informarle del éxito dela operación. Cuando el Monitor pincha Aceptar elsistema regresa al Menú Principal.
- Si el libro solicitado está reservado o prestado,el sistema presenta al Monitor el cuadro de diálogode la Figura 3 (...)
Figura 2. Reserva realizada
Figura 3. Libro no disponible
[21]
41Caso de Uso Extendido (6)Subflujos (cont.) S2: Cancelar la Reserva de un Libro.
- El sistema despliega el mensaje de la Figura 6 solicitandoconfirmar la cancelación.
- El Monitor selecciona una de las opciones: Si o No.- Si elige la opción Si, el sistema regresa al Menú Principal.- Si elige la opción No, sistema presenta de nuevo al Monitor el
Formulario de Reserva de la Figura 1.
Figura 6. Confirmación de cancelación
42Caso de Uso Extendido (7)
Flujos de excepción E1: Código del Lector no válido.
- El sistema despliega el mensaje de la Figura Winformando que el código del Lector no es válido
- El Monitor presiona el botón Aceptar.- El sistema regresa al Menú Principal.
E2: Código del libro no válido.- El sistema despliega el mensaje de error de la Figura Z
informando que el código del libro no es válido- ...
[22]
43
AutorizarAcceso
Consultar Libro
Director
Lector
Reservar Libro
<<extend>>
Borrar Reserva
Prestar Libro
<<include>>
Gestionar Lector
Monitor
SI_Administrativo ConsultarMultas
Gestionar Monitor
Usuario Diagrama de Casos de Uso Descripción de los Casos de
Uso Priorización de Casos de Uso
Casos de Uso
44Construcción de la Vista Lógica
Autorizar Acceso
Usuario
Vista de Casos de Uso
Vista Lógica
: Usuario: IU_Inicio : Gestión
Monitor: TarjetaMonitor
: IU_MenuPpal
1: Activa
3: DiálogoID_Clave
Ingresa IDy Clave
5: validarAcceso(ID, Clave) 6: buscarCódigo(ID)
7: leerContraseña( )
8: Activa
9: MenuMonitor
4: BotonAceptarClick( )
2: Activa
TarjetaMonitor
UsuarioGestiónMonitorIU_Inicio
IU_MenuPpal
[23]
45Referencias• Philippe Kruchten. “The Rational Unified Process. An Introduction”. Second
Edition. Addison Wesley. 2000.• Hans-Erik Eriksson, Magnus Penker. “Business Modeling With UML: Business
Patterns at Work”. John Wiley. 2000.• Hruby, P. "Model-Driven Design Using Business Patterns". Springer, Berlin
(Germany). 2006.• OMG. “OMG Unified Modeling Language Specification”. Versión 1.5. Documento
OMG formal/03-03-01. Marzo 2003. Disponible en:http://www.omg.org/spec/UML/1.5/
• BPMI (Business Process Management Initiative). “Business Process ModelingNotation (BPMN)”. Versión 1.0. Mayo 2004. Disponible en: http://www.bpmn.org/
• OMG. “Unified Modeling Language Specification”. Versión 1.4.2. InternationalStandard ISO/IEC 19501. Documento OMG formal/05-04-01. Enero 2005.Disponible en: http://www.omg.org/spec/UML/
• H.-E. Eriksson, M. Penker. “UML Toolkit”. John Wiley. 1998.• C. Larman. "Applying UML and Patterns. An Introduction to Object-Oriented
Analysis and Design". Prentice-Hall. 1998