Ingeniería del Software - Ana María Blanco Benito
Ana Blanco
Created on August 26, 2023
More creations to inspire you
EUROPE PHYSICAL MAP
Horizontal infographics
TEN WAYS TO SAVE WATER
Horizontal infographics
GRETA THUNBERG
Horizontal infographics
FIRE FIGHTER
Horizontal infographics
DEMOCRATIC CANDIDATES NOV DEBATE
Horizontal infographics
STEVE JOBS
Horizontal infographics
ONE MINUTE ON THE INTERNET
Horizontal infographics
Transcript
1970
Modelo de Desarrollo en Cascada, organizado en etapas
Modelo de Desarrollo en Espiral, análisis de riesgos
2008
1968
Crisis del softwar, surge el concepto de ingeniería del software
1980
Modelo de desarrollo iterativo incremental
2001
Manifesto Ágil, nuevas formas de desarrollo
Actualidad
Ingeniería del software
Entornos de Desarrollo. Desarrollo del Software
1940-1968
No existe fases de planificación, análisis o diseño.
1985
DevOps, colaboración entre el equipo de desarrollo(Dev) y operación(Ops)
PLas metodologías ágiles son tendencia
(Cushing Memorial Library and Archives, Texas A&M, Licencia CC-BY-2.0)
(Yves Tessier, Licencia CC-BY-SA-4.0)
(Paul Smith, Licencia CC-BY-3.0)
(EBNZ, Licencia CC-BY-SA-3.0)
(EBNZ, Licencia CC-BY-SA-3.0)
(Dr ian mitchell, Licencia CC-BY-SA-4.0 )
(Kharnagy, Licencia CC-BY-SA-4.0)
(Pablo Tortorella, Licencia CC BY-NC-SA 2.0)
Primeros años dela informática
El modelo "Code and Fix" es un enfoque informal y poco estructurado.Consta de dos etapas: 1. Escribir código sin ningún tipo de planificación ni diseño.2. Corregirlo.
1940 - 1968
Modelo Code and Fix (Codificar y Corregir)
INCONVENIENTES
INICIO
(Cushing Memorial Library and Archives, Texas A&M, Licencia CC-BY-2.0)
Crisis del Software
A raiz de la crisis del software se organiza una conferencia en 1968 por la Comisión de Ciencias de la OTAN en Garmisch(Alemania) de la que surge Ingeniería del Software
1968
Crisis del software
+ INFO
INICIO
(Yves Tessier, Licencia CC-BY-SA-4.0)
Modelo en Cascada
INCONVENIENTES
VENTAJAS
INICIO
Ordena las etapas del ciclo de vida del software, de forma que el inicio de cada etapadebe esperar a la finalización de la inmediatamente anterior.
+ INFO
1970
Modelo de Desarrollo en Cascada
(Paul Smith, Licencia CC-BY-3.0)
Modelo Iterativo Incremental
INCONVENIENTES
VENTAJAS
+ INFO
INICIO
El modelo iterativo incremental es se basa en la construcción gradual (incremental) y repetitiva del producto final a lo largo de múltiples iteraciones o ciclos (iterativo)
1980
Modelo de Desarrollo Iterativo Incremental
(EBNZ, Licencia CC-BY-SA-3.0)
Modelo en Espiral
INCONVENIENTES
INICIO
VENTAJAS
+ INFO
Las actividades de este modelo se presentan en una espiral en la que se define el coste y el avance del proyecto.Está basado en el análisis de los riesgos.
1985
Modelo de Desarrollo en Espiral
(EBNZ, Licencia CC-BY-SA-3.0)
Manifiesto Ágil
VALORES
INICIO
2001
Manifiesto Ágil. Metodologías Ágiles
En febrero de 2001, 17 miembros relevantes de la comunidad informática se reunieron en Utah para escribir el Manifiesto Ágil que contiene los valores y principios de las metodologías ágiles.Las metodologías ágiles utilizan el modelo iterativo incremental.
PRINCIPIOS
(Pablo Tortorella, Licencia CC BY-NC-SA 2.0)
Desarrollo DevOps
INCONVENIENTES
VENTAJAS
+ INFO
Enfoque que busca integrar los equipos de desarrollo (Development) y operaciones (Operations) para mejorar la eficiencia, la colaboración y la calidad en el ciclo de vida de desarrollo de software.
INICIO
2008
Desarrollo DevOps
(Kharnagy, Licencia CC-BY-SA-4.0)
Manifiesto ágil
+ INFO
INICIO
En la actualidad , el 94% de las empresa utilizan metodologías ágiles. Scrum, Kanban, Extreme Programming (XP) y otras, se han extendido en la mayor parte de las organizaciones
Actualidad
Metodologías ágiles
(Dr ian mitchell, Licencia CC-BY-SA-4.0 )
- No requiere una definición completa para empezar el desarrollo.
- Se realiza el análisis del riesgo en cada ciclo, lo que reduce riesgos del proyecto.
- Incorpora objetivos de calidad..
Modelo en espiral
Ventajas
- No es necesario definr los requisitos al inicio del desarrollo, sino que se pueden ir refinando en cada una de las iteraciones.
- Se genera software operativo de forma rápida y en las primeras etapas del ciclo de vida del software.
- El desarrollo en iteraciones pequeñas posibilita una mejor gestión de los riesgos y de las entregas..
Modelo iterativo incremental
Ventajas
- Los proyectos rara vez sigue una secuencia lineal, por lo que no se ajusta a muchos de ellos.
- El modelo es muy retrictivo y no permite volver a fases anteriores. Esto da lugar a problemas, por ejemplo es complicado definir todos los requisitos al principio.
- El producto solo se presenta al cliente una vez que está terminado, lo que crea inseguridad en el cliente que quiere ver los avances del proyecto.
Modelo en cascada
Inconvenientes
- El modelo está bien definido y las fases no se mezclan, por lo que es sencillo de usar.
- Debido a la rigidez inherente del modelo, su gestión resulta también sencilla; cada fase cuenta con entregables específicos y un proceso de revisión.
Modelo en cascada
Ventajas
- Las metodologías ágiles se centran en la adaptación a los cambios en lugar de seguir un plan rígido
- Entrega iterativa e incremental, dividen el proyecto en iteraciones o incrementos más pequeños cada uno de los cuales entrega una parte funcional del so
- La comunicación y la colaboración intensiva entre los miembros del equipo, el cliente y los usuarios.
- Las metodologías ágiles ponen al cliente en el centro del proceso. .
Características
- Desarrollado por Winston W. Royce.
- Es el primer modelo de proceso introducido.
- Se denomina así, por su similitud a cómo fluye el agua en una cascada.
- Características clave:
- Las etapas siguen un orden específico.
- Cada etapa requiere la finalización exitosa de la anterior para poder comenzar.
- Después de concluir cada etapa, se lleva a cabo una revisión para determinar si se puede avanzar a la siguiente fase
Modelo en cascada
- Es difícil que se ajuste las necesidades de los usuario ya que no ha habido fase de análisis.
- El mantenimiento es muy complicado , ya que el código está completamente desestructurado debido a que no se ha realizado el análisis del proyecto
- La falta de planificación da lugar a retrasos y desviaciones del presupuesto
- Propenso a fallos
Inconvenientes
Modelo Code and Fix
- Requiere un equipo experto en análisis de riesgos que sea capaz de evaluarlos.
- El éxito del proyecto depende en gran medida de la fase de análisis de riesgos.
- El costo del proyecto aumenta a medida que la espiral pasa por sucesivas iteraciones.
Modelo en espiral
Inconvenientes
- Compleja gestión del proyecto ya que es difícil estimar el esfuerzo, el coste final y el tiempo necesario ante requisitos cambiantes.
- Posible Falta de Visión Global, al centrarse o en los detalles de las iteraciones individuales, se puede perder la visión global del proyecto.
- Interacciones más complejas en el equipo de desarrollo por lo que la comunicación y la coordinación deben ser maximizadas para evitar conflictos.
Modelo iterativo incremental
Inconvenientes
- Pomueve la integración y la entrega continua, lo que permite lanzar nuevas versiones de software de manera más rápida y frecuente.
- Mayor colaboración y comunicación más fluida al derribar las barreras entre los equipos de desarrollo(Dev) y operaciones (Ops).
- Mejora de la calidad al enfatizar las pruebas automatizadas y la validación continua.
Desarrollo DevOps
Ventajas
- En la conferencia Agile 2008 Toronto, Yhens Wasna y Patrick Debois introdujeron el término en su charla sobre "Infraestructura Ágil"
- Características principales:
- Comunicacióny una colaboración activa entre los equipos de desarrollo y operaciones.
- Automatización de procesos que permite agilizra el flujo de trabajo y reducir los errores.
- Entrega continua, las actualizaciones y los cambios pueden ser liberados en producción de manera constante y confiable
Desarrollo DevOps
- A menudo requiere un cambio cultural importante en la organización.
- Integrar a los equipos de desarrollo y operaciones puede ser un desafío en términos de compartir responsabilidades y establecer líneas claras de comunicación y colaboración.
- Implementar la automatización completa puede ser complejo y requerir tiempo y recursos significativos
Desarrollo DevOps
Inconvenientes
- Modelo de ciclo de vida desarrollado por Barry Boehm en 1985
- Dividiremos las actividades a realizar en cuatro:
- 1. Determinar objetivos
- 2. Análizar riesgos, se mira las posibles alternativas de desarrollo y se opta por la de riesgos más asumibles.
- 3. Desarrollar, verificar y validar(probar)
- 4. Revisar y evaluar lo realizado y planificar la el siguiente ciclo de la espiral
- El proceso empieza en la posición central. Desde allí se mueve en el sentido de las agujas del reloj.
Modelo en espiral
- Propuesto por Harlan Mills en el año 1980.
- Consiste en la iteración de ) y en la filosofía deconstruir incrementando las funcionalidades del programa (modelo incremental).
- El primer incremento suele contener solo los requisitos básicos.
- Cada incremento proporcionan al usuario al usuario la funcionalidad necesaria y una plataforma para la evaluación.
- El último incremento es el producto final
Modelo iterativo incremental
- En la conferencia de 1968 de la OTAN se reconocen la multitud del problemas en el desarrollo de software y se acuerdan las bases de la ingeniería de construcción de software.
- El objetivo según Fritz Bauer era "establecer y usar principios de ingeniería orientados a obtener software de manera económica, que sea fiable y funcione eficientemente sobre máquinas reales" [Bauer, P.N.; Randell, B, 1968]
Crisis del Software e Ingeniería