Está en la página 1de 13

Principios del Manifiesto gil

Seguimos estos principios:


Nuestra mayor prioridad es satisfacer al cliente
mediante la entrega temprana y continua de software
con valor.
Aceptamos que los requisitos cambien, incluso en etapas
tardas del desarrollo. Los procesos giles aprovechan
el cambio para proporcionar ventaja competitiva al
cliente.
Entregamos software funcional frecuentemente, entre dos
semanas y dos meses, con preferencia al periodo de
tiempo ms corto posible.
Los responsables de negocio y los desarrolladores
trabajamos juntos de forma cotidiana durante todo
el proyecto.
Los proyectos se desarrollan en torno a individuos
motivados. Hay que darles el entorno y el apoyo que
necesitan, y confiarles la ejecucin del trabajo.
El mtodo ms eficiente y efectivo de comunicar
informacin al equipo de desarrollo y entre sus
miembros es la conversacin cara a cara.
El software funcionando es la medida principal de
progreso.

Los procesos giles promueven el desarrollo


sostenible. Los promotores, desarrolladores y usuarios
debemos ser capaces de mantener un ritmo constante
de forma indefinida.
La atencin continua a la excelencia tcnica y al
buen diseo mejora la Agilidad.
La simplicidad, o el arte de maximizar la cantidad de
trabajo no realizado, es esencial.
Las mejores arquitecturas, requisitos y diseos
emergen de equipos auto-organizados.
A intervalos regulares el equipo reflexiona sobre
cmo ser ms efectivo para a continuacin ajustar y
perfeccionar su comportamiento en consecuencia.

Todas las metodologas que se consideran giles cumplen con el manifiesto


gil que no es ms que una serie de principios que se agrupan en 4 valores:
1.

Los individuos y su interaccin, por encima de los procesos y las


herramientas.

2.

El software que funciona, frente a la documentacin exhaustiva.

3.

La colaboracin con el cliente, por encima de la negociacin contractual.

4.

La respuesta al cambio, por encima del seguimiento de un plan.

Por lo tanto, lo que debemos tener claro es que:

Los principios Lean Startup se encargan de qu construir.

Las metodologas giles se encargan de cmo hacerlo.

Sinnimos de control

inspeccin, observacin, examen, comprobacin, registro


o

Antnimos: descuido, abandono

dominio, poder, autoridad, mando, gobierno, direccin


o

Antnimos: descontrol

'control' aparece tambin en las siguientes entradas:


comprobacin - verificacin - guardia - inspeccin - intervencin - revista - supervisin

Metodologas

METODO AGIL
ASD (ADAPTIVE SOFTWARE DEVELOPMENT)

1. INTRODUCCION

La tcnica de Adaptive software Development fue desarrollada por Jim Highsmith y


Sam Bayer a comienzos de 1990. Esta metodologa se adapta al cambio en lugar de
luchar contra l. Se basa en la adaptacin continua a circunstancias cambiantes. En
ella no hay un ciclo de planificacin-diseo-construccin del software, sino un ciclo
especular colaborar-aprender.

2. DEFINICION

El mtodo gil ASD (Adaptive Software Development) traducido en espaol significa


Desarrollo Adaptable de Software es un modelo de implementacin de patrones giles
para desarrollo de software. Al igual que otras metodologas giles, su funcionamiento
es cclico y reconoce que en cada iteracin se producirn cambios e incluso errores.

El desarrollo de software adaptable (Adaptive Software Development - ASD) es una


metodologa de desarrollo que hace nfasis en aplicar las ideas que se originaron en el
mundo de los sistemas complejos, adaptacin continua del proceso al trabajo.
3. CARACTERISITICAS

Sus principales caractersticas del ASD son:


Iterativo.
Orientado a los componentes de software (la funcionalidad que el
producto va a tener, caractersticas, etc.) ms que a las tareas en las que
se va a alcanzar dicho objetivo.
Tolerante a los cambios.
Guiado por los riesgos
La revisin de los componentes sirve para aprender de los errores
y volver a iniciar el ciclo de desarrollo
4. CICLO DE VIDA
ASD utiliza un "cambio orientado hacia el ciclo de vida", que tiene tres componentes
que son: especular colaborar y aprender.

Especular
Una primera fase de iniciacin para establecer los principales objetivos y metas del
proyecto en su conjunto y comprender las limitaciones (zonas de riesgo) con las que
operar el proyecto.
En ASD se realizan estimaciones de tiempo sabiendo que pueden sufrir desviaciones.
Sin embargo, estas son necesarias para la correcta atencin de los trabajadores que se
mueven dentro de plazos de forma que puedan priorizar sus tareas.
Se decide el nmero de iteraciones para consumir el proyecto, prestando atencin a las
caractersticas que pueden ser utilizadas por el cliente al final de la iteracin. Son por
tanto necesarios, marcar objetivos prioritarios dentro de las mismas iteraciones.
Estos pasos se puede volver a examinar varias veces antes de que el equipo y los
clientes estn satisfechos con el resultado.
Colaborar
Es la fase donde se centra la mayor parte del desarrollo manteniendo una componente
cclica. Un trabajo importante es la coordinacin que asegure que lo aprendido por un
equipo se transmite al resto y no tenga que volver a ser aprendido por los otros
equipos.
Aprender
La ltima etapa termina con una serie de ciclos de colaboracin, su trabajo consiste en
capturar lo que se ha aprendido, tanto positivo como negativo. Es un elemento crtico
para la eficacia de los equipos.
Jim Highsmith identifica cuatro tipos de aprendizaje en esta etapa:

Calidad del producto desde un punto de vista del cliente. Es la nica medida
legtima de xito, pero adems, dentro de las metodologas giles, los clientes tienen
un valor importante.
Calidad del producto desde un punto de vista de los desarrolladores. Se trata
de la evaluacin de la calidad de los productos desde un punto de vista tcnico.
Ejemplos de esto incluyen la adhesin a las normas y objetivos conforme a la
arquitectura.
La gestin del rendimiento. Este es un proceso de evaluacin para ver lo que se ha
aprendido mediante el empleo de los procesos utilizados por el equipo.
Situacin del proyecto. Como paso previo a la planificacin de la siguiente iteracin
del proyecto, es el punto de partida para la construccin de la siguiente serie de
caractersticas.

5. VENTAJAS Y DESVENTAJAS
Ventajas

La tercera fase del ciclo de vida, revisin de los componentes, sirve para
aprender de los errores y volver a iniciar el ciclo de desarrollo.

Apunta hacia el Rapid Application Development (RAD), el cual enfatiza


velocidad de desarrollo para crear un producto de alta calidad, bajo
mantenimiento involucrando al usuario lo ms posible.

Utiliza informacin disponible acerca de cambios para mejorar el


comportamiento del software.

Promulga colaboracin, la interaccin de personas.

Anticipa cambios y trata automticamente con ellos dentro de un programa en


ejecucin, sin la necesidad de un programador.

Desventajas

Aunque el ciclo entre el aprendizaje y la especulacin es bueno permitindonos


entregar productos con alta calidad, la prolongacin de dicho ciclo por errores o
cambios que no son detectados en reuniones anteriores afecta tanto a la
calidad del producto como a su costo total.

Dado a que es una metodologa gil implica no realizar procesos que son
requeridos en las metodologas tradicionales o por lo menos no realizarlos en
procesos diferentes, lo cual implica que empresas grandes las cuales necesitan
llevar un mayor control a procesos y personas, tener tareas asignadas a un
estado o proceso especifico, y en las cuales dicho incremento de procesos no
afectan en gran medida al costo final del producto, para dichas empresas el
elegir una metodologa tradicional resulta mucho mas rentable tanto por el gran
volumen de personal, de productos, y de costos que se manejan y para los
cuales se tendr un mayor control.

6. CONCLUSION
Es un concepto que se puede usar en las empresas cambiantes como lo son las
vendedoras de productos al menudeo, que donde cada da estn rotando sus
necesidades de acuerdo a la oferta y demanda, en este tipo de desarrollo es probable
que el cliente este pidiendo adecuaciones continuamente, el ciclo de vida de esta
metodologa es dirigible y fcil de implementar
Usado de manera adecuada esta metodologa (Adaptive Software Development) se
puede alcanzar excelentes resultados pero debido a las caractersticas que maneja
es mas factible usarla para proyectos pequeos y medianos, para adquirir practica
y experiencia para as poder llegar al Rapid Application Development (RAD)en
donde tendremos productos de alta calidad.

Cristal Clear
Ventajas

Se centra principalmente en la Criticidad y el tama?o del equipo, lo que ayuda en la definicin y


control del sistema.

El equipo puede reducir artefactos intermedios a medida que se produzca cdigo funcional y se
usen canales de comunicacin ms ptimos.

El factor principal para Crystal es el equipo de trabajo y la comunicacin.

Crystal Clear propone gran cantidad de tcnicas y estrategias que se puede seguir para aplicar esta
metodologa dependiendo del tipo de sistema que se requiere desarrollar

Desventajas

Cuando se cre Crystal Clear se pensaba proporcionar un mtodo ligero; comparado con XP, sin
embargo, resulto muy pesado. Esta metodologa es ms fcil de aprender e implementar; pero XP
es ms disciplinado.

Como no es una metodologa rgida, dejando abierta la posibilidad de agregar y suprimir fases, productos,
estrategias, tcnicas que pueden afectar en el desarrollo del sistema

Son un conjunto de metodologas para el desarrollo de software caracterizadas


por estar centradas en las personas que componen el equipo (de ellas depende
el xito del proyecto) y la reduccin al mximo del nmero de artefactos
producidos. El desarrollo de software se considera un juego cooperativo de
invencin y comunicacin, limitado por los recursos a utilizar. El equipo de
desarrollo es un factor clave, por lo que se deben invertir esfuerzos en mejorar
sus habilidades y destrezas, as como tener polticas de trabajo en equipo
definidas. Estas polticas dependern del tamao del equipo.

Principios del DSDM


Hay 9 principios subyacentes al DSDM consistentes en cuatro fundamentos y
cinco puntos de partida para la estructura del mtodo. Estos principios forman
los pilares del desarrollo mediante DSDM.
Involucrar al cliente es la clave para llevar un proyecto eficiente y
efectivo, donde ambos, cliente y desarrolladores, comparten un entorno
de trabajo para que las decisiones puedan ser tomadas con precisin.
El equipo del proyecto debe tener el poder para tomar decisiones que
son importantes para el progreso del proyecto, sin esperar aprobacin de
niveles superiores.
DSDM se centra en la entrega frecuente de productos, asumiendo que
entregar algo temprano es siempre mejor que entregar todo al final. Al
entregar el producto frecuentemente desde una etapa temprana del
proyecto, el producto puede ser verificado y revisado all donde la
documentacin de registro y revisin puede ser tenida en cuenta en la
siguiente fase o iteracin.
El principal criterio de aceptacin de entregables en DSDM reside en
entregar un sistema que satisface las actuales necesidades de
negocio. No est dirigida tanto a proporcionar un sistema perfecto que
resuelva todas las necesidades posibles del negocio, si no que centra sus

esfuerzos en aquellas funcionalidades crticas para alcanzar las metas


establecidas en el proyecto/negocio.
El desarrollo es iterativo e incremental, guiado por la realimentacin
de los usuarios para converger en una solucin de negocio precisa.
Todos los cambios durante el desarrollo son reversibles.
El alcance de alto nivel y los requerimientos deberan ser base-lined
antes de que comience el proyecto.
Las pruebas son realizadas durante todo el ciclo vital del proyecto.
Esto tiene que hacerse para evitar un caro coste extraordinario en
arreglos y mantenimiento del sistema despus de la entrega.
La comunicacin y cooperacin entre todas las partes interesadas
en el proyecto es un prerrequisito importante para llevar un proyecto
efectivo y eficiente.
DSDM tambin se apoya en otros principios (tambin llamadas asunciones).
Ningn sistema es construido a la perfeccin en el
primer intento (El principio de pareto - regla 80/20). En
el proceso de desarrollar un sistema de informacin, el
80% del beneficio de la empresa proviene del 20% de los
requisitos
del
sistema,
as
DSDM
comienza
implementando primero este 20% de requisitos para
cumplir con el 80% de las necesidades de la empresa, lo
que es suficientemente bueno tanto en cuanto los
usuarios estn nitmamente involucrados en el proceso
de desarrollo y en una posicin de asegurar que el 20%
restante no causar serias consecuencias al negocio.
Implementar la totalidad de requerimientos a menudo
causa que un proyecto supere plazos y presupuestos, as
la mayora de las veces es innecesario construir la
solucin perfecta.
La entrega del proyecto debera ser a tiempo,
respetando presupuestos y con buena calidad.

DSDM solo requiere que cada paso del desarrollo


se complete lo suficiente como para que empiece
el siguiente paso. De este modo una nueva iteracin
del proyecto puede comenzar sin tener que esperar a
que la previa se complete enteramente. Y con cada
nueva iteracin el sistema se mejora incrementalmente.
Recurdese que las necesidades del negocio cambian
constantemente y a cualquier ritmo con el tiempo.
Ambas tcnicas de Desarrollo y
proyectos estn incluidas en DSDM.

Gestin

del

Adems de desarrollar nuevos SI, DSDM puede ser


usado tambin en proyectos de ampliacin de
sistemas TI actuales o incluso en proyectos de
cambio no relacionados con las TI.
La Evaluacin de riesgos debiera centrarse en
entregar funcin de negocio, no en el proceso de
construccin.
La gestin recompensa la entrega de productos ms
que la consecucin de tareas.
La Estimacin debera estar basada en
la
funcionalidad del negocio en lugar de lneas de
cdigo.

Qu es SCRUM
Scrum es un proceso en el que se aplican de manera regular un conjunto
de buenas prcticas para trabajar colaborativamente, en equipo, y obtener
el mejor resultado posible de un proyecto. Estas prcticas se apoyan unas a
otras y su seleccin tiene origen en un estudio de la manera de trabajar de
equipos altamente productivos.
En Scrum se realizan entregas parciales y regulares del producto final,
priorizadas por el beneficio que aportan al receptor del proyecto. Por ello,
Scrum est especialmente indicado para proyectos en entornos complejos,
donde se necesita obtener resultados pronto, donde los requisitos son

cambiantes o poco definidos, donde la innovacin, la competitividad, la


flexibilidad y la productividad son fundamentales.
Scrum tambin se utiliza para resolver situaciones en que no se est
entregando al cliente lo que necesita, cuando las entregas se alargan
demasiado, los costes se disparan o la calidad no es aceptable, cuando
se necesita capacidad de reaccin ante la competencia, cuando la moral
de los equipos es baja y la rotacin alta, cuando es necesario identificar
y solucionar ineficiencias sistemticamente o cuando se quiere trabajar
utilizando un proceso especializado en el desarrollo de producto.
Ver en detalle cuales son los beneficios de Scrum, sus fundamentos y sus requisitos.

El proceso
En Scrum un proyecto se ejecuta en bloques temporales cortos y fijos (iteraciones que
normalmente son de 2 semanas, aunque en algunos equipos son de 3 y hasta 4
semanas, lmite mximo de feedback y reflexin). Cada iteracin tiene que
proporcionar un resultado completo, un incremento de producto final que sea
susceptible de ser entregado con el mnimo esfuerzo al cliente cuando lo solicite.

El proceso parte de la lista de objetivos/requisitos priorizada del producto, que acta


como plan del proyecto. En esta lista el cliente prioriza los objetivos balanceando

el valor que le aportan respecto a su coste y quedan repartidos en iteraciones y


entregas.
Las actividades que se llevan a cabo en Scrum son las siguientes:
Planificacin de la iteracin
El primer da de la iteracin se realiza la reunin de planificacin de la iteracin. Tiene
dos partes:
1.

Seleccin de requisitos (4 horas mximo). El cliente presenta al equipo la


lista de requisitos priorizada del producto o proyecto. El equipo pregunta al cliente las
dudas que surgen y selecciona los requisitos ms prioritarios que se compromete a
completar en la iteracin, de manera que puedan ser entregados si el cliente lo solicita.

2.

Planificacin de la iteracin (4 horas mximo). El equipo elabora la lista de


tareas de la iteracin necesarias para desarrollar los requisitos a que se ha
comprometido. La estimacin de esfuerzo se hace de manera conjunta y los miembros
del equipo se autoasignan las tareas.
Ejecucin de la iteracin
Cada da el equipo realiza una reunin de sincronizacin (15 minutos mximo).
Cada miembro del equipo inspecciona el trabajo que el resto est realizando
(dependencias entre tareas, progreso hacia el objetivo de la iteracin, obstculos que
pueden impedir este objetivo) para poder hacer las adaptaciones necesarias que
permitan cumplir con el compromiso adquirido. En la reunin cada miembro del equipo
responde a tres preguntas:

Qu he hecho desde la ltima reunin de sincronizacin?

Qu voy a hacer a partir de este momento?

Qu impedimentos tengo o voy a tener?


Durante la iteracin el Facilitador (Scrum Master) se encarga de que el equipo pueda
cumplir con su compromiso y de que no se merme su productividad.

Elimina los obstculos que el equipo no puede resolver por s mismo.


Protege al equipo de
compromiso o su productividad.

interrupciones

externas

que

puedan

afectar

su

Durante la iteracin, el cliente junto con el equipo refinan la lista de requisitos


(para prepararlos para las siguientes iteraciones) y, si es necesario, cambian o
replanifican los objetivos del proyecto para maximizar la utilidad de lo que se
desarrolla y el retorno de inversin.
Inspeccin y adaptacin

El ltimo da de la iteracin se realiza la reunin de revisin de la iteracin. Tiene dos


partes:
1.

Demostracin (4 horas mximo). El equipo presenta al cliente los requisitos


completados en la iteracin, en forma de incremento de producto preparado para ser
entregado con el mnimo esfuerzo. En funcin de los resultados mostrados y de los
cambios que haya habido en el contexto del proyecto, el cliente realiza las
adaptaciones necesarias de manera objetiva, ya desde la primera iteracin,
replanificando el proyecto.

2.

Retrospectiva (4 horas mximo). El equipo analiza cmo ha sido su manera de


trabajar y cules son los problemas que podran impedirle progresar adecuadamente,
mejorando de manera continua su productividad. El Facilitador se encargar de ir
eliminando los obstculos identificados.

También podría gustarte