Manual Ads1 Compress
Manual Ads1 Compress
de Sistemas I
ANÁLISIS Y DISEÑO DE SISTEMAS I 2
Página
Índice
Presentación 5
Red de contenidos 7
Unidad de Aprendizaje 1
INGENIERÍA DE SOFTWARE, RUP Y UML 9
1.1 Tema 1 : Ingeniería de Software, Metodología RUP y UML 11
1.1.1. : Elementos claves de la Ingeniería de Software 12
1.1.2. : Las fases genéricas de un proceso de software 13
1.1.3. : Modelos de Proceso de Software 14
1.1.4. : Metodología RUP (Rational Unified Process -RUP) 19
1.1.5 : Mejores Prácticas de RUP 20
1.1.6. : Estructura de RUP 22
1.1.7. : Modelamiento Visual empleando el (UML) 25
1.1.8. : El Lenguaje de Modelamiento Unificado 26
1.1.9. : Diagramas de UML 2.0 30
1.2 Tema 2 : Herramienta Case y Entorno de IBM RSA 39
1.2.1. : Objetivos de las herramientas C.A.S.E. 39
1.2.2. : Tipos de herramientas C.A.S.E. 39
1.2.3. : Ejemplos de herramientas C.A.S.E. 39
1.2.4 : Rational Software Architect 42
Unidad de Aprendizaje 2
DISCIPLINA DEL MODELADO DEL NEGOCIO 43
2.1 Tema 3 : Modelado del Negocio 45
2.1.1. : ¿Cuándo será necesario hacer el Modelado de Negocio? 45
2.1.2. : ¿Cuándo no será necesario hacer el Modelado de Negocio? 46
2.1.3. : Actividades para realizar un Modelado de Negocio 46
2.2 Tema 4 : Modelo de Casos de uso del Negocio 48
2.2.1. : Determinar la situación de la organización 48
2.2.2. : Identificar los procesos de negocio 48
2.2.3. : Refinar las definiciones de los procesos de negocio 48
2.2.4. : Artefactos del Modelo de Casos de uso del negocio 49
Unidad de Aprendizaje 3
DISCIPLINA DE LA CAPTURA DE REQUISITOS 63
3.1 Tema 6 : Captura de requisitos 65
3.1.1. : Artefactos de la Captura de Requisitos 65
3.1.2. Actividades para realizar la Captura de Requisitos 67
3.1.3. : Requerimientos 68
3.1.4. Requisitos FURPS 69
3.1.5. Técnicas para capturar requisitos 72
3.1.6. : Captura de requisitos a solicitud del cliente 76
3.1.7. : Captura de requisitos a partir del diagrama de actividades del 77
negocio
3.2 Tema 7 : Modelo de casos de uso. 84
3.2.1. : Encontrar actores y casos de uso 85
3.2.2. Encontrar actores 85
3.2.3. : Encontrar casos de uso 88
3.2.4. Crear el Diagrama de casos de uso 90
3.3 Tema 8 : Estructurando el modelo de casos de uso. 94
3.3.1. : Objetivos 94
3.3.2. Tipos de relaciones 95
3.3.3. Casos de uso abstractos y concretos 98
3.3.4. : Especificaciones de casos de uso 100
3.3.5. : Priorización de los Casos de Uso 108
Presentación
Análisis y Diseño de Sistemas I pertenece a la línea formativa y se dicta en las
carreras de Computación e Informática, Administración y Sistemas. El curso
imparte conocimientos relacionados con el proceso de Ingeniería de Software
Orientado a Objetos que permite a los alumnos utilizar una metodología y el
lenguaje de modelamiento unificado para desarrollar un software de calidad.
Red de contenidos
Modelo de
Análisis del Estructuración del
Negocio modelo de casos
de uso
UNIDAD
1
INGENIERÍA DE SOFTWARE,
METODOLOGÍA RUP Y UML
LOGRO DE LA UNIDAD DE APRENDIZAJE
Al término de la unidad, el alumno, a partir del correcto entendimiento de la
importancia del papel que cumple la Ingeniería de Software dentro de las
organizaciones, describe las ventajas y desventajas de los modelos de
procesos de desarrollo de software y la importancia de emplear metodología
RUP para el correcto modelado del ciclo de vida de un software. Asimismo, el
alumno describe los diagramas de UML y utiliza la herramienta CASE Rational
Software Architect.
TEMARIO
1.1 Tema 1 : Ingeniería de Software, Metodología RUP y UML
1.1.1. : Elementos claves de la Ingeniería de Software
1.1.2. : Las fases genéricas de un proceso de software
1.1.3. : Modelos de Proceso de Software
1.1.4. : Metodología RUP (Rational Unified Process - RUP)
1.1.5. : Mejores Prácticas de RUP
1.1.6. : Estructura de RUP
1.1.7. : Modelamiento Visual empleando el (UML)
1.1.8. : El Lenguaje de Modelamiento Unificado
1.1.9. Diagramas de UML
1.2 Tema 2 : Herramienta Case y Entorno de IBM RSA
1.2.1. : Objetivos de las herramientas C.A.S.E.
1.2.2. : Tipos de herramientas C.A.S.E.
1.2.3. : Ejemplos de herramientas C.A.S.E.
1.2.4. : Rational Software Architect
ACTIVIDADES PROPUESTAS
Los alumnos resuelven un caso para aplicar los diagramas de UML.
La ingeniería de software puede ser definida de múltiples maneras. Es por ello que
existen muchas definiciones expuesta por autores acreditados que comenzaron en su
momento a utilizar el término, entre ellos Bauer, Boehm, Zelkovitz y Sommerville y
otras dadas por organismos internacionales profesionales de prestigio tales como
IEEE2 o ACM3. Más adelante la definición fue incluyendo el término de calidad,
mejorando así la definición de la Ingeniería de Software.
1.1.1.1 Paradigmas
Un paradigma representa un enfoque particular o filosofía para la construcción de
software. Cada uno tiene ventajas y desventajas, es por ello que hay situaciones
donde un paradigma resulta más apropiado que otro.
1.1.1.2 Estrategias
Se denominan estrategias para el desarrollo de software a las distintas maneras en
que se ordena la ejecución de las actividades requeridas para producir software.
1.1.1.4 Herramientas
Son instrumentos que suministran un soporte automático o semiautomático para el
proceso y para los métodos. Cuando se integran las herramientas de forma que la
información creada por una herramienta pueda ser usada por otra, se establece un
sistema para el soporte de desarrollo del software, llamado ingeniería del software
asistida por computadora (CASE, en inglés). CASE combina software, hardware y
bases de datos sobre la ingeniería del software (una estructura de datos que contenga
la información relevante sobre el análisis, diseño, codificación y prueba) para crear un
entorno de ingeniería del software análogo al diseño/ingeniería asistido por
computadora, CAD/CAE para el hardware.
1.1.1.5 Procesos
Los procesos son la combinación de estrategias, métodos y herramientas, que en
forma conjunta dan un resultado particular. Los procesos indicarán qué herramientas
deberán utilizarse y cuándo se aplican determinados métodos o técnicas. Definen la
secuencia en que se aplican los métodos, los documentos que se requieren, los
controles que aseguren la calidad y las mejores prácticas que permiten a los gestores
a evaluar los progresos. Concretamente, el proceso de desarrollo de software define
quién va a hacer qué, cuándo hacerlo y cómo alcanzar un cierto objetivo.
DEFINICIÓN
DESARROLLO
Fallos de definición
MANTENIMIENTO
Errores
Modificaciones y adaptaciones
Con este modelo se reduce el riesgo de construir productos que no satisfagan las
necesidades del usuario. Por otro lado, reduce costos y aumenta la probabilidad de
éxito. Pero el problema es que el cliente se sienta decepcionado por no permitirle usar
la primera versión del prototipo o que el desarrollador se sienta tentado en aumentar el
prototipo para construir el sistema final sin tener en cuenta cuestiones de calidad.
El cliente prueba la
maqueta
Este modelo es apropiado para proyectos de larga duración que no consuman muchos
recursos y como el producto va desarrollándose incrementalmente, se puede financiar
el proyecto por partes.
Dado que los requisitos cambian es muy probable que una vez haya comenzado la
fase de diseño, sea necesario incorporar cambios. En estos casos No se debe detener
el diseño, sino que se debe continuar “si es posible” al mismo tiempo que se modifican
los requisitos. Por lo tanto en este modelo, diversas actividades pueden estar
ocurriendo concurrentemente.
Por otro lado, RUP describe cómo aplicar efectivamente enfoques comprobados
comercialmente para el desarrollo de software. Estos enfoques son llamados "mejores
prácticas" pues son utilizados en la industria por organizaciones exitosas.
Desarrollo Iterativo
Administración Verificación
de Requisitos Modelamiento Continua de la
Visual Calidad
Control de Cambios
Desarrollo Iterativo
En función de la cada vez mayor complejidad solicitada para los sistemas de software,
ya no es posible trabajar secuencialmente, es decir, definir primero el problema
completo, luego diseñar toda la solución, construir el software y finalmente, testear el
producto. Es necesario un enfoque iterativo, que permita una comprensión creciente
del problema a través de refinamientos sucesivos, llegando a una solución efectiva
luego de múltiples iteraciones acotadas en complejidad.
RUP utiliza y soporta este enfoque iterativo que ayuda a atacar los riesgos mediante la
producción de releases ejecutables progresivos y frecuentes que permiten la opinión e
involucramiento del usuario.
Administración de Requisitos
Los requisitos son las condiciones o capacidades que el sistema debe conformar. La
Administración de Requisitos es un enfoque sistemático para hallar, documentar,
organizar y monitorear los requisitos cambiantes de un sistema.
Las nociones de Casos de Uso y de Escenarios utilizadas en RUP han demostrado ser
una manera excelente de capturar los requisitos funcionales y asegurarse que dirigen
el diseño, la implementación y la prueba del sistema, logrando así que el sistema
satisfaga las necesidades del usuario.
Modelamiento Visual
RUP muestra como representar el software visualmente para capturar la estructura y
comportamiento de arquitecturas y componentes. Las abstracciones visuales ayudan a
comunicar diferentes aspectos del software; comprender los requisitos, ver como los
elementos del sistema se relacionan entre sí, mantener la consistencia entre diseño e
implementación y promover una comunicación precisa. El estándar UML (Lenguaje de
Modelado Unificado), creado por Rational Software, es el cimiento para un
modelamiento visual exitosa.
Control de Cambios
La capacidad de administrar los cambios es esencial en ambientes en los cuales el
cambio es inevitable. RUP describe como controlar, rastrear y monitorear los cambios
para permitir un desarrollo iterativo exitoso. Es también una guía para establecer
espacios de trabajo seguros para cada desarrollador, suministrando el aislamiento de
los cambios hechos en otros espacios de trabajo y controlando los cambios de todos
los elementos de software (modelos, código, documentos, etc.). Describe como
automatizar la integración y administrar la conformación de releases.
RUP es un proceso que puede describirse en dos dimensiones, tal como se muestra
en la figura 1.11, a lo largo de dos ejes:
1.1.6.1. Fases
RUP divide el proceso en cuatro fases, dentro de las cuales se realizan varias
iteraciones en número variable según el proyecto y en las que se desarrolla en mayor
o menor proporción los distintos flujos de trabajo:
Existen dos grupos de flujos de trabajo: de proceso y de apoyo. Las que se describirán
a continuación.
Analistas:
Analista de procesos de negocio.
Diseñador del negocio.
Analista de sistema.
Especificador de requisitos.
Desarrolladores:
Arquitecto de software
Diseñador
Diseñador deinterfaz de usuario
Diseñador de cápsulas
Diseñador de base de datos
Implementador
Integrador
Gestores:
Jefe deproyecto
Jefe de control de cambios
Jefe de configuración
Jefede pruebas
Jefe de despliegue
Ingeniero de procesos
Revisor degestión del proyecto
Gestor de pruebas
Apoyo:
Documentadortécnico
Administrador de sistema
Especialista enherramientas
Desarrollador de cursos
Artistagráfico
Especialista en pruebas:
Especialista en Pruebas(Tester)
Analista de pruebas
Diseñador de pruebas
Otros roles:
Stakeholders
Revisor
Coordinación derevisiones
Revisor técnico
Por otro lado, un modelo se considera como útil si presenta las siguientes
características:
Luego de varios años y varias modificaciones, OMG adoptó la versión oficial de UML
2.0 a principios del año 2005, versión que integra varios esfuerzos para la
definición de una semántica de la especificación más sólida. UML es evolutivo,
actualmente va por la versión 2.4.1. la cual fue liberada en Agosto 2011. UML 2.5 fue
lanzado en octubre de 2012 como una versión "En proceso" y todavía tiene que ser
formalmente liberada.
¿Qué es la OMG?
La OMG (Object Management Group) es una asociación sin fines de lucro formada por
grandes corporaciones, muchas de ellas de la industria del software, como por
ejemplo: IBM, Apple Computer, Sun Microsystems Inc y Hewlett-Packard. Esta
asociación se encarga de la definición y mantenimiento de estándares para
aplicaciones de la industria de la computación. Otro de los estándares definidos por la
OMG, además del UML, es CORBA, el cual permite interoperabilidad multiplataforma a
nivel de objetos de negocio.
Para lograr los objetivos de UML enunciados en el punto anterior, varios aspectos del
lenguaje fueron reestructurados y/o modificados. La especificación se separó en
cuatro especificaciones (paquetes) bien definidas, tal como se muestra en la siguiente
figura.
1.1.8.4 Supraestructura
La superestructura del UML es la definición formal de los elementos del UML Es
aquí donde se definen los diagramas y los elementos que los componen. Esta
definición sola contiene más de 640 páginas. La superestructura es utilizada por los
desarrolladores de aplicación. Es aquella sobre la que hablan los libros y la que la
mayoría conoce de versiones anteriores del UML.
Se encuentra dividida en niveles. Estos niveles se conocen como:
Básico (L1): Contiene los elementos básicos del UML 2.0, entre ellos: Diagramas
de clases, Diagramas de actividades, Diagramas de Interacciones, y Diagramas
de Casos de Uso
Intermedio (L2): Contiene los siguientes diagramas: Diagramas de estado,
Perfiles, Diagramas de Componentes y Diagramas de despliegue.
Completo (L3): Representa la especificación del UML 2.0 completa, como por
ejemplo: las Acciones, Características avanzadas y PowerTypes, entre otros.
Es importante destacar que basta con que una herramienta implemente el nivel de
conformidad Básico (L1), para que se considere UML 2.0 compatible. Por eso, es
normal ver una disparidad de características (features) bastante amplia entre dos
herramientas distintas, aunque éstas sean UML 2.0 compatibles.
1.1.8.5 Infraestructura
En la Infraestructura del UML se definen los conceptos centrales y de más bajo nivel.
La Infraestructura es un meta-modelo (un modelo de modelos) y mediante la misma se
modela el resto del UML. Generalmente, la infraestructura no es utilizada por usuarios
finales del UML; pero provee la piedra fundamental sobre la cual la
Superestructura es definida. La Infraestructura brinda también varios mecanismos
de extensión, que hacen del UML un lenguaje configurable. Para los usuarios
normales del UML basta con saber si la infraestructura existe y cuáles son sus
objetivos.
1.1.8.6 OCL
OCL son siglas en inglés que significan: Object Constraint Language y que en
castellano se traducen como: Lenguaje de Restricciones de Objetos. El OCL define
un lenguaje simple, para escribir restricciones y expresiones sobre elementos
de un modelo. El OCL suele ser útil cuando se está especificando un dominio
particular mediante el UML y es necesario restringir los valores permitidos para los
objetos del dominio. El OCL brinda la posibilidad de definir invariantes, precondiciones,
poscondiciones y restricciones en los elementos de un diagrama. Fue incorporado a
UML en la versión 1.1. Originalmente, fue especificado por IBM y es un ejemplo más
de las muchas herramientas agregadas a UML.
La siguiente clasificación es la más habitual basada en las fases del ciclo de desarrollo
que cubren:
La versión actual del Rational Software Architect es 8.0.1 la cual trae una mejora en
cuanto a creación de modelos y diagramas se refiere.
UNIDAD
2
DISCIPLINA DEL MODELADO
DEL NEGOCIO
LOGRO DE LA UNIDAD DE APRENDIZAJE
Al término de la unidad, el alumno sustentará el primer avance de su proyecto,
acerca del Modelado de negocio de la empresa en estudio, el cual está
conformado por el Modelo de casos de uso del negocio, en el que identificará
los objetivos, casos de uso y actores del negocio, y realizará el diagrama
general de casos de uso del negocio, mientras que para el Modelo de análisis
del negocio, a los trabajadores y entidades, y realizará los diagramas de clases
y de actividades del negocio.
TEMARIO
2.1 Tema 3 : Modelado del Negocio
2.1.1. : ¿Cuándo será necesario hacer el Modelado de Negocio?
2.1.2. : ¿Cuándo no será necesario hacer el Modelado de Negocio?
2.1.3. : Actividades para realizar un Modelado de Negocio
2.2 Tema 4 : Modelo de Casos de uso del Negocio
2.2.1. : Determinar la situación de la organización
2.2.2. : Identificar los procesos de negocio
2.2.3. : Refinar las definiciones de los procesos de negocio
2.2.4. : Artefactos del Modelo de Casos de uso del negocio
2.3 Tema 5 : Modelo de Análisis de Negocio
2.3.1. : Diseñar las realizaciones de los procesos de negocio
2.3.2. : Artefactos del Modelo de Análisis dl negocio
ACTIVIDADES PROPUESTAS
Los alumnos desarrollan el Modelo de casos de uso del negocio de un proceso
de negocio.
Los alumnos desarrollan el Modelo de análisis del negocio de un proceso de
negocio.
Por consiguiente, el Modelo del Negocio proporciona una vista estática de la estructura
de la organización y una vista dinámica de los procesos dentro de la organización.
Los creadores de RUP señalan que el modelo de negocio está soportado por dos
artefactos principales:
Modelo de casos de uso del negocio.
Modelo de análisis del negocio.
Según RUP, el Modelado de Negocio comprende las siguientes actividades: (Ver figura 2.2)
Determinar la situación de la organización
Describir el actual negocio
Identificar los procesos de negocio
Refinar las definiciones de los procesos de negocio
Diseñar las realizaciones de los procesos de negocio
Refinar roles y responsabilidades
Explorar procesos automatizados
Desarrollar un modelado de dominio
Los pasos que contemplaremos para obtener el Modelo de casos de uso del negocio
son:
Determinar la situación de la organización
Identificar los procesos de negocio
Refinar las definiciones de los procesos de negocio
Por último, la actividad que ejecutaremos para obtener el Modelo de análisis del
negocio es:
Diseñar las realizaciones de los procesos de negocio
Requiere haber identificado los objetivos del negocio. El equipo de trabajo debe tener
claras las fronteras del negocio que está describiendo. Para ello debe identificar y
priorizar los casos de uso del negocio y los actores de negocio involucrados.
Por cada caso de uso del negocio, se realiza una Especificación de Caso de Uso del
Negocio, conocido comúnmente como BUCS (Business Use Case Specification) por
las iniciales en inglés. En este documento se indica una descripción breve del proceso
de negocio.
Para describir los actores del negocio y mostrar mediante un diagrama de casos de
uso del negocio su asociación con los casos de uso de negocio encontrados se utiliza
el artefacto Actores del Negocio.
Consiste en:
a) Detallar la definición de los casos de uso del negocio.
b) Describir cómo los casos de uso del negocio soportan los objetivos de negocio.
c) Verificar que los casos de uso del negocio representan correctamente cómo el
negocio es conducido.
Artefacto Descripción
Documento que contiene la visión del negocio, un
glosario de términos del negocio, los objetivos del
negocio y reglas del negocio.
Situación del Negocio
Business Actor
Representa la vista externa del negocio.
Es un modelo que describe la dirección e intención del
negocio. La dirección es provista por los objetivos del
negocio. Mientras que la intención es expresada por los
diagramas que permiten ver cómo interactuar con el
entorno.
Business Use Case Model
Reporte que contiene información de los actores del
negocio identificados en el modelo de casos de uso del
negocio.
Business Actor
Documento que contiene las características de un
proceso de negocio. Se realiza una especificación por
cada caso de uso de negocio.
Business Use-Case
Specification
Es una política o condición que debe ser satisfecha por
el negocio. Ejm:
“ El pago de planillas se realizará los días 25 de cada
mes y vía depósito en cuenta bancaria.”
Reglas de negocio
Consiste en identificar todos los roles, productos, entregables del negocio y describir
cómo el proceso del negocio será llevado a cabo por los trabajadores y las entidades
dentro del negocio.
Además se crea el artefacto Entidades del Negocio para describir las entidades del
negocio y especificar, mediante diagramas de estado, los estados de cada una de las
entidades.
Artefacto Descripción
Un trabajador del negocio es un rol interno al
negocio. Colabora con trabajadores de otro
sector, es notificado de acontecimientos del
negocio y manipula entidades de negocio para
Business Worker
realizar sus responsabilidades.
Business Entity
Colección de diagramas que muestra cómo los
trabajadores del negocio y entidades del negocio
llevan a cabo el caso de uso del negocio.
Generalmente se utilizan Diagramas de Clases,
Diagramas de Actividades y Diagramas de
Business Use Case Colaboración para realizar el detalle de cada
Realization proceso de negocio.
El cliente se dirige a caja y el cajero le solicita el ticket de pedido para que le genere el
comprobante de pago. El cajero le pregunta al cliente la forma de pago, efectivo o
tarjeta, si el cliente informa que pagara en efectivo le solicita el dinero y genera el
comprobante de pago, si el cliente informa que es tarjeta, el cajero le solicitara la
tarjeta (Crédito o débito) y su DNI para pasar la tarjeta por el terminal de POS y
generar el Boucher, luego de ello le genera el comprobante de pago al cliente.
Ya con el comprobante el cliente se dirige al vendedor para que le haga entrega del
producto.
GLOSARIO
Las tarjetas de débito pueden utilizarse para disponer de efectivo en las sucursales
bancarias y cajeros automáticos, consultar el saldo y los movimientos de la cuenta
asociada.
Flujo Trabajo
Flujo Básico
1. El cliente solicita el electrodoméstico que se encuentra en vitrina.
2. El vendedor verifica existencia del electrodoméstico.
3. Si existe, el vendedor muestra el electrodoméstico al cliente.
4. El cliente evalúa el electrodoméstico.
5. Si está de acuerdo con el electrodoméstico ofrecido, el vendedor genera el
ticket de pedido.
6. El vendedor emite el ticket de pedido al cliente.
7. El cliente entrega el ticket de pedido al cajero
8. El cajero pregunta forma de pago Efectivo o tarjeta
9. Si el cliente responde efectivo ,entrega el dinero
10. El cajero genera el comprobante de pago.
11. El cajero emite el comprobante de pago al cliente.
12. El cliente entrega la copia del comprobante al vendedor.
13. El vendedor sella el comprobante y entrega el electrodoméstico.
14. El cliente recibe el electrodoméstico y finaliza el proceso.
Flujos alternativos
.En el punto 3, si no hay stock disponible, el vendedor le ofrece un electrodoméstico
sustituto al cliente y continúa con el paso 4.
1. En el punto 5, si no está de acuerdo con el electrodoméstico ofrecido, termina
el proceso.
2. En el punto 9, el cliente puede pagar con tarjeta crédito o débito:
a. Si el cliente responde pago con tarjeta
b. El cajero solicita la tarjeta al usuario.
c. El cliente entrega tarjeta y DNI.
d. El cajero pasa la tarjeta por el terminal POS.
e. Si es con tarjeta de crédito:
i. El terminal de POS genera el Boucher.
ii. El Servicio de Banca actualiza la cuenta de la empresa.
iii. El cajero entrega el Boucher para su firma.
iv. El cliente firma el Boucher.
f. Si es con tarjeta de débito:
i. El cliente ingresa su clave secreta en el terminal POS
ii. El terminal de POS genera el Boucher.
iii. El Servicio de Banca actualiza la cuenta del cliente.
g. El cajero genera el CDP, entrega el CDP y el Boucher al cliente.
h. El caso de uso continúa en el paso 12.
5. Actores de negocio
ACTIVIDADES PROPUESTAS
Desarrolle el siguiente caso propuesto
Flujo de Trabajo
Flujo Básico
1. El Gerente General solicita al asistente iniciar el sorteo
2. El asistente de sorteo genera la lista de clientes al día en sus cuotas.
3. El asistente de sorteo genera un boleto por cada cliente
4. El asistente de sorteo entrega la lista de clientes y los boletos al jefe de
sorteos.
5. El jefe de sorteos ingresa los boletos en un ánfora.
6. El jefe de sorteo saca del ánfora el boleto ganador y llama al cliente
7. El cliente se acerca con su certificado de Pandero.
Resumen
El Modelado del negocio es una técnica para comprender los procesos de negocio
de la organización objetivo.
Si desea saber más acerca de estos temas, puede consultar las siguientes
páginas.
http://www-128.ibm.com/developerworks/rational/library/5167.html
Aquí hallará una descripción de los elementos del modelado de negocio.
UNIDAD
3
DISCIPLINA DE LA CAPTURA DE
REQUISITOS
LOGRO DE LA UNIDAD DE APRENDIZAJE
Al término de la unidad, los alumnos, trabajando en equipo, elaborarán y sustentarán su
proyecto final sobre el modelado del negocio y la captura de requisitos, en el que
identifica el modelo de casos de uso del negocio, el modelo de análisis del negocio, y el
modelo de casos de uso con sus respectivos artefactos, aplicando la metodología RUP,
el lenguaje de modelado UML y la herramienta IBM Rational Software Architect.
TEMARIO
3.1 Tema 6 : Captura de requisitos
3.1.1. : Artefactos de la Captura de Requisitos
3.1.2. Actividades para realizar la Captura de Requisitos
3.1.3. : Requerimientos
3.1.4. Requisitos FURPS
3.1.5. Técnicas para capturar requisitos
3.1.6. : Captura de requisitos a solicitud del cliente
3.1.7. : Captura de requisitos a partir del diagrama de actividades del negocio
3.2 Tema 7 : Modelo de casos de uso.
3.2.1. : Encontrar actores y casos de uso
3.2.2. Encontrar actores
3.2.3. : Encontrar casos de uso
3.2.4. Crear el Diagrama de casos de uso
3.3 Tema 8 : Estructurando el modelo de casos de uso.
3.3.1. : Objetivos
3,3,2. Tipos de relaciones
3.3.3. Casos de uso abstractos y concretos
3.3.4. : Especificaciones de casos de uso
3.3.5. : Priorización de los Casos de Uso
ACTIVIDADES PROPUESTAS
Los alumnos clasificarán los requisitos de una lista propuesta según las categorías
descritas por el modelo FURPS+.
Los alumnos identifican los requisitos funcionales a partir de un Diagrama de
Actividades del Negocio
Los alumnos identifican actores y casos de uso a partir de un caso propuesto.
Los casos de uso proporcionan un medio intuitivo y sistemático para capturar los
requisitos funcionales con un énfasis especial en el valor añadido para cada usuario
individual o para cada sistema externo.
La propuesta del curso, para una solución de mediana envergadura, es crear los
artefactos proporcionados en la tabla 3.1.
Artefacto Descripción
Documento que define la opinión de los stakeholders del
producto que se desarrollará, especificada en términos de
necesidades y características claves de los stakeholders.
Vision Contiene un esquema de los requisitos previstos, el cual
proporciona la base contractual para los requisitos técnicos
más detallados.
La Especificación de Requisitos de Software es un
documento que enfoca la organización completa de los
requisitos del proyecto.
Software Requirements Comúnmente conocido como SRS por sus iniciales en
Specification inglés. Contiene la lista de requerimientos funcionales y no
funcionales.
Es una colección de casos de uso, de actores, de relaciones,
de diagramas, y de otros paquetes de ser necesario; es
utilizado para estructurar el modelo de casos de uso
Use-Case Package dividiéndolo en piezas más pequeñas.
Es un proceso específico del sistema con identidad propia, el
cual define una secuencia de acciones que el sistema realiza
para un actor en particular.
Use Case
Actor
Es un modelo que captura los requisitos funcionales de los
usuarios a un alto nivel y establece la estructura fundamental
del sistema. Es un input esencial para las actividades en
Use Case Model análisis, diseño y pruebas.
Actor
Para determinar el alcance inicial del proyecto, los límites del sistema deben ser
definidos. El analista de sistema identifica usuarios y sistemas, representado por
actores, los cuales interactúan con el sistema. En este caso, el analista crea el Modelo
de Casos de Uso que contendrá sólo los actores.
Los stakeholders son un grupo de interés cuyas necesidades deben ser satisfechas
por el proyecto. El papel puede ser desempeñado por cualquier persona que es (o
será potencialmente) afectado por los resultados del proyecto. Por lo tanto, son
fuentes de requisitos. Por ejemplo: usuarios finales del sistema, gerentes, accionistas,
reguladores quiénes certifican la aceptabilidad del sistema.
3.1.3. Requerimientos
Un requerimiento se define como una condición o capacidad a la que debe ajustarse el
sistema que se construye para satisfacer un contrato, norma, especificación u otro
documento formalmente impuesto.
El proceso de recopilar, analizar y verificar las necesidades del cliente o usuario para
un sistema es llamado ingeniería de requisitos. La meta de la ingeniería de requisitos
(IR) es entregar una especificación de requisitos de software correcta y completa.
Por otro lado, Somerville define que “La ingeniería de requisitos es el proceso de
desarrollar una especificación de software. Las especificaciones pretenden comunicar
las necesidades del sistema del cliente a los desarrolladores del sistema”.
Funcionalidad (Functionality)
Facilidad de Uso (Usability)
Confiabilidad (Reliability)
Rendimiento (Performance)
Soporte (Supportability)
El símbolo "+" en FURPS+ hace referencia a que se deben incluir otros requisitos,
tales como:
Restricciones de diseño
Requisitos de implementación
Requisitos de interfaz
Requisitos físicos
3.1.4.1 Funcionales
Los requisitos funcionales deben incluir:
Conjunto de características
Capacidades
Seguridad
Por ejemplo:
R1: El sistema deberá proporcionar ayudas en línea para orientar en el uso de las
interfaces.
R2: Maximizar eficiencia mediante la navegación con teclado.
R3: El sistema debe tener interfaces gráficas de administración y de operación en
idioma español y en ambiente 100% Web, para permitir su utilización a través de
navegadores de Internet
3.1.4.3 Confiabilidad
Frecuencia de fallos
Capacidad de recuperación a fallos
Posibilidades de predicción del programa
Precisión
Tiempo medio de fallos
Por ejemplo:
R1: El sistema debe registrar los pagos a crédito autorizados que se hagan a las
cuentas por cobrar en un plazo de 24 horas, aun cuando se produzcan fallas de
energía o del equipo.
R2: La cuenta del usuario se bloqueará por un lapso de 30 minutos luego de 4 intentos
fallidos para evitar vulnerabilidades en la seguridad del sistema.
3.1.4.4 Rendimiento
Condiciones impuestas a requisitos funcionales y son tales como:
Velocidad
Eficiencia
Disponibilidad
Tiempo de Respuesta
Tiempo de Recuperación
Uso de recursos
Por ejemplo:
R1: El tiempo máximo para mostrar el reporte de cuentas por cobrar mediante un
histograma es de 20 segundos.
R2: El sistema debe estar disponible al 100% o muy cercano a esta disponibilidad
durante el horario hábil laboral de la empresa a nivel nacional, es decir, de lunes a
viernes de 8:00 a.m. a 5:00 p.m., con excepción de los días festivos.
3.1.4.5 Soporte
Es la capacidad que tiene el software de ser modificado fácilmente para adecuar
mejoras o cambios. Incluye:
Adaptabilidad
Facilidad de mantenimiento
Compatibilidad
Configurabilidad
Facilidad de instalación
Internacionalización
Por ejemplo:
R1: El sistema debe operar de manera independiente del navegador que se utilice
(Microsoft Internet Explorer 6.0 o superior, Netscape 6.0 o superior, Mozilla
FireFox).
R2: El sistema deberá estar orientado a que las actualizaciones sólo se hagan en el
sitio del servidor.
Por ejemplo:
Estándares requeridos
Lenguajes de implementación
Políticas para la integridad de Bases de Datos
Límite de recursos
Ambientes de Operación
Por ejemplo:
R1: El sistema debe desarrollarse con el lenguaje JAVA V1.6.
Por ejemplo:
R1: El sistema deberá proporcionar, para los diferentes reportes solicitados, salidas
en documentos electrónicos (Word, Excel o Acrobat Reader).
R2: En una visión preliminar de impresión se consideraría que todos los textos estarán
relacionados con un visor de PDF, las estadísticas y resultados de consultas estarán
relacionados con Excel 2003.
Por ejemplo:
R1: Para que un cliente de la aplicación pueda ejecutar procesos, en línea, considerados
en el sistema el punto de acceso deberá cumplir con los siguientes requisitos
mínimos.
o Procesador 1.0 GHz.
o Memoria 128 MB.
o Disco duro 10 GB.
o Sistema Operativo Windows XP o Linux.
o Navegador internet Explorer 6.0 o posterior, Mozilla Firefox
2.X, Netscape Navigator 6.X o posterior con plugins para
Macromedia Flash y Java.
o Conexión a Internet. mínimo 56Kbps
3.1.5.1 Entrevistas
Utilizada para reunir información proveniente de una persona o de un grupo de
personas. Generalmente, los encuestados son usuarios de los sistemas existentes o
usuarios en potencia del sistema propuesto. En algunos casos, son gerentes o
empleados que proporcionan datos para el sistema propuesto o que serán afectados
por él.
El éxito de esta técnica, depende de la habilidad del entrevistador para crear un clima
de confianza y de su preparación para la misma. Después de la entrevista, se debe
analizar la información obtenida y construir algunos requisitos candidatos.
3.1.5.2 Cuestionarios
Los cuestionarios pueden ser un suplemento de utilidad para las entrevistas. Son
excelentes para conseguir respuestas a preguntas cerradas. Puede descubrir
preguntas claves a partir de las entrevistas e incorporar éstas en un cuestionario que
puede distribuir a una audiencia más amplia. Esto le puede ayudar a validar su
entendimiento de los requisitos.
Por el tipo de preguntas que contiene, existen dos tipos de cuestionarios: abiertos y
cerrados.
Abiertos: No presuponen ninguna respuesta particular y animan al entrevistado a
hablar sobre el problema para obtener opiniones y/o referencias.
Cerrados: Limitan las respuestas posibles a través de un estilo cuidadoso en la
pregunta.
SI/NO
¿Cree que se cometen muchos errores en la codificación de los números de cuenta en
las facturas?
SI
NO
DE ACUERDO/EN DESACUERDO
¿Se cometen muchos errores al codificar os números de cuenta en las facturas?
DE ACUERDO
EN DESACUERDO
ESCALAS
¿Se cometen muchos errores al codificar los números de cuenta en las facturas?
TOTALMENTE DE ACUERDO
DE ACUERDO
NO ESTOY SEGURO
EN DESACUERDO
TOTALMENTE EN DESACUERDO
NÚMERO
De cada 100 facturas que se procesan cuántas tienen errores? Anote el número:
____________
RANGO
1. Determine qué datos necesitan recopilarse y qué personas son las más
calificadas para proporcionarlos. Si otros grupos pueden proporcionar datos
variantes y mayor visión identifíquelos también.
6. Analice la respuesta del Grupo de prueba para asegurar que el análisis de los
datos que se busca se puede llevar a cabo con los datos recopilados. Si los
datos no revelan algo que el analista no conoce, el cuestionario puede no ser
necesario.
3.1.5.4 Prototipos
Durante la actividad de extracción de requisitos, puede ocurrir que algunos requisitos
no estén demasiado claros o que no se esté muy seguro de haber entendido
correctamente los requisitos obtenidos hasta el momento, todo lo cual puede llevar a
un desarrollo no eficaz del sistema final.
Entonces, para validar los requisitos hallados, se construyen prototipos. Los prototipos
son simulaciones del posible producto, que luego son utilizados por el usuario final,
permitiéndonos conseguir una importante retroalimentación en cuanto a si el sistema
diseñado sobre la base de los requisitos recolectados le permite al usuario realizar su
trabajo de manera eficiente y efectiva.
Descubrimiento de Documentación de
requisitos requisitos
Obtener y comprender los requisitos de los stakeholders es difícil por varias razones:
Los stakeholders a menudo no conocen lo que desean obtener del sistema
informático excepto en términos muy generales; puede resultarles difícil
En la figura 3.3 se muestra un modelo general para obtener y analizar requisitos. Con
cada vuelta del ciclo de este modelo la comprensión de los requisitos por parte del
analista mejorará.
Mediante la utilización del modelo del negocio como entrada, el analista emplea una
técnica sistemática para crear un modelo de casos de uso tentativo. Para ello, el
analista construirá un diagrama de casos de uso tomando como punto de partida los
diagramas de actividades.
Este Diagrama de Casos de Uso debe ser refinado. Nuevos casos de uso serán
detectados al describir cada caso de uso obtenido; para ello, se utiliza el documento
Especificación de Caso de Uso (Ver tema: Desarrollo de Especificaciones de Casos de
Uso).
Por último, los nuevos casos de uso serán agregados en un diagrama denominado
Diagrama Estructurado de Casos de Uso, consiguiendo de esta manera, la versión
final del Modelo de Casos de Uso (Ver tema: Estructurando el Modelo de Casos de
Uso).
ACTIVIDADES PROPUESTAS
R04. El código fuente del sistema deberá cumplir con el estándar de codificación
definido en el documento “Estándares y Nomenclaturas de Código Fuente”.
R09. El sistema deberá contar con el manual de FAQ (Frequent Asked Questions),
en línea e impreso, que es un resumen con las respuestas a las preguntas más
frecuentes que se hacen los usuarios.
Estos pasos no tienen por qué ser ejecutados en ningún orden en particular y a
menudo se hacen simultáneamente. De hecho, podemos trabajar por múltiples vías
que producen un resultado final equivalente. Podemos, por ejemplo, comenzar
encontrando algunos casos de uso (la actividad de Encontrar Actores y Casos de
Uso), después diseñar las interfaces de usuario (la actividad de Crear Prototipo de
Interfaz de Usuario), para darnos cuenta de que necesitamos añadir un nuevo caso de
uso (así que retrocederemos a la actividad de Encontrar Actores y Casos de Uso,
rompiendo la secuencia estricta marcada), y así sucesivamente.
Lo primero que necesita hacer cuando piense en crear un sistema es decidir dónde se
encuentran los límites del sistema. Es decir, necesita decidir qué o quiénes utilizan el
sistema (los actores) y qué beneficios específicos ofrece el sistema a esos actores (los
casos de uso).
Éste es uno de los primeros pasos para definir qué o quiénes interactuarán con el
sistema. Antes de indicar cómo se identifican los actores empezaremos por definirlo.
3.2.2.1 Actor
Un actor representa un rol (humano, hardware o software) externo al sistema con el
que se establece intercambio directo de información.
Hay una diferencia entre actor y usuario. Usuario es el que utiliza el sistema, mientras
que el actor representa un cierto rol que un usuario puede desempeñar. Es decir que
los actores definen los roles que pueden representar los usuarios.
A continuación daremos algunos ejemplos para tener claro lo que constituye un actor.
Muchos usuarios pueden desempeñar el mismo rol. Por ejemplo, la figura 3.4 muestra
a dos usuarios, Ivar y Mark, que cumplen el rol de operador de una máquina de
reciclaje. Cuando ellos usan la máquina de reciclaje cada uno es representado por una
instancia del actor Operador.
También podemos encontrar que el mismo usuario puede ser representado por varios
actores, esto es porque la misma persona puede desempeñar roles diferentes. Por
ejemplo, la figura 3.5 muestra que un usuario desempeña dos roles: Jefe de Almacén
y Personal de almacén.
¿Qué actores del negocio o trabajadores del negocio son responsables de las
actividades a informatizar?
¿Qué grupos de usuarios necesitan ayuda del sistema para llevar a cabo sus
tareas?
¿Qué grupos de usuarios son fundamentales para ejecutar las funciones
principales del sistema?
¿Qué grupos de usuarios son los que llevarán a cabo funciones secundarias
como mantenimiento o administración?
¿El sistema a desarrollar interactuará con algún hardware o sistema de
software?
Cualquier individuo, grupo o fenómeno que cumpla con una o más de estas categorías
es candidato para ser un actor. La figura 3.6 muestra el entorno del sistema del cual se
encontrarán categorías de actores.
Para determinar si se tienen los actores correctos, se puede elegir dos o tres personas
que usarán el sistema y, a continuación, ver si el conjunto de actores obtenido es
suficiente para cubrir sus necesidades.
Por último, se completa la identificación de actores al obtener todos los casos de uso
del sistema que conlleva a crear otros actores o eliminar a algunos que existen. Este
proceso de refinamiento se verá en el próximo capítulo “Estructurando el Modelo de
Casos de Uso”.
En este caso, es el sistema quien va a tener interés en el tiempo, debido a que deben
efectuar operaciones automáticas en determinados momentos; y siendo esto un
requisito funcional obvio, resulta de interés desarrollar alguna forma de capturar dicho
requisito en el modelo de casos de uso. La técnica es introducir al actor “Tiempo”,
quien está asociado a casos de uso que capturan una funcionalidad automática.
Un ejemplo de esto sería un respaldo automático del sistema que se ejecuta todas las
noches o la generación automática de reporte de ventas diario, tal como se ilustra en
la siguiente figura.
La breve descripción debe ser realizada en pocas líneas tanto en el Modelo de Casos
de Uso como en el documento Actores del Sistema. Por ejemplo, para una máquina de
reciclado, los actores Cliente, Operador y Administrador pueden ser descritos de la
siguiente manera:
Cliente: El cliente recoge botellas, latas y cajas en casa y los trae a la tienda para
obtener a cambio un reembolso.
llegar a una versión final. Usted recibirá una mejor comprensión de los casos de uso
una vez que se han descrito en detalle.
adelante, con una descripción paso a paso de lo que el sistema necesita hacer cuando
interactúa con sus actores, en la Especificación de Caso de Uso.
El diagrama de casos de uso muestra cómo se relacionan los casos de uso con los
actores. Pueden diseñarse varios diagramas de casos de uso, cada uno, creado en un
paquete que contiene un conjunto de casos de uso. La organización por paquetes
puede ser de acuerdo a cada proceso de negocio.
La siguiente figura muestra un esbozo del diagrama de casos de uso de una máquina
de reciclado. El rectángulo contiene los casos de uso que constituyen el
comportamiento del sistema.
Por otro lado, debemos tomar en cuenta otros requisitos que serán necesarios
para controlar el proceso. Por ejemplo:
Actualizar estado de pedido a “CANCELADO” cuando el cliente
pague su pedido.
Responsable
Proceso de Negocio Actividad del Negocio del Requisito Caso de Uso Actores
Negocio
Consulta Stock Consultar Stock de Consultar Stock de
Vendedor R01 CUS01 Vendedor
electrodomésticos Electrodomésticos Electrodomésticos
Genera ticket de
Vendedor R02 Generar Pedido CUS02 Generar Pedido Cliente Afiliado
pedido
Genera comprobante
Cajero R03 Registrar Pago de Pedido
de pago Registrar Pago de
Venta de CUS03 Cliente Afiliado
Actualizar estado de Pedido
Electrodomésticos - - R04
pedido a “CANCELADO”
- - R05 Registrar Afiliación CUS04 Registrar Afiliación Cliente No Afiliado
Actualizar datos de Actualizar datos de
- - R06 CUS05 Cliente Afilado
afiliación afiliación
- - R07 Consultar Pedidos CUS06 Consultar Pedidos Vendedor
Explicación:
A partir de los requisitos se crean los casos de uso. Puede existir el caso en que más de un requisito se implemente en un caso de uso,
como por ejemplo el caso de uso de sistema CUS03 contiene dos requisitos.
En la columna de actores se indican los roles que interactuarán con los casos de uso identificados. Como nuestro cliente ha solicitado
implementar una solución web para el registro de pedidos, el rol “Cliente afiliado” será quien realice esa funcionalidad y no el Vendedor.
Esta actividad se centra en relacionar los casos de uso y los actores del sistema, e
identificar sus comportamientos opcionales y excepcionales. Se establece las
inclusiones, extensiones y generalizaciones entre casos de uso, y las generalizaciones
entre actores.
La ejecución de cada caso de uso incluye la comunicación con uno o más actores.
Una instancia de un caso de uso siempre es iniciada por un actor pidiendo al sistema
hacer algo. Esto implica que cada caso de uso debe tener la asociación de
comunicación con los actores. La razón de esta norma es hacer cumplir el sistema
para ofrecer sólo la funcionalidad que los usuarios necesitan, y nada más. Si se
encuentran casos de uso que nadie pide significa que algo está mal en el modelo de
caso de uso o en los requisitos.
3.3.1 Objetivos
Los objetivos de esta actividad son:
Extraer descripciones de funcionalidad (de casos de uso) generales y
compartidas que pueden ser utilizadas por casos de uso más específicos
(generalización).
Extraer descripciones de funcionalidad (de casos de uso) adicionales u
opcionales que pueden extender casos de uso más específicos (relaciones de
extensión).
Extraer descripciones de funcionalidad (de casos de uso) adicionales e
incondicionales incluidas en la ejecución de casos de uso específicos (relaciones
de inclusión)
Esta relación se usa para evitar describir el mismo flujo de eventos repetidas veces,
poniendo el comportamiento común en un caso de uso aparte y que será incluido por
un caso de uso base.
Esta relación se utiliza para modelar la parte de un caso de uso que el usuario puede
ver como comportamiento opcional del sistema. De esta forma, se separa el
comportamiento opcional del obligatorio.
La siguiente figura ilustra la ejecución de un caso extendido. Note que cuando una
instancia del caso de uso base, llega a un lugar en donde un punto de extensión se ha
definido, la condición en la correspondiente relación extend es evaluada. Si la
condición es verdadera, la instancia del caso de uso seguirá la extensión; de lo
contrario, la extensión no se ejecuta.
Una vez que la instancia de caso de uso ha realizado la extensión, la instancia de caso
de uso reanuda su ejecución al caso de uso base, en el punto donde se detuvo.
Una instancia de caso de uso ejecutada por el caso de uso hijo seguirá el flujo de
eventos descritos por el caso de uso padre, insertando comportamiento adicional y
modificando el comportamiento, tal como se define en el flujo de eventos del caso de
uso hijo.
ACTIVIDADES PROPUESTAS
Elabore el Diagrama de Casos de Uso Estructurado del siguiente caso.
COLABORA- PERU
Colabora Perú es una compañía dedicada a la prestación de servicios de atención de
las relaciones entre las empresas y sus clientes a través de Centros de Contacto
Telefónico o plataformas multicanal (IVR, SMS) para brindar diferentes servicios (Tele
marketing, Tele cobranza, Fidelización, Gestión de Datos, etc.) para aquellas
empresas o instituciones que gestionan grandes carteras de clientes o demandan una
fluida relación con sus usuarios.
El Gerente de Ventas envía una copia del contrato al jefe de Operaciones para iniciar
la atención del contrato, el jefe de Operaciones llama a la empresa contratante para
que nos entrega la lista de deudores a llamar por teléfono, Con la información se
registra un control de trabajo, donde se importa la data de deudores entregada, esta
información se carga quedando en un estado sin gestionar, previamente busco a la
empresa para asignar los deudores Luego las tele operadoras de tele marketing
ingresan al sistema al módulo de gestión y seleccionaran la lista de deudores a
gestionar haciendo una búsqueda por control de trabajo, luego que se contactan con
los deudores y aceptan las condiciones se le cambia el estatus a gestión aceptada. Al
final del día el Jefe de operaciones genera un reporte con los datos de los deudores
que aceptaron la gestión, para ser enviados a la empresa contratante, previamente
hizo una búsqueda por control de trabajo. Adicionalmente ingresa al módulo de
administración de gestiones donde verifica las gestiones de las tele operadoras,
previamente hizo una búsqueda por control de trabajo.
No existe estándar UML para una especificación de caso de uso. Sin embargo, una
plantilla para una especificación sencilla de caso de uso utilizada comúnmente
contiene la siguiente información:
Nombre del caso de uso
Breve descripción
Actores implicados en el caso de uso
Flujo de eventos. Incluye el flujo básico, sub flujos y flujos
alternativos
Precondiciones
Pos condiciones
Puntos de extensión
Requisitos especiales
Prototipos
1.3 Actores
Desde el punto de vista de un caso de uso específico, existen dos tipos de actores:
Actores primarios o principales: Activan el caso de uso.
Actores secundarios: Interactúan con el caso de uso después de
haberse activado.
a) El primer paso
Empieza por el actor primario haciendo algo para activar el caso de
uso. Así:
1. El Caso de uso se inicia cuando <actor> <función>
Por ejemplo:
1. El Caso de uso se inicia cuando la Recepcionista
selecciona la opción “Generar Reserva” en la
interfaz del menú principal.
Por ejemplo:
Por ejemplo:
...
7. La recepcionista solicita “Buscar Habitaciones”
disponibles.
8. El sistema Incluye el CU Buscar Habitación.
9. El sistema muestra las habitaciones disponibles.
10. La Recepcionista ingresa la cantidad de personas
para la habitación seleccionada.
11. El sistema valida la cantidad de personas
ingresada.
12. El sistema calcula y muestra el subtotal del
precio a pagar y el monto total.
1.4.2 Subflujos
Es opcional en un caso de uso. Pueden presentarse varios subflujos y
cada uno de ellos sigue las mismas reglas del flujo básico.
<Automóvil no Registrado>
En el punto 8, si el sistema verifica que el Automóvil no
está registrado muestra el MSG “Automóvil no registrado”,
la Secretaria puede ir a “Registrar Automóvil” y continuar
con el paso 9.
<Cancelar>
Si la Secretaria solicita “Cancelar” antes de Grabar la
Orden de Reparación, el sistema cierra la interfaz y el
caso de uso finaliza.
1.5 Precondiciones
Restringen el estado del sistema antes de que el caso de uso pueda empezar. Si un
caso de uso no tiene ninguna precondición se debería escribir “Ninguna”. Por
ejemplo:
1.6 Poscondiciones
Restringen el estado del sistema después de que el caso de uso se ha ejecutado. Si
un caso de uso no tiene ninguna poscondición se debería escribir “Ninguna”. Por
ejemplo:
1.9 Prototipos
En esta sección se muestran las interfaces gráficas de usuario diseñadas para el caso
de uso. No es relevante mostrar las interfaces de los mensajes de advertencias o
error.
2. Actor(es)
Recepcionista
3. Flujo de Eventos
3.1. Flujo Básico
1. El Caso de uso se inicia cuando la Recepcionista selecciona la opción
“Generar Reserva” en la interfaz del menú principal.
2. El sistema muestra la interfase RESERVA con los siguientes datos:
Datos del cliente: Código y Nombres y Apellidos.
Datos de la Reserva: fecha de la reserva y cantidad de días a hospedarse.
<Habitaciones no disponibles>
En el paso 9, si el sistema detecta que no hay habitaciones disponibles
muestra el MSG: “No hay habitaciones disponibles” y finaliza el caso de uso.
<Eliminar habitación>
Si la Recepcionista solicita “Eliminar” una habitación seleccionada, antes de
Grabar, el sistema lo borra del detalle y el caso de uso continúa en el paso 13.
4. Precondiciones
4.1. El Recepcionista está logueado en el sistema.
4.2. Lista de Clientes disponibles.
4.3. Lista de habitaciones disponibles.
5. Pos condiciones
5.1. En el sistema queda registrado la reserva con su detalle.
5.2. Las habitaciones seleccionadas se actualizan en estado “Reservadas”.
6. Puntos de Extensión
En el paso 5, el sistema extiende al caso de uso Mantener Clientes – Flujo básico
“Agregar Cliente.
7. Requisitos Especiales
Ninguno.
8. Prototipos
3.3.5.1. Objetivos
3.3.5.2. Alcance
La priorización permitirá darle la debida atención (y con mas tiempo) a los USE CASE
más complejos e importante.
3.3.5.3. Priorización
Distingue a los USE CASE críticos o primarios de los secundarios. Más adelante, se
especifica el criterio utilizado para determinar cuáles son primarios y cuáles son
secundarios.
o Nivel crítico (o primario)
Agrupa a los USE CASE que tienen que ver con las funciones básicas
del sistema.
o 3.2. Nivel de baja importancia (o secundario)
Agrupa a los USE CASE que tienen que ver con las funciones de
soporte del sistema y que no representan mayor riesgo para el
proyecto.
Riesgo asociado: Indica la relación que se percibe entre el USE CASE y la lista
de riesgos. Un alto valor en este factor indica que el caso de uso tiene bastantes
riesgos o riesgos de alto valor asociados. Los USE CASE con alto valor en este
factor pueden ser considerados primarios debido a que deben ser enfrentados en
las etapas iniciales. Su ponderación es 0.2.
Impacto de los requerimientos no funcionales: Indica cómo afectan los
requerimientos no funcionales (usability, reliability, performance, supportability) al
proceso del negocio y en qué manera el USE CASE se vería comprometido. Su
ponderación es 0.1.
SUBSISTEMAS
Servicios al cliente
Gestión de ventas
Tareas del despachador
Tareas ejecutivas.
A. Servicios al cliente
1. Registrar cliente
2. Elaborar pedido
3. Rastrear pedido
4. Consultar cuenta
5. Acusar recibo / reclamo
B. Gestión de ventas
1. Aceptar / Rechazar pedido
2. Facturar pedidos
3. Actualizar cuenta
4. Consolidar pedido
5. Ordenar producción
D. Tareas Ejecutivas
1. Obtener información de productos
2. Evaluar el desempeño de productos
3. Generar informe
II. Luego de haber priorizado cada subsistema, se agrupa por iteraciones, esta
agrupación consiste en tomar los 3 CU más importantes del subsistema (con
mayor ponderación). Estás iteraciones deberán ser desarrolladas en la fase de
construcción del proceso del sistema.
A. Servicios al cliente
Iteración 1
Registrar cliente 8.5
Consultar cuenta 8
Elaborar pedido 8
Iteración 2
Rastrear pedido 6.75
Acusar Recibo / Reclamo 5
B. Gestión de ventas
Iteración 1
Actualizar cuenta 8.5
Facturar pedidos 8.2
Consolidar pedido 7.5
Iteración 2
Ordenar roducción 6
Aceptar / Rechazar Pedido 5
D. Tareas ejecutivas
Iteración 1
Evaluar desempeño del producto 7.75
Generar informe 7.25
Obtener información de productos 7
Nota.- Requerimientos primarios serán aquellos que presenten un puntaje mayor a 6.5.
Resumen
El Modelado de casos uso nos permite representar las funcionalidades del
sistema a implementar.
El Modelo de casos de uso contiene a los actores y casos de uso, que son los
artefactos relevantes del modelo.
CASOS PÁCTICOS
Diariamente los clientes se apersonan a los locales de la empresa a consultar los precios
de los vehículos, e informándoles que le empresa les puede poner en contacto con varios
bancos, para ello si está interesado debe de llenar una solicitud de crédito y traer la
documentación solicitada tales como, copia de DNI, boleta de pago, etc., Cuando ya lleno
la solicitud el vendedor registrara en el sistema la solicitud, verificando previamente si el
cliente se encuentra registrado, si no se encontrase deberá de regístralo en el sistema,
registrando la solicitud como por aprobar. Posteriormente el Jefe de ventas ingresara al
sistema para aprobar o cancelar la solicitud según el status de verificación del cliente;
previamente se realizó la búsqueda de la solicitud. Si la solicitud fue aprobada se le informa
al cliente que deberá de hacer el pago del 20% del valor del automóvil en caja. El cajero
ingresara al sistema para generar el comprobante de pago de la cuota inicial; y le
generara el calendario de pago de las cuotas pactadas. Previamente verifico el status de la
solicitud como aprobada para aceptar el pago.
Glosario
Artefacto
Pieza discreta de información que es utilizada o producida por un proceso de
desarrollo de software.
Condición de guardia
Condición que se debe satisfacer para permitir que se dispare una transición asociada.
Es utilizado en Diagrama de actividades a partir de un control de decisión.
Diagrama
Representación gráfica de un conjunto de elementos, representado en la mayoría de
casos como un grafo conexo de nodos (elementos) y arcos (relaciones).
Diagrama de actividades
Diagrama que muestra el flujo de control datos entre actividades. Cubren la vista
dinámica de un sistema.
Diagrama de clases
Muestra un conjunto de clases y sus relaciones.
Diagrama de componentes
Muestra la organización y las dependencias entre un conjunto de componentes
(elementos de implementación) del sistema.
Diagrama de comunicación
Diagrama de interacción que resalta la organización estructural de objetos que envían
y reciben mensajes.
Diagrama de despliegue
Muestra la configuración en tiempo de ejecución de los nodos de procesamiento y
dispositivos que componen una red.
Diagrama de estados
Representa los estados potenciales de los objetos y las transiciones entre esos
estados.
Diagrama de objetos
Muestra un conjunto de objetos y enlaces en un momento dado.
Diagrama de Secuencia
Diagrama de interacción que resalta la secuencia temporal de los mensajes entre
objetos.
Elemento
Constituyente atómico de un modelo.
Escenario
Secuencia específica de acciones que ilustra un comportamiento.
Especificación
Descripción textual de la sintaxis y la semántica de un bloque de construcción
específico; descripción declarativa de lo que algo es o hace.
Estereotipo
Extensión del vocabulario de UML que permite crear nuevos bloques de construcción
derivados a partir de los existentes pero específicos a un problema concreto.
Herramienta CASE
Aplicación informática destinada a aumentar la productividad en el desarrollo de
software reduciendo el coste de las mismas en términos de tiempo y de dinero.
Instancia
Manifestación concreta de un bloque de construcción de UML.
Modelo
Un modelo es una representación de un sistema o aplicación. Un modelo UML es un
modelo que utiliza la notación del Lenguaje Unificado de Modelado para representar
gráficamente un sistema en distintos niveles de abstracción.
Notación
Sistema de signos convencionales que se adoptan para expresar un conjunto de
conceptos sobre el sistema de software por desarrollar.
Perfiles UML
Constituyen el mecanismo que proporciona el UML para extender su sintaxis y su
semántica para expresar los conceptos específicos de un determinado dominio de
aplicación.
Refinamiento
Relación que representa una especificación más completa de algo que ya ha sido
especificado a cierto nivel de detalle.
Requisito
Característica, propiedad o comportamiento deseado de un sistema.
Stakeholder
Personas u organizaciones que están directamente involucradas en la elaboración o
tomas de decisiones claves acerca de la funcionalidad y propiedades de un sistema
software.
Workspace
Es un directorio que representa el espacio de trabajo y el cual contendrá los proyectos
que se crean en la herramienta RSA.