Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Resumen:
Indice
www.docirs.cl/acerca_fases_proceso_programacion.htm 1/4
30/10/13 Acerca de las fases del proceso de programación
tomar en cuenta los cambios producidos en los requerimientos del sistema. Finalmente
prepara el documento base de la ayuda de usuarios.
Cualquier consideración del proceso de programación mismo debe comenzar aislando cada
una de sus fases componentes. Se identifica las siguientes cinco fases:
El análisis del problema se refiere a la etapa del proceso en la que el programador toma
conocimiento del problema antes de proceder a desarrollar una solución. Es un proceso de
“introducción”, de naturaleza cognoscitiva y muy difícil de describir. Son demasiados los
programadores que recorren esta etapa muy rápidamente, lo que hace que entiendan mal o
malinterpreten las especificaciones. Algunos programadores prefieren devolver las
especificaciones del problema al diseñador, para reducir la posibilidad de malentendido.
Los errores que se cometen en esta etapa son con mucha frecuencia difíciles de detectar y
consumen mucho tiempo cuando se les trata de remediar en las etapas posteriores.
También es una alternativa recurrir a desarrollos anteriores hechos para otras soluciones
(la librería propia) y desde allí comenzar el proceso de creación. Siempre y cuando el
problema central haya sido resuelto realmente, puesto que si no es así esta situación
acarreará problemas en las fases posteriores. Otro punto de suma importancia en esta
etapa, es el definir la arquitectura del modelo de datos, las relaciones lógicas básicas y las
pautas a seguir en las transacciones con la base(s) de datos que tendrá la aplicación.
(Asumimos que en esta etapa, ya debe estar delineado el conjunto de clases de funciones
que tendrá el sistema, y que posteriormente se transformarán en las entidades u objetos).
www.docirs.cl/acerca_fases_proceso_programacion.htm 2/4
30/10/13 Acerca de las fases del proceso de programación
En teoría, la (única manera en que las pruebas pueden demostrar que un programa es
correcto es que se examinen todos los casos posibles (lo cual se conoce como una prueba
exhaustiva), situación que es imposible técnicamente, incluso para los programas más
simples.
Significa esto que las pruebas son inútiles? Definitivamente, no. El programador puede
hacer mucho por reducir el número de casos a probar a partir del número requerido por una
prueba exhaustiva. Tomando con mucho cuidado y seleccionando apropiadamente el diseño
de los casos de prueba, puede reducirse el número de ellos, haciendo posible una prueba
razonable con un número relativamente pequeño de casos.
La prueba de un programa es una tarea tan creativa como su mismo desarrollo, por lo que
debe considerarse con la misma diligencia y entusiasmo. Algunos principios de las pruebas
son claros: trátese de iniciar las pruebas de un programa con una mentalidad de
saboteador, casi disfrutando la tarea de buscar un error. Hay que sospechar de todo. Los
casos de prueba deberían diseñarse a partir de las especificaciones originales, en lugar del
programa mismo; si se efectúan a partir del programa, algunos aspectos del problema que
han sido pasados por alto durante su construcción también lo serán cuando se le pruebe.
Para reducir las posibilidades de que esto ocurra en las compañías profesionales de
programación, los encargados suelen insistir en que sean personas diferentes a los
programadores originales quienes tengan a su cargo la prueba de los programas. Los
usuarios de los programas disponen, con frecuencia, de sus propios datos de prueba
desarrollados, independientemente, para usarlos cuando el programa esté a su disposición.
Téngase en cuenta que la contraparte del cliente evalúa muy mal al equipo de desarrollo o
proveedor cuyas aplicaciones no son capaces de pasar las pruebas de los usuarios. Por eso
de cualquier forma que se haga, una prueba completa antes de pasar a la revisión del
cliente es una parte esencial de los proyecto de programación.
Bibliografía:
An algorithmic Approach
Department of Computational Science.
University Saskatchewan
Jean-Paul Tremblay
Richard B. Bunt
RobotDocIRS
www.docirs.cl/acerca_fases_proceso_programacion.htm 4/4