Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Metodologias Agiles
Metodologias Agiles
en Proyectos de Software
Gestión de Proyectos de TI
TESIS
Para obtener el título profesional de Ingeniero de Sistemas.
• AUTOR
Castillo Asencio Pedro Luis
Objetivos específicos
- Definir los procesos internos del negocio.
- Automatización del proceso de pedidos y promoción de productos.
- Mejorar el servicio a los clientes y usuarios.
- Reducción en el tiempo de procesamiento y transformación de datos en
información.
- Entregar un software de calidad para mejorar la satisfacción del usuario.
- Conocer toda la filosofía que envuelve a las metodologías ágiles para la
elección de la más adecuada.
- Demostrar la eficiencia de
Se propone realizar el sistema web aplicando una metodología ágil, para lo cual se
evaluará únicamente la programación extrema (XP) y Scrum como metodologías ágiles,
debido a que son las metodologías ágiles que más se están aplicando
Metodologías ágiles vs Metodologías pesadas
En esta parte se hace una comparación entre las principales formas de desarrollar
software como son la metodología ágil y metodologías tradicionales o pesadas.
Se muestra las diferencias entre ambas metodologías según una investigación
previa en base al proceso, al contexto de equipo y organización
A continuación se describe cada punto de vista del framework definidos por el autor:
• Uso
Este indicador refleja por qué utilizar metodologías ágiles. Los atributos de este indicador
tratan de evaluar todos los beneficios que el equipo de desarrollo y el cliente obtienen al
utilizar este tipo de metodologías.
• Capacidad de Agilidad
Representa cuál es la parte ágil de la metodología. Los atributos de esta vista representan
todos los aspectos del concepto de agilidad y su evaluación refleja que aspectos están
incluidos en una metodología.
• Aplicabilidad
El objetivo de esta vista es mostrar el impacto de los aspectos ambientales en el método.
Representa cuando el entorno es favorable para la aplicación de metodologías ágiles.
Este aspecto se describe por atributos, cada uno correspondiente a una característica del
entorno.
• Procesos y Productos
La vista de los procesos y productos, representan cómo están caracterizados los
procesos de la metodología y cuáles son los productos de sus actividades. Los procesos
están compuesto por dos dimensiones, la primera representa el nivel de abstracción de
sus directrices y reglas, la segunda dimensión son las actividades cubiertas por las
metodologías ágiles en el desarrollo de software, de las cuales se obtiene una tercera
dimensión que vienen a ser los productos de las actividades del desarrollo de software.
A continuación, se muestran los formularios para el proceso de elección de una metodología ágil por
cada vista.
Uso Aplicación
Capacidad de Agilidad
Procesos y Productos
Selección de la metodología ágil
Debido al resultado obtenido luego de
aplicar la guía para la selección de una
metodología y a trabajos previos que
señalan a la metodología ágil XP como ideal
por sus resultados, se decide utilizar ésta
metodología para el desarrollo del sistema
web, ya que no se tiene exactamente
definido los requerimientos y estos pueden ir
variando durante el desarrollo.
Adaptación de la herramienta teórica
En esta parte se hará una adaptación de la metodología ágil XP para resolver el
problema, ya que es importante mencionar que no todas las prácticas de la
metodología seleccionada son aplicables al presente proyecto, por lo que a
continuación se detalla para cada una de las 12 prácticas que propone como
metodología XP cuales serán cumplidas.
Principios de la metodología ágil XP:
a) Planificación
En XP la planificación de entrega se realiza entre el cliente y los desarrolladores en donde se definen qué funcionalidades se van a
implementar en una determinada iteración. Esta práctica será aplicada debido a que en cada iteración se proporciona un
valor al negocio.
b) Testing
Esta práctica será aplicada, debido a que uno de los principales aportes de esta metodología es el concepto de desarrollo dirigido por test
(Test Driven Development).
En donde se indica que los test son realizados antes de empezar a codificar y tienen como finalidad prevenir errores, por lo que esta
práctica es importante para la metodología porque se obtiene un software de calidad.
En XP se dividen las pruebas del sistema en dos grupos: las pruebas unitarias, las cuales tienen como objetivo la verificación del código y
son elaborados por los programadores, y por otro lado las pruebas de aceptación especificadas por los clientes que son ejecutadas para
evaluar si se consiguió la funcionalidad requerida. En el
siguiente capítulo se detalla cómo se planificaron las pruebas unitarias y de aceptación.
c) Programación en parejas
Dado que el proyecto se está realizando de manera individual, esta práctica no será aplicada.
d) Refactorización
En todas las iteraciones será necesario re factorizar partes del aplicativo por lo que esta práctica será utilizada, ya que XP propone aplicar
esta práctica durante todo el proceso de desarrollo.
e) Diseño simple
Esta práctica será aplicada, ya que para XP el diseño debe ser sencillo y sin código duplicado para lograr las funcionalidades requeridas
por el cliente, por lo que sólo se realizarán los diagramas útiles.
g) Integración continua
Debido al reducido equipo de desarrollo esta práctica no será aplicada. Ya que la integración debe ser continua,
en donde cada historia de usuario terminado deberá ser integrada en un repositorio de control de versiones para
que pueda ser desplegado varias veces en un ambiente de pruebas y que cada programador tenga la última
versión
del código.
h) Cliente en el equipo
Esta práctica será aplicada, ya que para XP el cliente es un integrante en el equipo de desarrollo, lo cual permite
que se tengan en todo momento la presencia para apoyar a los desarrolladores.
i) Entregas pequeñas
Esta práctica será aplicada, ya que al final de cada iteración se irán entregando partes del sistema de modo que
el cliente pueda ir usando las funcionalidades implementadas.
j) Semanas de 40 horas
No será posible aplicar esta práctica al proyecto, debido a las limitantes del proyecto. En la semana se
trabajarán 18 horas (lunes a sábado).
k) Estándares de codificación
Se seguirá el estándar de codificación para proyectos de tipo web usando patrones de diseño y estableciendo
reglas de codificación, por lo que esta práctica será aplicada. En el siguiente capítulo se detallan los estándares
a utilizar en el presente proyecto.
l) Uso de Metáforas
Esta práctica será aplicada, ya que se utilizará el vocabulario de negocio para lograr que el equipo de desarrollo
comprenda términos del negocio y cómo debería funcionar el sistema completo.
Principios de la metodología ágil XP:
• Los Roles
Hay que tener en cuenta que el desarrollador del proyecto es una sola persona, pero lo definido por XP es que
sean 2 desarrolladores por lo cual el otro cargo será ocupado en algunos casos por compañeros de estudio.
Programador: Pedro Castillo, quien hace las estimaciones sobre las historias de usuario, definir tareas e
implementar las historias de usuario.