Principios en el desarrollo de software
Sin importar que tan específicos sean, los principios ayudan a establecer un conjunto sólido de práctica de ingeniería del software. David Hooker ha propuesto siete principios esenciales, los cuales se enfocan en la práctica de la ingeniería del software como un todo.
El primer principio: la razón por la que todo existe
Un sistema de software existepor una razón: para ofrecer un valor a sus usuarios. Todas las decisiones deben tomarse con esto en mente. Antes de especificar un requisito de un sistema, antes de señalar una pieza de funcionalidad del sistema, antes de determinar las plataformas del hardware o los procesos de desarrollo, uno debe hacerse preguntas como: ¿esto agrega un valor real al sistema? Si la respuesta es negativa nose debe hacer. Todos los demás principios están apoyados en éste.
El segundo principio: MS (mantenerlo simple)
El diseño de software no es un proceso fortuito. Existen muchos factores que deben considerarse en cualquier esfuerzo de diseño. Todo el diseño debe ser tan simple como sea posible, pero no más simple. Esto facilita un sistema de más fácil comprensión y entendimiento. Esto noquiere decir que las características, hasta las internas, deban descartarse en nombre de la simplicidad. Además, los diseños más elegantes por lo general son los más simples. Simple tampoco significa “rápido y malo”. De hecho, se requiere de mucha reflexión y trabajo sobre múltiples iteraciones para simplificar. El resultado buscado es un software que se mantenga y sea menos propenso al error.El tercer principio: mantener la visión
Una visión clara es esencial para éxito de un proyecto de software. Sin la visión clara el proyecto podría terminar con “dos o más significados” en uno. Sin una integridad conceptual un sistema amenaza con tornarse en una masa confusa de diseños incompatibles, unida por un tipo inadecuado de tornillos.
El cuarto principio: lo que uno produzca, otroslos consumirán
En muy pocas ocasiones un sistema de software con fuerza industrial se construye de manera asilada. De alguna u otra forma, alguien más utilizará, mantendrá, documentará o dependerá de su capacidad de entender el sistema. Por lo tanto, siempre debe especificarse, diseñarse e implementarse con la idea de que alguien más tendrá que entender lo que se realice.
El quinto principio:estar abierto al futuro
Un sistema con una larga vida tiene más valor. En los ambientes computacionales de la actualidad, en los que las especificaciones cambian a cada momento y las plataformas de hardware son obsoletas después de algunos meses, la vida del software se mide, de modo típico en meses en lugar de años. Un sistema tendrá éxito si está listo para adaptarse a éstos y otros cambios.Los sistemas que logran el éxito son aquellos que han sido diseñados de esta manera desde el principio.
El sexto principio: planear para la reutilización
La reutilización ahorra tiempo y esfuerzo. Al alcanzar un alto grado de reutilización se logra una de las metas más difíciles en el desarrollo de un sistema de software. La reutilización de código y diseños ha sido proclamada como unbeneficio importante del uso de tecnologías orientadas a objetos. Sin embargo, la recuperación de la inversión no es automática. Las posibilidades de reutilización que proporciona la programación orientada a objetos (o convencional) se podrá considerar si se tiene una visión a futuro y una planeación.
El séptimo principio: pensar
Este último principio tal vez sea el que más se pasa por alto. Casisiempre, cuando se tiene un pensamiento claro y completo antes de la acción se producen los mejores resultados. Cuando se reflexiona acerca de algo existe una mayor probabilidad de hacerlo bien. Siempre se obtiene conocimiento de la manera de hacerlo bien de nuevo. Si se piensa en algo y aun así se hace mal, esto se convierte en una experiencia valiosa.
Principios de la etapa de Captura de...
Regístrate para leer el documento completo.