Ingeniería del Software II

jueves, 1 de mayo de 2014

Diseño



          La sección de diseño de su documentación proporciona un cuadro de alto nivel de su estrategia de implementación.


  1. Visión general (1/2 - 3 páginas). Una visión general del diseño: organización de alto nivel, cuestiones de diseño especialmente interesantes, uso de librerías y otros módulos de terceros e indicadores de aspectos no resueltos o proclives al cambio. También incluye problemas con el diseño: decisiones que pueden resultar erróneas y los análisis de las consecuencias entre la flexibilidad y el funcionamiento que pueden ser juzgadas negativamente.
  2. Estructura en tiempo de ejecución (1 - 5 páginas). Una descripción de la estructura del estado del programa en ejecución, expresada como un modelo de objeto de código. Éste debería ocultar las representaciones de los tipos de datos abstractos; su propósito consiste en mostrar las relaciones entre objetos. Los modelos de objeto deberían incluir tanto diagramas como cualquier restricción textual fundamental, y deberían estar claramente expuestos para una correcta legibilidad. Las representaciones de los tipos de datos deberían explicarse (con sus funciones de abstracción e invariantes de representación) si esas representaciones son poco comunes, especialmente complejas o decisivas para el diseño global. Observe que las funciones de abstracción y los invariantes de representación deberían aparecer aún así en su sitio normal en el propio código.
  3. Estructura del módulo (1 - 5 páginas). Una descripción de la estructura sintáctica del texto del programa, expresada como un diagrama de dependencia entre módulos. Debería incluir la estructura del paquete y mostrar tanto las interfaces de Java™ del programa, calendario, material de clase, trabajos, exámenes, lecturas obligatorias, otras fuentes, prácticas, presentaciones, herramientas y proyectos, como las clases. No es necesario exhibir las dependencias de las clases en la API de Java™ del programa, calendario, material de clase, trabajos, exámenes, lecturas obligatorias, otras fuentes, prácticas, presentaciones, herramientas y proyectos. Su MDD (diagrama de dependencia entre módulos) debería estar claramente expuesto para una correcta legibilidad. Explique por qué se eligió esa estructura sintáctica en particular (ej.: introducción de interfaces para el desacoplamiento: qué desacoplan y por qué), y cómo se utilizaron los patrones de diseño concretos.
     Para explicar la descomposición y otras decisiones de diseño, exponga que aportan simplicidad, extensibilidad (facilidad para añadir características nuevas), particionalidad (los distintos miembros del equipo pueden trabajar en las diferentes partes del diseño sin necesidad de mantener una comunicación constante) u objetivos similares relativos a la ingeniería de software.

No hay comentarios:

Publicar un comentario