Interfaz con sistemas legados

Diseño de Sistemas U.T.N.-FRR
Página 1 de 6
Lineamientos para el Diseño Orientado a Objetos
Introducción
Se detallan a continuación una serie de lineamientos prácticos para el diseño O.O.
Guía para la fase exploratoria inicial de objetos
Identificando Clases
Métodos para descubrir clases:
¨ Conocimiento general del dominio
¨ Sistemas anteriores similares
¨ Modelos de empresa
¨ SesionesCRC
¨ Glosarios de términos
¨ Análisis gramatical
La identificación de clases comienza con la lectura y comprensión de la especificación
de requerimientos (caso de uso, historia de usuario), y con la exploración del dominio
del problema.
Se establece una lista de clases candidatas basándose en los sustantivos que se
encuentran. Luego se aplica las siguientes guías a la lista de clasescandidatas:
- Modelar objetos físicos (un cliente, un libro, etc.)
- Modelar entidades conceptuales (una fecha, un evento, etc.)
- Utilizar un término simple para cada objeto
- Controlar si los sustantivos calificados por adjetivos difieren de los sustantivos
solos.
- Modelar categorías de objetos (posibles superclases)
Luego de identificar clases, pueden identificarse clases abstractascandidatas
agrupando clases con atributos comunes.
Cada clase identificada puede registrarse con una tarjeta CRC (class-responsabilitycolaboration).
Identificando Responsabilidades
Para las clases identificadas deben determinarse sus responsabilidades.
Responsabilidad es el conocimiento que mantiene un objeto y las acciones que puede
realizar.
Responsabilidades candidatas son:
- Verbos extraídosde la especificación de requerimientos
- Responsabilidades extraídas del propósito de las clases
- Responsabilidades extraídas de un recorrido (walk-through) a través del
sistema
Luego las responsabilidades identificadas deben asignarse a la clase a la cual
pertenecen. Esto puede hacerse siguiendo las siguientes guías:
- Mantener el comportamiento relacionado a cierta información en la mismaclase. Si un objeto mantiene determinada información, las operaciones que se
realizan sobre dicha información deben agregarse a la misma clase.
- Mantener la información acerca de una misma cosa en una misma clase o
clases muy relacionadas.
- Distribuir responsabilidades compuestas entre clases relacionadas.
Para encontrar responsabilidades adicionales tres tipos de relaciones sonimportantes
para examinar:
- relaciones “es un tipo de” para identificar relaciones compartidas por subclases
- relaciones “es análogo a” para identificar superclases y sus responsabilidad
omitidas.
Diseño de Sistemas U.T.N.-FRR
Página 2 de 6
- Relaciones “es parte de” para identificar responsabilidades que el todo debe
tener con respecto a sus partes.
Las responsabilidades identificadas debenagregarse a las tarjetas CRC
correspondientes.
Identificando Colaboraciones
Las clases pueden cumplir sus responsabilidades realizando las operaciones por si
mismas o colaborando con otras clases.
Para encontrar colaboraciones, realizar las siguientes preguntas por cada clase:
- ¿Es la clase capaz de cumplir sus responsabilidades por si mismo? Si no, ¿de
que otra clase necesita colaboración?- ¿Qué otra clase necesita utilizar las responsabilidades de esta clase?
Las clases que no participan en ninguna colaboración son sospechosas y
normalmente se descartan.
Las colaboraciones identificadas pueden agregarse en las tarjetas CRC.
El patrón de diseño Model – View – Controler
El patrón de diseño Model-View-Controler (MVC) es un concepto muy popular para el
diseño de interfacesgráficas introducido inicialmente por Smalltalk.
MVC se concentra en la separación de los componentes de sistema en tres tipos
según su responsabilidad.
MVC consiste de tres tipos de objetos:
- El Modelo son las entidades de la aplicación. Maneja el comportamiento y
datos del dominio de la aplicación.
- La Vista maneja la presentación de los modelos en pantalla.
- El Controlador interpreta las...
tracking img