¿Que es el proceso de desarrollo de software?
Un
modelo de proceso de desarrollo de software puede verse como una manera
de dividir el trabajo en distintas actividades (o el ciclo de vida
del producto en distintas fases) con la intención de lograr la mejor gestión y
el mejor resultado para el proyecto. Estos modelos pueden incluir la definición
previa de entregables específicos y otros artefactos que son creados y
completados por el equipo para diseñar, codificar, probar y mantener el
software en cuestión.
El proceso de desarrollo de
los programas Java no difiere de la mayoría de los lenguajes de programación.
Es necesario seguir un conjunto de pasos para desarrollar correctamente un
producto software.
Definición
La Ingeniería del Software
estudia los distintos procesos de desarrollo de software. El IEEE define
Ingeniería del Software como la aplicación sistemática, disciplinada y
cuantificable de un proceso de desarrollo, operación y mantenimiento de un
producto software.
El proceso clásico de
desarrollo de software es ampliamente utilizado por su sencillez. Este proceso
se compone de las siguientes fases: especificación, diseño, codificación,
prueba y mantenimiento.
Especificación: En esta fase se decide
la funcionalidad, las características técnicas de una aplicación y sus condiciones
de uso. En esta fase es necesario responder a las siguientes preguntas:
- ¿Para qué se va a utilizar la aplicación?
- ¿Cuáles son las necesidades funcionales de los usuarios?
- ¿Cuál es el perfil de los usuarios de la aplicación?
- ¿En qué plataforma se ejecutará la aplicación?
- ¿Cuáles son sus condiciones de operación?
- ¿Cómo se va a utilizar?
Diseño: En esta fase se utiliza
toda la información recogida en la fase de especificación y se propone una
solución que responda a las necesidades del usuario y se pueda desarrollar. En
esta fase se define la arquitectura de la aplicación. Es necesario detallar la
estructura y la organización del programa y cómo se relacionan las distintas
partes de la aplicación.
Codificación: Esta fase consiste en la
programación en Java de las especificaciones de diseño de la fase anterior. Durante
esta fase de codificación o implementación se aplican normas de programación
para facilitar la legibilidad de los programas Java.
Prueba: En esta fase se compila
y se ejecuta la aplicación para verificar que cumple con los requisitos
funcionales y técnicos definidos en la fase de especificación. Si el programa
no cumple con todos los requisitos, se puede deber a errores de diseño o de
programación. En tal caso, es necesario corregir los errores que se hayan
detectado y repetir de nuevo el proceso de diseño y codificación. Durante la
fase de prueba se verifica que la aplicación cumple con los criterios de calidad
establecidos en el proyecto: facilidad de uso, corrección, eficiencia,
integridad, fiabilidad, flexibilidad, facilidad de mantenimiento, facilidad de
prueba, portabilidad, capacidad de reutilización.
Una vez que la aplicación
se ha probado y cumple con los requisitos establecidos, entonces se pone en
funcionamiento y comienza la fase de operación para que sea utilizada para el
fin con el que ha sido desarrollada.
Mantenimiento: Una vez que la aplicación
se ha puesto en operación da comienzo la fase de mantenimiento. En esta fase se
corrigen errores de funcionamiento de la aplicación, se modifica la
funcionalidad o se añaden las nuevas funcionalidades que demandan los usuarios.
La fase de mantenimiento es la de mayor duración, pues pueden pasar muchos años
desde el inicio de la operación hasta que el producto es retirado.