Modelos SDLC - Evolución

Un modelo de Ciclo de vida de desarrollo de software (SDLC) es un marco que describe las actividades realizadas en cada etapa de un proyecto de desarrollo de software.

En un ciclo de vida de desarrollo de software, las actividades se realizan en cinco fases:

  • Recopilación de requisitos: se recopilan los requisitos para desarrollar un software. Estos requisitos estarán en un idioma que el cliente / usuario entienda. Se recomienda la terminología específica del dominio.

  • Análisis : los requisitos reunidos se analizan desde el punto de vista de la implementación y las especificaciones del software se escriben para cubrir tanto los requisitos funcionales como los requisitos no funcionales.

  • Diseño : esta fase implica llegar a la arquitectura del software y los detalles de implementación basados en la tecnología elegida para el desarrollo.

  • Construcción : en esta fase, se desarrolla el código, se prueba la unidad, se integra, se prueba la integración y se produce la construcción.

  • Pruebas : las pruebas funcionales del software creado se realizan en esta fase. Esto también incluye la prueba de requisitos no funcionales.

Hay dos enfoques para realizar estas actividades:

  • Prescriptivo : los modelos SDLC que le proporcionarán formas de realizar las actividades de una manera prescrita según lo definido por el marco.

  • Adaptativo : los modelos SDLC que le brindarán flexibilidad para realizar las actividades, con ciertas reglas que deben seguirse. Los métodos ágiles en su mayoría siguen este enfoque, y cada uno tiene sus reglas. Sin embargo, seguir un enfoque adaptativo o ágil no significa que el software se desarrolle sin seguir ninguna disciplina. Esto llevaría a un caos.

Debe comprender que no podemos decir que un modelo SDLC específico sea bueno o malo. Cada uno de ellos tiene sus propias fortalezas y debilidades y, por lo tanto, son adecuados en ciertos contextos.

Cuando elige un modelo SDLC para su proyecto, debe comprender:

  • El contexto de su organización
  • Tu contexto tecnológico
  • La composición de tu equipo
  • Su contexto de cliente

Por ejemplo, si el desarrollo del software es predecible, puede utilizar un enfoque prescriptivo. Por otro lado, si el desarrollo del software es impredecible, es decir, los requisitos no se conocen por completo, o el equipo de desarrollo no tiene una exposición previa al dominio o la tecnología actual, etc., entonces el enfoque adaptativo es la mejor opción.

En las siguientes secciones, comprenderá los modelos SDLC más frecuentes que se desarrollan durante la ejecución de proyectos de desarrollo de software en toda la industria. También conocerá las fortalezas y debilidades de cada uno de ellos y en qué contextos son adecuados.