SlideShare ist ein Scribd-Unternehmen logo
1 von 19
Downloaden Sie, um offline zu lesen
METODOLOGIAS DE
DESARROLLO DE SOFTWARE
ANALISIS Y DISEÑO DE SISTEMAS - II
DOCENTE: DAVID ENRIQUE MENDOZA GUTIERREZ . Carrera: INGENIERIA DE SISTEMAS – NM Periodo: I – 2021 Sede: Santa Cruz
● DOCENTE: DAVID ENRIQUE MENDOZA GUTIERREZ
● INTEGRANTES:
- RAEL ZABALA ORELLANA ( 52533 )
-RICARDO ANDRES SAUCEDO QUIROZ (56981)
-VICTOR CANLLAVI JAEN(57443)
METODOLOGIAS DE DESAROLLO DE
SOFTWARE
Son un conjunto de técnicas y métodos
organizativos que se aplican para diseñar
soluciones de software informático. El
objetivo de las distintas metodologías es el
de intentar organizar los equipos de trabajo
para que estos desarrollen las funciones de
un programa de la mejor manera posible.
DOCENTE: DAVID ENRIQUE MENDOZA GUTIERREZ . Carrera: INGENIERIA DE SISTEMAS – NM Periodo: I – 2021 Sede: Santa Cruz
¿QUÉ TIPOS DE METODOLOGÍAS DE
DESARROLLO DE SOFTWARE EXISTEN?
En la actualidad se pueden
diferenciar dos grandes grupos de
metodologías de desarrollo de
software:
LAS ÁGILES Y LAS TRADICIONALES.
A continuación, se explican las
características de cada una de ellas.
DOCENTE: DAVID ENRIQUE MENDOZA GUTIERREZ . Carrera: INGENIERIA DE SISTEMAS – NM Periodo: I – 2021 Sede: Santa Cruz
METODOLOGÍAS DE DESARROLLO DE
SOFTWARE TRADICIONALES
Las metodologías de desarrollo de software
tradicionales se caracterizan por definir total y
rígidamente los requisitos al inicio de los proyectos de
ingeniería de software.
es lineal, es decir, las etapas se suceden una tras otra y
no se puede empezar la siguiente sin terminar la
anterior. Tampoco se puede volver hacia atrás una vez
se ha cambiado de etapa. Estas metodologías, no son
demasiado adaptables a los constantes cambios debido
a su rigidez, pero siguen siendo efectivas al dia de hoy
para distintos tipos de proyectos.
DOCENTE: DAVID ENRIQUE MENDOZA GUTIERREZ . Carrera: INGENIERIA DE SISTEMAS – NM Periodo: I – 2021 Sede: Santa Cruz
WATERFALL (CASCADA)
Es una metodología en la que las etapas se organizan
de arriba a abajo, de ahí el nombre. Se desarrollan las
diferentes funciones en etapas diferenciadas y
obedeciendo un riguroso orden. Antes de cada etapa
se debe revisar el producto para ver si está listo para
pasar a la siguiente fase.
Los requisitos y especificaciones iniciales no están
predispuestos para cambiarse, por lo que no se
pueden ver los resultados hasta que el proyecto ya
esté bastante avanzado.
DOCENTE: DAVID ENRIQUE MENDOZA GUTIERREZ . Carrera: INGENIERIA DE SISTEMAS – NM Periodo: I – 2021 Sede: Santa Cruz
WATERFALL (CASCADA) -
Los principios básicos son:
El proyecto se divide en fases secuenciales, con algunas
superposiciones y salpicaduras aceptables entre fases.
El énfasis está en la planificación, los horarios, las
fechas objetivo, los presupuestos y la implementación
de todo un sistema a la vez.
Se mantiene un estricto control a lo largo de la vida del
proyecto a través de una extensa documentación
escrita, revisiones formales y aprobación por parte del
usuario, y la administración de la tecnología de la
información que se realiza al final de la mayoría de las
fases antes de comenzar la siguiente fase. La
documentación escrita es un entregable explícito de
cada fase.
DOCENTE: DAVID ENRIQUE MENDOZA GUTIERREZ . Carrera: INGENIERIA DE SISTEMAS – NM Periodo: I – 2021 Sede: Santa Cruz
WATERFALL (CASCADA) AL DIA DE HOY
VENTAJAS
-Realiza un buen funcionamiento en equipos
débiles y productos maduros, por lo que se
requiere de menos capital y herramientas
para hacerlo funcionar de manera óptima.
-Es un modelo fácil de implementar y
entender.
-Está orientado a documentos.
-Es un modelo conocido y utilizado con
frecuencia.
-Promueve una metodología de trabajo
efectiva: Definir antes que diseñar, diseñar
antes que codificar.
DOCENTE: DAVID ENRIQUE MENDOZA GUTIERREZ . Carrera: INGENIERIA DE SISTEMAS – NM Periodo: I – 2021 Sede: Santa Cruz
DESVENTAJAS
-En la vida real, un proyecto rara vez
sigue una secuencia lineal, esto crea una
mala implementación del modelo, lo cual
hace que lo lleve al fracaso.
-El proceso de creación del software
tarda mucho tiempo ya que debe pasar
por el proceso de prueba y hasta que el
software no esté completo no se opera.
Esto es la base para que funcione bien.
-Cualquier error de diseño detectado en
la etapa de prueba conduce
necesariamente al rediseño y nueva
programación del código afectado,
aumentando los costos del desarrollo.
-Una etapa determinada del proyecto no
se puede llevar a cabo a menos de que
se haya culminado la etapa anterior.
PROTOTIPADO
Se basa en la construcción de un prototipo de software que se construye rápidamente para que los usuarios puedan
probarlo y aportar feedback. Así, se puede arreglar lo que está mal e incluir otros requerimientos que puedan surgir.
Es un modelo iterativo que se basa en el método de prueba y error para comprender las especificidades del producto.
DOCENTE: DAVID ENRIQUE MENDOZA GUTIERREZ . Carrera: INGENIERIA DE SISTEMAS – NM Periodo: I – 2021 Sede: Santa Cruz
ESPIRAL
Es una combinación de los dos modelos
anteriores, que añade el concepto de
análisis de riesgo. Se divide en cuatro
etapas: planificación, análisis de riesgo,
desarrollo de prototipo y evaluación del
cliente. El nombre de esta metodología da
nombre a su funcionamiento, ya que se
van procesando las etapas en forma de
espiral. Cuanto más cerca del centro se
está, más avanzado está el proyecto.
DOCENTE: DAVID ENRIQUE MENDOZA GUTIERREZ . Carrera: INGENIERIA DE SISTEMAS – NM Periodo: I – 2021 Sede: Santa Cruz
INCREMENTAL
Se va construyendo el producto final
de manera progresiva. En cada etapa
incremental se agrega una nueva
funcionalidad, lo que permite ver
resultados de una forma más rápida en
comparación con el modelo en
cascada. El software se puede empezar
a utilizar incluso antes de que se
complete totalmente y, en general, es
mucho más flexible que las demás
metodologías.
DOCENTE: DAVID ENRIQUE MENDOZA GUTIERREZ . Carrera: INGENIERIA DE SISTEMAS – NM Periodo: I – 2021 Sede: Santa Cruz
DISEÑO RÁPIDO DE APLICACIONES (RAD)
● Desarrollar software de alta calidad en un corto periodo de tiempo. Los costes son
mucho más altos y el desarrollo más flexible, aunque requiere una mayor
intervención de los usuarios. Por otro lado, el código puede contener más errores, y
sus funciones son limitadas debido al poco tiempo del que se dispone para
desarrollarlas. El objetivo es iterar el menor número posible de veces para conseguir
una aplicación completa de forma rápida.
DOCENTE: DAVID ENRIQUE MENDOZA GUTIERREZ . Carrera: INGENIERIA DE SISTEMAS – NM Periodo: I – 2021 Sede: Santa Cruz
METODOLOGÍAS DE DESARROLLO DE
SOFTWARE ÁGILES Son las más utilizadas hoy en día debido a su alta flexibilidad y
agilidad. Los equipos de trabajo que las utilizan son mucho más
productivos y eficientes, ya que saben lo que tienen que hacer
en cada momento. Además, la metodología permite adaptar el
software a las necesidades que van surgiendo por el camino, lo
que facilita construir aplicaciones más funcionales.
LAS PRINCIPALES
METODOLOGIAS AGILES
SON:
DOCENTE: DAVID ENRIQUE MENDOZA GUTIERREZ . Carrera: INGENIERIA DE SISTEMAS – NM Periodo: I – 2021 Sede: Santa Cruz
KANBAN(TARJETA VISUAL)
Consiste en un sistema de tarjetas para la gestión de piezas dentro de un proceso de producción,
identificando al proveedor, la pieza en cuestión y el punto de la fábrica donde se encuentra. Esto
permite reponer las piezas necesarias y en el momento justo para incorporarlas a los pedidos en
producción.
DOCENTE: DAVID ENRIQUE MENDOZA GUTIERREZ . Carrera: INGENIERIA DE SISTEMAS – NM Periodo: I – 2021 Sede: Santa Cruz
SCRUM
Es también una metodología incremental que divide los requisitos y tareas de forma
similar a Kanban. Se itera sobre bloques de tiempos cortos y fijos (entre dos y cuatro
semanas) para conseguir un resultado completo en cada iteración. Las etapas son:
planificación de la iteración (planning sprint), ejecución (sprint), reunión diaria (daily
meeting) y demostración de resultados (sprint review). Cada iteración por estas
etapas se denomina también sprint.
DOCENTE: DAVID ENRIQUE MENDOZA GUTIERREZ . Carrera: INGENIERIA DE SISTEMAS – NM Periodo: I – 2021 Sede: Santa Cruz
SCRUM -
Scrum permite la creación de equipos auto organizados impulsando
la co-localización de todos los miembros del equipo, y la
comunicación verbal entre todos los miembros y disciplinas
involucrados en el proyecto.
La metodología se basa en:
-El desarrollo incremental de los requisitos del proyecto en bloques
temporales cortos y fijos.
-Se da prioridad a lo que tiene más valor para el cliente.
-El equipo se sincroniza diariamente y se realizan las adaptaciones
necesarias.
-Tras cada iteración (un mes o menos entre cada una) se muestra al
cliente el resultado real obtenido, para que este tome las decisiones
necesarias en relación a lo observado.
-Se le da la autoridad necesaria al equipo para poder cumplir los
requisitos.
-Fijar tiempos máximos para lograr objetivos.
-Equipos pequeños (de 3 a 9 personas cada uno).
DOCENTE: DAVID ENRIQUE MENDOZA GUTIERREZ . Carrera: INGENIERIA DE SISTEMAS – NM Periodo: I – 2021 Sede: Santa Cruz
LEAN
Está configurado para que pequeños equipos de
desarrollo muy capacitados elaboren cualquier tarea
en poco tiempo. Los activos más importantes son las
personas y su compromiso, relegando así a un
segundo plano el tiempo y los costes. El aprendizaje,
las reacciones rápidas y potenciar el equipo son
fundamentales.
Inicialmente, originado en el Sistema de Proyección
de Toyota y ahora, apoyado por una corriente que
está surgiendo desde la comunidad Ágil. Este método
ofrece todo un marco teórico sólido y basado en la
experiencia, para las prácticas ágiles de gestión.
DOCENTE: DAVID ENRIQUE MENDOZA GUTIERREZ . Carrera: INGENIERIA DE SISTEMAS – NM Periodo: I – 2021 Sede: Santa Cruz
PROGRAMACIÓN EXTREMA (XP)
Es una metodología de desarrollo de
software basada en las relaciones
interpersonales, que se consideran la clave
del éxito. Su principal objetivo es crear un
buen ambiente de trabajo en equipo y que
haya un feedback constante del cliente. El
trabajo se basa en 12 conceptos: diseño
sencillo, testing, refactorización y
codificación con estándares, propiedad
colectiva del código, programación en
parejas, integración continua, entregas
semanales e integridad con el cliente, cliente
in situ, y planificación.
DOCENTE: DAVID ENRIQUE MENDOZA GUTIERREZ . Carrera: INGENIERIA DE SISTEMAS – NM Periodo: I – 2021 Sede: Santa Cruz
En Conclusión
A lo largo de los años se han desarrollado
diversos marcos de trabajo, cada uno con sus
propios puntos fuertes y débiles. Un marco
metodológico de desarrollo de software no es
necesariamente adecuado para todos los
proyectos. Cada uno de los marcos
metodológicos disponibles se adapta mejor a
determinados tipos de proyectos, en función
de diversas consideraciones técnicas,
organizativas, de proyecto y de equipo.
DOCENTE: DAVID ENRIQUE MENDOZA GUTIERREZ . Carrera: INGENIERIA DE SISTEMAS – NM Periodo: I – 2021 Sede: Santa Cruz
Nota Editorial: Posibles Confusiones
La "Programación estructurada" o la "Programación
Orientada a Objetos" son paradigmas o modelos de
programación. Indican pautas de comportamiento
en los sistemas de programación. No tienen que ver
con el ciclo de vida del software ni la manera en la
que debe realizarse cada tarea para un proyecto
concreto, así pues NO SON METODOLOGÍAS. Los
términos "Ciclo de vida en espiral", "Incremental",
en "Cascada", con "prototipo", etc., indican
esquemas generales de organización en las tareas
del ciclo de vida, unas con respecto a otras y con
respecto a otros aspectos como el tiempo, los
requisitos o el riesgo.
DOCENTE: DAVID ENRIQUE MENDOZA GUTIERREZ - INTEGRANTES: RAEL ZABALA ORELLANA - 52533
Estas “confusiones” Indican ideas estructurales
sencillas en el proceso de desarrollo, y no la manera
en la que debe realizarse cada tarea del ciclo para
un proyecto concreto, así pues, NO SON
METODOLOGÍAS. El lenguaje UML (Unified
Modeling Languaje) es un gran logro de la
ingeniería. Aún con sus carencias, es algo muy
importante: un lenguaje común para que todos los
profesionales del desarrollo de sistemas -de
software o no expresen sus ideas, pero UML no le
indica a nadie la manera de realizar las tareas en un
proyecto concreto: tan solo es una herramienta
para expresar ideas.

Weitere ähnliche Inhalte

Ähnlich wie Metodologias de software ISI-311 Trabajo Practico#2

Ingeniería de Software - Isummit 2010
Ingeniería de Software - Isummit 2010Ingeniería de Software - Isummit 2010
Ingeniería de Software - Isummit 2010
acmedinaj
 
Metodologias pedraza poveda_martha_catalna_s4_b2018
Metodologias pedraza poveda_martha_catalna_s4_b2018Metodologias pedraza poveda_martha_catalna_s4_b2018
Metodologias pedraza poveda_martha_catalna_s4_b2018
Martha Pedraza
 
Díme que desarrollas y te diré que metodología usar
Díme que desarrollas y te diré que metodología usarDíme que desarrollas y te diré que metodología usar
Díme que desarrollas y te diré que metodología usar
Kiberley Santos
 

Ähnlich wie Metodologias de software ISI-311 Trabajo Practico#2 (20)

Ingeniería de Software - Isummit 2010
Ingeniería de Software - Isummit 2010Ingeniería de Software - Isummit 2010
Ingeniería de Software - Isummit 2010
 
MODELOS DE SISTEMAS DE SOFTWARE
MODELOS DE SISTEMAS DE SOFTWAREMODELOS DE SISTEMAS DE SOFTWARE
MODELOS DE SISTEMAS DE SOFTWARE
 
03 ingsoft jdchc
03 ingsoft jdchc03 ingsoft jdchc
03 ingsoft jdchc
 
Las metodologías usadas en el Desarrollo de SW en el Perú
Las metodologías usadas en el Desarrollo de SW en el PerúLas metodologías usadas en el Desarrollo de SW en el Perú
Las metodologías usadas en el Desarrollo de SW en el Perú
 
Exposicion
ExposicionExposicion
Exposicion
 
Metodologías de Desarrollo de Software Jr
 Metodologías de Desarrollo de Software Jr Metodologías de Desarrollo de Software Jr
Metodologías de Desarrollo de Software Jr
 
Topico2 matics
Topico2 maticsTopico2 matics
Topico2 matics
 
Metodologias pedraza poveda_martha_catalna_s4_b2018
Metodologias pedraza poveda_martha_catalna_s4_b2018Metodologias pedraza poveda_martha_catalna_s4_b2018
Metodologias pedraza poveda_martha_catalna_s4_b2018
 
1-metodologia-scrum.ppt
1-metodologia-scrum.ppt1-metodologia-scrum.ppt
1-metodologia-scrum.ppt
 
Integración de Diseño Centrado en el Usuario y metodologías ágiles en el desa...
Integración de Diseño Centrado en el Usuario y metodologías ágiles en el desa...Integración de Diseño Centrado en el Usuario y metodologías ágiles en el desa...
Integración de Diseño Centrado en el Usuario y metodologías ágiles en el desa...
 
Metodos agiles
Metodos agilesMetodos agiles
Metodos agiles
 
Metodologias ágiles de desarrollo_1.1_2024.pptx
Metodologias ágiles de desarrollo_1.1_2024.pptxMetodologias ágiles de desarrollo_1.1_2024.pptx
Metodologias ágiles de desarrollo_1.1_2024.pptx
 
Modelos de software
Modelos  de  softwareModelos  de  software
Modelos de software
 
Díme que desarrollas y te diré que metodología usar
Díme que desarrollas y te diré que metodología usarDíme que desarrollas y te diré que metodología usar
Díme que desarrollas y te diré que metodología usar
 
Gestion de proyecto
Gestion de proyectoGestion de proyecto
Gestion de proyecto
 
Modelo de desarrollo rapido de aplicaciones (5)
Modelo de desarrollo rapido de aplicaciones (5)Modelo de desarrollo rapido de aplicaciones (5)
Modelo de desarrollo rapido de aplicaciones (5)
 
Modelo de desarrollo rápido de aplicaciones (RAD)
Modelo de desarrollo rápido de aplicaciones (RAD)Modelo de desarrollo rápido de aplicaciones (RAD)
Modelo de desarrollo rápido de aplicaciones (RAD)
 
METODOLOGIAS AGILES
METODOLOGIAS AGILESMETODOLOGIAS AGILES
METODOLOGIAS AGILES
 
Metodologia de desarrollo ed software
Metodologia de desarrollo ed softwareMetodologia de desarrollo ed software
Metodologia de desarrollo ed software
 
SEMANA 13-14.pptx
SEMANA 13-14.pptxSEMANA 13-14.pptx
SEMANA 13-14.pptx
 

Kürzlich hochgeladen

redes informaticas en una oficina administrativa
redes informaticas en una oficina administrativaredes informaticas en una oficina administrativa
redes informaticas en una oficina administrativa
nicho110
 

Kürzlich hochgeladen (10)

Buenos_Aires_Meetup_Redis_20240430_.pptx
Buenos_Aires_Meetup_Redis_20240430_.pptxBuenos_Aires_Meetup_Redis_20240430_.pptx
Buenos_Aires_Meetup_Redis_20240430_.pptx
 
Avances tecnológicos del siglo XXI 10-07 eyvana
Avances tecnológicos del siglo XXI 10-07 eyvanaAvances tecnológicos del siglo XXI 10-07 eyvana
Avances tecnológicos del siglo XXI 10-07 eyvana
 
Innovaciones tecnologicas en el siglo 21
Innovaciones tecnologicas en el siglo 21Innovaciones tecnologicas en el siglo 21
Innovaciones tecnologicas en el siglo 21
 
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...
 
How to use Redis with MuleSoft. A quick start presentation.
How to use Redis with MuleSoft. A quick start presentation.How to use Redis with MuleSoft. A quick start presentation.
How to use Redis with MuleSoft. A quick start presentation.
 
Guia Basica para bachillerato de Circuitos Basicos
Guia Basica para bachillerato de Circuitos BasicosGuia Basica para bachillerato de Circuitos Basicos
Guia Basica para bachillerato de Circuitos Basicos
 
redes informaticas en una oficina administrativa
redes informaticas en una oficina administrativaredes informaticas en una oficina administrativa
redes informaticas en una oficina administrativa
 
investigación de los Avances tecnológicos del siglo XXI
investigación de los Avances tecnológicos del siglo XXIinvestigación de los Avances tecnológicos del siglo XXI
investigación de los Avances tecnológicos del siglo XXI
 
Avances tecnológicos del siglo XXI y ejemplos de estos
Avances tecnológicos del siglo XXI y ejemplos de estosAvances tecnológicos del siglo XXI y ejemplos de estos
Avances tecnológicos del siglo XXI y ejemplos de estos
 
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptx
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptxEVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptx
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptx
 

Metodologias de software ISI-311 Trabajo Practico#2

  • 1. METODOLOGIAS DE DESARROLLO DE SOFTWARE ANALISIS Y DISEÑO DE SISTEMAS - II DOCENTE: DAVID ENRIQUE MENDOZA GUTIERREZ . Carrera: INGENIERIA DE SISTEMAS – NM Periodo: I – 2021 Sede: Santa Cruz ● DOCENTE: DAVID ENRIQUE MENDOZA GUTIERREZ ● INTEGRANTES: - RAEL ZABALA ORELLANA ( 52533 ) -RICARDO ANDRES SAUCEDO QUIROZ (56981) -VICTOR CANLLAVI JAEN(57443)
  • 2. METODOLOGIAS DE DESAROLLO DE SOFTWARE Son un conjunto de técnicas y métodos organizativos que se aplican para diseñar soluciones de software informático. El objetivo de las distintas metodologías es el de intentar organizar los equipos de trabajo para que estos desarrollen las funciones de un programa de la mejor manera posible. DOCENTE: DAVID ENRIQUE MENDOZA GUTIERREZ . Carrera: INGENIERIA DE SISTEMAS – NM Periodo: I – 2021 Sede: Santa Cruz
  • 3. ¿QUÉ TIPOS DE METODOLOGÍAS DE DESARROLLO DE SOFTWARE EXISTEN? En la actualidad se pueden diferenciar dos grandes grupos de metodologías de desarrollo de software: LAS ÁGILES Y LAS TRADICIONALES. A continuación, se explican las características de cada una de ellas. DOCENTE: DAVID ENRIQUE MENDOZA GUTIERREZ . Carrera: INGENIERIA DE SISTEMAS – NM Periodo: I – 2021 Sede: Santa Cruz
  • 4. METODOLOGÍAS DE DESARROLLO DE SOFTWARE TRADICIONALES Las metodologías de desarrollo de software tradicionales se caracterizan por definir total y rígidamente los requisitos al inicio de los proyectos de ingeniería de software. es lineal, es decir, las etapas se suceden una tras otra y no se puede empezar la siguiente sin terminar la anterior. Tampoco se puede volver hacia atrás una vez se ha cambiado de etapa. Estas metodologías, no son demasiado adaptables a los constantes cambios debido a su rigidez, pero siguen siendo efectivas al dia de hoy para distintos tipos de proyectos. DOCENTE: DAVID ENRIQUE MENDOZA GUTIERREZ . Carrera: INGENIERIA DE SISTEMAS – NM Periodo: I – 2021 Sede: Santa Cruz
  • 5. WATERFALL (CASCADA) Es una metodología en la que las etapas se organizan de arriba a abajo, de ahí el nombre. Se desarrollan las diferentes funciones en etapas diferenciadas y obedeciendo un riguroso orden. Antes de cada etapa se debe revisar el producto para ver si está listo para pasar a la siguiente fase. Los requisitos y especificaciones iniciales no están predispuestos para cambiarse, por lo que no se pueden ver los resultados hasta que el proyecto ya esté bastante avanzado. DOCENTE: DAVID ENRIQUE MENDOZA GUTIERREZ . Carrera: INGENIERIA DE SISTEMAS – NM Periodo: I – 2021 Sede: Santa Cruz
  • 6. WATERFALL (CASCADA) - Los principios básicos son: El proyecto se divide en fases secuenciales, con algunas superposiciones y salpicaduras aceptables entre fases. El énfasis está en la planificación, los horarios, las fechas objetivo, los presupuestos y la implementación de todo un sistema a la vez. Se mantiene un estricto control a lo largo de la vida del proyecto a través de una extensa documentación escrita, revisiones formales y aprobación por parte del usuario, y la administración de la tecnología de la información que se realiza al final de la mayoría de las fases antes de comenzar la siguiente fase. La documentación escrita es un entregable explícito de cada fase. DOCENTE: DAVID ENRIQUE MENDOZA GUTIERREZ . Carrera: INGENIERIA DE SISTEMAS – NM Periodo: I – 2021 Sede: Santa Cruz
  • 7. WATERFALL (CASCADA) AL DIA DE HOY VENTAJAS -Realiza un buen funcionamiento en equipos débiles y productos maduros, por lo que se requiere de menos capital y herramientas para hacerlo funcionar de manera óptima. -Es un modelo fácil de implementar y entender. -Está orientado a documentos. -Es un modelo conocido y utilizado con frecuencia. -Promueve una metodología de trabajo efectiva: Definir antes que diseñar, diseñar antes que codificar. DOCENTE: DAVID ENRIQUE MENDOZA GUTIERREZ . Carrera: INGENIERIA DE SISTEMAS – NM Periodo: I – 2021 Sede: Santa Cruz DESVENTAJAS -En la vida real, un proyecto rara vez sigue una secuencia lineal, esto crea una mala implementación del modelo, lo cual hace que lo lleve al fracaso. -El proceso de creación del software tarda mucho tiempo ya que debe pasar por el proceso de prueba y hasta que el software no esté completo no se opera. Esto es la base para que funcione bien. -Cualquier error de diseño detectado en la etapa de prueba conduce necesariamente al rediseño y nueva programación del código afectado, aumentando los costos del desarrollo. -Una etapa determinada del proyecto no se puede llevar a cabo a menos de que se haya culminado la etapa anterior.
  • 8. PROTOTIPADO Se basa en la construcción de un prototipo de software que se construye rápidamente para que los usuarios puedan probarlo y aportar feedback. Así, se puede arreglar lo que está mal e incluir otros requerimientos que puedan surgir. Es un modelo iterativo que se basa en el método de prueba y error para comprender las especificidades del producto. DOCENTE: DAVID ENRIQUE MENDOZA GUTIERREZ . Carrera: INGENIERIA DE SISTEMAS – NM Periodo: I – 2021 Sede: Santa Cruz
  • 9. ESPIRAL Es una combinación de los dos modelos anteriores, que añade el concepto de análisis de riesgo. Se divide en cuatro etapas: planificación, análisis de riesgo, desarrollo de prototipo y evaluación del cliente. El nombre de esta metodología da nombre a su funcionamiento, ya que se van procesando las etapas en forma de espiral. Cuanto más cerca del centro se está, más avanzado está el proyecto. DOCENTE: DAVID ENRIQUE MENDOZA GUTIERREZ . Carrera: INGENIERIA DE SISTEMAS – NM Periodo: I – 2021 Sede: Santa Cruz
  • 10. INCREMENTAL Se va construyendo el producto final de manera progresiva. En cada etapa incremental se agrega una nueva funcionalidad, lo que permite ver resultados de una forma más rápida en comparación con el modelo en cascada. El software se puede empezar a utilizar incluso antes de que se complete totalmente y, en general, es mucho más flexible que las demás metodologías. DOCENTE: DAVID ENRIQUE MENDOZA GUTIERREZ . Carrera: INGENIERIA DE SISTEMAS – NM Periodo: I – 2021 Sede: Santa Cruz
  • 11. DISEÑO RÁPIDO DE APLICACIONES (RAD) ● Desarrollar software de alta calidad en un corto periodo de tiempo. Los costes son mucho más altos y el desarrollo más flexible, aunque requiere una mayor intervención de los usuarios. Por otro lado, el código puede contener más errores, y sus funciones son limitadas debido al poco tiempo del que se dispone para desarrollarlas. El objetivo es iterar el menor número posible de veces para conseguir una aplicación completa de forma rápida. DOCENTE: DAVID ENRIQUE MENDOZA GUTIERREZ . Carrera: INGENIERIA DE SISTEMAS – NM Periodo: I – 2021 Sede: Santa Cruz
  • 12. METODOLOGÍAS DE DESARROLLO DE SOFTWARE ÁGILES Son las más utilizadas hoy en día debido a su alta flexibilidad y agilidad. Los equipos de trabajo que las utilizan son mucho más productivos y eficientes, ya que saben lo que tienen que hacer en cada momento. Además, la metodología permite adaptar el software a las necesidades que van surgiendo por el camino, lo que facilita construir aplicaciones más funcionales. LAS PRINCIPALES METODOLOGIAS AGILES SON: DOCENTE: DAVID ENRIQUE MENDOZA GUTIERREZ . Carrera: INGENIERIA DE SISTEMAS – NM Periodo: I – 2021 Sede: Santa Cruz
  • 13. KANBAN(TARJETA VISUAL) Consiste en un sistema de tarjetas para la gestión de piezas dentro de un proceso de producción, identificando al proveedor, la pieza en cuestión y el punto de la fábrica donde se encuentra. Esto permite reponer las piezas necesarias y en el momento justo para incorporarlas a los pedidos en producción. DOCENTE: DAVID ENRIQUE MENDOZA GUTIERREZ . Carrera: INGENIERIA DE SISTEMAS – NM Periodo: I – 2021 Sede: Santa Cruz
  • 14. SCRUM Es también una metodología incremental que divide los requisitos y tareas de forma similar a Kanban. Se itera sobre bloques de tiempos cortos y fijos (entre dos y cuatro semanas) para conseguir un resultado completo en cada iteración. Las etapas son: planificación de la iteración (planning sprint), ejecución (sprint), reunión diaria (daily meeting) y demostración de resultados (sprint review). Cada iteración por estas etapas se denomina también sprint. DOCENTE: DAVID ENRIQUE MENDOZA GUTIERREZ . Carrera: INGENIERIA DE SISTEMAS – NM Periodo: I – 2021 Sede: Santa Cruz
  • 15. SCRUM - Scrum permite la creación de equipos auto organizados impulsando la co-localización de todos los miembros del equipo, y la comunicación verbal entre todos los miembros y disciplinas involucrados en el proyecto. La metodología se basa en: -El desarrollo incremental de los requisitos del proyecto en bloques temporales cortos y fijos. -Se da prioridad a lo que tiene más valor para el cliente. -El equipo se sincroniza diariamente y se realizan las adaptaciones necesarias. -Tras cada iteración (un mes o menos entre cada una) se muestra al cliente el resultado real obtenido, para que este tome las decisiones necesarias en relación a lo observado. -Se le da la autoridad necesaria al equipo para poder cumplir los requisitos. -Fijar tiempos máximos para lograr objetivos. -Equipos pequeños (de 3 a 9 personas cada uno). DOCENTE: DAVID ENRIQUE MENDOZA GUTIERREZ . Carrera: INGENIERIA DE SISTEMAS – NM Periodo: I – 2021 Sede: Santa Cruz
  • 16. LEAN Está configurado para que pequeños equipos de desarrollo muy capacitados elaboren cualquier tarea en poco tiempo. Los activos más importantes son las personas y su compromiso, relegando así a un segundo plano el tiempo y los costes. El aprendizaje, las reacciones rápidas y potenciar el equipo son fundamentales. Inicialmente, originado en el Sistema de Proyección de Toyota y ahora, apoyado por una corriente que está surgiendo desde la comunidad Ágil. Este método ofrece todo un marco teórico sólido y basado en la experiencia, para las prácticas ágiles de gestión. DOCENTE: DAVID ENRIQUE MENDOZA GUTIERREZ . Carrera: INGENIERIA DE SISTEMAS – NM Periodo: I – 2021 Sede: Santa Cruz
  • 17. PROGRAMACIÓN EXTREMA (XP) Es una metodología de desarrollo de software basada en las relaciones interpersonales, que se consideran la clave del éxito. Su principal objetivo es crear un buen ambiente de trabajo en equipo y que haya un feedback constante del cliente. El trabajo se basa en 12 conceptos: diseño sencillo, testing, refactorización y codificación con estándares, propiedad colectiva del código, programación en parejas, integración continua, entregas semanales e integridad con el cliente, cliente in situ, y planificación. DOCENTE: DAVID ENRIQUE MENDOZA GUTIERREZ . Carrera: INGENIERIA DE SISTEMAS – NM Periodo: I – 2021 Sede: Santa Cruz
  • 18. En Conclusión A lo largo de los años se han desarrollado diversos marcos de trabajo, cada uno con sus propios puntos fuertes y débiles. Un marco metodológico de desarrollo de software no es necesariamente adecuado para todos los proyectos. Cada uno de los marcos metodológicos disponibles se adapta mejor a determinados tipos de proyectos, en función de diversas consideraciones técnicas, organizativas, de proyecto y de equipo. DOCENTE: DAVID ENRIQUE MENDOZA GUTIERREZ . Carrera: INGENIERIA DE SISTEMAS – NM Periodo: I – 2021 Sede: Santa Cruz
  • 19. Nota Editorial: Posibles Confusiones La "Programación estructurada" o la "Programación Orientada a Objetos" son paradigmas o modelos de programación. Indican pautas de comportamiento en los sistemas de programación. No tienen que ver con el ciclo de vida del software ni la manera en la que debe realizarse cada tarea para un proyecto concreto, así pues NO SON METODOLOGÍAS. Los términos "Ciclo de vida en espiral", "Incremental", en "Cascada", con "prototipo", etc., indican esquemas generales de organización en las tareas del ciclo de vida, unas con respecto a otras y con respecto a otros aspectos como el tiempo, los requisitos o el riesgo. DOCENTE: DAVID ENRIQUE MENDOZA GUTIERREZ - INTEGRANTES: RAEL ZABALA ORELLANA - 52533 Estas “confusiones” Indican ideas estructurales sencillas en el proceso de desarrollo, y no la manera en la que debe realizarse cada tarea del ciclo para un proyecto concreto, así pues, NO SON METODOLOGÍAS. El lenguaje UML (Unified Modeling Languaje) es un gran logro de la ingeniería. Aún con sus carencias, es algo muy importante: un lenguaje común para que todos los profesionales del desarrollo de sistemas -de software o no expresen sus ideas, pero UML no le indica a nadie la manera de realizar las tareas en un proyecto concreto: tan solo es una herramienta para expresar ideas.