Durante los últimos años, varias técnicas han sido
implementadas en el desarrollo de los productos de la programación; estas
técnicas incluyen el refinamiento en pasos, los niveles de abstracción, el
diseño estructurado, el desarrollo integrado jerárquico hacia abajo y la
programación estructurada de Jackson. Aunque estas técnicas son nombradas como
metodologías de diseño, en realidad son sólo puntos de vista y guías para el
diseño; el diseño de productos de programación es una actividad creativa y como
en todo proceso creativo, un marco de trabajo, así como un punto de vista es
esencial. Lo anterior es proporcionado por las diversas técnicas mencionadas
arriba.
Las técnicas de diseño comúnmente están basadas en las estrategias de las jerarquías de "hacia abajo" y de "hacia arriba". Por medio del enfoque de arriba a abajo, se pone atención inicialmente en los aspectos globales de todo el sistema; conforme el diseño progresa, el sistema se descompone en subsistema, poniéndosele mayor consideración a los detalles específicos. El encadenamiento hacia atrás (en inglés, backtracking) resulta fundamental en este tipo de diseño. Conforme las decisiones se descomponen en niveles más elementales, puede resultar aparente que una decisión de alto nivel generó una ineficiente o desorganizada descomposición de funciones de menor nivel; así, una decisión puede tener que ser reconsiderada y el sistema reestructurado correspondientemente.
Las técnicas de diseño comúnmente están basadas en las estrategias de las jerarquías de "hacia abajo" y de "hacia arriba". Por medio del enfoque de arriba a abajo, se pone atención inicialmente en los aspectos globales de todo el sistema; conforme el diseño progresa, el sistema se descompone en subsistema, poniéndosele mayor consideración a los detalles específicos. El encadenamiento hacia atrás (en inglés, backtracking) resulta fundamental en este tipo de diseño. Conforme las decisiones se descomponen en niveles más elementales, puede resultar aparente que una decisión de alto nivel generó una ineficiente o desorganizada descomposición de funciones de menor nivel; así, una decisión puede tener que ser reconsiderada y el sistema reestructurado correspondientemente.
Con el fin de reducir este encadenamiento hacia atrás,
muchos diseñadores proponen el uso de una estrategia mezclada, la cual es
predominantemente hacia abajo, pero que primero requiere de la especificación
de los módulos inferiores. La ventaja primordial de esta estrategia es que se
dedica la atención a las necesidades del cliente, a las interfaces con el
usuario ya la naturaleza global del problema a resolver.
En el enfoque hacia arriba del diseño de productos de programación, el diseñador primero intenta identificar al conjunto primitivo de objetos, acciones y relaciones que proporcionarán una base para la solución del problema; los conceptos de alto nivel son después formulados en términos del conjunto de primitivos.
En el enfoque hacia arriba del diseño de productos de programación, el diseñador primero intenta identificar al conjunto primitivo de objetos, acciones y relaciones que proporcionarán una base para la solución del problema; los conceptos de alto nivel son después formulados en términos del conjunto de primitivos.
La estrategia hacia arriba requiere que el diseñador combine las características proporcionadas por el lenguaje de instrumentación para dar entidades más sofisticadas; estas entidades son a su vez combinadas hasta que se construye un conjunto de funciones, estructuras de datos e interconexiones para resolver el problema por medio del uso de las facilidades del ambiente de programación existente; este tipo de diseño puede también requerir del rediseño y el encadenamiento hacia atrás del mismo. El éxito de este enfoque depende de la identificación del conjunto adecuado de ideas primitivas que sean suficientes para la instrumentación del sistema.
El diseño y la instrumentación jerárquicos hacia arriba permiten)a determinación del desempeño de los subsistemas durante la evolución del sistema; cuando se utilizan jerarquías hacia abajo, la evaluación del desempeño debe deferirse hasta el final, esto es, hasta que el sistema quede ensamblado.
APORTACIONES: ANA ROSA SANCHEZ ARVIZU
http://www.facebook.com/yeoryina.arvizu