caso de uso - copia

15
CASO DE USO Presente un caso donde se de el ciclo de vida de un proceso unificado. Envía tu archivo a través de este medio. Lan Antonio Tamani Redondez

Upload: lan-antonio

Post on 20-Jan-2016

153 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Caso de Uso - Copia

CASO DE USOPresente un caso donde se de el ciclo de vida de un proceso unificado. Envía tu archivo a través de este medio.

Lan Antonio Tamani Redondez

Page 2: Caso de Uso - Copia

Proceso Unificado de Desarrollo de Software

El ciclo de vida del proceso unificado

El ciclo de vida del proceso unificado se divide en 4 fases:

1. Inicio: Define el alcance del proyecto2. Elaboración: planificar el proyecto, elaborar una arquitectura

base.3. Construcción: construir el sistema4. Transición: transición a los usuarios

Cada fase se divide en iteraciones y en cada iteración se desarrollo en secuencia un conjunto de disciplinas o flujos de trabajos, las cuales son:

Disciplinas más importantes: Modelado de Negocio Requerimientos Análisis y Diseño Codificación Prueba Instalación

Disciplinas de soporte: Adm. Configuración y cambios Adm. De Proyecto Ambiente

Cada disciplina está asociada a un conjunto de modelos que se desarrollan. Estos modelos están compuestos por artefactos. Los artefactos más importantes son los modelos de cada disciplina realiza.

Disciplina ModelosRequisitos Modelo de casos de usoAnálisis Modelo de análisisDiseño Modelos de Diseño – Modelo de

despliegueImplementación Modelo de implementaciónPrueba Modelo de prueba

Descripción de Fases

Lan Antonio Tamani Redondez

Page 3: Caso de Uso - Copia

Esta fase finaliza con el hito de la arquitectura del ciclo de vida.

Fase de construcción

Durante esta fase se crea el producto. La línea base arquitectural crece hasta convertirse en el sistema completo.

Los artefactos producidos durante esta fase son:

El sistema software Los casos de prueba Los manuales de usuario

Esta fase finaliza con el hito de capacidad operativa inicial.

Ejemplo de un Modelo de casos de uso de un sistema Cajero Automático.

El modelo de casos de uso representa los requisitos funcionales

La primer disciplina que se desarrolla en cada iteración es la de los requerimientos. Los requerimientos del sistema son plasmados a través de casos de uso en un Modelo de Casos de Uso.

Ejemplo de un Modelo de casos de uso de un sistema Cajero Automático.

Lan Antonio Tamani Redondez

Page 4: Caso de Uso - Copia

Para cada caso de uso debe especificarse sus caminos o secuencias de acciones posibles:

Ejemplo: secuencia de acciones para un camino del uso de sacar dinero.

- El cliente del banco se identifica.- El cliente elige de que cuenta sacar dinero y especifica la cantidad- El sistema deduce la cantidad de la cuenta y entrega el dinero

Los casos de uso también se utilizan como contenedores para los requisitos no funcionales.

Creación de un modelo de análisis a partir de los casos de uso

El modelo de análisis es opcional. En este modelo se describen un conjunto de clases del análisis que se utiliza para realizar una descripción abstracta de la realización de los casos de uso de un modelo de casos de uso.

Este modelo crece a medida que se analizan más y más casos de uso.

Ejemplo de la realización de un caso de uso en el modelo de análisis.

Lan Antonio Tamani Redondez

Page 5: Caso de Uso - Copia

Una clase puede participar en varias realizaciones.

Durante el analisis se utilizan diagramas de colaboración para describir la realización de un caso de uso.

Cada clase debe cumplir todos los roles de colaboracion: las responsabilidades de una clase son la recopilación de todos los roles que cumple en todas las realizaciones de casos de uso.

Lan Antonio Tamani Redondez

Page 6: Caso de Uso - Copia

Creación del modelo de diseño a partir del modelo de analisis

El modelo de diseño se crea tomando el modelo de analisis como entrada principal, y se lo adapta a un entorno de implementacion particular.

Este modelo incluye clasificadores, relaciones y realizaciones de casos de uso y existe una relacion de traza entre cada artefacto de diseño que debe adecuarse al entorno de implementación específico.

Loas clases del diseño refinan las clases del analisis.

En el modelo de diseño debemos identificar la interacción detallada entre los objetos de diseño que tiene lugar en la realización del caso de

Lan Antonio Tamani Redondez

Page 7: Caso de Uso - Copia

uso. Utilizaremos diagramas de secuencia para representar esta inteacción.

Diagram de secuencia que representa el caso de uso Sacar dinero en el modelo de diseño.

Agrupación de clases en subsistemas

Un subsistema es un agrupamiento semánticamente útil de clases o de otros subsistemas.

Los subsistemas de bajo nivel se denominan subsistemas de servicio. Estos subsistemas constituyen una unidad manejable de funcionalidad opcional.

Los subsistemas pueden diseñarse en forma descendente o ascendente.

El ascendente se realiza a partir de la agrupación de clases ya identificadas. El descendente implica la definición previa de los sistemas de más alto nivel y las interfaces entre ellos, antes de que se hayan identificado las clases.

Ejemplo:

<<subsystem>> Interfaz del CA: agrupa todas las clases que proporciona la interfaz gráfica del CA:

Lector de tarjetas Dispositivo de visualización Teclado Alimentador de la salida Sensor de salida Contador de efectivo Gestor de cliente

<<subsystem>> Gestión de transacciones

o Gestion de transaccioneso <<service subsystem>> Gestión de retirada de efectivo

Retirada de efectivo

<<subsystem>> Gestión de cuentas

o Clase persistenteo Gestor de Cuentas

Lan Antonio Tamani Redondez

Page 8: Caso de Uso - Copia

o Cuenta

Colocar todas la clases de interfaz en un subsistema permitiría reemplazar el subsistema completo para adecuerlo a otra interfaz sin mayores cambios en el resto del sistema.

Los subsistemas implementan interfaces. Las interfaces se representan por un circulo vinculado con una línea de trazo continuo a la clase dentro del subsistema que proporciona la interfaz.

Creación del modelo de implementación a partir del modelo de diseño.

Este modelo esta conformado por componentes, que incluyen los ejecutables (activex, javabeans,.exe, etc ) y otro tipo de componentes como los componentes de fichero (código fuente, shell scripts, etc.), componentes de tabla (bases de datos), etc.

Un componente se define como una parte física y reemplazable del sistema que cumple y proporciona la relalización de un conjunto de interfaces.

Ejemplo de componentes en una clase de diseño

Lan Antonio Tamani Redondez

Page 9: Caso de Uso - Copia

Prueba de casos de uso

Verificar que el sistema implementa correctamente su especificación.

El modelo de prueba esta compuesto por casos de prueba y procedimientos de prueba.

Un caso de prueba es un conjunto de entradas de prueba, condiciones de ejecución y resultados esperados, desarrollados por un objetivo concreto, tal como probar un camino concreto a través de un caso de uso o verificar que cumple un requisito específico.

Un procedimiento de prueba es la especificación de cómo llevar a cabo la preparación, ejecución, y evaluación de los resultados de un caso de prueba particular.

Ejemplo:

Un caso de prueba especifica la entrada, los resultados esperados y otras condiciones relevantes para verificar el flujo básico del caso de uso Sacar Dinero.

Entradas:

- La cuenta 12-121-1211 del cliente de banco tiene un saldo de $ 350

- El cliente del banco se identifica correctamente- El cliente del banco solicita la retirada de $ 200 de la cuenta 12-

121-1211- Hay suficiente dinero en el cajero automático

Lan Antonio Tamani Redondez

Page 10: Caso de Uso - Copia

Resultados:

- El saldo de la cuenta 12-121-1211 disminuye a $ 150- El cliente del banco recibe $ 200 del cajero automatico

Condiciones:

- No se permite que ningun otro caso de uso (instancias de) acceda a la cuenta 12-121-1211 durante la ejecución del caso de prueba.

Un proceso centrado en la arquitectura

Importancia y necesidad de una arquitectura

Se necesita uan arquitectura para:

- Comprender el sistema- Organizar el desarrollo- Fomentar la reutilización- Hacer evolucionar el sistema

Desarrollo de la arquitectura

Se desarrolla mediante iteraciones, principalmente en la etapa de elaboración.

El resultado de la fase de elaboración es la línea de la arquitectura.

Los casos de uso son relevantes para la arquitectura.

Al final de la fase de elaboración hemos desarrollado modelos del sistema que representan los casos de uso más importantes y sus realizaciones desde el punto de vista de la arquitectura.

Esta agregación de modelos es la línea base de la arquitectura. Es un sistema pequeño y delgado. Tiene las versiones de todos los modelos que un sistema terminado contiene al final de la fase de cnstrucción. Incluye el mismo esqueleto de subsistemas, componentes y nodos de un sistsme definitivo, pero no existe toda la musculatura. Es un sistema ejecutable.

Descripición de la arquitectura.

La línea base de la arquitectura es la versión interna del sistema al final de la fase de elaboración. El conjunto de modelos que describen esta

Lan Antonio Tamani Redondez

Page 11: Caso de Uso - Copia

línea base se denomina Descripción de la Arquitectura y su objetivo es guíar al equipo de desarrollo a través del ciclo de vida del sistema.

La descripción puede ser un extracto de modelos o una reescritura de los extractos de forma que seá más fácil leerlos.

La descripción de la arquitectura tiene cinco secciones: una vista del modelo de casos de uso, una del modelo de analisis (opcional/descartable), una vista del modelo diseño, una vista del modelos despliegue y una vista del modelo de implementación.

Vista de la arquitectura del modelo de casos de uso

Presenta los actores y casos de uso más importantes.

Ejemplo:

El el CA el caso de uso más importante es Sacar Dindero, sin él no tendría sentido el CA. Para definir la arquitectura por tanto, se sugiere que el caso de uso sacar dinero se implemente en su totalidad durante la fase de elaboración.

Vista de la arquitectura del modelo de diseño

Presenta los clasificadores más importantes para la arquitectura pertenecientes al modelo de diseño: los subsistemas e interfaces más importantes, así como algunas clases muy importantes, fundamentalmente clases activas.

Tambien presentan como se realizar los casos de uso en términos de esos clasificadores.

Vista de la arquitectura del modelo de despliegue

Presenta los nodos interconectados y las clases activas que se ejecutan en ellos identificados durante el diseño. Esto puedo mostrarse por diagramas de despliegue.

Ejemplo:

Vista de la arquitectura de despliegue CA.

Se incluyen los siguientes nodos y objetos activos:

- Nodo: cliente CA – Objeto activo: Gestor de clientes

Lan Antonio Tamani Redondez

Page 12: Caso de Uso - Copia

- Nodo: Servidor de aplicaciones CA – Objeto activo: Gestor de transacciones

- Nodo: Servidor de datos CA – Objeto activo: Gestor de Cuentas

Vista de la arquitectura del modelo de implementación

Es una correspondencia directa de los modelos diseño y despliegue.

Cada subsistema de servicio del diseño normalmente termina siendo un componente por cada tipo de nodo en el que deba instalarse.

Un proceso iterativo e incremental

Desarrollo de pequeños pasos

Una clave importante del RUP (Proceso Unificado Rational) consiste en desarrollar un producto software en pequeños manejables:

- Planificar un poco- Especificar, diseñar, e implementar un poco- Integrar, probar y ejecutar un poco en cada iteración

Lan Antonio Tamani Redondez

Page 13: Caso de Uso - Copia

¿Por qué un desarrollo iterativo e incremental?

Para prevenir riesgos críticos Para poner en marcha una arquitectura que guíe el desarrollo del

software Para gestionar de buena forma los cambios del software Para construir el sistema a lo largo del tiempo en lugar de una sola

vez cerca del final Para proporcionar un proceso de desarrollo más eficaz

La iteración generica

Una iteración es un miniproyecto, un recorrido más o menos completo a lo largo de todos los flujos de trabajo y que obtiene como resultado una vision interna del sistema y su desarrollo.

Lan Antonio Tamani Redondez