Tecnologia

Solo disponible en BuenasTareas
  • Páginas : 22 (5318 palabras )
  • Descarga(s) : 4
  • Publicado : 10 de mayo de 2010
Leer documento completo
Vista previa del texto
Fundamentos del diseño de software

Fundamentos del diseño de software
El diseño es el primer paso de la fase de desarrollo de cualquier producto o sistema de ingeniería. Definición de diseño según Taylor “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” Eldiseño de software, al igual que los métodos de diseño de todas las ingenierías, cambian continuamente al aparecer nuevos métodos, mejores análisis y ampliar los conocimientos. El problema es que el diseño de software se encuentra en una etapa relativamente temprana en su evolución. La idea de realizar diseño de software en lugar de “programar”, surgió a principios de los años 60, por lo que a lasmetodologías de diseño les falta la profundidad y la flexibilidad que tiene el diseño en otras ingenierías. Pero, ya existen técnicas de diseño de software para poder evaluar la calidad del software. El objetivo de este tema es presentar los conceptos fundamentales que se pueden aplicar a todos los diseños de programas.

1. Ingeniería del software y diseño del software
Una vez que se hanestablecido los requisitos del software, el diseño es la primera de tres actividades técnicas: diseño, codificación y prueba. Cada actividad transforma la información de forma que al final se obtiene un software validado. El diseño es técnicamente la parte central de la ingeniería del software. Durante el diseño se desarrollan, revisan y se documentan los refinamientos progresivos de las estructuras dedatos, de la estructura del programa y de los detalles procedimentales. El diseño da como resultado representaciones cuya calidad puede ser evaluada. Mediante algunas metodologías de diseño se realiza el diseño de datos, el diseño arquitectónico y el diseño procedimental. El diseño de datos transforma el modelo de campo de información, creado durante el análisis, en las estructuras de datos que sevan a requerir para implementar el software. El diseño arquitectónico define las relaciones entre los principales elementos estructurales del programa. El diseño procedimental transforma los elementos estructurales en una descripción procedimental del software. A continuación, se genera el código fuente y, para integrar y validar el software, se llevan a cabo las pruebas.

1

Fundamentos deldiseño de software

Las fases de diseño, codificación y prueba absorben el 75% o más del coste de la ingeniería del software (excluyendo el mantenimiento). Es aquí donde se toman las decisiones que afectarán finalmente al éxito de la implementación del programa, y también, a la facilidad de mantenimiento que tendrá el software. Por tanto el diseño es un paso fundamental de la fase de desarrollo.El diseño es la única forma mediante la que podemos traducir con precisión los requisitos del cliente en un producto o sistema acabado. El diseño de software es la base de todas las partes posteriores del desarrollo y de la fase de prueba, como muestra la figura 1.

Figura 1. Importancia del diseño Sin diseño, nos arriesgamos a construir un sistema inestable, un sistema que falle cuando serealicen pequeños cambios, un sistema que sea difícil de probar, un sistema cuya calidad no pueda ser evaluada hasta más adelante, cuando quede poco tiempo y ya sea haya gastado mucho dinero.

2. 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. Desde el punto de vista de lagestión del proyecto, el diseño del software se realiza en dos etapas: el diseño preliminar y el diseño detallado. 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...
tracking img