View
23.990
Download
1
Category
Preview:
DESCRIPTION
Lectura 3 Modelo De Analisis
Citation preview
Sesión 13
Análisis
ESTRUCTURA DEL RUP
AdministraciónAmbiente
Modelación de Negocios
Implementación
Prueba
Análisis y Diseño
Iteración(es)Preliminar
Iter.#1
FasesF. Trabajo Procesos
Iteraciones
F. Trabajo Soporte
Iter.#2
Iter.#n
Iter.#n+1
Iter.#n+2
Iter.#m
Iter.#m+1
Desarrollo
Admin. Configuración
Requerimientos
Elaboración TransiciónInicio Construcción
El El Modelo deModelo de AnálisisAnálisisEl propEl propóósito fundamental del modelo de ansito fundamental del modelo de anáálisis es lisis es resolver resolver analizando los requisitos con mayor profundidadanalizando los requisitos con mayor profundidad, pero con la , pero con la diferencia de que puede utilizarse el diferencia de que puede utilizarse el lenguaje de los lenguaje de los desarrolladoresdesarrolladores de proyectos para describir los resultadosde proyectos para describir los resultados..
En consecuencia podemos razonar mEn consecuencia podemos razonar máás sobre los s sobre los aspectos aspectos internos del sistemainternos del sistema, y por tanto resolver aspectos relativos a la , y por tanto resolver aspectos relativos a la interferencia de casos de uso y deminterferencia de casos de uso y demáás. s.
Podemos Podemos estructurar los requisitos de manera que nos facilite estructurar los requisitos de manera que nos facilite su comprensisu comprensióónn, su preparaci, su preparacióón, su modificacin, su modificacióón y su n y su mantenimiento.mantenimiento.Se puede considerar como una primera aproximación al modelo de diseño y es por tanto, una entrada fundamental cuando se da “forma” al sistema en el diseño y la implementación..
Realización de un caso de uso
Una realización de Caso de Uso describe cómo es realizado un caso de uso en particular dentro del modelo del diseño, en términos de la colaboración de sus objetos
Realización del Caso de Uso
En Rational Rose
Por cada Caso de Uso una carpeta
Rational Rose
Una realización por cada caso de Uso
R_Atender reserva de BuffetAtender reserva de Buffet
(from Use Cases)
<<realize>>
Artefacto: clase del AnálisisArtefacto: clase del Análisis
Una clase de análisis representa la abstracción de una o varias Una clase de análisis representa la abstracción de una o varias clases y/o subsistemas del diseño del sistema. Esta abstracción clases y/o subsistemas del diseño del sistema. Esta abstracción posee las siguientes características:posee las siguientes características:
Una clase de análisis se centra en el tratamiento de los Una clase de análisis se centra en el tratamiento de los requisitos funcionales.requisitos funcionales.Una Una clase de análisis también define atributosclase de análisis también define atributos, aunque esos , aunque esos atributos son de alto nivel, pero normalmente estos pasan atributos son de alto nivel, pero normalmente estos pasan hacer una clase en el diseño.hacer una clase en el diseño.Las clases del análisis siempre encaja en uno de tres Las clases del análisis siempre encaja en uno de tres estereotipos básicos: Interfaz, Control, Entidadestereotipos básicos: Interfaz, Control, Entidad..
Clases análisis del Modelo de Análisis
Clas e de entidadClase de control
Clase de Interfaz
Clase de Interfaz Clase de Gestor Clase de entidad
Clase de InterfazClase de Interfaz
Las clases de interfaz se utilizan para modelar la Las clases de interfaz se utilizan para modelar la interacción entre el sistema y los actores. interacción entre el sistema y los actores.
Las clases de interfaz modelan las partes del sistema Las clases de interfaz modelan las partes del sistema que dependen de sus actores, lo cual implica que que dependen de sus actores, lo cual implica que clasifican y reúnen los requisitos en los límites del clasifican y reúnen los requisitos en los límites del sistema.sistema.
Las clases de interfaz representan a menudo Las clases de interfaz representan a menudo abstracciones de ventanas, formularios, paneles, abstracciones de ventanas, formularios, paneles, interfaces de comunicaciones.interfaces de comunicaciones.
Clase de Interfaz, ejemplo:Clase de Interfaz, ejemplo:
(f rom U se C ase View)
Comprador IU Solicitud de Pago
Clase de EntidadClase de Entidad
Las clases de entidad Las clases de entidad modelan informaciónmodelan información y el y el comportamiento asociado de algún fenómeno o comportamiento asociado de algún fenómeno o concepto, como persona o un objeto. concepto, como persona o un objeto.
Las clases de Las clases de entidad reflejan la información de un entidad reflejan la información de un modo que beneficia a los desarrolladores al diseñar e modo que beneficia a los desarrolladores al diseñar e implementar el sistemaimplementar el sistema, incluyendo su soporte de , incluyendo su soporte de persistencia.persistencia.
Las clases de entidad suelen mostrar una estructura de Las clases de entidad suelen mostrar una estructura de datos lógica y contribuyen a comprender de qué datos lógica y contribuyen a comprender de qué información depende el sistema.información depende el sistema.
Entidades: Capturando Atributos
Permiten capturar aquellos datos que nos interesa mantener de la entidadRepresentan la estructura interna de los objetos de la entidadSe vinculan con la información de negocio.Determinan el estado interno del objetoSirven de base para el desarrollo de las responsabilidades adquiridas por los objetos de la entidad
Permiten capturar aquellos datos que nos interesa mantener de la entidadRepresentan la estructura interna de los objetos de la entidadSe vinculan con la información de negocio.Determinan el estado interno del objetoSirven de base para el desarrollo de las responsabilidades adquiridas por los objetos de la entidad
<Nombre>
Atributos / Conocimiento
Responsabilidades
(f rom U se C ase View)
CompradorIU Solicitud de Pago
Factura
Muestra
Clase de GestorClase de Gestor
Las clases de control Las clases de control representan coordinación, representan coordinación, secuencia, transacciones y control de otros objetossecuencia, transacciones y control de otros objetos y se y se usan con frecuencia para encapsular el control de un usan con frecuencia para encapsular el control de un caso de uso en concreto. caso de uso en concreto.
Los Los aspectos dinámicos del sistema se modelan con aspectos dinámicos del sistema se modelan con clases de controlclases de control, debido a que ellas manejan y , debido a que ellas manejan y coordinan las acciones y los flujos de control coordinan las acciones y los flujos de control principales, y delegan trabajo a otros objetos.principales, y delegan trabajo a otros objetos.
(f rom U se C ase View)
Comprador
IU Solicitud de Pago
Factura
Gestor de Tabla
Cambia estado
Planifica factura
Caso: Generar actividad
Diagrama de Secuencia y de Comunicación (colaboración)Los diagramas de secuencia y de colaboración son Isomorfos.
Un diagrama de secuencia se puede transformar mecanicamente en un diagrama de colaboración. Un diagrama de colaboración se puede transformar mecanicamente en un diagrama de secuencia.
: Usuario
: Actividad : GestroActividad
: InterfazActividad
llama al Caso de uso incluido VisualizarHorario
Flujo alternativo 2.2.1.
Flujo alternatico 2.2.5.
1: Crear o modificar actividad
4: Selecciona intervalo
horario, dia, descripción
6: actualiza la actividad
2: solicita/buscar periodos de tiempo
3: visualida horario
5: visualizan los nuevos cambios
Ejemplo : Realización de un caso de uso en el Modelo de Análisis
Dependencia de traza
<<realize>>
Realización del caso de usoSacar Dinero Sacar dinero
Salida Interfaz del Cajero
Retirada de Efectivo
Cuenta
Clase de controlClase de entidad
Clases de interfaz
Ejemplo : Una clase que participa en varias realizaciones de caso de uso en el Modelo de Análisis
Sistema de Cajero Automático
Modelo de casos de uso Modelo de Análisis
Salida
Interfaz del Cajero
Retirada de Efectivo
CuentaTransferencias
Sacar Dinero
Transferencia entre CuentasCliente
de Banco
Ingresar Dinero IngresoReceptor de Dinero
Cliente de Banco
Clases que participan y desempeñan roles en las 3 realizaciones de casos de uso
Ejemplo : Uso de diagramas de colaboración para describir unarealización de caso de uso en el Modelo de análisis
Diagrama de colaboración para la realización del caso de uso Sacar Dinero en el Modelo de Análisis
Co n su l ta r p ro ve e d o re s
(f ro m C as os de U s o)
Ha c e r p ag o s
(f rom C as os de U s o)
<< i n c l u d e> >
G a f
(f rom A c to res )
G en e ra r n o ta d e p e d i d o y fa c tu ra c i o n
(f rom C as os de U s o)
Co n su l ta r sto ck
(f rom C as os de U s o)
Re g i stra r re p u e sto s e n a l m a cé n
(f rom C as os de U s o)
Co n su l ta r ó rd e n e s d e co m p ra
(f rom C as os de U s o)
A l m a c e n e ro
(f rom A c to res )
< < i n c l u d e > >
Co ti za r
(f rom C as os de U s o)
< < e xte n d > >
Ha ce r ó rd en e s d e c o m p ra
(f rom C as os de U s o)
< < i n c l u d e > > < < i n c l u d e > >
Fa ctu ra r
(f rom C as os de U s o)
Ve n d e d o r
(f rom A c to res )
V e ri f i ca r d a to s d e c l i e n te s
(f rom C as os de U s o)
< < i n c l u d e > >
< < i n c l u d e > >
< < i n c l u d e > >
S i co n ti e n e GU I
N o t i e n e G UI
Diagrama de Casos de Uso
Arquitectura del análisis
Arquitectura del análisis, continua...
Pagos
CAPA DE APLICACION
Compras Co mercia l Facturacion
AlmacenesAgendaPersonal
CA PA ES PE CÍF IC A
CAPA GENERAL
---------------------------------------------------------------------------------------------------...
R_A_Consultar stock
R_A_Consultar s tock
Consult ar s tock
(from Casos de Uso)<<real ize>>
Estructura Interna
Vendedor
(from Actores)
A lmacenero
(from Actores)
Inte rfazConsultaStock
solic ita buscar producto
solic ita buscar producto
P roductoGestorStoc k
indica buscar a ob tiene
: Inter faz Consult aStoc k : GestorStock : Producto : Almacenero
3: filtra
6: carga
4: obtiene lis tado
7 : obtiene
PCosto
Descripción
1 : Selecciona tipo de filt ro
2: Ingresa producto a buscar
Nombre/Palabra de Descripción
5: Selecciona producto
Flujo Básico: Almacenero
: Interfaz Consult aStoc k : GestorStock : Producto : Vendedor
3: filtra
6: carga
4: obtiene lis tado
7 : obtiene
PCosto
Descripción
1 : Selecciona tipo de filt ro
2: Ingresa producto a buscar
Nombre/Palabra de Descripción
5: Selecciona producto
Flujo Básico: Vendedor
R_A_Generar Notas de Pedido y Facturación
R_A_Generar Notas de Pedido y Facturación
Generar nota de pedido y facturacion
(from Casos de Uso)
<<realize>>
R_A_Cotizar
R_A_Cotizar Cotizar
(from Casos de Uso)
R_A_Cotizar: Estructura Interna
Vendedor
(from Actores)
InterfazCotizacion
sol ic it a co ti zar
Cot iz acionG estorCotizacion
indica validar guarda
R_A_Cotizar: Flujo Básico
: V endedor : Interfaz Cotiz ac ion
: G es torCotiz ac ion
: Cotiz ac ion
2 .1 V e rific a r da tos de c li e n te s
3.1 Consulta r stock
: P rodu c to
1: Ingres a c liente a bus c ar
RUC/Nom bre
3: S olic ita bus c ar
4: Ingres a P V tent ativo
7: Ingre s a P V defini tivo
8: Ingres a dato de Cotiz ac ión
Tipo de P agoDis ponibilidad
11: G rab a cot iz ac ión
2: bus c a c liente
5: Calc ula M G
9: Calc ula P V Neto
10: Calc ula P V Total
12: V alida grabac ión
6: obtiene m árgenes
M ax%M in%
13: guarda
R_A_Cotizar: Esc: Actualizar cotización
: Vendedor : InterfazCotizacion : Gest orCot izac ion
: Cotizacion
Punto de Extensión: Generar Notas de Pedido y Facturación
1: Ingresa Nro Cotización a buscar
4: Cambia estado
5: Graba
2: busca
6: valida
3: obt iene
7: guarda
Crear año escolar
: Di re ctor : Interfaz C rear Año Escolar
: Gestor Cre ar Año E scolar
: año Escolar
: aulas
FA1:datos incorrectos
1: ingresa datos
Nombre del AñoSeccion
A ñoVacantes
Aula
2: selecciona crear
4: valida
5: graba
3: obtiene
capacidad
Estructura
Tarjetas CRC
Tarjetas CRC Clase - Responsabilidad - Colaboración
• Las clases también se pueden descubrir usando tarjetas Clase-Responsabilidad-Colaboración (CRC).
• Es un medio sencillo de identificar y organizar las clases• Ayudan a identificar las colaboraciones cercanas:
– jerarquías de generalización/especialización o – jerarquías de agregación entre las clases
• A medida que se completan más escenarios surgen más patrones de colaboración entre las clases
• Las tarjetas CRC son muy efectivas en técnicas de OO porque:– Se enfocan en los problemas– Previenen la generalización prematura– Fomentan el “pensamiento orientado a objetos”
Tarjetas CRC
Una tarjeta CRC es una tarjeta de 3 x 5 que muestra:1. El nombre y descripción de la clase2. Las responsabilidades de la clase: se refieren a atributos y
operaciones relevantes para la clase.• Conocimiento interno de la clase• Servicios que brinda la clase
3. Los colaboradores para las responsabilidades• Un colaborador es una clase cuyos servicios son
necesarios para cumplir una responsabilidad.• Decimos que un objeto colabora con otro, si para
ejecutar una responsabilidad necesita enviar cualquier mensaje a otro objeto.
Una sesión de Tarjetas CRC
Se escoge un grupo de personas para representar los roles de losobjetos que participan en un escenario de CU.
Se crea una tarjeta para cada objeto del escenario.
A cada participante se le asigna un grupo de tarjetas que representan objetos similares.
La persona se convierte en una “clase”
Los escenarios que se escojan deben ser desarrollados por los participantes como si se hiciera una representación.
Una sesión de Tarjetas CRC, continua...
En las tarjetas se anotan las responsabilidades y colaboracionesque vayan surgiendo de las representaciones de los escenariosSe crean tarjetas para cualquier objeto nuevo que se descubra.Orden de la Sesión:
–Análisis del problema–Definición de clases
•Tormenta de ideas•Filtrado de clases
–Definición de superclases y subclases–Definición de responsabilidades.–Definición de atributos.–Operación en escenarios determinados
Una sesión de Tarjetas CRC, continua...
Se usan normalmente en sesiones de experto del área/desarrollador o desarrollador/desarrollador en grupos no mayores a 6 personas para discutir sobre las características de la implementación.
Responsabilidades
• Representan características estables de una clase: atributos y operaciones– Atributos: se extraen de la naturaleza de la clase– Operaciones: se extraen del análisis gramatical.
• Verbos: candidatos a operaciones
• La inteligencia del sistema debe distribuirse en forma igualitaria, ubicando la información (atributos) y el comportamiento (servicios) en la misma clase.
Colaboradores
• Representan solicitudes de un cliente a un servidor para realizar una responsabilidad.
• Dos objetos colaboran entre sí al necesitar enviarse mensajes para ejecutar una responsabilidad
• Ayuda a identificar relaciones entre clases• Se examinan 3 relaciones genéricas entre clases:
– Es-parte-de– Tiene-conocimiento-sobre– Depende-de
Tarjetas CRC para la Clase: CrearAñoEscolar
Beneficio de las Tarjetas CRC
•Los patrones de colaboración emergen a medida que más y más escenarios se completan.
•Las tarjetas se pueden distribuir físicamente para representar las colaboraciones estrechas.
•Esto puede ayudar a identificar las jerarquías de generalización oespecialización, y asociaciones de agregación entre las clases(estos temas se desarrollan mas adelante).
•Las tarjetas de CRC son más efectivas para grupos nuevos en técnicas de OO porque:
Previenen enfocarse en temas de Programacion OOPrevienen la generalización prematuraImpulsan a “pensar orientado a objetos”
Fin de la sesión 13
Análisis
Recommended