B. Diseño Top-Down
El diseño Top-Down fue promovido en la década de 1970 por el
investigador de IBM Harlan Mills y Nickaus Wirth. Mills desarrolló
conceptos de programación estructurada para utilizarlos y probarlos
en un proyecto de 1969 que tenía como objetivo automatizar algunos
procedimientos del periódico New York Times. El desarrollo de este
proyecto hizo que se dispersara y se ampliara la idea de hacer los
programas con esta filosofía de trabajo al resto de los
desarrolladores de IBM, así como al resto de la industria del
software. Por su parte, Nicklaus Wirth, desarrolló entre otros
lenguajes, el lenguaje de programación Pascal, escribió un artículo
muy importante acerca del Desarrollo de programas por medio de
refinamiento de pasos. Esta idea de diseñar programas permaneció
como principal corriente de desarrollo hasta fines de la década de
1980, cuando fue desplazada por la programación orientada a
objetos, sin embargo continúa siendo una muy importante ayuda para
el desarrollo de los métodos en los la programación orientada a
objetos [7].

Figura. 27. Niclaus Wirth (izq.) y Harlan D. Mills (der.) fueron
los primeros promotores del diseño Top-Down en la década de
1970.
La solución a los problemas computacionales puede llegar a se muy
complicada y compleja. Cuando los programas son de miles de líneas,
o componerse de diversos archivos de código, es imposible mantener
todos los detalles del programa en mente cuando se desarrolla un
algoritmo.
El diseño top-down es una herramienta que presenta en primer lugar
una solución a un problema general utilizando tres o cuatro pasos
solamente. Cada uno de esos pasos en la primera solución se dividen
en otros subpasos. Este proceso se repite varias veces, en cada
iteración se produce una solución más detallada al problema
original. Cuando los pasos ya no se pueden subdividir, el algoritmo
ha terminado. El diseño top-down también se conoce como
descomposición funcional o refinamiento de pasos.
Ejercicio: De la siguiente lista de actividades,
¿cuál crees que está orientada al diseño Top-down?
1) Empezar con los detalles
2) Empezar con el problema en general
3) Considerar el problema general y los detalles al mismo
tiempo
El diseño top-down automáticamente produce módulos en un algoritmo.
Recordemos que los módulos son grupos de instrucciones que
desarrollan funciones específicas. Supongamos que queremos escribir
un algoritmo que imprima facturas, en primer lugar vamos a
identificar esa tarea en la primera iteración den diseño top-down.
El paso calcular el monto total de la factura lo podemos redefinir
como.

Lo que nos ayuda a definir los módulos de nuestro algoritmo
en:
Módulo 1. Obtener detalles del cliente
Módulo 2. Obtener detalles de todas las ´ordenes de ese
cliente
Módulo 3. Calcular el monto total de las facturas del cliente
Módulo 4. Agregar el 5% de interés a las facturas de hace 1
mes
Módulo 5. Agregar el 10% de interés a las facturas anteriores a 1
mes
Módulo 6. Sumar el monto de las facturas con el total de los
intereses
Módulo 7. Imprimir el monto total
Cada módulo debe ser tratado en la misma manera que el problema
general, el diseño top-down, hace que el problema general se
convierta en problemas más específicos y en general más fáciles de
resolver.
Hay 2 opiniones. Opina sobre este curso.
| Cursos | Valoración | Alumnos | Vídeo | |
|---|---|---|---|---|
|
Bases de Datos en C# El curso incluye el código necesario para acceder a las bases de datos y realizar consultas de selección y de acción.... [05/04/07] |
|
4.826 | ||
|
Aprende Word Este curso está destinado a los principiantes. A todos aquellos que necesitan una introducción detallada para moverse dentro de este programa. Está basado en ejercios prá... [27/09/05] |
|
3.974 | ||
|
Cómo vuelan las aves y los aviones En este curso de no muy larga duración explicaré sencillamente como vuelan aves, aviones y toda cosa que se eleve por los aires.... [14/02/07] |
|
866 | ||
Publicar en
del.icio.us
digg
meneame