Sie sind auf Seite 1von 18

E-commerce: Business. Techology.

Society.
Ingeniería de
Software I
UML2 y el Proceso Unificado
Análisis y Diseño Práctico Orientado a
Objetos
Segunda edición

Jim Arlow, Ila Neustadt

Slide 8-1
CAPÍTULO 6.

ENCONTRANDO CLASES DE ANÁLISIS.

Jim Arlow, Ila Neustadt

Copyright © 2011 Pearson Education, Inc.


Objetivos
A través de este capítulo el estudiante podrá:

 Adquirir los conocimientos necesarios para elaborar el


diagrama de clases de su proyecto.

 Incorporar en cada clase los atributos necesarios en cada


clase y las operaciones que deben poner a disposición de
sus clases clientes.

 Incorporar en el modelo de clases las relaciones


necesarias así como los roles y la multiplicidad.
Analizar un Caso de Uso
Los resultados del workflow UP Analizar un caso de uso son las
clases de análisis y realizaciones de casos de uso. Nos centramos
en las clases de análisis. Es necesario buscar en las entradas
para analizar un caso de uso.
 El modelo de negocio -
 usted puede, o no, tener un modelo de negocios que se
describe el sistema que estamos modelando. Es una excelente
fuente de requisitos.
 Modelo de Requerimientos. Los requisitos pueden aportar una
contribución útil al proceso de modelado de casos de uso.
 Los requisitos funcionales indican los casos de uso y actores.
 Los requisitos no funcionales se sugieren cosas se debe tener
en mente cuando construya el modelo de casos de uso.
 Modelo de casos de uso.
 Descripción de la arquitectura - una imagen de los aspectos
principales de la arquitectura del sistema. Puede incluir
¿Qué son las Clases de Análisis?
Las Clases de Análisis son clases que:
 Representan nítidamente una abstracción del dominio del problema
 Pueden mapear los conceptos de negocios del mundo real y
cuidadosamente nombrarse acuerdo a ellos.
 El dominio del problema es el dominio en el cual se detectó primero
la necesidad de desarrollo del software. Generalmente alguna área
de la empresa.
 El más importante aspecto de una clase de análisis es que mapea en
forma clara algún concepto de negocios del mundo real como cliente,
producto, cuenta.
 Encontrar las clases de análisis correctas es la clave para el análisis
y diseño orientado a objetos.
 Primer paso: Clarificar el dominio del problema.
 Clarificar los conceptos de negocios y su estructura funcional simple
Anatomía de una Clase de Análisis
Pueden presentar atributos de muy alto nivel.
Podemos decir que las clases de análisis capturan atributos
candidatos para las clases de diseño.
Las operaciones en las clases de análisis especifican, en un alto
nivel, los servicios claves que esa clase debe ofrecer.
Un formulario mínimo para una clase de análisis puede tener:
 Atributos, solo su nombre es obligatorio
 Nombre, obligatorio.
 Operaciones- en análisis, las operaciones
deben llevar instrucciones de muy alto
nivel de las responsabilidades de la
clase. Los parámetros y tipos de retorno
solo se usan cuando clarifican el modelo.
 Visibilidad- generalmente no se muestra
 Estereotipos y valores etiquetados
pueden ser mostrados si explican el
modelo
¿Qué Constituye una Buena Clase de Análisis?
Las características de una buena clase de análisis se resumen
así:
 Su nombre refleja su intención;
 Es una abstracción nítida que modela un elemento específico
del dominio del problema;
 Se asigna a una característica claramente identificable del
dominio del problema;
 Se tiene un conjunto pequeño y bien definido de
responsabilidades;
 Tiene alta cohesión;
 Tiene bajo acoplamiento.
En el análisis se está tratando de modelar un aspecto del dominio
del problema, en forma precisa y concisa, desde la perspectiva del
sistema que está construyendo.
¿Qué Constituye una Buena Clase de Análisis?
 Una Responsabilidad es un convenio u obligación que una clase tiene
con sus clientes.
 Es un servicio que una clase ofrece a otras clases.
 Es crucial que su clase de análisis tenga un set cohesivo de
responsabilidades relacionadas directamente con la intención de la
clase (según el nombre de la clase) y la cosa del mundo real que está
modelando esa clase.
 Responsabilidades de la clase CarritoDeCompras:
 Ahora, también puede añadir las siguientes responsabilidades a la
clase anterior (no hay cohesión con éstas y deben reasignarse):.
 Una distribución equitativa de responsabilidades entre las clases se
suelen dar lugar a bajo acoplamiento.
 Localización de muchas responsabilidades en una sola clase tiende a
aumentar acoplamiento a esa clase.
¿Reglas de Oro de las Clase de Análisis?
He aquí algunas reglas de oro para la creación de clases de análisis
correcto:
 Cerca de tres a cinco responsabilidades por clase.
 Ninguna clase está sola - la esencia del buen análisis y diseño OO es
que las clases deben colaborar entre sí para ofrecer beneficios a los
usuarios.
 Tenga cuidado con la creación de muchas clases muy pequeñas .
 Tenga cuidado con tener pocas clases, pero muy grandes
 Tenga cuidado con los "functoids"
 Tenga cuidado con las clases omnipotentes - estas son las clases que
parecen hacer todo lo posible.
 Evitar los árboles de herencia profunda
Encontrando Clases de Análisis?
No existe un algoritmo simple para encontrar las clases de
análisis correctas.
 Existen técnicas probadas que conducen hacia una buena
respuesta, implican analizar el texto y entrevistas con los
usuarios y expertos.
 A pesar de todas las técnicas, la búsqueda de las clases
correctas dependen de la perspectiva, la habilidad y
experiencia individuales del analista.
 Encontrar las clases utilizando análisis de sustantivo /
verbo.
 Hay que ser muy conscientes de la existencia de
sinónimos y homónimos, ya que pueden dar lugar a falsas
clases.
Encontrando Clases de Análisis?
 También hay que tener mucho cuidado si el dominio del problema
es poco conocido y no definido. En este caso, tratar de recoger la
mayor cantidad de información acerca del dominio desde el punto
de vista de tantas personas como sea posible.
 Tal vez el más difícil aspecto del análisis de verbo sustantivo / es
encontrar las clases ocultas; que son intrínsecas a la del dominio
del problema, pero que nunca podría ser mencionadas
explícitamente.
 Procedimiento de análisis de Sustantivo / verbo.
El primer paso en el análisis de verbo/ sustantivo es recoger la
información pertente tanto como sea posible. Las fuentes
adecuadas de información son:
● El modelo de requisitos;
● El modelo de casos de uso;
● el glosario del proyecto;
● cualquier otra cosa disponible (arquitectura, los documentos de
visión, etc.)
Encontrando Clases de Análisis?
 Después de recoger la documentación, analizarla de una manera muy
sencilla, poniendo de relieve lo siguiente:
● nombres - por ejemplo, el vuelo;
● sintagmas nominales - por ejemplo, número de vuelo;
● verbos - por ejemplo, asignar;
● frases verbales - por ejemplo, verificar la tarjeta de crédito.

 Los nombres y frases nominales pueden indicar las clases o los


atributos de clase. Verbos y frases verbales pueden indicar las
responsabilidades de las clases.
 Una vez que haya hecho la lista de candidatos a clases, atributos y
responsabilidades,haga una asignación provisional de los atributos y
responsabilidades a esas clases.
 Realice la adición de las responsabilidades como las operaciones a
las clases. Es posible que también haya identificado relaciones entre
algunas clases (los casos de uso son una buena fuente de estas).
Encontrando Clases de Análisis?
Búsqueda de clases mediante el análisis CRC
 Una forma muy buena (y divertida) para obtener la participación
del usuario en la búsqueda de clases es el uso de análisis CRC.
CRC representa la clase, las responsabilidades, y colaboradores.
Se empieza por marcar algunas notas como post-it.
La nota está dividida en tres compartimientos. En el compartimiento
superior de grabar el nombre de la clase candidata,
en el compartimiento de la izquierda, las responsabilidades;
y en la derecha, los colaboradores.
Los colaboradores son otras clases que pueden colaborar con esta
clase para realizar una pieza de funcionalidad del sistema.
El compartimiento de colaboradores proporciona una manera de
registrar las relaciones entre clases.
 Otra forma de capturar las relaciones (que preferimos) es pegar
notas en una pizarra y dibujar líneas entre las clases colaboradoras.
Encontrando Clases de Análisis?

CRC procedimiento de análisis


El análisis de CRC se debe utilizar siempre en combinación con el análisis de
verbo/ sustantivo, de los casos de uso, los requerimientos, glosario, y otra
documentación pertinente. Se entiende mejor si se ve como una actividad en
dos fases.
A. Lluvia de ideas - recopilar la información. Los participantes son los analistas
OO, las partes interesadas y expertos de dominio. También se necesita un
facilitador. El procedimiento es el siguiente:
Encontrando Clases de Análisis?
1. Explica que se trata de una lluvia de ideas verdaderas.
1.1. Todas las ideas son aceptadas como buenas ideas.
1.2. Las ideas se registran pero no debaten - no discutir sobre algo, simplemente
lo escribe y luego seguir adelante. Todo lo que se analizará más adelante
2. Pida a los miembros del equipo nombrar las "cosas" que operan en su ámbito
de negocio - por ejemplo, clientes, productos.
2.1. Escribir cada cosa en una nota adhesiva, es una clase candidata o atributo
de una clase.
2.2. Pegue la nota sobre una pared o pizarra.
3. Indague en el equipo sobre el Estado que las responsabilidades que las cosas
podrían tener y anótelas en el compartimiento de la nota para las
responsabilidades.
4. Trabajar con el equipo, para tratar de identificar las clases que podrían trabajar
juntas. Reorganice las notas en la pizarra para reflejar esta organización y
trazar líneas entre ellas. Registre los colaboradores en el compartimiento de
colaboradores de la nota.
Encontrando Clases de Análisis?
Analizar la información
Los participantes son los analistas y expertos de dominio OO.
Algunas notas adhesivas que representan conceptos clave del
negocio, necesitan convertirse en clases. Otras notas pueden ser
clases o atributos.
Si una nota lógicamente parece ser parte de otra nota, es una
indicación de que representa un atributo. Si una nota no parece
ser particularmente importante podría ser un atributo de otra
clase.
Encontrando Clases de Análisis?
Búsqueda de clases mediante el uso de los estereotipos RUP

Una técnica útil proviene de RUP en forma de estereotipos RUP.


La idea es que se tiene en cuenta tres tipos distintos de análisis
de clase durante su actividad de análisis.

Esta es una manera de enfocar su análisis sobre aspectos


específicos del sistema. Consideramos esta una técnica opcional
que puede utilizar para complementar el sustantivo / verbo y
técnicas de cartas de la Convención análisis presentado
anteriormente.

Tres tipos distintos de análisis de clase se pueden distinguir por


los estereotipos que se muestran en la figura:
Encontrando Clases de Análisis?

Das könnte Ihnen auch gefallen