METODOLOGIAS

Descargar como pdf o txt
Descargar como pdf o txt
Está en la página 1de 6

1

Taller sobre metodologías de desarrollo de software GA1-220501093-AA1-


EV01

JASON STEVEN PEREZ DUEÑAS

FICHA: 2721448 TECNOLOGIA DE DESARROLLO DE SOFTWARE

SERVICIO NACIONAL DE APRENDIZAJE


JULIO DE 2023
2

Contenido
Introducción...................................................................................................................................... 3
Metodologías de desarrollo de software tradicionales ..................................................................... 3

 Waterfall ....................................................................................................... 4
 Prototipado ................................................................................................... 4
 Espiral: ......................................................................................................... 4
 Incremental: ................................................................................................. 4
 Diseño rápido de aplicaciones (RAD) ........................................................... 4
Metodologías de desarrollo de software ágiles ................................................................................ 5

 Kanban ......................................................................................................... 5
 Scrum ........................................................................................................... 5
 Lean ............................................................................................................. 5
 Programación extrema (XP): ........................................................................ 6
Conclusiones ..................................................................................................................................... 6
3

Introducción

Las metodologías de investigación son herramientas imprescindibles, a la hora de


planificar el desarrollo de un software, nos facilitan y nos brindan una galería más
amplia de recursos a emplear durante el desarrollo del software. En la actualidad
se pueden diferenciar dos grandes grupos de metodologías de desarrollo de
software: las ágiles y las tradicionales.

Metodologías de desarrollo de software tradicionales


4

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. Las principales metodologías tradicionales o
clasicas son:

 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.
 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.

 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.

 Incremental: en esta metodología de desarrollo de software 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.

 Diseño rápido de aplicaciones (RAD): esta metodología permite 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
5

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.

Metodologías de desarrollo de software ágiles

Como hemos dicho al principio del artículo, 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.
Las principales metodologías ágiles son:

 Kanban: metodología de trabajo inventada por la empresa de automóviles Toyota.


Consiste en dividir las tareas en porciones mínimas y organizarlas en un tablero
de trabajo dividido en tareas pendientes, en curso y finalizadas. De esta forma, se
crea un flujo de trabajo muy visual basado en tareas prioritarias e incrementando
el valor del producto.
 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.

 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.
6

 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 insitu, entregas frecuentes y planificación.

Conclusiones

Las metodologías de desarrollo 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.

También podría gustarte