Metodologías y Fases Esenciales del Desarrollo de Software

Clasificado en Informática

Escrito el en español con un tamaño de 3,4 KB

El Proceso de Desarrollo de Software: Fases y Conceptos Clave

Fases Fundamentales del Desarrollo de Software

El desarrollo de software sigue un proceso estructurado que generalmente se divide en tres etapas principales:

  1. Análisis: En primer lugar, hay que estudiar el problema en cuestión. Esta etapa comprende tareas como la recogida de requisitos, la identificación de conceptos clave y la definición de tareas.

  2. Diseño: Después de haber comprendido el problema, se procede a diseñar una solución. La especificación concisa de los pasos necesarios para resolver el problema es lo que se conoce como algoritmo.

  3. Implementación: Tras el diseño de la solución, se implementa la misma, traduciendo los pasos obtenidos en el algoritmo a un lenguaje de programación concreto, obteniéndose finalmente un programa que puede ser ejecutado en una computadora.

Glosario de Conceptos Esenciales

Programa
Conjunto finito de instrucciones de computadora más o menos elementales que resuelven un determinado problema mediante el procesamiento de información y/o la interacción con el usuario.
Código Fuente
Se refiere a la especificación del algoritmo en un lenguaje de programación concreto.
Proyecto Software
Conjunto de recursos tales como códigos fuente, manuales y documentación técnica necesarios para la construcción de uno o varios programas.
Ciclo de Vida
Es el tiempo que transcurre desde que se concibe inicialmente el sistema hasta el momento en que dicho software se retira de la comercialización o de su uso.
Ingeniería del Software
Disciplina que estudia las etapas de Análisis, Diseño y los distintos modelos de desarrollo, siendo estos objeto de estudio.

Métodos de Programación y Desarrollo Ágil

Los métodos de programación definen cómo se gestionan y ejecutan las tareas dentro del ciclo de vida del software:

  • Agile: Se caracteriza por dividir el desarrollo del proyecto en proyectos más pequeños. Suele emplearse en el desarrollo de nuevas versiones por actualización de productos existentes.

  • Scrum: En este caso, las tareas de un proyecto se suelen dividir en ciclos más cortos llamados sprints. Se suele proponer a los participantes en función de sus experiencias y sus habilidades, otorgándoles más peso en aquellas áreas de las que son especialistas.

  • Extreme Programming (XP): Es un método evolutivo. Se centra en el desarrollo prioritario de las tareas críticas. Se suele emplear cuando no está clara la estabilidad del entorno de desarrollo o cuando los requisitos son muy inciertos.

  • Pair Programming: Se da cuando el número de desarrolladores es dos. Cada uno se centra en las tareas que domina. El éxito depende de las características de ambos programadores.

  • Kanban: Metodología que se basa en el control de tareas por fases y por fechas de vencimiento. Si el proyecto no es muy complejo puede ser una buena elección.

Entradas relacionadas: