Sie sind auf Seite 1von 42

Metodologas agiles

ING. WALTER RIVERA


SEGURA
Metodologas de Desarrollo de Software

Desarrollo gil
En 2001, Kent Beck y otros 16 notables
desarrolladores de software, escritores y
consultores
(grupo conocido como la Alianza gil)
firmaron el Manifiesto por el desarrollo gil
de software. En l se estableca lo
siguiente:

Estamos descubriendo formas mejores de desarrollar


software, por medio de hacerlo y de dar ayuda a otros
para que lo hagan. Ese trabajo nos ha hecho valorar:
Los individuos y sus interacciones, sobre los procesos
y las herramientas.
El software que funciona, ms que la documentacin
exhaustiva.
La colaboracin con el cliente, y no tanto la
negociacin del contrato.
Responder al cambio, mejor que apegarse a un plan.

Qu es?: La ingeniera de software gil


combina una filosofa con un conjunto de
lineamientos de desarrollo.
La filosofa pone el nfasis en:

CLIENTE

Quin lo hace?:

Por qu es importante? El ambiente


moderno de negocios que genera sistemas
basados en computadora y productos de
software evoluciona rpida y constantemente.

Cules son los pasos?: Un nombre ms


apropiado para el desarrollo gil sera
ingeniera de software ligero.

Cul es el producto final?: Tanto el cliente como


el
ingeniero de software tienen la misma perspectiva:

Cmo me aseguro de que lo hice


bien?:
PROCESO
FUNCIONA OK

CLIENTE

QU ES LA AGILIDAD?
Pero, qu es la agilidad en el contexto del trabajo de la
ingeniera de software? Ivar Jacobson hace un anlisis
til:
La agilidad se ha convertido en la palabra mgica de hoy
para describir un proceso del software moderno. Todos
son giles. Un equipo gil es diestro y capaz de
responder de manera apropiada a los cambios. El cambio
es de lo que trata el software en gran medida. Hay
cambios en el software que se construye, en los
miembros del equipo, debidos a las nuevas tecnologas,
de todas clases y que tienen un efecto en el producto
que se elabora o en el proyecto que lo crea

LA AGILIDAD Y EL COSTO DEL


CAMBIO

CAMBIOS EN DISTINTAS
ETAPAS

NUEVAS
FUNCIONE
S

MODIFICAR DISEO
DE ARQUITECTURA
DEL SOFTWARE

LINEA DE TIEMPO

QU ES UN PROCESO GIL?
Cualquier proceso del software gil se
caracteriza por la forma en la que aborda
cierto nmero de suposiciones clave acerca
de la mayora de proyectos de software:

QU PASARA?
PRONOSTIC
AR
CAMBIOS

REQUERIMIENTO
S DE SOFTWARE

PRIORIDADES
DEL CLIENTE

QU PASARA?
ETAPA DE DISEO

ETAPA DE CONSTRUCCION

QU PASARA?
ANALISIS

ANALISIS

DISEO

DISEO
CONSTRUCCI
ON
PRUEBAS

LO PLANEADO

CONSTRUCCION
PRUEBAS

LO REAL

cmo crear un proceso que pueda


manejar lo impredecible?
UN PROCESO AGIL DEBE SER

ADAPTACION INCREMENTAL
COMO SE LOGRA?

A TRAVEZ
DE:

PRINCIPIOS DE AGILIDAD
La Alianza gil define 12 principios de
agilidad para aquellos que la quieran
alcanzar:

Principio 1

Principio 2
EN UNA ETAPA AVANZADA DEL
PROYECTO
TENGO NUEVOS
REQUERIMIENTOS

CLIENTE

EQUIPO DEL
PROYECTO

Principio 3
DE 2 SEMANAS A UN PAS DE MESES

Principio 4

Principio 5

Principio 6
METODO MAS EFICAZ Y EFICIENTE DE TRANSMITIR
INFORMACION ENTRO LOS MIEMBROS DEL EQUIPO ES

Principio 7
LA FORMA DE MEDIR EL AVANZE ES CON

Principio 8
Desarrolladores y usuarios deben poder
mantener un ritmo constante en forma
indefinida.

Principio 9
La atencin continua a la excelencia tcnica
y el buen diseo mejora la agilidad.

Principio 10

v
s

Principio 11
Las mejores arquitecturas, requerimientos y
diseos surgen de los equipos con
organizacin propia.

Principio 12
El equipo reflexiona a intervalos regulares
sobre cmo ser ms eficaz, para despus
afinar y ajustar su comportamiento en
consecuencia.

Todo modelo de proceso gil aplica estos


12 principios?

La poltica del desarrollo gil


Metodologa
tradicional

Metodologa gil

FACTORES HUMANOS
Los defensores del desarrollo de software gil
se toman muchas molestias para enfatizar la
importancia de los factores personales.

Competencia
Enfoque comn
Colaboracin
Habilidad para tomar decisiones

FACTORES HUMANOS
Capacidad
para
resolver
difusos.
Confianza y respeto mutuos.
Organizacin propia.

problemas

PROGRAMACION EXTREMA
(XP)

Desarrollo adaptativo de
software (DAS)

SCRUM

Mtodo de desarrollo de sistemas


dinmicos (MDSD)

CRYSTAL CLEAR

INVESTIGAR MAS MODELOS AGILES DE


DESARROLLO DE SOFTWARE E
IDENTIFICAR SUS FASES EN CADA UNA DE
ELLAS.

Metodologas de Desarrollo de
Software
Ing. Walter Rivera Segura