Diseño modular efectivo
Enviado por Programa Chuletas y clasificado en Informática y Telecomunicaciones
Escrito el en español con un tamaño de 5,01 KB
El diseño es el primer paso de la fase de desarrollo de cualquier producto o sistema de ingeniería.
“Proceso de aplicar distintas técnicas y principios con el propósito de definir un dispositivo, proceso o sistema con los suficientes detalles como para permitir su realización física”
Importancia del diseño
El diseño es técnicamente la parte central de la ingeniería del software.
Definición de diseño
Proceso de aplicar distintas técnicas y principios con el propósito de definir un dispositivo, proceso o sistema con los suficientes detalles como para permitir su realización física
Importancia del diseño
Sin diseño, nos arriesgamos a construir un sistema inestable, un sistema que falle cuando se realicen pequeños cambios, un sistema que sea difícil de probar, un sistema cuya calidad no pueda ser evaluada
El proceso de diseño
El diseño del software es un proceso mediante el que se traducen los requisitos en una representación del software, que se acerca mucho al código fuente.
etapas del diseño de software. El diseño preliminar se centra en la transformación de los requisitos en los datos y la arquitectura del software.
El diseño detallado se ocupa del refinamiento y de la representación arquitectónica que lleva a una estructura de datos refinada y a las representaciones algorítimicas del software
(RTF)
que son una actividad de garantía del software cuyos objetivos son:descubrir errores, verificar el software, garantizarlo, Hacer que los proyectos sean manejables.
Una abstracción de datos es un conjunto de datos que describen un objeto, que está compuesta por conjunto de partes de información
Una abstracción procedimental es una determinada secuencia de instrucciones que tienen una función limitada y específica
El refinamiento sucesivo es una primera estrategia de diseño descendente propuesta por Niklaus Wirth
MODULARIDAD
El software se divide en componentes con nombres y ubicaciones determinados, que se denominan módulos y que se integran para satisfacer los requisitos del proveedor.
Arquitectura del software:
Se refiere a dos carácterísticas importantes del software:
Estructura jerárquica de los componentes procedimentales (módulos ó unidades de software).
La estructura de los datos. Esto se obtiene del análisis del problema efectuado anteriormente.
JERARQUÍA DE CONTROL
También se le conoce como estructura del programa, y representa la organización jerárquica de los módulos de un programa e implica una jerarquía de control.
ESTRUCTURA DE DATOS
La estructura de datos es una representación de la lógica que existe entre los elementos individuales de información
TIPOS DE MÓDULOS
Módulos secuenciales, modulo incremental,módulos paralelos
INDEPENDENCIA FUNCIONAL
La independencia funcional es una derivación directa de la modularidad, de la abstracción y del ocultamiento de información.
La cohesión:
es una extensión del concepto de ocultamiento de información
Acoplamiento
El acoplamiento es una medida de la interconexión entre los módulos de una estructura de programa.
Diseño de datos
El diseño de datos es la primera de las tres actividades de diseño realizadas durante la ingeniería del software.
Diseño arquitectónico
El objetivo principal del diseño arquitectónico es desarrollar una estructura de programa modular y representar las relaciones de control entre los módulos
Diseño procedimental
EL diseño procedimental se realiza después de que se ha establecido la estructura del programa y de los datos.
Lenguaje de diseño de programas
Un lenguaje de diseño de programas (LDP), también conocido como lenguaje estructurado o pseudocódigo es un lenguaje que utiliza el vocabulario de un lenguaje y la sintaxis de otro.
Refinamiento:
Se refiere a los detalles de procesamiento, la arquitectura de un programa sedesarrolla en niveles sucesivos de refinamiento de los detalles procedimentales.
Modularidad:
Se refiere a descomponer un programa en partes para mantenerlo y desarrollarlo más eficientemente. Se divide en componentes con nombres y ubicaciones determinados, que se denominan módulos o unidades de software y que se integran para satisfacer los requisitos del usuario.