Metodologías Tradicionales y Agiles

Descargar como docx, pdf o txt
Descargar como docx, pdf o txt
Está en la página 1de 16

UNIVERSIDAD TECNOLÓGICA

DE LA SELVA

UNIDAD ACADÉMICA DE BENEMÉRITO DE LAS AMÉRICAS

ASIGNATURA:

Metodología para el desarrollo de proyectos

UNIDAD TEMÁTICA:
investigación de metodologias

DOCENTE:
Ing. Fredy Lara Pereyra

ALUMNO:
Gabriela Uriostegui Romero

CARRERA:
Ing. Desarrollo y gestión de software

GRADO Y GRUPO:
7° A

FECHA DE ENTREGA:
05 de noviembre de 2022
Contenido
INTRODUCCION.............................................................................................................................1
1. METODOLOGÍAS TRADICIONALES DEL DESARROLLO..............................................2
1.1. Concepto de metodología tradicional del desarrollo...................................................2
1.2. Características.................................................................................................................2
1.3. Ventajas............................................................................................................................2
1.4. Desventajas......................................................................................................................2
1.5. Metodología tradicional...................................................................................................3
1.5.1. CMMI.........................................................................................................................3
1.5.2. TSP............................................................................................................................4
1.5.3. PSP............................................................................................................................4
2. METODOLOGÍAS AGILES DEL DESARROLLO................................................................6
2.1. Concepto de metodología ágil del desarrollo..............................................................6
2.2. Características.................................................................................................................6
2.3. Ventajas............................................................................................................................6
2.4. Desventajas......................................................................................................................7
2.5. Metodología Ágil..............................................................................................................7
2.5.1. SCRUM.....................................................................................................................7
2.5.2. XP..............................................................................................................................8
2.5.3. KANBAN...................................................................................................................9
3. CUADRO COMPARATIVO METODOLOGÍAS TRADICIONALES Y AGILES..............11
CONCLUSIÓN...............................................................................................................................12
INTRODUCCION

La metodología de desarrollo de software en ingeniería de software es un marco


de trabajo usado para estructurar, planificar y controlar el proceso de desarrollo en
sistemas de información

Metodologías de Desarrollo de Software tiene como objetivo presentar un conjunto


de técnicas tradicionales y modernas de modelado de sistemas que permitan
desarrollar software de calidad, incluyendo heurísticas de construcción y criterios
de comparación de modelos de sistemas.

Para tal fin se describen, fundamentalmente, herramientas de Análisis y Diseño


Orientado a Objetos (UML), sus diagramas, especificación, y criterios de
aplicación de las mismas. Como complemento se describirán las metodologías de
desarrollo de software que utilizan dichas herramientas, ciclos de vida asociados y
discusión sobre el proceso de desarrollo de software más adecuado para las
diferentes aplicaciones

pág. 1
1. METODOLOGÍAS TRADICIONALES DEL DESARROLLO.

1.1. Concepto de metodología tradicional del desarrollo.

Las metodologías tradicionales, como su nombre nos indica, son las que se han
usado toda la vida. Buscan imponer disciplina al proceso de desarrollo de software
y de esa forma volverlo predecible y por ello eficiente.

De hecho, estas metodologías tienen un enfoque predictivo, donde se sigue un


proceso secuencial en una sola dirección y sin marcha atrás.

1.2. Características

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. Los ciclos de desarrollo son poco flexibles y no permiten realizar
cambios, al contrario que las metodologías ágiles; lo que ha propiciado el
incremento en el uso de las segundas.

La organización del trabajo de las metodologías tradicionales 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 se adaptan nada bien a los cambios, y el mundo
actual cambia constantemente.

1.3. Ventajas
 Evaluación en cada fase que permite cambios de objetivos
 Funciona bien en proyectos de innovación.
 Es sencillo, ya que sigue los pasos intuitivos necesarios a la hora de
desarrollar el software.
 Seguimiento detallado en cada una de las fases

1.4. Desventajas
 La evaluación de riesgos es compleja

pág. 2
 Excesiva flexibilidad para algunos proyectos
 Estamos poniendo a nuestro cliente en una situación que puede ser muy
incómoda para él.
 Nuestro cliente deberá ser capaz de describir y entender a un gran nivel de
detalle para poder acordar un alcance del proyecto con él.

1.5. Metodología tradicional

1.5.1. CMMI

CMMI es el acrónimo de Capability Maturity Model Integration y se refiere a los


modelos que contienen las mejores prácticas que ayudan a las organizaciones a
mejorar sus procesos.

Han sido desarrollados por equipos de trabajo formados por especialistas de la


industria, el gobierno y el Software Engineering Institute (SEI) que transfirió los
derechos al CMMI Institute para su operación y comercialización.

Siendo un modelo refleja una abstracción de la realidad que permite a las


organizaciones adoptar prácticas útiles para alcanzar sus objetivos de negocio,
constituye una referencia no es un proceso en sí. Para establecer una analogía,
querer adaptar la organización al modelo es como si al ver una maqueta de una
casa una persona deseara vivir en ella.

Estas capacidades críticas abordan los principales retos a los que se enfrentan las
organizaciones como, por ejemplo:

 Asegurar la calidad
 Diseñar y desarrollar productos
 Entregar y gestionar servicios
 Seleccionar y gestionar proveedores
 Planificar y gestionar el trabajo
 Gestionar la resiliencia (capacidad de superar los momentos críticos)
 Gestionar el personal

pág. 3
 Mejorar el rendimiento de la organización
1.5.2. TSP

Es un modelo de referencia de ingeniería de software que provee un énfasis en los


procesos, los productos y el trabajo en equipo. El TSP toma de base los principios
de PSP para realizar los procesos y principios de ingeniería de software en un
ambiente de trabajo en equipo.

El TSP enfatiza el trabajo en equipo porque:

 Los equipos no se forman mágicamente


 Los pasos para formar un equipo no son obvios
 Se deben entender las fortalezas/debilidades de cada miembro del equipo y
como estas soportan el desempeño del mismo.

Los equipos no son un accidente, se requiere una estrategia definida para trabajar
juntos de manera coordinada, establecer responsabilidades y dar seguimiento al
avance. Esto se logra teniendo metas comunes, acordando planes de acción y con
un liderazgo apropiado.

El Team Software Process no es una capacitación, usa los principios de PSP para
poner en práctica lo aprendido en el mismo y ayudar a formar y poner en marcha
equipos de alto desempeño para producir productos de clase mundial, de manera
cíclica, es decir al término de cada ciclo, el equipo debe entregar una versión del
producto que pueda ser probada (que sea un subconjunto del producto final), de
tal manera que los productos de los ciclos combinados generan el producto final.

Cada miembro del equipo, en un desarrollo TSP planea sus actividades, da


seguimiento a su trabajo y reporta su avance, controla sus propios procesos, se
involucra en la planeación, decisiones de todo el equipo, tiene roles y
responsabilidades explícitas.

1.5.3. PSP

El PSP es un proceso personal que, al estar basado en los principios de mejora,


ayuda a la gente a establecer sus metas personales, identificar qué métodos

pág. 4
utilizarán, medir sus trabajos y analizar los resultados, para ajustar los métodos
que utilizan para cumplir sus metas.

El PSP es un proceso definido para ayudar a realizar mejor el trabajo, cuyo


objetivo es obtener y reportar datos precisos y completos del trabajo que se realiza
a nivel individual, con el fin de mejorar el proceso individual, afectando de esta
manera al desempeño de todo el equipo.

Personal Software Process (PSP) es un proceso diseñado para ayudar a los


ingenieros de software a controlar, manejar y mejorar su trabajo. PSP está basado
en una motivación.

La calidad de software depende del trabajo de cada uno de los ingenieros de


software.

Debido a que los costos de personal constituyen 70% del costo del desarrollo de
software, las capacidades y hábitos de trabajo de los ingenieros determinan en
gran manera los resultados del desarrollo de software.

PSP puede ser aplicado en:

 Desarrollo de programas.
 Definición de requerimientos.
 Documentación.
 Pruebas de sistemas.
 Mantenimiento de sistemas.

pág. 5
2. METODOLOGÍAS AGILES DEL DESARROLLO.

2.1. Concepto de metodología ágil del desarrollo.

La metodología ágil es un diseño de producción efectivo cuando se trata de


producir un software eficiente sin la necesidad de una gran documentación. En
breve, evita la excesiva característica burocrática de los sistemas y sus procesos.
En consecuencia, esta estrategia resulta ser yuxtapuesta al modelo de desarrollo
de software tradicional.

2.2. Características

las metodologías ágiles de desarrollo de software 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 metodologías ágiles se basan en la metodología incremental, en la que en


cada ciclo de desarrollo se van agregando nuevas funcionalidades a la aplicación
final. Sin embargo, los ciclos son mucho más cortos y rápidos, por lo que se van
agregando pequeñas funcionalidades en lugar de grandes cambios.

Este tipo de metodologías permite construir equipos de trabajo autosuficientes e


independientes que se reúnen cada poco tiempo para poner en común las
novedades. Poco a poco, se va construyendo y puliendo el producto final, a la vez
que el cliente puede ir aportando nuevos requerimientos o correcciones, ya que
puede comprobar cómo avanza el proyecto en tiempo real.

2.3. Ventajas
 Ideal para proyectos pequeños.
 Los hace más rápido de controlar.
 Resulta sencillo transmitir el conocimiento sobre los proyectos.

pág. 6
 Crea un diseño de tareas estable.
 Resultados más acordes con las necesidades del cliente.

2.4. Desventajas

 Se genera poca documentación sobre el proyecto.


 Falta de control de calidad.
 Soluciones equivocadas pueden obligar a reiniciar el proceso.
 Se enfocan en las decisiones de los líderes del proyecto.

2.5. Metodología Ágil

2.5.1. SCRUM

Scrum es una metodología ágil que tiene como objetivo optimizar la ejecución de
proyectos. A través de esta estrategia, es posible organizar mejor los equipos y
fragmentar las tareas en demandas granulares para hacer que el proceso sea más
eficiente.

La definición de scrum en la guía scrum muestra que “scrum es un marco simple


que ayuda a personas, equipos y organizaciones a generar valor a través de
soluciones adaptables a problemas complejos”.

Además, el scrum se basa en el empirismo, es decir, todo el conocimiento se


obtiene de la experiencia y las decisiones se toman con referencia a lo observado.
Entonces, para que el scrum funcione, todos deben trabajar en colaboración y
contribuir con sus ideas y habilidades.

El objetivo del scrum es ganar agilidad para desarrollar productos con un valor
agregado creciente para los clientes. A través de esta metodología, los problemas
complejos se pueden resolver con mayor facilidad, lo que optimiza los procesos.

El scrum también ayuda a los equipos a desarrollar la cooperación y aprender de


las experiencias cotidianas.

pág. 7
Otro punto importante es que los empleados comienzan a desarrollar resiliencia
para hacer frente a los cambios de manera más rápida.

El scrum tiene tres pilares:

 Transparencia
 Inspección
 Adaptación

Transparencia

Tanto el que lo hace como el que recibe el trabajo debe tener una visión clara de
todo el proceso. La poca transparencia puede llevar a decisiones equivocadas y
aumentar el riesgo de las acciones. Esto está directamente relacionado con el
segundo punto, la inspección. Después de todo, sólo es eficaz cuando se realiza
de forma transparente.

Inspección

Todos los detalles relacionados con el proceso de scrum deben inspeccionarse


con frecuencia para identificar posibles problemas y corregirlos de manera
oportuna. En consecuencia, la inspección conduce a la adaptación, el tercer pilar
del scrum.

Adaptación

El análisis constante del scrum permitirá encontrar oportunidades de ajustes que


deben realizarse con rapidez, lo que requerirá un alto potencial de adaptación.
Para que esto funcione, es necesario que todos los miembros del equipo
practiquen la resiliencia para lidiar mejor con los escenarios cambiantes.

2.5.2. XP

La metodología XP es un conjunto de técnicas que dan agilidad y flexibilidad en la


gestión de proyectos. También es conocida como Programación Extrema (Extreme
Programming) y se centra crear un producto según los requisitos exactos del

pág. 8
cliente. De ahí, que le involucre al máximo durante el método de gestión del
desarrollo del producto.

CARACTERÍSTICAS DE LA METODOLOGÍA XP

 Comunicación constante entre el cliente y el equipo de desarrollo.


 Respuesta rápida a los cambios constantes.
 La planificación es abierta con un cronograma de actividades flexible.
 El software que funciona está por encima de cualquier otra documentación.
 Los requisitos del cliente y el trabajo del equipo del proyecto son los
principales factores de éxito del mismo.

DIFERENCIA ENTRE METODOLOGÍA XP Y ÁGIL

Esta metodología XP está dentro de las denominadas metodologías ágiles. Sin


embargo, tiene sus peculiaridades.

Pues al mismo tiempo que la metodología Agile recoge las buenas prácticas de un
marco de trabajo específico. En ella, hay unos roles de equipo definidos y unas
iteraciones que se van repitiendo cada semana o 3-5 semanas.

La metodología XP se centra en la comunicación con todos los involucrados en el


proyecto, así como la reutilización del código ya desarrollado y la realimentación.

2.5.3. KANBAN

La metodología Kanban es un sistema de producción tan eficiente como efectivo.


Forma parte de las metodologías ágiles y su objetivo es gestionar la realización de
las tareas hasta su finalización. Descubramos un poco más acerca de este método
que puede ser muy útil en tu empresa.

¿Cómo funciona la metodología Kanban?

Kanban es una palabra japonesa formada por Kan, que quiere decir visual, y Ban,
que significa tarjeta. Por lo tanto, Kanban hace referencia a las tarjetas visuales.

Esta metodología es muy sencilla, se puede actualizar y los equipos de trabajo la


pueden asumir sin problema. Al ser un método visual permite que con un simple

pág. 9
vistazo se conozca el estado de los proyectos y se puedan asignar nuevas tareas
de manera muy efectiva. Para aplicarlo, es necesario un tablero de tareas con el
que poder mejorar el trabajo y tener un ritmo sostenible.

Ventajas de la metodología Kanban.

A través de los principios en los que se basa este método ya podemos intuir las
numerosas ventajas que conlleva su aplicación en cualquier empresa. Estas son
los

4 beneficios indiscutibles.

1. Transparencia

Los tiempos de entrega son más cortos y hay una mayor fiabilidad en los mismos.
Todo el mundo sabe cuál es su tarea y en qué momento está de su ciclo.

2. Evita tareas ineficientes

Se evita la sobreproducción y la limitación de los recursos, lo que supone contar


con una mayor disponibilidad de materiales.

3. Control de las tareas

El tiempo de producción es más rápido, por tanto se reduce el control del esfuerzo
y se mejora la planificación. Esto afecta directamente a la mayor productividad en
el área de compras, abastecimiento y control. Aumenta la rotación de los
inventarios y se necesita una menor capacidad de almacenamiento.

4. Flexibilidad

Como todo el equipo sabe perfectamente cuál es su tarea y la realiza con eficacia,
si surge alguna tarea imprevista existe una capacidad de respuesta que permite
atenderla.

En definitiva, la metodología Kanban está indicada para las empresas que


necesiten cierta flexibilidad a la hora de manejar nuevas entradas de tareas y
poder realizar un buen seguimiento de las mismas. Además, permite priorizar,
realizar informes precisos y supervisar adecuadamente el trabajo en equipo

pág. 10
3. CUADRO COMPARATIVO METODOLOGÍAS TRADICIONALES Y AGILES.

Aspecto Tradicionales Ágiles


Requisitos Requieren los requisitos detallados Los requisitos son muy cambiantes.
desde el inicio del proyecto.  La verdad es que en software los
requisitos cambian continuamente, y
Los requisitos no pueden cambiar se requiere de un feedback sobre un
resultado obtenido para determinar si
es lo requerido o no.
Requisitos Debido a la recolección inicial de El enfoque continuo en el valor para el
(funcionalidades requisitos es frecuente que se negocio no permite que se incluyan
innecesarias) soliciten funcionalidades innecesarias funcionalidades innecesarias

Cambios Hacer un cambio al alcance requiere El cambio es bienvenido en cualquier


de un proceso formal de control de momento del proyecto
cambios
Tiempo Existe un compromiso respecto al Existe incertidumbre respecto al
tiempo de entrega del proyecto  tiempo de entrega de todo el producto.
Lo cierto es que máximo cada 2
(no siempre se cumple esta meta) meses (máximo un mes en scrum) hay
entrega de producto de valor para el
cliente
Costo El costo del proyecto es definido para Existe incertidumbre respecto al costo
el proyecto del proyecto.
Se invierte en las funcionalidades que
más valor le dan al cliente y
cíclicamente se avanza hasta que se
logre, ya sea:
 el producto deseado
 se acabe el presupuesto
Documentación Atención exhaustiva a la Solo se genera la documentación que
documentación. genera valor al cliente y al proyecto
El cliente El cliente apoya el desarrollo del Involucración directa del cliente en el
producto mediante la participación en desarrollo del producto
reuniones.
El cliente es parte de equipo.

pág. 11
Iteraciones Pocas iteraciones que generan gran Utilización de múltiples iteraciones de
volumen de información y software desarrollo para aprender y evolucionar
para construcción del producto. el producto
Riesgos Los riesgos son asumidos por el Voluntad del cliente para compartir la
proveedor responsabilidad en las decisiones y
riesgos

Se valora más El proceso El individuo y las interacciones de los


mismos
La planeación Requieren un plan detallado desde el Se va planeando a medida que se
inicio del proyecto avanza en el proyecto. Planeación
gradual y constante.
El éxito del proyecto Es dado por el seguimiento del plan Es dado por la entrega continua de
valor y funcionalidad al cliente
Elaboración de Se generan entregables que Se centran en hacer entregables en
entregables requieren mucho tiempo de tiempos cortos con alta calidad
elaboración. inmersa
La retroalimentación Es conocida al final, pudiendo Es constante a lo largo del proyecto
del cliente generar insatisfacción.
Participación del Empodera al Gerente de proyecto Empodera al equipo para trabajar de
equipo para el éxito del mismo, este decide si forma creativa e innovadora.
participa de este poder o no al equipo
o no.
Proceso (Plantillas) Innumerables plantillas y artefactos Pocas plantillas y artefactos 
para cumplir con el proceso
(solo los estrictamente necesarios
para construir el producto)
Roles Muchos roles para ejecutar el Pocos roles
proyecto
Arquitectura Es un ejercicio que se realiza al inicio Es un ejercicio constante durante el
o en una etapa del proyecto. proyecto

pág. 12
CONCLUSIÓN

Las metodologías tradicionales se han visto rebasadas por las actuales demandas
de la industria como son: adaptación a las expectativas de clientes y usuarios,
tiempos y costos de desarrollo y requerimientos susceptibles a cambios.

La aplicación efectiva de las metodologías ágiles representa beneficios tanto para


los miembros del equipo de desarrollo como para los clientes. Tales como
reducción de costos, capacidad de predicción conforme se entregan las
iteraciones, trabajo colaborativo y mayor satisfacción y motivación cliente –
equipo. Todo esto desde una filosofía que jerarquiza individuos e interacciones
sobre procesos y herramientas.

pág. 13

También podría gustarte