Análisis de la Estructura de Objetos.

Análisis de la Estructura de Objetos.

El análisis de la estructura de objetos (AEO) define las categorías de los objetos que percibimos y las formas en que los asociamos.

 

Objetos y Tipos de Objetos.

En el análisis se trata de identificar los tipos de objeto más que los objetos individuales en un sistema. Los tipos de objetos se definen en base a la comprensión del analista de nuestro mundo. Un objeto puede categorizarse de variadas formas.

 

Representación para Tipo de Objeto (Persona).

Asociaciones de Objetos.

Es importante modelar la forma como los objetos se asocian entre sí. Además es necesario identificar el significado de la asociación y la cantidad de objetos con los que un objeto dado puede y debe asociarse (cardinalidad).

 

Representación para la Asociación entre dos Tipos de Objetos. Un objeto del tipo persona posee cero o muchos objetos del tipo vehículo. Un objeto del tipo vehículo es de un y sólo un objeto del tipo persona.

 

Jerarquías de Generalización.

Una de las vías de sentido común por las que el hombre organiza su volumen de conocimiento es el de las jerarquías, de lo más general a lo más específico.
Representación de una Jerarquía de generalización, para el tipo de objeto Persona.

En las jerarquías se habla de subtipo o especialización de un supertipo o generalización. En el caso anterior, persona es el supertipo para Empleado y Estudiante, que son sus subtipos. Por otra parte, Empleado es el supertipo para los subtipos Ejecutivo y Vendedor. Los subtipos (niveles inferiores de la jerarquía) heredan las características de sus supertipos, además, cada instancia de un tipo de objeto lo es también de sus supertipos.

 

Jerarquías Compuestas.

Un objeto se denomina complejo si está formado por otros. Las jerarquías Compuestas permiten realizar agregaciones de objetos.

 

Representación de una Jerarquía Compuesta.
Un objeto del tipo edificio se compone de a lo menos un objeto del tipo piso. A su vez un objeto del tipo piso se compone de a lo menos un objeto del tipo pasillo, podría tener varios (o ninguno) objetos del tipo baño y oficina.

Diagramas de relación entre los objetos.

Los tipos de objetos están relacionados con otros tipos de objeto. Por ejemplo, un empleado trabaja en una sucursal, o un cliente realiza un pedido de varios productos.

 

Diagrama de Relación entre objetos.
Un objeto del tipo cliente puede ordenar muchos objetos del tipo pedidos, y un objeto del tipo pedido es ordenado por un y sólo un objeto del tipo cliente. Un objeto del tipo producto está en muchos o ningún objeto del tipo pedido, mientras que un objeto del tipo pedido tiene al menos un objeto del tipo producto.

 

Esquemas de Objetos.

La comprensión de un modelo suele ser más sencilla si los tipos de objetos y relaciones se presentan mediante un diagrama de relación entre objetos; los supertipos y subtipos se presentan en un diagrama de jerarquías de generalización y las estructuras compuestas en un diagrama compuesto. Sin embargo, para los usuarios más sofisticados puede ser útil presentarlo todo en un mismo diagrama, el que se denomina esquema de objetos.

 

Ejercicios.

a.

 Diseñe la estructura de un sistema que maneje la información de productos en una librería, que vende libros técnicos y novelas.

 Las novelas se clasifican como de ciencia ficción, romance, misterio, juveniles y policiales. Los libros técnicos se clasifican como de ingeniería, ciencias naturales o ciencias sociales.

 Cada libro tiene un título, uno o más autores, una editorial, un año de edición y un formato (tapas duras o edición económica). Los libros técnicos tienen además un código ISBN y capítulos, los que tratan una o más materias.

 La librería obtiene los libros por medio de proveedores que representan a una o más editoriales. De cada libro se tiene un stock (que puede ser cero). Al venderse un libro, el stock se actualiza. Si un cliente requiere un libro cuyo stock es cero, se puede realizar un encargo por parte del cliente. Esto significa que se pide el libro a un proveedor de la editorial del libro.

 

b.

 El jefe de una organización de desarrollo de software desea administrar el desarrollo de los proyectos.

 Cada proyecto de desarrollo de software está a cargo de un jefe de proyecto, el cual lidera y coordina al equipo de proyecto, conformado por un grupo de análisis y diseño, un grupo de construcción y un representante de los usuarios que solicitó el software.

 Cada proyecto contempla el desarrollo de una o más softwares (aplicaciones) que se componen a su vez de elementos de software (aplicaciones módulo). Cada elemento de software tiene un nombre, un responsable del análisis y diseño (miembro de ese grupo), un responsable de la construcción (miembro del grupo de construcción), una fecha de actualización (la última) y un plan de test (a desarrollar por el equipo de SQA ).

 Un plan de test es una declaración narrativa de las pruebas a aplicar al elemento de software para aprobarlo o no. El equipo SQA pertenece a la organización, pero debe ser independiente del equipo de desarrollo del software que contiene al elemento a evaluar.

 Se desea poder manipular esta información y generar reportes de todos los proyectos en desarrollo.

 Utilice las técnicas orientadas al objeto revisadas en clases.