martes, 27 de septiembre de 2011

Diseño del componente de dominio problema

El componente del dominio del problema (PDC) es el conjunto básico de objetos funcionales que llega de la etapa de análisis. Tales objetos directamente resuelven el problema que se pretende ser resuelto por el sistema que se está construyendo, lo que quiere decir que el diseño del PDC se termina en su mayor parte en la etapa de análisis, completándose ahora con la ejecución de tres actividades, las cuales son:

  1. Diseño de reuso: Se pueden añadir en esta etapa nuevas clases para reusar objetos que serán útiles  más adelante. Es el caso de los paquetes comerciales de clase generalizada como las que contienen las organizaciones de programadores OO con experiencia, ellos por lo general poseen una biblioteca de clases desarrollada para los objetos. Estas bibliotecas y paquetes pueden contener clases que tienen atributos y servicios para objetos similares a los requeridos en el diseño del sistema a desarrollarse. Estas clases reusables pueden ser añadidas al diseño como clases bases en una estructura Gen-Spec.
  2. Estructura de Implementación:  Debido a la implementación en un lenguaje de programación en  particular podría ser necesario que en el diseño se agreguen estructuras que pueden ser de agregación, o Gen-Spec, este último para permitir que varias clases de objetos compartan un protocolo o estructura de datos. Estas estructuras usan el concepto de herencia para hacer más fácil el enfoque de programación. 
  3. Acomodo al lenguaje: En esta sección podemos corregir (si es necesario) el diseño para que las  estructuras puedan ser construidas en el lenguaje de programación seleccionado, debido a que estos lenguajes pueden tener diferentes patrones de herencia. Algunos lenguajes, por ejemplo, incluyen herencia múltiple (C++), otros solamente incluyen herencia simple (Java) y todavía otros que posiblemente no incluyen herencia. En los casos más restrictivos, los patrones de herencia del diseño deben ser modificados para permitir las capacidades del lenguaje de programación.
 En la figura anterior se observa que el objeto Tren hereda de Listas y Celdas (clases propias de la biblioteca de C++), pero al no tener C++ forma de manejar dos estructuras Gen-Spec con Listas se tuvo que crear una segundo estructura llamada ListaCarrros y conectarlos uno a uno con el objeto Tren.

No hay comentarios:

Publicar un comentario