Documente Academic
Documente Profesional
Documente Cultură
Repaso
La extraccin de los requerimientos incluye la comprensin de lo que los clientes y usuarios esperan que haga el sistema. Los requerimientos deben ser especificados y documentados y revisados. Los requerimientos pueden clasificarse en:
Requerimientos Funcionales. Requerimientos No Funcionales.
Anlisis y Diseo de Sistemas - Clase 6 2
Metodologas de Desarrollo
Existen distintas metodologas para encarar el desarrollo de un sistema. En este curso se estudian:
Metodologas Orientadas a Objetos.
El Proceso Unificado de Desarrollo de Software (Rumbaugh, Booch, Jacobson) Metodologa OMT (J. Rumbaugh)
Metodologas Estructuradas.
Metodologa de Eduard Yourdon.
Metodologa Rigurosa/Formales
Mtodo RAISE.
Anlisis y Diseo de Sistemas - Clase 6
UML
Unifica las ideas de los mtodos ms reconocidos de Ingeniera de Software Orientada a Objetos. Objetivos:
Modelar sistemas siguiendo el enfoque OO. Cubrir diferentes tipos y tamaos de sistemas. Crear un lenguaje de modelado que pueda ser utilizado por personas y mquinas.
Vistas de un Sistema
Los modelos representan distintas vistas de un problema:
Vista del usuario: representa un sistema (producto) desde la vista del usuario (actor). Se modela con casos de uso. Vista estructural: modela la estructura esttica (clases, objetos y relaciones). Vista del comportamiento: representa los aspectos dinmicos o de comporta-miento del sistema. Muestra las interac-ciones entre los elementos estructurales.
5 Anlisis y Diseo de Sistemas - Clase 6 6
UML es un lenguaje que sirve para visualizar, especificar, construir y documentar sistemas.
Estas transparencias proveen slo una referencia a los temas. Para su estudio remitirse a la bibliografa.
Universidad Nacional del Sur Departamento de Ciencias e Ingeniera de la Computacin Anlisis y Diseo de Sistemas 1er.Cuatrimestre de 2006.
Vistas de un sistema
Vista de implementacin: representa cmo van a ser implementados los aspectos estructurales y de comportamiento. Vista del entorno: aspectos estructurales y de comportamiento en el que el sistema a implementar se representa.
Requerimientos Funcionales
El mayor esfuerzo de requerimientos es desarrollar un modelo del sistema a construir: Utilizar casos de uso. Los casos de uso se emplean para capturar el comportamiento deseado del sistema.
2.
Casos de Uso
Se crean con la captura de requerimientos, evolucionan y se usan durante todo el proceso: guan el proceso de desarrollo. Objetivos.
Definir los requisitos funcionales y operativos del sistema, diseando un escenario de uso acordado entre el usuario final y el equipo de desarrollo. Proporcionar una descripcin clara y sin ambigedades para el diseo. Proporcionar la base para la validacin de las pruebas.
Anlisis y Diseo de Sistemas - Clase 6 12
Estas transparencias proveen slo una referencia a los temas. Para su estudio remitirse a la bibliografa.
Universidad Nacional del Sur Departamento de Ciencias e Ingeniera de la Computacin Anlisis y Diseo de Sistemas 1er.Cuatrimestre de 2006.
Terminologa UML
Trabajador: representa una posicin que se puede asignar a una persona o equipo en una organizacin de desarrollo de software. Para cada trabajador se especifican las responsabilidades y habilidades requeridas. Artefacto: es un trmino general para cualquier clase de descripcin o informacin creada, producida, cambiada o usada por los trabajadores cuando trabajan con el sistema. Por ejemplo: un modelo, un elemento del modelo, etc. El principal artefacto usado en la captura de requerimientos es el modelo de casos de uso (MCU).
Anlisis y Diseo de Sistemas - Clase 6 14
Trabajadores y Artefactos
Trabajador: Analista de Sistemas Es responsable de ...
Arquitecto
Prioriza CU
Actores
Glosario
Especificador de CU
Detalla un CU
15
Diseador de Interfaces
16
Actores
El MCU describe lo que hace el sistema para cada tipo de usuario. Cada uno de stos se representa mediante uno o ms actores. Un actor puede representar a una persona fsica, otro sistema, un dispositivo. Representan a terceros fuera del sistema que colaboran con l. Un actor es como una clase, que se define por la descripcin de su comportamiento. Un usuario puede desempear varios papeles (roles), esto es, puede actuar como diferentes actores
Anlisis y Diseo de Sistemas - Clase 6 18
Estas transparencias proveen slo una referencia a los temas. Para su estudio remitirse a la bibliografa.
Universidad Nacional del Sur Departamento de Ciencias e Ingeniera de la Computacin Anlisis y Diseo de Sistemas 1er.Cuatrimestre de 2006.
Actores
La definicin de actores, sirve para definir el contexto externo del sistema, esto es, delimitar los elementos que se encuentran fuera y dentro del sistema. Un actor juega un rol para cada caso de uso en el que colabora. Cada vez que un usuario concreto interacta con el sistema, la instancia correspondiente de ese actor est jugando ese rol. Una instancia de un actor es un usuario especfico interactuando con el sistema.
Anlisis y Diseo de Sistemas - Clase 6 19
Actores Ejemplos
cliente
Casos de Uso
Casos de Uso
Representan las formas en la que los actores interactan con el sistema. Los CU son trozos de funcionalidad que el sistema ofrece para agregar un resultado de valor a sus actores. Un CU constituye una secuencia completa de mensajes, y que especifica la interaccin que tiene lugar entre un actor y el sistema.
Anlisis y Diseo de Sistemas - Clase 6 21
Ejemplo
Descripcin INFORMAL: CU Enviar Mail Secuencia bsica
armar el mensaje y enviarlo al servidor de correo para que lo distribuya a los destinatarios.
Descripcin de CU
El comportamiento de un caso de uso se puede especificar describiendo un flujo de eventos en forma textual: descripcin del caso de uso. La descripcin debe ser clara para que alguien ajeno al equipo de desarrollo lo entienda. Se debe incluir:
cmo y cundo empieza y se acaba el caso de uso, cundo interacta con actores y qu objetos se intercambian, el flujo bsico y los flujos alternativos.
23
24
Estas transparencias proveen slo una referencia a los temas. Para su estudio remitirse a la bibliografa.
Universidad Nacional del Sur Departamento de Ciencias e Ingeniera de la Computacin Anlisis y Diseo de Sistemas 1er.Cuatrimestre de 2006.
Casos de Uso
Casos de Uso
Una instancia de un CU, es la ejecucin particular de un CU. Cuando se ejecuta una instancia de un CU, se ejecuta una secuencia de acciones, como se especifica en el CU y siguiendo uno de los posibles caminos del CU. Mltiples caminos son posibles, y pueden ser muy similares. Son las alternativas de secuencias de accin para el caso de uso.
26
Ejemplo
Para el CU Extraer Dinero de un ATM
Instancia #1: Mara ingresa su PIN, solicita extraer $100, obtiene el dinero. Instancia #2: Juan ingresa su PIN, solicita extraer $400, se rechaza la transaccin por falta de fondos.
Casos de Uso
Los casos de uso poseen atributos. Los atributos representan los valores que una instancia de un CU utiliza y maneja durante la ejecucin. Ejemplo: en el CU de Extraer Dinero,
PIN, Nmero de cuenta, Importe de la extraccin.
Las instancias de los CU, no interactan entre s. Se piensa en las instancias de los CU como atmicas, es decir, que se ejecutan completamente o no, pero sin interferencias. Los conflictos entre la ejecucin de distintos CU simultneamente se resuelven en la etapa de diseo.
27 Anlisis y Diseo de Sistemas - Clase 6 28
Relaciones
Las relaciones identifican la comunicacin que existe entre:
Actores distintos. Casos de uso distintos. Actores-Casos de Uso.
30
Estas transparencias proveen slo una referencia a los temas. Para su estudio remitirse a la bibliografa.
Universidad Nacional del Sur Departamento de Ciencias e Ingeniera de la Computacin Anlisis y Diseo de Sistemas 1er.Cuatrimestre de 2006.
Organizacin de CU
Los CU se pueden organizar especificando relaciones de generalizacin, inclusin y extensin entre ellos. Estas relaciones sirven para:
Factorizar el comportamiento comn, extrayendo ese comportamiento comn de los CU en que se incluye. Factorizar variantes, poniendo ese comportamiento en otros CU que lo extienden.
Anlisis y Diseo de Sistemas - Clase 6 31
Organizacin de CU Generalizacin
La generalizacin puede existir entre CU. Significa que el CU hijo hereda el comportamiento y el significado del CU padre. Tanto el padre como el hijo pueden tener instancias concretas. La generalizacin entre CU se representa por una lnea continua con una punta de flecha vaca.
32
Generalizacin de CU Ejemplo
Ejemplo: los CUs Obtener Parmetros, Obtener Parmetros desde Archivo, Obtener Parmetros desde Pantalla.
Organizacin de CU Extensin
Una relacin de extensin entre CUs significa que un CU base incorpora implcitamente el comportamiento de otro CU. La extensin puede verse como que CU que extiende incorpora su comportamiento en el CU base. Una relacin de extensin se representa como una dependencia estereotipada con la palabra <<extend>>.
Anlisis y Diseo de Sistemas - Clase 6 35
Ejemplo
36
Estas transparencias proveen slo una referencia a los temas. Para su estudio remitirse a la bibliografa.
Universidad Nacional del Sur Departamento de Ciencias e Ingeniera de la Computacin Anlisis y Diseo de Sistemas 1er.Cuatrimestre de 2006.
Organizacin de CU Extensin
La relacin de extensin sirve para:
Modelar la parte de comportamiento que se ve como opcional. Modelar un subflujo separado que se ejecuta slo bajo determinadas condiciones. Modelar varios subflujos que se pueden insertar en un punto dado.
cliente
Cliente minorista
Anlisis y Diseo de Sistemas - Clase 6 37
Cliente mayorista
38
Organizacin de CU Paquetes
Cuando el nmero de CU es considerable como para manejarlos en un nico diagrama, UML propone agruparlos en paquetes. Cada paquete puede contener otros paquetes o varios CU.
Anlisis y Diseo de Sistemas - Clase 6 39
Descripcin de CU - Plantilla
Nombre: provee una identificacin nica. Resumen: describe en una o dos oraciones las interacciones que ocurrirn en el CU. Curso Bsico de Eventos: describe los pasos que los actores y el sistema debern realizar para lograr el objetivo del CU. Representa el camino correcto. Caminos Alternativos: muestra los caminos no tan comunes que se necesitan. Incluyen situaciones en las que se requiere un procesamiento especial.
Anlisis y Diseo de Sistemas - Clase 6 40
Descripcin de CU Plantilla
Tambin puede incluir:
Puntos de Extensin: muestra el paso en que el CU puede extenderse, y el CU que lo realiza. Precondiciones y Poscondiciones. Reglas de negocio relacionadas:
41
Estas transparencias proveen slo una referencia a los temas. Para su estudio remitirse a la bibliografa.
Universidad Nacional del Sur Departamento de Ciencias e Ingeniera de la Computacin Anlisis y Diseo de Sistemas 1er.Cuatrimestre de 2006.
Descripcin de CU
Segn la metodologa que sigue el Proceso Unificado de Desarrollo de Software, los casos de uso son documentos que participan en todo el proceso del software. El modelo de CU evoluciona junto con el proyecto. Los primeros diagramas de CU, maduran a lo largo del proyecto en la medida que se tiene ms conocimiento del problema. Lo mismo ocurre con la descripcin (niveles de abstraccin). Es importante definir convenciones.
Anlisis y Diseo de Sistemas - Clase 6 44
Nombre: Extraer dinero de un ATM. Resumen: Un cliente extrae dinero de un ATM. Curso Bsico de Eventos:
Ejemplo
CU Extraer dinero de ATM. Curso bsico de eventos:
El cliente ingresa su clave personal y el importe a extraer. El sistema valida los datos y le entrega el dinero, comprobante y tarjeta.
1. El cliente ingresa su clave personal. 2. El sistema valida la clave. 3. El cliente ingresa el importe a extraer. 4. El cliente confirma la operacin 5. El sistema valida la operacin. 6. El sistema entrega el dinero. 7. El sistema entrega el comprobante de la operacin. 8. El sistema entrega la tarjeta. 9. Finalizar.
Caminos alternativos:
2.1 La clave es incorrecta.
Si el cliente se equivoc menos de tres veces
Volver a 1
Caminos Alternativos:
La clave es incorrecta. El cajero no tiene dinero. El importe no es vlido.
Anlisis y Diseo de Sistemas - Clase 6 45
Sino
Quitar tarjeta. Contina en 9.
E J E M P L O
46
Casos de Uso
Los casos de uso sirven para:
Definir el alcance o contexto de problema, determinar el contexto y que parte queda fuera del sistema. Definir la vista de la arquitectura de un sistema, para planificar iteraciones y priorizar casos de uso. Como herramienta de comunicacin con los trabajadores del negocio.
Anlisis y Diseo de Sistemas - Clase 6 47
Bibliografa
El Proceso Unificado de Desarrollo de Software.
Jacobson, Booch, Rumbaugh - Captulo 7.
Estas transparencias proveen slo una referencia a los temas. Para su estudio remitirse a la bibliografa.