Fases y modelos del ciclo de vida del desarrollo de software (SDLC)

¿Qué es SDLC?

SDLC es un proceso sistemático para la construcción de software que garantiza la calidad y corrección del software construido. El proceso SDLC tiene como objetivo producir software de alta calidad que cumpla con las expectativas del cliente. El desarrollo del sistema debe completarse en el plazo y el costo predefinidos. SDLC consta de un plan detallado que explica cómo planificar, construir y mantener software específico. Cada fase del ciclo de vida del SDLC tiene su propio proceso y resultados que alimentan la siguiente fase. SDLC significa Ciclo de vida del desarrollo de programas y también se conoce como ciclo de vida de desarrollo de aplicaciones.

¿Por qué SDLC?

A continuación se presentan las razones principales por las que SDLC es importante para desarrollar un sistema de software.

  • Ofrece una base para la planificación, programación y estimación de proyectos.
  • Proporciona un marco para un conjunto estándar de actividades y entregables.
  • Es un mecanismo de seguimiento y control de proyectos.
  • Aumenta la visibilidad de la planificación del proyecto para todas las partes interesadas involucradas en el proceso de desarrollo.
  • Aumento y mejora de la velocidad de desarrollo.
  • Mejora de las relaciones con los clientes
  • Le ayuda a disminuir el riesgo del proyecto y los gastos generales del plan de gestión de proyectos.

 

Fases SDLC

Todo el proceso SDLC se divide en los siguientes pasos SDLC:

Fases SDLC
Fases SDLC
  • Fase 1: recopilación y análisis de requisitos
  • Fase 2: Estudio de viabilidad
  • Fase 3: Diseño
  • Fase 4: Codificación
  • Fase 5: Pruebas
  • Fase 6: Instalación/Implementación
  • Fase 7: Mantenimiento

En este tutorial, he explicado todas estas fases del ciclo de vida del desarrollo de software.

Fase 1: recopilación y análisis de requisitos

El requisito es la primera etapa en el proceso SDLC. Lo llevan a cabo miembros senior del equipo con aportes de todas las partes interesadas y expertos en el dominio de la industria. Planificación para el garantía de calidad En esta etapa también se realizan los requisitos y el reconocimiento de los riesgos involucrados.

Esta etapa brinda una imagen más clara del alcance de todo el proyecto y de los problemas, oportunidades y directivas anticipados que desencadenaron el proyecto.

La etapa de recopilación de requisitos necesita equipos para obtener requisitos detallados y precisos. Esto ayuda a las empresas a finalizar el cronograma necesario para finalizar el trabajo de ese sistema.

Fase 2: Estudio de viabilidad

Una vez que se completa la fase de análisis de requisitos, el siguiente paso del sdlc es definir y documentar las necesidades de software. Este proceso se llevó a cabo con la ayuda del documento "Especificación de requisitos de software", también conocido como documento "SRS". Incluye todo lo que debe diseñarse y desarrollarse durante el ciclo de vida del proyecto.

Existen principalmente cinco tipos de comprobaciones de viabilidad:

  • Económico: ¿Podemos completar el proyecto dentro del presupuesto o no?
  • Legal: ¿Podemos manejar este proyecto como ley cibernética y otros marcos/cumplimientos regulatorios?
  • Operaviabilidad de la operación: ¿Podemos crear operaciones que el cliente espera?
  • técnica: Es necesario comprobar si el sistema informático actual es compatible con el software.
  • Schedule: Decida si el proyecto se puede completar dentro del cronograma dado o no.

Fase 3: Diseño

En esta tercera fase, se preparan los documentos de diseño del sistema y del software según el documento de especificación de requisitos. Esto ayuda a definir la arquitectura general del sistema.

Esta fase de diseño sirve como entrada para la siguiente fase del modelo.

Hay dos tipos de documentos de diseño desarrollados en esta fase:

Diseño de alto nivel (DAN)

  • Breve descripción y nombre de cada módulo
  • Un resumen sobre la funcionalidad de cada módulo.
  • Relación de interfaz y dependencias entre módulos.
  • Tablas de bases de datos identificadas junto con sus elementos clave.
  • Diagramas de arquitectura completos junto con detalles tecnológicos.

Diseño de bajo nivel (LLD)

  • Lógica funcional de los módulos.
  • Tablas de bases de datos, que incluyen tipo y tamaño.
  • Detalle completo de la interfaz.
  • Aborda todo tipo de problemas de dependencia.
  • Listado de mensajes de error
  • Entradas y salidas completas para cada módulo.

Fase 4: Codificación

Una vez finalizada la fase de diseño del sistema, la siguiente fase es la codificación. En esta fase, los desarrolladores comienzan a construir todo el sistema escribiendo código utilizando el lenguaje de programación elegido. En la fase de codificación, las tareas se dividen en unidades o módulos y se asignan a los distintos desarrolladores. Es la fase más larga del proceso del ciclo de vida del desarrollo de software.

En esta fase, el desarrollador debe seguir ciertas pautas de codificación predefinidas. También necesitan usar herramientas de programación como compilador, intérpretes, depurador para generar e implementar el código.

Fase 5: Pruebas

Una vez que el software está completo, se implementa en el entorno de prueba. El equipo de pruebas comienza a probar la funcionalidad de todo el sistema. Esto se hace para verificar que toda la aplicación funcione de acuerdo con los requisitos del cliente.

Durante esta fase, el equipo de pruebas y control de calidad puede encontrar algunos errores/defectos que comunican a los desarrolladores. El equipo de desarrollo corrige el error y lo envía de vuelta al control de calidad para volver a realizar la prueba. Este proceso continúa hasta que el software esté libre de errores, sea estable y funcione de acuerdo con las necesidades comerciales de ese sistema.

Fase 6: Instalación/Implementación

Una vez que finaliza la fase de prueba del software y no quedan errores en el sistema, comienza el proceso de implementación final. Según los comentarios proporcionados por el director del proyecto, se lanza el software final y se comprueba si hay problemas de implementación, si los hubiera.

Fase 7: Mantenimiento

Una vez que se implementa el sistema y los clientes comienzan a utilizar el sistema desarrollado, se llevan a cabo las siguientes 3 actividades:

  • Corrección de errores: se informan errores debido a algunos escenarios que no se prueban en absoluto
  • Upgrade – Actualización de la aplicación a las versiones más recientes del Software
  • Mejora: agregar algunas funciones nuevas al software existente

El objetivo principal de esta fase del SDLC es garantizar que se sigan satisfaciendo las necesidades y que el sistema siga funcionando según la especificación mencionada en la primera fase.

Modelos SDLC populares

Estos son algunos de los modelos más importantes del ciclo de vida de desarrollo de software (SDLC):

Modelo de cascada en SDLC

La cascada es un modelo SDLC ampliamente aceptado. En este enfoque, todo el proceso de desarrollo de software se divide en varias fases de SDLC. En este modelo SDLC, el resultado de una fase actúa como entrada para la siguiente fase.

Este modelo SDLC requiere mucha documentación, y las fases anteriores documentan lo que se debe realizar en las fases posteriores.

Modelo incremental en SDLC

El modelo incremental no es un modelo separado. Es esencialmente una serie de ciclos en cascada. Los requisitos se dividen en grupos al inicio del proyecto. Para cada grupo, se sigue el modelo SDLC para desarrollar software. El proceso del ciclo de vida del SDLC se repite y cada versión agrega más funcionalidad hasta que se cumplan todos los requisitos. En este método, cada ciclo actúa como fase de mantenimiento de la versión anterior del software. La modificación del modelo incremental permite que los ciclos de desarrollo se superpongan. Después de ese ciclo posterior puede comenzar antes de que se complete el ciclo anterior.

Modelo V en SDLC

En este tipo de prueba y desarrollo del modelo SDLC, la fase se planifica en paralelo. Entonces, hay fases de verificación de SDLC en un lado y la fase de validación en el otro lado. V-Model se une por fase de Codificación.

Modelo ágil en SDLC

La metodología ágil es una práctica que promueve la interacción continua entre el desarrollo y las pruebas durante el proceso SDLC de cualquier proyecto. En el método ágil, todo el proyecto se divide en pequeñas compilaciones incrementales. Todas estas compilaciones se proporcionan en iteraciones, y cada iteración dura entre una y tres semanas.

Modelo espiral

El modelo en espiral es un modelo de proceso impulsado por el riesgo. Este modelo de prueba SDLC ayuda al equipo a adoptar elementos de uno o más modelos de proceso como cascada, incremental, cascada, etc.

Este modelo adopta las mejores características del modelo de creación de prototipos y del modelo en cascada. La metodología en espiral es una combinación de creación rápida de prototipos y simultaneidad en actividades de diseño y desarrollo.

Modelo de gran explosión

El modelo Big Bang se centra en todo tipo de recursos en el desarrollo y codificación de software, con muy poca o ninguna planificación. Los requisitos se comprenden e implementan cuando surgen.

Este modelo funciona mejor para proyectos pequeños con equipos de desarrollo más pequeños que trabajan juntos. También es útil para proyectos académicos de desarrollo de software. Es un modelo ideal donde se desconocen los requisitos o no se proporciona la fecha de lanzamiento final.

Resum

  • El ciclo de vida de desarrollo de software (SDLC) es un proceso sistemático para crear software que garantiza la calidad y corrección del software creado.
  • El formato completo SDLC es Ciclo de vida de desarrollo de software o Ciclo de vida de desarrollo de sistemas.
  • SDLC en ingeniería de software proporciona un marco para un conjunto estándar de actividades y entregables.
  • Siete etapas diferentes de SDLC son 1) Recopilación y análisis de requisitos 2) Estudio de viabilidad: 3) Diseño 4) Codificación 5) Pruebas: 6) Instalación/Implementación y 7) Mantenimiento
  • Los miembros superiores del equipo llevan a cabo la análisis de requisitos fase
  • La etapa de estudio de viabilidad incluye todo lo que debe diseñarse y desarrollarse durante el ciclo de vida del proyecto.
  • En la fase de diseño, los documentos de diseño del sistema y del software se preparan según el documento de especificación de requisitos.
  • En la fase de codificación, los desarrolladores comienzan a construir todo el sistema escribiendo código utilizando el lenguaje de programación elegido.
  • La prueba es la siguiente fase que se lleva a cabo para verificar que toda la aplicación funcione de acuerdo con los requisitos del cliente.
  • La instalación y el despliegue comienzan cuando el pruebas de software La fase ha terminado y no quedan errores ni errores en el sistema.
  • Acciones de corrección de errores, actualización y participación cubiertas en el mantenimiento
  • Cascada, Incremental, Ágil, Modelo V, Espiral, Big Bang son algunos de los modelos SDLC populares en ingeniería de software.
  • SDLC en pruebas de software consiste en un plan detallado que explica cómo planificar, construir y mantener software específico.