SlideShare una empresa de Scribd logo
CICLO DE VIDA DE SOFTWARE
¿QUÉ ES UN CICLO DE VIDA DEL SOFTWARE?
• El ciclo de vida del software es un marco de referencia
que contiene los procesos, las actividades y las tareas
involucradas en el desarrollo, la explotación y el
mantenimiento de un producto software, abarcando la
vida del sistema desde la definición hasta la finalización
de su uso.
ETAPAS IMPORTANTES DEL
CICLO DE VIDA DE SOFTWARE
• En esta fase se recopila, examina y formulan los
requerimientos del cliente y se examina cualquier
restricción que se pueda aplicar. Se definen la arquitectura y
los estándares técnicos a emplearse.
Con base en lo anterior, mediante el análisis de los
requerimientos, se estiman el esfuerzo y tiempo necesarios
para realizar el proyecto.
• PLANIFICACIÓN Y ANÁLISIS
• La implementación consiste en la programación del código,
sin importar el lenguaje de programación y la plataforma
tecnológica.
Durante la implementación se deben realizar todas las
pruebas de software orientadas al aseguramiento y
aceptación funcional.
• IMPLEMENTACIÓN
• Si bien durante la implementación se realizan pruebas para
el aseguramiento de la calidad y la aceptación funcional del
producto, en esta fase se realizan pruebas especializadas
para validar la robustez, seguridad y desempeño del
software una vez integrado con el ecosistema que tendrá en
el ambiente de producción.
• PRUEBAS E INTEGRACIÓN
• Una vez que el producto ha sido validado y se ha certificado
su funcionamiento, robustez, seguridad y desempeño, se
procede a desplegarlo en el ambiente de producción.
La puesta en producción implica actividades como
capacitación, gestión de cambio y el inicio del
mantenimiento.
Siempre es necesario contar con un plan de reverso en caso
de que llegara a fallar la puesta en producción.
• PUESTA EN PRODUCCIÓN
• MODELOS DE CICLO DE VIDA
• CICLO DE VIDA EN CASCADA
• Cada fase comienza cuando
termina la anterior.
• Asume que se conocen todos
los requisitos.
• Se tarda mucho en disponer
del software.
• Es mejor que no seguir
ningún ciclo de vida.
• La planificación es “ideal”.
• CICLO DE VIDA EVOLUTIVO
• Cuanto mayor es un proyecto, menor
es la probabilidad de éxito (informe
CHAOS).
• Obtener todos los requerimientos al
comienzo es prácticamente imposible,
las necesidades de clientes y usuarios
evolucionan durante el desarrollo.
• Ciclos requisitos-desarrollo-evaluación
• El resultado de cada evolución genera
la siguiente versión del software.
• Es recomendable para proyectos de
innovación.
• CICLO DE VIDA INCREMENTAL (1)
• Repetición de varios ciclos
de vida en cascada.
• Se suele aplicar a
desarrollos de gran tamaño.
• Al final de cada ciclo se
entrega una versión parcial
del software incrementada
con cierta funcionalidad
nueva respecto a las
anteriores.
• CICLO DE VIDA INCREMENTAL (2)
• Los ciclos se repiten hasta
obtener un producto completo.
• Los usuarios disponen antes del
software, aunque no sea
completo y pueden sugerir
mejoras (nuevos requisitos)
• CICLO DE VIDA ITERATIVO (1)
• Repetición de varios ciclos de
vida en cascada.
• Se suele aplicar a desarrollos en
los que los requisitos no están
claros.
• Al final de cada ciclo se entrega
una versión completa del
software mejorada respecto a
la anterior.
• CICLO DE VIDA ITERATIVO (2)
• Las primeras versiones pueden
ser prototipos que se desechan
posteriormente.
• Los ciclos se repiten hasta
obtener un producto
satisfactorio.
• Los usuarios deben evaluar el
producto en cada iteración y
proponer mejoras.
• CICLO DE VIDA EN LOS MÉTODOS ÁGILES
• Son ciclos de vida evolutivos
con iteraciones de corta
duración (2 a 4 semanas) para
favorecer la comunicación con
clientes y usuarios.
• En cada iteración se incorporan
nuevas peticiones de clientes y
usuarios (requerimientos).
• MANIFIESTO ÁGIL DE 2001
• http://agilemanifesto.org
/iso/es/principles.html
• FRAMEWORK SCRUM
• Scrum es un marco de trabajo simple que
promueve la colaboración en los equipos para
lograr desarrollar productos complejos. Ken
Schwaber y Jeff Sutherland han escrito La
Guía Scrum para explicar Scrum de manera
clara y simple.
• Scrum es un proceso de gestión
que reduce la complejidad en el
desarrollo de productos para
satisfacer las necesidades de los
clientes. La gerencia y los
equipos de Scrum trabajan
juntos alrededor de requisitos y
tecnologías para entregar
productos funcionando de
manera incremental usando el
empirismo.
• CICLO DE VIDA DEL PROCESO UNIFICADO
• Proceso iterativo e incremental
propuesto por los creadores de
UML.
• Define 6 fases: inicio,
elaboración, construcción,
transición, producción y
retirada.
• En cada fase del desarrollo se
producen una o más iteraciones
y se obtiene una versión
evaluable del software.
• HERRAMIENTAS / FRAMEWORKS /
ESTÁNDARES
TFS Atlassian IBM
Jazz
PMBOK 5; ITIL v3;
COBIT 5; Scrum/ISACA
ISO 25010: ISO 27001; WCAG
2.0; ISO 9001
Para un proceso de desarrollo de software
exitoso es recomendable combinar:
• Los estándares pertinentes
• Los marcos de referencia/trabajo
adecuados y complementarios
• Las herramientas necesarias para facilitar
el trabajo, la gestión y la colaboración
REFERENCIAS
• JACOBSON, BOOCH, RUMBAUGH, “El Proceso Unificado de
Desarrollo de Software”, Addison Wesley, 2000.
• SUTHERLAND, SCHWABER, “The Scrum Guide”, 2017.
• PRESSMAN, “Ingeniería del Software” McGraw Hill, 2005.

Más contenido relacionado

PDF
Cat tigre-infra-agua
PDF
Catalogo bomba dagua INDISA
PPTX
Procesos Unificados Racionalmente.pptx
PDF
16416960 modelo-cascada-espiralincremental
PPTX
Rup.pptx
PDF
PPTX
Disciplina de desarrollo rup
Cat tigre-infra-agua
Catalogo bomba dagua INDISA
Procesos Unificados Racionalmente.pptx
16416960 modelo-cascada-espiralincremental
Rup.pptx
Disciplina de desarrollo rup

Similar a Software Development Life Cycle (20)

PPTX
Ciclo de vida del software
PPT
07 01-ciclosdevida
PPT
ciclosdevidasofware
PDF
01 el proceso_unificado
PPTX
Metodología rup
PPTX
Metodología Rup
PPTX
Ciclo de vida del software
PDF
METODOLOGÍA DE PROYECTOS A TRAVÉS CICLO DE VIDA DE DESARROLLO DE SOFTWARE.pdf
PPTX
Mantenimiento en Software - Modelo Evolutivo
PPTX
Trabajo Mantención de Software "Modelo Evolutivo"
PPTX
METODOLOGIA RUP.pptx
PPTX
METODOLOGIA RUP PARA DESARROLLO TEMA 3.pptx
PPTX
PROCESO UNIFICADO
PPTX
Pruebas de software
PPTX
Ciclo de vida del software.pptx
PDF
Ciclo de vida en el desarrollo de sistemas
PPTX
Metodología RUP
PPTX
Introducción al proceso unificado de desarrollo de software en Curso de Anali...
DOC
Metodologia rup trabajo1
Ciclo de vida del software
07 01-ciclosdevida
ciclosdevidasofware
01 el proceso_unificado
Metodología rup
Metodología Rup
Ciclo de vida del software
METODOLOGÍA DE PROYECTOS A TRAVÉS CICLO DE VIDA DE DESARROLLO DE SOFTWARE.pdf
Mantenimiento en Software - Modelo Evolutivo
Trabajo Mantención de Software "Modelo Evolutivo"
METODOLOGIA RUP.pptx
METODOLOGIA RUP PARA DESARROLLO TEMA 3.pptx
PROCESO UNIFICADO
Pruebas de software
Ciclo de vida del software.pptx
Ciclo de vida en el desarrollo de sistemas
Metodología RUP
Introducción al proceso unificado de desarrollo de software en Curso de Anali...
Metodologia rup trabajo1
Publicidad

Último (8)

PDF
simulacion de teoria de control para maquinas
PPTX
sistemas de informacion.................
DOCX
trabajo programacion.docxxdxxxddxdxxdxdxxxdxxdxdxd
PDF
modelos de control para sistemas digitales
PDF
Su punto de partida en la IA: Microsoft 365 Copilot Chat
PDF
DIMENSIONADO DE UNA INSTALACION FOTOVOLTAICA.pdf
PPTX
Derechos_de_Autor_y_Creative_Commons.pptx
PDF
AutoCAD Herramientas para el futuro, Juan Fandiño
simulacion de teoria de control para maquinas
sistemas de informacion.................
trabajo programacion.docxxdxxxddxdxxdxdxxxdxxdxdxd
modelos de control para sistemas digitales
Su punto de partida en la IA: Microsoft 365 Copilot Chat
DIMENSIONADO DE UNA INSTALACION FOTOVOLTAICA.pdf
Derechos_de_Autor_y_Creative_Commons.pptx
AutoCAD Herramientas para el futuro, Juan Fandiño
Publicidad

Software Development Life Cycle

  • 1. CICLO DE VIDA DE SOFTWARE
  • 2. ¿QUÉ ES UN CICLO DE VIDA DEL SOFTWARE? • El ciclo de vida del software es un marco de referencia que contiene los procesos, las actividades y las tareas involucradas en el desarrollo, la explotación y el mantenimiento de un producto software, abarcando la vida del sistema desde la definición hasta la finalización de su uso.
  • 3. ETAPAS IMPORTANTES DEL CICLO DE VIDA DE SOFTWARE
  • 4. • En esta fase se recopila, examina y formulan los requerimientos del cliente y se examina cualquier restricción que se pueda aplicar. Se definen la arquitectura y los estándares técnicos a emplearse. Con base en lo anterior, mediante el análisis de los requerimientos, se estiman el esfuerzo y tiempo necesarios para realizar el proyecto. • PLANIFICACIÓN Y ANÁLISIS
  • 5. • La implementación consiste en la programación del código, sin importar el lenguaje de programación y la plataforma tecnológica. Durante la implementación se deben realizar todas las pruebas de software orientadas al aseguramiento y aceptación funcional. • IMPLEMENTACIÓN
  • 6. • Si bien durante la implementación se realizan pruebas para el aseguramiento de la calidad y la aceptación funcional del producto, en esta fase se realizan pruebas especializadas para validar la robustez, seguridad y desempeño del software una vez integrado con el ecosistema que tendrá en el ambiente de producción. • PRUEBAS E INTEGRACIÓN
  • 7. • Una vez que el producto ha sido validado y se ha certificado su funcionamiento, robustez, seguridad y desempeño, se procede a desplegarlo en el ambiente de producción. La puesta en producción implica actividades como capacitación, gestión de cambio y el inicio del mantenimiento. Siempre es necesario contar con un plan de reverso en caso de que llegara a fallar la puesta en producción. • PUESTA EN PRODUCCIÓN
  • 8. • MODELOS DE CICLO DE VIDA
  • 9. • CICLO DE VIDA EN CASCADA • Cada fase comienza cuando termina la anterior. • Asume que se conocen todos los requisitos. • Se tarda mucho en disponer del software. • Es mejor que no seguir ningún ciclo de vida. • La planificación es “ideal”.
  • 10. • CICLO DE VIDA EVOLUTIVO • Cuanto mayor es un proyecto, menor es la probabilidad de éxito (informe CHAOS). • Obtener todos los requerimientos al comienzo es prácticamente imposible, las necesidades de clientes y usuarios evolucionan durante el desarrollo. • Ciclos requisitos-desarrollo-evaluación • El resultado de cada evolución genera la siguiente versión del software. • Es recomendable para proyectos de innovación.
  • 11. • CICLO DE VIDA INCREMENTAL (1) • Repetición de varios ciclos de vida en cascada. • Se suele aplicar a desarrollos de gran tamaño. • Al final de cada ciclo se entrega una versión parcial del software incrementada con cierta funcionalidad nueva respecto a las anteriores.
  • 12. • CICLO DE VIDA INCREMENTAL (2) • Los ciclos se repiten hasta obtener un producto completo. • Los usuarios disponen antes del software, aunque no sea completo y pueden sugerir mejoras (nuevos requisitos)
  • 13. • CICLO DE VIDA ITERATIVO (1) • Repetición de varios ciclos de vida en cascada. • Se suele aplicar a desarrollos en los que los requisitos no están claros. • Al final de cada ciclo se entrega una versión completa del software mejorada respecto a la anterior.
  • 14. • CICLO DE VIDA ITERATIVO (2) • Las primeras versiones pueden ser prototipos que se desechan posteriormente. • Los ciclos se repiten hasta obtener un producto satisfactorio. • Los usuarios deben evaluar el producto en cada iteración y proponer mejoras.
  • 15. • CICLO DE VIDA EN LOS MÉTODOS ÁGILES • Son ciclos de vida evolutivos con iteraciones de corta duración (2 a 4 semanas) para favorecer la comunicación con clientes y usuarios. • En cada iteración se incorporan nuevas peticiones de clientes y usuarios (requerimientos).
  • 16. • MANIFIESTO ÁGIL DE 2001 • http://agilemanifesto.org /iso/es/principles.html
  • 17. • FRAMEWORK SCRUM • Scrum es un marco de trabajo simple que promueve la colaboración en los equipos para lograr desarrollar productos complejos. Ken Schwaber y Jeff Sutherland han escrito La Guía Scrum para explicar Scrum de manera clara y simple. • Scrum es un proceso de gestión que reduce la complejidad en el desarrollo de productos para satisfacer las necesidades de los clientes. La gerencia y los equipos de Scrum trabajan juntos alrededor de requisitos y tecnologías para entregar productos funcionando de manera incremental usando el empirismo.
  • 18. • CICLO DE VIDA DEL PROCESO UNIFICADO • Proceso iterativo e incremental propuesto por los creadores de UML. • Define 6 fases: inicio, elaboración, construcción, transición, producción y retirada. • En cada fase del desarrollo se producen una o más iteraciones y se obtiene una versión evaluable del software.
  • 19. • HERRAMIENTAS / FRAMEWORKS / ESTÁNDARES TFS Atlassian IBM Jazz PMBOK 5; ITIL v3; COBIT 5; Scrum/ISACA ISO 25010: ISO 27001; WCAG 2.0; ISO 9001 Para un proceso de desarrollo de software exitoso es recomendable combinar: • Los estándares pertinentes • Los marcos de referencia/trabajo adecuados y complementarios • Las herramientas necesarias para facilitar el trabajo, la gestión y la colaboración
  • 20. REFERENCIAS • JACOBSON, BOOCH, RUMBAUGH, “El Proceso Unificado de Desarrollo de Software”, Addison Wesley, 2000. • SUTHERLAND, SCHWABER, “The Scrum Guide”, 2017. • PRESSMAN, “Ingeniería del Software” McGraw Hill, 2005.