You are on page 1of 9

Índice

Metodología 2

Metodologías Tradicionales 2
Ventajas 2
Desventajas 3
Técnicas tradicionales 3

Metodologías Ágiles 3
Ventajas 5
Desventajas 5
Técnicas ágiles 6

Metodologías Ágiles vs Tradicionales 6


Comparación entre RUP Y SCRUM 7

Conclusiones 7

Bibliografía 9
Metodología
Hace referencia al conjunto de procedimientos racionales utilizados para alcanzar el
objetivo o la gama de objetivos que rige una tarea en específico o tareas que
requieran habilidades, conocimientos o cuidados.

Con frecuencia puede definirse la metodología como el estudio o elección de un


método pertinente o adecuadamente aplicable a determinado objeto.
Existen varios tipos de metodologías de trabajo: ágiles y tradicionales.

Metodologías Tradicionales
Las metodologías tradicionales o denominadas a veces como metodologías
pesadas buscan siempre llevar una documentación exhaustiva de todo el proyecto y
en cumplir con un plan de proyecto al pié de la letra, definido todo esto, en la fase
inicial del desarrollo del proyecto.

Otra de las características importantes dentro de las tradicionales, es el alto costo


que significa realizar un cambio a nuestro proyecto y la falta de flexibilidad en
proyectos donde el entorno es cambiante.

Las metodologías tradicionales centran su atención en la documentación,


planificación y procesos.

Características específicas:
● Poco flexibles a los cambios.
● Proceso más controlado.
● Existe un contrato prefijado.
● El cliente interactúa con el equipo únicamente en las reuniones de entregas.
● Grupos grandes y posiblemente distribuidos donde a cada integrante se le
asignan tareas específicas.
● La arquitectura del software es esencial y se expresa mediante modelos.

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.

2
Desventajas
● La evaluación de riesgos es compleja
● Excesiva flexibilidad para algunos proyectos
● Estamos poniendo a nuestro cliente en una situación que puede ser muy
incómoda para él puesto que deberá ser capaz de describir y entender a un
gran nivel de detalle para poder acordar un alcance del proyecto con él.
● Si durante una etapa del ciclo del software nos damos cuenta de que algo
está mal, la vuelta a una etapa anterior no está bien definida en la
metodología.
● El usuario no ve el producto hasta el final, no puede ir validando hitos
intermedios e ir verificando que lo que se ha construido es lo que necesita.

Técnicas tradicionales
Entre las metodologías tradicionales o pesadas podemos citar:
● RUP (Rational Unified Procces)
● MSF (Microsoft Solution Framework)
● Win-Win Spiral Model
● Iconix
● Cascada

Metodologías Ágiles
Las metodologías ágiles son una serie de técnicas para la gestión de proyectos.
Todas las metodologías que se consideran ágiles cumplen con el manifiesto ágil que
no es más que una serie de principios que se agrupan en 4 valores:
1. Los individuos y su interacción, por encima de los procesos y las
herramientas.
2. El software que funciona, frente a la documentación exhaustiva.
3. La colaboración con el cliente, por encima de la negociación
contractual.
4. La respuesta al cambio, por encima del seguimiento de un plan.

Además, para responder a los principios señalados previamente, los modelos de


desarrollo ágiles deben cumplir con lo siguiente:
● Ser adaptables de forma incremental
● Tener abundante retroalimentación del cliente
● Basarse en la entrega continua de incrementos

Principios del manifiesto ágil

3
Los principios son las características que hacen referencia a la principales
diferencias entre metodologías ágiles y tradicionales; a su vez estas constituyen las
ideas centrales del desarrollo ágil y se dividen en 12 principios:

I. Nuestra mayor prioridad es satisfacer al cliente mediante entregas tempranas


y continuas de software con valor.

I. Bienvenidos los cambios a los requerimientos, incluso los tardíos. Los


procesos ágiles aprovechan los cambios para la ventaja competitiva del
cliente.

II. Liberar frecuentemente software funcionando, desde un par de semanas a un


par de meses, con preferencia por los períodos más cortos.

III. Las personas del negocio y los desarrolladores deben trabajar juntos
diariamente a lo largo del proyecto.

IV. Construir proyectos en torno a individuos motivados. Darles el entorno y


apoyo que necesiten, y confiar en ellos para que consigan hacer su trabajo.

V. El método más efectivo y eficiente de compartir información a, y dentro de un


equipo de desarrollo, es la conversación cara a cara.

VI. VII. El software funcionando es la medida de progreso.

VII. Los procesos ágiles promueven el desarrollo sostenible. Los patrocinadores,


desarrolladores y usuarios deberían ser capaces de mantener relaciones
cordiales.

VIII. La atención continua a la excelencia técnica y al buen diseño incrementa la


agilidad.

IX. La simplicidad, el arte de maximizar la cantidad de trabajo no hecho, es


esencial.

X. Las mejores arquitecturas, requerimientos y diseños emergen de los equipos


auto-organizados.

XI. En intervalos regulares, el equipo reflexiona sobre cómo volverse más


efectivo, entonces afina y ajusta su comportamiento como corresponde.
Las metodologías ágiles son métodos de desarrollo de software en los que las
necesidades y soluciones evolucionan a través de una colaboración estrecha entre
equipos multidisciplinarios. Se caracterizan por enfatizar la comunicación frente a la
documentación, por el desarrollo evolutivo y por su flexibilidad.

4
Sin duda una de las claves que un proyecto ágil es el uso de un ciclo de vida
iterativo, a veces también incremental, frente al ciclo de vida de una metodología en
cascada.

Ventajas
Las metodologías ágiles presentan diversas ventajas como:

● Rápida respuesta a cambios de requisitos a lo largo del desarrollo.


● Entrega continua y en plazos cortos de software funcional.
● Trabajo conjunto entre el cliente y el equipo de desarrollo.
● Minimiza los costos frente a cambios.
● Importancia de la simplicidad, al eliminar el trabajo innecesario.
● Atención continua a la excelencia técnica y al buen diseño.
● Mejora continua de los procesos y el equipo de desarrollo.
● Evita malentendidos de requerimientos entre el cliente y el equipo.
● El equipo de desarrollo no malgasta el tiempo y dinero del cliente
desarrollando soluciones innecesariamente generales y complejas que en
realidad no son un requisito del cliente.
● Cada componente del producto final ha sido probado y satisface los
requerimientos.

Desventajas
Como en cualquiera otra metodología, también hay desventajas y problemas que
surgen a la hora de implementarlas:

● Falta de documentación del diseño. El código no puede tomarse como una


documentación. En sistemas de tamaño grande se necesitar leer los cientos
o miles de páginas del listado de código fuente.
● Problemas derivados de la comunicación oral. Este tipo de comunicación
resulta difícil de preservar cuando pasa el tiempo y está sujeta a muchas
ambigüedades.
● Falta de calidad. Probar el código de forma constante no genera productos de
calidad, sólo revela falta de análisis y diseño.
● Fuerte dependencia de las personas. Cómo se evita en lo posible la
documentación y los diseños convencionales, los proyectos ágiles dependen
críticamente de las personas.
● Falta de reusabilidad. La falta de documentación hacen difícil que pueda
reutilizarse el código ágil.
● Restricciones en cuanto a tamaño de los proyectos abordables.
● Rigidez. Algunos métodos ágiles son muy rígidos: deben cumplirse muchas
reglas de una forma estricta para garantizar el éxito del proyecto. Por ejemplo
XP exige en realidad mucho esfuerzo, concentración y orden.

5
● Cambios. Los modelos de datos son “pesados” y no pueden cambiarse así
como así solo porque el cliente quiera incorporar más funciones al sistema.
● Problemas derivados del fracaso de los proyectos ágiles. Si un proyecto ágil
fracasa no hay documentación o hay muy poca; lo mismo ocurre con el
diseño. La comprensión del sistema se queda en las mentes de los
desarrolladores.

Técnicas ágiles
A continuación citaremos algunas de las técnicas basadas en la metodología de
desarrollo ágil más populares:
● Extreme Programming
● Scrum
● Dynamic Systems Development Method (DSDM)
● Proceso Unificado Ágil (Agile Unified Process)
● Desarrollo Adaptativo de Software (Adaptive software development)
● Modelado Ágil (Agile Modeling)

Metodologías Ágiles vs Tradicionales


Las metodologías ágiles de desarrollo de software han despertado interés gracias a
que proponen simplicidad y velocidad para crear sistemas. Las metodologías
tradicionales no se adaptan a las nuevas necesidades o expectativas que tienen los
usuarios hoy en día, en parte que los métodos usados no son flexibles ante la
posibilidad de la exigencia de nuevos requerimientos. Estos cambios generalmente
implican altos costos, demanda de tiempo y la reestructuración total del proyecto
que se esté llevando; en contraparte, los métodos ágiles permiten un desarrollo
iterativo y adaptable que permite la integración de nuevas funcionalidades a lo largo
del desarrollo del proyecto; para que tanto el cliente como el desarrollador queden
satisfechos porque el producto final tiene una calidad adecuada.
Con las metodologías tradicionales se da un punto de inflexión mediante el modelo
en Cascada ya que este se trata de un modelo lineal del diseño de software.
Tal como lo señala su nombre, la Cascada emplea un proceso de diseño
secuencial.
En contraste, las Metodologías Ágiles proponen un acercamiento incremental e
iterativo para el diseño de software. Las metodologías ágiles surgieron después del
modelo de cascada y como respuesta a las deficiencias del modelo de cascada.

6
Comparación entre RUP Y SCRUM
Para tener un mejor criterio sobre las metodologías tradicionales y ágiles se
muestra información relevante sobre dos técnicas de las más utilizadas para
elaborar software, como ejemplo de metodología tradicional se utilizará RUP y como
ejemplo de metodología ágil SCRUM.

RUP SCRUM
(Rational Unified Process)

¿Qué es? Una metodología que Marco de trabajo basado en


pretende ordenar y metodologías ágiles,
estructurar el desarrollo de muestra el control continuo
software, transforma y actual del software
requisitos del usuario en un
software

Año de creación 1998 1986

Enfoque Iterativo e incremental Iterativo

Documentación Excesiva documentación Propone software funcional


por encima de la excesiva
documentación

El cliente Se relaciona con el equipo Es parte integral del equipo


de desarrollo en cada de desarrollo
entrega

Los cambios Se manejan en nuevas Se manejan de forma


iteraciones inmediata

Tipo de proyecto/producto Especialmente medianos y Usualmente utilizado en


grandes proyectos pequeños

Conclusiones
En la presente investigación se puede apreciar como las metodologías ágiles
son útiles para proyectos pequeños y medianos, donde no se requiera un gran nivel
de precisión en el cumplimiento de los requisitos, este tipo de metodologías no
deberían ser utilizadas en el desarrollo de sistemas que requieran procesos de
cuidado o críticos, considerando que el análisis no es muy detallado.
Por el contrario, las metodologías tradicionales son más útiles en proyectos
de gran tamaño y complejidad donde se defina bien la pila de requerimientos del
proyecto y este no sufre grandes modificaciones durante el desarrollo del mismo. Se
debe considerar también que estas metodologías requieren de gran planificación y

7
documentación, pues requieren de gran análisis considerando que en su gran
mayoría son utilizadas para procesos de cuidado.
Por consecuencia la mejor metodología de trabajo es aquella que se ajusta
mejor al proyecto, sin tener que sentirse atado a una metodología u otra. Se debe
realizar una valoración de una serie de factores como: tamaño del proyecto, la
cantidad de stakeholders involucrados, la variabilidad de los requerimientos, los
riesgos de desarrollo del proyecto entre muchos otros. Para lograr determinar la
decisión más acertada en cuanto a la metodología de trabajo implementada para
desarrollar el software.

8
Bibliografía

Antillanca Espina, H. Cerda Neumann, G. (s.f.). Propuesta Metodológica para el


Desarrollo de Software de Investigación. Disponible en:
http://sitios.diinf.usach.cl/kddp/files/2012/10/Paper-Propuesta-de-M%C3%A9todo-
para-Sw-de-Investigaci%C3%B3n-Infonor-2010.pdf

Dawson, C.(2015). Metodologías ágiles. [online] blogs.infobae.com Disponible en:


http://blogs.infobae.com/

Ecured.cu. (2017). Metodologías Ágiles - EcuRed. [online] Available at:


https://www.ecured.cu/Metodolog%C3%ADas_Agiles

Garzás, J. (2017). Metodologías ágiles: Los artículos más destacados - Javier


Garzás. [online] Javier Garzás. Disponible en:
http://www.javiergarzas.com/metodologias-agiles

Herrera Uribe, Eliécer, Valencia Ayala, Luz (2007). Del manifiesto ágil sus valores y
principios. [En línea]. Disponible en :
https://dialnet.unirioja.es/servlet/articulo?codigo=4809645

Pérez A, O. (2011). Cuatro enfoques metodológicos para el desarrollo de Software


RUP-MSF-XP-SCRUM. Disponible en:
http://biblioteca.uniminuto.edu/ojs/index.php/Inventum/article/view/9/9

Raya, R. (2017). ¿Qué son las metodologías ágiles?. [online] LeanMonitor


Disponible en: http://blog.leanmonitor.com/es/que-son-las-metodologias-agiles/

Sanabria, W. (2017). Métodos Ágiles. [online] Metodosagiles.blogspot.mx.


Disponible en: http://metodosagiles.blogspot.mx/

You might also like