Ciclo de vida del desarrollo de programas
http://www.gcreddy.com/2014/06/sdlc-i…
Ciclo de vida de desarrollo de software / SDLC / Proceso de desarrollo de software,
SDLC es un proceso para desarrollar un proyecto de software. Consiste en un plan detallado que describe cómo desarrollar, mantener, reemplazar y alterar o mejorar un software específico. El ciclo de vida define una metodología para mejorar la calidad del software y el proceso de desarrollo general.
El ciclo de vida del desarrollo de software consta de las siguientes etapas:
Etapa 1: recopilación de requisitos y análisis de requisitos
Etapa 2: análisis y planificación
Etapa 3: diseño del software
Etapa 4: desarrollo de software
Etapa 5: Pruebas de software
Etapa 6: lanzamiento y mantenimiento de software
SDLC (Ciclo de vida del desarrollo de software)
- Cómo sobresalir durante una pasantía como ingeniero de software sin universidad
- ¿Cuáles son los factores impulsores para elegir una pila de tecnología mientras se desarrolla un nuevo proyecto basado en la web?
- ¿Qué casos de prueba se pueden escribir para la cadena getCustomerData (CustomerID) API?
- ¿Alguna vez dejaste un error intencionalmente mientras escribías un código de software?
- ¿Cuál es la necesidad de una gestión de configuración de software?
Ciclo de vida de desarrollo de software (SDLC)
Durante las décadas de 1950 y 1960, el software se desarrolló sin un enfoque sistemático y debido a lo cual muchos programas no funcionaron según lo previsto una vez que se lanzaron. Esto llevó a seguir una forma sistemática de entregar software de Calidad y se conoce como SDLC.
El proceso de desarrollo de software desde su inicio hasta su lanzamiento y mantenimiento final se conoce como Software Development Life Cycle (SDLC).
Fases en SDLC
SDLC se compone de varias fases para administrar las actividades de desarrollo de software.
a. Recopilación de requisitos
si. Análisis y planificación
C. Diseño de software
re. Codificación / Implementación
mi. Pruebas
F. Lanzamiento y Mantenimiento
Recopilación de requisitos
Durante esta fase, se recopilan y documentan los requisitos específicos del software a desarrollar. La recopilación de requisitos se realiza de manera diferente para la aplicación de software y el producto de software como se describe a continuación.
a. Aplicación de software
Business Analyst reúne los requisitos de los clientes y los documenta en el documento BRS (Especificación de requisitos comerciales).
si. Producto de software
El equipo empresarial reúne los requisitos de los clientes modelo, explora los productos de la competencia y prepara el PRD (documento de requisitos del producto) o el BRD (documento de requisitos del negocio)
En cualquier caso, es importante garantizar que se capturen los requisitos correctos. El documento BRS o BRD actúa como un puente entre el cliente y los diseñadores que desarrollan el software.
El documento BRS o BRD se envía al Gerente de proyecto para su revisión y aprobación. La salida de esta fase es el documento BRS o BRD finalizado.
Análisis y planificación
Durante esta fase, el gerente técnico crea el documento SRS (especificación de requisitos de software) analizando el documento BRS y el gerente de proyecto crea el plan del proyecto.
Análisis
El gerente técnico analiza el documento BRS en términos de los siguientes factores
a. ¿Son requisitos completos?
si. ¿Son los requisitos correctos?
C. ¿Son requisitos alcanzables?
re. ¿Son requisitos comprobables?
Después de analizar el documento BRS, el Gerente Técnico crea un documento SRS que consta de dos subdocumentos.
yo. FRS (especificación de requisitos funcionales) que describe las funcionalidades a desarrollar
ii. SRS (Especificación de requisitos del sistema) que describe el software y el hardware que se utilizarán.
Durante este proceso, el Gerente de Tecnología se enfoca en la selección de Tecnología basada en los siguientes factores.
a. Factores técnicos
yo. Naturaleza de la aplicación.
ii. Experiencia de la organización
si. Factores comerciales
yo. Costo / Presupuesto (software de código abierto o software con licencia)
ii. Intereses del cliente
Planificación
La planificación se realiza para obtener un cronograma, el alcance y los requisitos de recursos para un lanzamiento. Project Manager crea el plan que explica cómo se cumplirán los requisitos y en qué momento. El plan del proyecto también contiene el alcance de los requisitos (lo que se cumplirá y lo que no se cumplirá) para el proyecto, la disponibilidad de recursos.
El gerente de proyecto también analiza los riesgos involucrados y el plan de contingencia para ellos. Finalmente, se le ocurren los hitos y la fecha de lanzamiento del proyecto.
El resultado de esta fase es el documento SRS y el Plan del Proyecto
Diseño de software
Durante esta fase, el arquitecto del sistema o el desarrollador sénior crea un documento de diseño de software (SDD) basado en el documento SRS de la fase de análisis.
El propósito de esta fase es descubrir cómo satisfacer los requisitos explicados en el documento de Especificación de Requisitos del Sistema (SRS).
El diseño generalmente se divide en dos niveles.
a. Diseño de alto nivel (HLD) o diseño global que contiene la arquitectura general del sistema.
si. Diseño de bajo nivel (LLD) o diseño detallado que contiene arquitectura interna de cada unidad / componente / módulo.
El documento de diseño de software (SDD) producido durante esta fase será utilizado por el equipo de desarrollo para producir los programas.
Codificación / Implementación
Durante esta fase, basándose en los documentos de diseño, los desarrolladores desarrollan / implementan programas siguiendo los estándares de codificación en el lenguaje de programación elegido. Además de la codificación, esta fase también implica la creación de documentación para el software que se está desarrollando.
El resultado de esta fase son los documentos de código y el software que cumple con los requisitos.
Pruebas
El software, desarrollado durante la fase de codificación, está sujeto a pruebas.
Los desarrolladores anteriores eran probadores y no hay equipos de prueba separados para probar el software.
Hoy en día, para mejorar la calidad del software, la mayoría de las organizaciones tienen equipos de prueba separados (equipos de prueba independientes para probar el software).
Durante esta fase, los probadores prueban el software en función del documento SRS para verificar si se cumplen o no los requisitos. Si hay algún desajuste, se informan defectos.
Los desarrolladores corrigen nuevamente los defectos y los evaluadores confirman las correcciones de defectos y las cierran.
La salida de esta fase es Software probado y documentos de prueba.
Lanzamiento y Mantenimiento
Lanzamiento
Una vez que se prueba el software, se entrega a los clientes.
El software lanzado debe implementarse en un entorno de producción y esto generalmente lo realiza el equipo de lanzamiento (compuesto por pocos desarrolladores, evaluadores, ejecutivos de gestión de proyectos y administradores de sistemas). Project Manager forma el equipo de lanzamiento.
Si es necesario, el equipo de lanzamiento brinda la capacitación necesaria a los clientes.
Mantenimiento
A medida que los usuarios / clientes comienzan a usar el software en sus entornos, pueden identificar defectos que deben abordarse. Por lo tanto, el software ahora entra en la fase de mantenimiento, donde el software se modifica para satisfacer los cambios generados por los clientes.
Las actividades de mantenimiento son realizadas por el equipo de mantenimiento (formado por pocos desarrolladores, probadores, ejecutivos de gestión de proyectos) formado por Project Manager.
El mantenimiento del software es de tres tipos, como se describe a continuación.
a. Modificaciones
yo. Cambios correctivos : los defectos encontrados durante la fase de producción requieren reparaciones de emergencia o cambios correctivos, ya que no se identifican durante la fase de prueba.
ii) Mejoras : si el cliente desea que se agreguen nuevas funcionalidades al sistema actual, entonces se consideran Mejoras.
si. Migración : migra el software de la tecnología anterior a la nueva tecnología.
Ejemplo: migración de software de MS Access a SQL Server / Oracle
C. Retiro – Retirar el viejo sistema y desarrollar un nuevo sistema
Ejemplo: cambiar la aplicación de nivel II a la aplicación web