Sunteți pe pagina 1din 72

Ingeniera de Requerimientos

Ing. Roly Alcides Cristobal Lara


Tema04: Anlisis de
Requerimientos
UNIVERSIDAD NACIONAL DE HUANCAVELICA
FACULTAD DE INGENIERA ELECTRNICA - SISTEMAS
ESCUELA ACADMICO PROFESIONAL DE SISTEMAS
Ing. Roly A. Cristobal Lara
Contenido
Visin general
Diagramas UML
Artefactos




Modelo de anlisis
Clases de anlisis
Realizacin en anlisis de los casos de uso
Paquetes de anlisis
Actividades
Anlisis de los casos de uso
Anlisis de las clases
Anlisis de los paquetes

Proceso Unificado-Flujos de Trabajo
Principales
Fases
Flujos de
trabajo
Requisitos
Anlisis
Diseo
Implementacin
Prueba

Planificacin
Anl. Riesgos
Preparacin

Elaboracin

Construccin
Verificacin

Transicin

Iteracin(es)
Inicial(es)
Iter.
#1
Iter.
#2
Iter.
#3
Iter.
#4
Iter.
#5
Iter.
#6
Iter.
#7
(Adaptado de Jacobson, 1999)
Anlisis-Visin General
Modelo de
anlisis
Modelo de
diseo
Modelo de
despliegue
Modelo de
casos de uso
Modelo de
implementacin
Modelo de
pruebas
Anlisis-Visin General

Pruebas

Modelo de
Pruebas

Implementacin

Modelo de
Implementacin

Diseo

Modelo de
Diseo

Modelo de
Despliegue

Anlisis

Modelo de
Anlisis

Requisitos

Dependencia de traza
Modelo de
Casos de Uso
Anlisis-Visin General
Durante el anlisis, analizamoss los requisitos que se describieron
la captura de requisitos, refinndolos y estructurndolos.
En la captura de requisitos:
en

Los casos de uso deben mantenerse tan independientes unos de otros
como sea posible.

Evitar interferencias, concurrencias y conflictos.
Los caso de usos deben describirse utilizando un lenguaje del cliente.

Utilizacin solo de lenguaje natural -> perdemos poder expresivo.
Debe estructurarse cada caso de uso para que forme una especificacin
de funcionalidad completa.

No estructurar casos pequeos
Llegar a un equilibrio entre comprensibilidad y mantenibilidad.


Anlisis-Visin General
Modelo de Casos de Uso Modelo de Anlisis
Lenguaje del cliente (impreciso) Lenguaje del desarrollador
Vista externa del sistema Vista interna del sistema
Estructurado por casos de uso Estructurado por clases y
paquetes
Utilizado como contrato entre Utilizado fundamentalmente
por cliente-desarrolladores desarrolladores para entender
el
sistem
a
Redundancias, inconsistencias, No debera contener
redundancias ambigedades, etc. entre requisitos ni
inconsistencias de requisitos
Captura la funcionalidad del sistema Captura cmo llevar
a cabo la funcionalidad dentro
del sistema
Define casos de uso que se Define realizaciones de casos de
uso, analizarn con ms profundidad en el y cada una de ellas
representa el modelo de anlisis anlisis de un caso de uso
Anlisis-Visin General
Casos de Uso
Ayuda a refinar requisitos y
estructurar los requisitos
Secuencia
Actividad
Modelo de
Pruebas
Diagramas de
Componentes
Diagramas de
Modelo de
Implementacin
Diagramas de
Estados
Modelo de
Despliegue
Diagramas de
Interaccin
Diagramas de
Diagramas de
Colaboracin
Modelo de
Diseo
Diagramas de
Objetos
Diagramas de
Clases
Modelo de
Anlisis
Diagramas de
Modelo de
Casos de Uso
Anlisis-Visin General
Cul es el objeto de anlisis?

El modelo de anlisis ofrece una
precisa de los requisitos.

especificacin ms

El modelo de anlisis se describe utilizando el lenguaje

de los desarrolladores. Puede introducir mayor
formalismo.
El modelo de anlisis estructura los requisitos de un
modo que facilita su comprensin, su preparacin, su
modificacin, y en general, su mantenimiento.
El modelo de anlisis puede considerarse como una
primera aproximacin al modelo de diseo.
Anlisis-Visin General
Leemos:

Es preciso hacer siempre el

anlisis?

Vemos caso concretos.

Cul es el papel del anlisis

software?
en el ciclo

de vida

del

La forma de ver y emplear el anlisis de un

proyecto a otro puede variar. Vemos tres
variantes.
Contenido
Visin general
Conceptos de UML
Artefactos




Modelo de anlisis
Clases de anlisis
Realizacin en anlisis de los casos de uso
Paquetes de anlisis
Actividades
Anlisis de los casos de uso
Anlisis de las clases
Anlisis de los paquetes

Conceptos de UML
Clasificador

Concepto discreto en el modelo que tiene
comportamiento, y relaciones
identidad, estado,
Tipos de Clasificadores
Elementos del Sistema:



Clase
Interfaz
Tipos de datos
Conceptos de Comportamiento:
Caso de Uso
Elementos del entorno:
Actor
Estructuras de implementacin:



Componente
Nodo
Subsistema
Conceptos de UML
Otros conceptos:
Clase
Conjunto de objetos con estructura, comportamiento, relaciones, y semntica
comn
Objeto
Estructura + operaciones + estado interno + identidad
Un objeto es una instancia de una clase

Realizacin
Relacin semntica entre clasificadores, en la cual un clasificador especifica un
contrato que otro clasificador se compromete a llevar a cabo
Colaboracin
Define las interacciones que han de producirse entre los objetos con el fin de que
estos puedan desempear su papel
Contenido
Visin general
Conceptos de UML
Artefactos




Modelo de anlisis
Clases de anlisis
Realizacin en anlisis de los casos de uso
Paquetes de anlisis
Actividades
Anlisis de los casos de uso
Anlisis de las clases
Anlisis de los paquetes

Artefactos-Modelo de Anlisis
Modelo de anlisis:
Especificacin detallada (precisa) de requisitos
Refina los casos de uso como colaboraciones




Clasificadores: clases de anlisis, paquetes
Colaboraciones: realizaciones de los casos de uso, interacciones
Gestionar Matrcula Realizacin en anlisis
Gestor de Matrculas Alumno UI Matriculacin
Artefactos-Modelo de Anlisis
Modelo de anlisis
Representa la estructura global del sistema (subsistemas y/o capas en el
modelo de diseo)

Modelo de anlisis
Paquete de anlisis
Diagramas de clases
Diagramas de interaccin
Descripcin textual
*
*
*
*
Responsabilidades
Atributos
Relaciones
Realizacin
en anlisis
Clase de anlisis
Entidad Control
Interfaz
Descripcin

arquitectnica
*

*
Artefactos-Modelo de Anlisis
Representan una abstraccin de lo que sern una o varias clases
en diseo
Caractersticas:
Se centran en Requisitos Funcionales, pospone los no funcionales (Req.
especiales)
Contexto del dominio del problema (ms conceptual)
Comportamiento definido mediante responsabilidades de nivel ms alto y
menos formal
Responsabilidad: descripcin textual de un conjunto cohesivo del
comportamiento de una clase
Atributos a un nivel alto (tipos conceptuales y reconocibles en el dominio
del problema).
En diseo son tipos de L. de programacin
Con frecuencia los atributos de anlisis son clases en diseo e implementacin
Relaciones a nivel conceptual


Tipos: de interfaz, de control o de entidad
Artefactos-Modelo de Anlisis
Clases de anlisis
Resposabilidades
Clase de anlisis
Interfaz Control
Entidad

Atributos
Relaciones
Artefactos-Modelo de Anlisis
Ejemplo: Un sistema de enseanza virtual
Actor: Estudiante


Caso de Uso:

Matricularse
Sist. de enseanza virtual
Matricularse
Estudi

Matricularse
ante
Artefactos-Clases de Anlisis: Interface
IU Matriculacin
Modelan la interaccin entre el sistema y los actores, implica recibir (y
presentar) informacin y peticiones de (y hacia) los usuarios y los
sistemas externos
Modelan las partes del sistema que dependen de sus actores, por lo que
clarifican y renen los requisitos en los lmites del sistema
Representan la interfaz del sistema (ventanas, formularios, ...), pero con
poco detalle
Cada clase interfaze debe asociarse al menos con un actor



UI Matriculacin
Estudiante
<<boundary>>
IU Matriculacin

IU Matriculacin
Artefactos-Clases de Anlisis: Control
GestorMatricula
Se usan para representar el control de un caso de uso concreto
Representan coordinacin, secuencia, transacciones y control de otros
objetos
Se usan para encapsular el control de un caso de uso concreto (un
proceso laboral, de control o de clculo)
No representan ni interacciones con el usuario ni problemas de
almacenamiento de informacin. Manejan y coordinan las acciones y los
flujos de control principales, delegando trabajo a otros objetos (de
interfaz, de entidad)




GestorMatricula
UI Matriculacion
Estudiante
<<control>>
GestorMatricula

GestorMatricula
Artefactos-Clases de Anlisis: Entidad
Alumno
Modelan la informacin y el comportamiento asociado de algn fenmeno o
concepto (persona, objeto y suceso del mundo real).
Persisten durante la aplicacin.
Pueden provenir de las entidades del dominio o de las del negocio, pero no tienen
por qu corresponderse completamente
Diferencia: clases entidad -> objetos manejados por el sistema, clases de entidad del
negocio -> objetos presentes en el negocio en general.
Pueden ser pasivas o activas (comportamiento complejo)
Encapsulan informacin y operaciones asociadas
Suelen mostrar una estructura de datos lgica y contribuyen a comprender de
qu informacin depende el sistema






GestorMatricula Alumno UI Matriculacion
Estudiante
<<entity>>
Alumno

Alumno
Artefactos-Clases de Anlisis: Entidad
Realizacin de los casos de uso en anlisis
Colaboracin dentro del modelo de anlisis que describe cmo se lleva a
cabo y se ejecuta un caso de uso determinado en trminos de las clases
de anlisis y sus interacciones.

La realizacin en anlisis de un caso de uso, incluye:




Diagramas de clases: clases participantes
Diagramas de interaccin: escenarios del CU
Descripcin textual del flujo de eventos (sucesos)
Nada de requisitos no funcionales (hasta el diseo).
Modelo de casos
odelo de anlisis
de uso
Use case lizacin en anlisis
Traza directa hacia un caso de uso concreto del modelo de casos de uso
M
<<trace>>

Rea
Artefactos-Realizacin de Casos de Uso
Realizacin de los casos de uso en anlisis

Diagramas de clases


Una clase de anlisis puede participar en varios casos de uso.
Algunas responsabilidades, atributos y asociaciones suelen ser
especficos de un slo caso de uso.
UI Matriculacin Estudiante
Alumno Gestor
Matricula
Diagrama de clases para la realizacin del caso de uso
Matricularse
Artefactos-Realizacin de Casos de Uso
Realizacin de los casos de uso en anlisis

Diagramas de interaccin
Representan como interactan cooperativamente los objetos para
implementar el comportamiento definido por los casos de uso.
La secuencia de acciones en un caso de uso comienza cuando un
actor enva un mensaje al sistema.
Una interaccin es un conjunto de mensajes que se intercambian
dentro del contexto de una colaboracin por instancias de clases
(objetos) a travs de enlaces (instancias de asociacin)
En anlisis se suelen utilizar diagramas de colaboracin (tambin se
podran utilizar diagramas de secuencia)



Artefactos-Realizacin de Casos de Uso
Realizacin de los casos de

uso

en

anlisis

Diagramas de interaccin
Diagrama de colaboracin para la realizacin del caso de uso
Matricularse del actor estudiante
Ejemplo - Pagar Factura
Descripcin:

El Sistema de Facturacin y Pago ofrece un caso
de uso llamado pagar factura, que lo utiliza un
comprador para planificar los pagos de las

facturas por

recibido.
los

bienes

que

el/ella

ha

solicitado

y

Ejemplo - Pagar Factura

Despus de que el caso de uso comience, el comprador ya ha
recibido la factura (enviada por otro caso de uso llamado
Enviar Factura al Comprador), y tambin ha recibido los
bienes y servicios demandados:
1. El comprador visualizar las facturas recibidas e indicar la factura
que desea pagar. El sistema comprobar las facturas con sus
correspondientes confirmaciones de pedidos antes de mostrar la lista
de facturas a pagar al comprador.
El comprador seleccionar las facturas y planificar el pago por
banco. El sistema genera una solicitud de pago para dicha factura.
2.
Descripcin paso a paso del caso de uso:
Ejemplo - Pagar Factura
Ejemplo - Pagar Factura
Realizacin de los casos de uso en anlisis

Flujos de eventos
Una realizacin de un casos de uso pueden ser difcil de leer, es til
un texto adicional que los explique.
Describir en trminos de objetos (no mencionar atributos,
responsabilidades, asociaciones)
Si es muy complejo no ser mejor dividir el caso de uso?
Requisitos no funcionales
Asignados a casos de uso
Se recogen si aparecen

Ejemplo - Pagar Factura
Paquete de anlisis
Un paquete es un c
-
onjunto de clases (y otros elementos)
relacionadas, generalmente relevante para un pequeo
subconjunto de actores o suficientemente representativo por s
mismo, que puede implementarse o llevarse a cabo como una
sola unidad.
Ejemplo - Pagar Factura
Flujo de eventos:
El comprador indica que desea consultar las facturas a travs de IU Pagar
Facturas (1,2). El Comprobador de Facturas comprobar las facturas con sus
correspondientes confirmaciones de pedidos antes de mostrar la lista de
facturas del comprador (comprobacin que depende de las reglas de negocio
del comprador: comparacin de precio, fecha entrega, contenido factura con
confirmacin pedido, ). El objeto Comprobacin de Facturas utiliza las reglas

del negocio para decidir las preguntas a hacer a los objetos Pedidos (3,4) y
cmo analizar las respuestas. Una vez analizadas las facturas estas se mostrarn
a travs de la IU Pagar Facturas (5,6). Las facturas a pagar podran quedar
marcada de alguna forma por el IU Pagar Facturas, quizs mediante un color
diferente que lo resalte.

El comprador selecciona una factura mediante el IU Pagar Facturas y planifica
su pago (7). El IU Pagar Facturas solicita al Planificador de Pagos que planifique
el pago de la factura (8). Despus el Planificador de Pagos crea una solicitud de
pago (9,10,11). El IU Pagar Facturas mostrar al comprador la factura en estado
planificada (14).
Artefactos-Paquete de Anlisis
Paquetes de anlisis
Sirve para organizar los artefactos de anlisis: clases de anlisis,
realizacin de casos de uso y otros paquetes
Deben incluir artefactos fuertemente cohesionados y dbilmente
acoplados
No existen en tiempo de ejecucin



*
Paquete de anlisis
*
*
Realizacin
en anlisis
Clase de anlisis
Artefactos-Paquete de Anlisis
Ejemplo:

Personal
Mto
Cliente
Empleado

Cajero automtico

Venta de entradas

Reposiciones

Consultas

Mantenimiento

Transacciones
Ejemplo
Perfil de ADN
Lista de requisitos detallada
R1. Para cada perfil se debe registrar la persona solicitante y los
marcadores obtenidos, labor que realizar siempre el bilogo.
R2. Adems para cada perfil se debe indicar el responsable que autoriz
la prueba.
R3. Igualmente, el bilogo que realiz el perfil y la fecha en que fue
realizada.


Ejemplo
Perfil de ADN
Describir el modelo de casos de uso
Bilogo
Apl icacin de almacenamiento
de perfiles de ADN
Registrar Perfil
R1, R2, R3
Ejemplo
Perfil de ADN
flujo de Qu incluir en una descripcin de un CU eventos
Anlisis e Ingeniera de Requisitos Tema 4 www.kybele.urjc.es AIR - 39
Flujo de eventos del caso de uso Registrar Perfil
Camino bsico
ACTOR SISTEMA
1. El bilogo introduce su login y pwd 2. El sistema valida los datos
3. Introduce el nombre de la persona, los
marcadores y el responsable que autoriz
la prueba
4. El sistema agrega el nombre del bilogo
y la fecha del sistema
5. El sistema solicita la confirmacin del
usuario para terminar
6. El bilogo acepta la operacin y fin del
caso de uso.
Caminos alternativos
Evento 3. El actor puede cancelar la operacin
Evento 6. El actor puede cancelar la operacin.
Ejemplo
Perfil ADN
Diagrama

de

Clases

Anlisis e Ingeniera de Requisitos Tema 4 www.kybele.urjc.es AIR - 40
Ejemplo
Perfil ADN
Diagrama

de

interaccin

Anlisis e Ingeniera de Requisitos Tema 4 www.kybele.urjc.es AIR - 41
Ejemplo
Perfil ADN
Realizacin

Identificar
del caso de uso:

clases

de

anlisis

Anlisis e Ingeniera de Requisitos Tema 4 www.kybele.urjc.es AIR - 42
Ejercicios Anlisis
Ejemplo: Caso de Uso: Registrar

perfil

de

ADN

Ejemplo:

Publicar

Actas

Anlisis e Ingeniera de Requisitos Tema 4 www.kybele.urjc.es AIR - 43
Artefactos
Realizacin de Casos de Uso
Realizacin de los casos de

uso

en

anlisis

Diagramas de interaccin
Diagrama de colaboracin para la realizacin del caso de uso
Publicar notas del actor profesor
Anlisis e Ingeniera de Requisitos Tema 4 www.kybele.urjc.es AIR - 44
ndice
Visin general
Conceptos de UML
Artefactos




Modelo de anlisis
Clases de anlisis
Realizacin en anlisis de los casos de uso
Paquetes de anlisis
Actividades
Anlisis de los casos de uso
Anlisis de las clases
Anlisis de los paquetes

Anlisis e Ingeniera de Requisitos Tema 4 www.kybele.urjc.es AIR - 45
Anlisis

Ejemplo - Actividades
Usaremos

el

ejemplo

del cajero

automtico

Sacar dinero
<<include>>
Cliente
del banco
<<include>>
Ingresar dinero
Validar usuario
<<include>>
Transferencia
Anlisis e Ingeniera de Requisitos Tema 4 www.kybele.urjc.es
Anlisis

Actividades
Anlisis de los casos de uso:

Identificar las clases de anlisis necesarias
del caso de uso

para la realizacin
Distribuir el comportamiento del caso de uso entre las clases
de anlisis describir las interacciones entre objetos
Capturar/asignar requisitos no funcionales a clases de anlisis
Anlisis e Ingeniera de Requisitos Tema 4 www.kybele.urjc.es
Anlisis

Actividades
Anlisis de los casos de uso:

Identificar las clases de anlisis:




Clases entidad se derivan de la descripcin
Una clase interfaz por cada actor
del caso de uso
Generalmente, uUna clase de control que gobierne en flujo
del caso de uso
Anlisis e Ingeniera de Requisitos Tema 4 www.kybele.urjc.es
Anlisis

Actividades
Anlisis de los casos de uso:

Identificar las clases de anlisis:

Representar las clases de anlisis en un diagrama de clases
Validar usuario
Realizacin en anlisis
UsuariosDelBanco
(from Logical View)
Autenticar
(from Logical View)
Interfaz de cajero
Anlisis e Ingeniera de Requisitos Tema 4 www.kybele.urjc.es
Anlisis

Actividades
Anlisis de los casos de uso:

Describir las interacciones entre

objetos:


Utilizar diagramas de colaboracin
Indicar instancias y enlaces

Un diagrama de colaboracin por cada
uso
Siempre inicia un actor
camino del caso de
La expresin de las interacciones se traduce en mensajes entre
objetos
Anlisis e Ingeniera de Requisitos Tema 4 www.kybele.urjc.es
Anlisis
Ejemplo Anlisis de los casos de

uso

Anlisis del caso
Camino Bsico
de uso Validar usuario
3: cdigo
1: introducir tarjeta 4: autentica (datos, cdigo)
7: visualiza (opciones)
2: teclear cdigo
: Interfaz de cajero : Cliente del banco enticar
alida (datos, codigo)
8: seleccioneOpcion (opciones)
6:
: UsuariosDelBanco
Anlisis e Ingeniera de Requisitos Tema 4 www.kybele.urjc.es

: Aut

5: v
OK
Anlisis
Ejemplo Anlisis de los casos de uso
Anlisis del caso de uso Validar usuario
Camino Alternativo: Cdigo incorrecto
3: cdigo
4: autentica (datos, cdigo)
1: introducir tarjeta
7: visualiza (error)
2: teclear cdigo
: Interfaz de cajero : Cliente del banco enticar
ida (datos, codigo)
8: teclear cdigo
6: Error
Faltara:
anular transaccin (despus del 2)
si 3 veces error: cancelar y quedarse con la tarjeta.


: UsuariosDelBanco
Anlisis e Ingeniera de Requisitos Tema 4 www.kybele.urjc.es

: Aut

5: val
Anlisis
Ejemplo Anlisis de los casos de

uso

Anlisis del caso de uso Sacar dinero
Realizacin en anlisis
Sacar dinero Realizacin en anlisis
Cuenta
(from Logical View)
Transaccin
(from Logical View)
Interfaz de cajero
Diagrama de clases
Interfaz de cajero
(from Use Case View)
Cliente del banco Cuenta Transaccin
Anlisis e Ingeniera de Requisitos Tema 4 www.kybele.urjc.es
Anlisis
Ejemplo Anlisis de los casos de

uso

Anlisis del caso de uso Sacar dinero
11: dinero retirado

Camino Bsico
9: tarjeta retirada
3: importe
4: retirarDinero (importe)
1: sacar dinero
7: expulsaDinero (importe)
2: teclee importe
: Interfaz de cajero saccin
: Cliente del banco
8: retirar tarjeta
mporte)
6: OK
10: retirar dinero
12: teclear cdigo
: Cuenta
Anlisis e Ingeniera de Requisitos Tema 4 www.kybele.urjc.es

: Tran

5: rein

tegro (i
Anlisis
Ejemplo Anlisis de los casos de

uso

Anlisis del caso de uso Sacar dinero
Camino Alternativo: No hay saldo
10: tarjeta retirada
3: importe
4: retirarDinero (importe)
1: sacar dinero
7: no hay fondos
2: teclee importe
: Interfaz de cajero
: Cliente del banco
saccin
8: no hay saldo suficiente
ntegro (importe)
9: retirar tarjeta
6: no aldo
11: teclear cdigo
Faltara:
en el cajero no hay dinero.
se ha superado el lmite diario


: Cuenta
Anlisis e Ingeniera de Requisitos Tema 4 www.kybele.urjc.es

: Tran

5: rei
hay s
Anlisis
Ejemplo Anlisis

de

los

casos

de

uso

Diagrama de clases completo
Cuenta
Interfaz de cajero
(from Use Case View)
Cliente del banco Transaccin
UsuariosDelBanco
Anlisis e Ingeniera de Requisitos Tema 4 www.kybele.urjc.es
Anlisis

Actividades
Anlisis de las clases

Identificar las responsabilidades
anlisis
Identificar atributos y relaciones
anlisis.

de las clases de

de

las

clases

de

Capturar

requisitos

especiales

Anlisis e Ingeniera de Requisitos Tema 4 www.kybele.urjc.es
Anlisis

Actividades
Anlisis de las clases

Identificar las responsabilidades
anlisis

de las clases de


En cada caso de uso, ver qu papel juega
colaboracin).
(diagramas de

Combinar papeles y describirlos juntos
Anlisis e Ingeniera de Requisitos Tema 4 www.kybele.urjc.es
Anlisis
Ejemplo Anlisis de las clases
Anlisis de las clases: identificar responsabilidades Validar usuario
3: cdigo

1: introducir tarjeta 4: autentica (datos, cdigo)
7: visualiza (opciones)
: Cliente del banco
2: teclear cdigo
: Interfaz de cajero
enticar
alida (datos, codigo)
8: seleccioneOpcion (opciones)
6:
: UsuariosDelBanco
Anlisis e Ingeniera de Requisitos Tema 4 www.kybele.urjc.es
UsuariosDelBanco
valida (datos, cdigo)
Transaccin
autentica (datos, cdigo)
Interfaz del cajero
visualizar introducir tarjeta
visualizar teclear cdigo
leer cdigo
visualizar (opciones)
seleccioneOpcion (opciones)

: Aut

5: v
OK
Anlisis
Ejemplo Anlisis de las clases
Anlisis de las clases: identificar responsabilidades
11: dinero retirado

9: tarjeta retirada
3: importe
4: retirarDinero (importe)
1: sacar dinero
7: expulsaDinero (importe)
2: teclee importe
: Interfaz de cajero saccin
: Cliente del banco
8: retirar tarjeta
mporte)
10: retirar dinero
6: OK
12: teclear cdigo
: Cuenta
Anlisis e Ingeniera de Requisitos Tema 4 www.kybele.urjc.es
Cuenta
reintegro(importe) 5:
UsuariosDelBanco
valida (datos, cdigo)
Transaccin
autentica (datos, cdigo)
retirarDinero(importe)4:
Interfaz del cajero
visualizar (mensaje)
leer cdigo
seleccioneOpcion (opciones)
leerImporte 3:
expulsaDinero (importe) 7:

: Tran
5: rein tegro (i
Anlisis

Actividades
Anlisis de las clases

Identificar atributos





Suelen ser nombres
Los tipos son conceptuales
Clases entidad: derivados del
dominio.
Clases interfaz con actores humanos: campos
etiquetas, etc.
de texto,

Clases interfaz con subsistemas externos: propiedades de
interfaz de comunicacin.
Clases control: estado de la sesin actual
la

Anlisis e Ingeniera de Requisitos Tema 4 www.kybele.urjc.es
Anlisis
Ejemplo Anlisis de las clases
Anlisis de las clases: identificar atributosValidar usuario
3: cdigo

1: introducir tarjeta 4: autentica (datos, cdigo)
7: visualiza (opciones)
2: teclear cdigo
: Interfaz de cajero
enticar : Cliente del banco
alida (datos, codigo)
8: seleccioneOpcion (opciones)
6:
: UsuariosDelBanco
Anlisis e Ingeniera de Requisitos Tema 4 www.kybele.urjc.es
Usuarios del banco
Coleccin (datosCuenta,
cdigo)
Transaccin
codigoCuenta
Interfaz del cajero

: Aut

5: v
OK
Anlisis
Ejemplo Anlisis de las clases
Anlisis de las clases: identificar atributos Transferencia
5: cuenta destino

3: cantidad
6: transferencia (cuenta, cantidad)
1: transferencia
: Cliente del banco
2: teclee cantidad
11: OK
: Interfaz de cajero : Transaccin
4: teclee cuenta destino 9: ingreso (cantidad)
7: reintegro (cantidad)
12: transferencia realizada
8: OK
10: OK
cuentaDestino : Cuenta
cuentaOrigen : Cuenta
Anlisis e Ingeniera de Requisitos Tema 4 www.kybele.urjc.es
Usuarios del banco Cuenta
Coleccin (datosCuenta,
cdigo)
saldo
Transaccin
codigoCuenta
cantidad
Interfaz del cajero
Anlisis
Anlisis Ejemplo


de

las

clases

leer (tarjeta); leer
(cdigo)
Anlisis e Ingeniera de Requisitos Tema 4 www.kybele.urjc.es
Clase Atributos Responsabilidades
Interfaz de cajero
Los necesarios para definir el
interfaz de usuario
visualizar (mensaje)
leer (importe)
expulsarDinero
(importe)
noHayFondos
validar (importe);
errorIngreso
seleccioneOpcion (opciones)
UsuariosDeBanco
coleccin de pares
(datosCuenta, codigo)
validar (datos, cdigo)
Cuenta
Saldo
lmite diario
reintegro (importe)
ingreso (importe)
Transaccin
cdigo
cuenta
cantidad
autenticar (datos, cdigo)
retirarDinero (importe)
ingresarDinero (importe)
transferencia (cuenta,
cantidad)
Anlisis

Actividades
Anlisis de los paquetes

Paquetes dbilmente acoplados
Elementos cohesionados

Clases

de

interaccin

Anlisis e Ingeniera de Requisitos Tema 4 www.kybele.urjc.es
Anlisis del caso de uso: Ingresar dinero
Ingresar dinero
Realizacin en anlisis
Cuenta
(from Logical View)
Transaccin
(from Logical View)
Interfaz de cajero
Interfaz de cajero
(from Use Case View)
Cliente del banco Cuenta Transaccin
Anlisis e Ingeniera de Requisitos Tema 4 www.kybele.urjc.es
Anlisis del caso de uso: Ingresar dinero
Camino bsico
5: dinero introducido
6: validar (importe)
3: importe
1: ingresar dinero 7: ingresarDinero (importe)
10: OK 2: teclee importe
: Interfaz de cajero
: Cliente del banco
saccin
porte)
4: introducir dinero
9: OK
11: dinero ingresado
: Cuenta
Anlisis e Ingeniera de Requisitos Tema 4 www.kybele.urjc.es

: Tran

8: ing

reso (im
Anlisis del caso de uso: Ingresar dinero
Camino alternativo: Cantidad incorrecta
Diagrama de clases
: Cliente del banco
: Interfaz de cajero
Anlisis e Ingeniera de Requisitos Tema 4 www.kybele.urjc.es
Anlisis del caso de uso: Ingresar dinero
Camino Alternativo: Cantidad incorrecta
5: dinero introducido
6: validar (importe)
3: importe
1: ingresar dinero
2: teclee importe
: Interfaz de cajero
: Cliente del banco
4: introducir dinero
7: importe incorrecto
Anlisis e Ingeniera de Requisitos Tema 4 www.kybele.urjc.es
Anlisis del caso de uso: Transferencia
Suponemos que el usuario ya ha sido identificado.
La cuenta origen es la de la tarjeta y hay que teclear la destino.
El importe y el n de cuenta destino se dan juntos. Mirar primero si hay saldo y
luego sacar.



Transferencia
Realizacin en anlisis
Cuenta
(from Logical View)
Transaccin
(from Logical View)
Interfaz de cajero
Anlisis e Ingeniera de Requisitos Tema 4 www.kybele.urjc.es
Anlisis del caso de uso: Transferencia Camino
bsico
5: cuenta destino
3: cantidad
6: transferencia (cuenta, cantidad)
1: transferencia
11: OK
: Cliente del banco
: Interfaz de cajero : Transaccin
7: reintegro (cantidad)
2: teclee cantidad
9: ingreso (cantidad)
8: OK
4: teclee cuenta destino
10: OK
12: transferencia realizada
cuentaDestino : Cuenta
cuentaOrigen : Cuenta
Anlisis e Ingeniera de Requisitos Tema 4 www.kybele.urjc.es
Anlisis del caso de uso: Transferencia
Camino Alternativo: No hay fondos en la cuenta origen
5: cuenta destino
3: cantidad
6: transferencia (cuenta, cantidad)
1: transferencia
9: no hay fondos
: Cliente del banco
: Interfaz de cajero : Transaccin
7: reintegro (cantidad)
2: teclee cantidad
4: teclee cuenta destino
8: no hay saldo
10: no hay fondos
cuentaOrigen : Cuenta
Anlisis e Ingeniera de Requisitos Tema 4 www.kybele.urjc.es
Anlisis del caso de uso: Transferencia
Camino Alternativo: Cuenta destino incorrecta
5: cuenta destino
11: rollback
3: cantidad
6: transferencia (cuenta, cantidad)
1: transferencia
12: error
: Interfaz de cajero : Transaccin
: Cliente del banco
7: reintegro (cantidad)
2: teclee cantidad
9: ingreso (cantidad)
8: OK
4: teclee cuenta destino
10: error
13: error
cuentaDestino : Cuenta
cuentaOrigen : Cuenta
Anlisis e Ingeniera de Requisitos Tema 4 www.kybele.urjc.es

S-ar putea să vă placă și