· En el proceso de diseño no deberá utilizarse “orejeras”.
· El diseño deberá poderse rastrear hasta el modelo de análisis.
· El diseño no deberá inventar nada que ya este inventado.
· El diseño deberá minimizar la distancia intelectual entre el software y el problema como si de la misma vida real se tratara.
· El diseño deberá presentar uniformidad e integración.
· El diseño deberá estructurarse para degradarse poco a poco, incluso cuando se enfrenta con datos, sucesos o condiciones de operación aberrantes. Adaptabilidad.
· El diseño no es escribir código, y escribir código no es diseñar.
· El diseño deberá evaluarse en función de la calidad mientras se va creando, no después de tomarlo.
· El diseño deberá revisarse para minimizar los errores conceptuales.
CONCEPTOS DEL DISEÑO
o ABSTRACCIÓN: Permite concentrarse en un problema a algún nivel de generalizaciones sin tener en consideración de la abstracción, también permite trabajar con conceptos y términos que son familiares en el entorno del problema sin tener que transformarlos en una estructura no familiar.
o REFINAMIENTO: Una jerarquía se desarrolla descomponiendo una sentencia macroscópica de función paso a paso hasta alcanzar las sentencias del lenguaje de programación.
o MODULARIDAD: El software se divide en componentes nombrados y abordados por separado llamados módulos que se integran para satisfacer los requisitos del problema.
o ARQUITECTURA DEL SOFTWARE: Es la estructura jerárquica de los componentes del programa, la manera en que los componentes interactúan y la estructura de datos que van a utilizar los componentes.
o JERARQUÍA DE CONTROL: Representa la organización de los componentes de programa e implica una jerarquía de control. No representa los aspectos procedimentales del software.
o DIVISIÓN ESTRUCTURAL: Se puede dividir tanto Horizontal como verticalmente.
o ESTRUCTURA DE DATOS: Es una representación lógica entre elementos individuales de datos.
o OCULTACIÓN DE INFORMACIÓN: Los módulos se caracterizan por las decisiones de diseño que oculta al otro. En otras palabras los módulos deberán especificarse y diseñarse de manera que la información que está dentro de un módulo sea inaccesible a otros módulos que no necesiten esa información.
No hay comentarios:
Publicar un comentario