Agile es un grup de metodologies de desenvolupament de Software basat en desenvolupaments iteratius, on els requeriments i solucions evolucionen mitjançant la col·laboració entre equips multi-funcionals autoorganitzats.
Alguns dels principis del Agile Manifesto:
- Satisfacció del usuari mitjançant l’entrega rapida i continua de software útil
- El software desenvolupat s’entrega freqüentment, cada poques setmanes enlloc de mesos
- El software que es desenvolupa es la principal mesura del progrés
- Inclús canvis d’última hora de requeriments son benvinguts
- Cooperació diària i molt propera entre usuaris de negoci i desenvolupadors
- Conversacions cara a cara es la millor forma de comunicació (co-localització)
- Els projectes son construïts al voltant de individus motivats, els quals se’ls ha de donar la confiança
- Atenció constant a l’excel·lència tècnica i al bon disseny
- Simplicitat
- Equips autoorganitzats
- Adaptació constant a les circumstàncies canviants
El que més m’ha sorprès d’aquesta metodologia es que la seva manera de treballar es basa en fixar uns objectius a 15 dies del que cal desenvolupar. Aquesta funcionalitat ha d’estar emmarcada dintre del projecte a llar termini, es adir no es fa una cosa perquè si.
En aquests 15 dies s’ha de desenvolupar la funcionalitat i provar-la i ha d’estar llesta per passar la funcionalitat desenvolupada a producció. Al estar el equip de treball físicament junts, la interacció es constant entre desenvolupadors i usuaris de negoci.
Una altre dada interessant de la metodologia es que al estar desenvolupant petites funcionalitats, englobades dintre d’un projecte més global, si durant el transcurs del temps les prioritats canvien, es pot reorganitzar l’ordre de les prioritats o canviar els objectius del projecte a llarg termini.
Quantes vegades ens hem trobat que després de estar treballant durant mesos en un nou projecte, quan es fa l’entrega al usuari aquest manifesta que les seves prioritats han canviat i ara ja no l’interessa el que s’ha desenvolupat.
Amb aquesta metodologia s’haguessin pogut canviar els objectius del projecte durant el transcurs del mateix i fer entregues quinzenals de les funcionalitats que li son més urgents al usuari segons les seves últimes prioritats.
¿Es possible aplicar alguna de les metodologies Agile en projectes SAP?
En projectes d’implantació de SAP no veig factible utilitzar aquesta metodologia Agile. En canvi en projectes de manteniment i evolutius que tinguin una durada d’un parell de mesos si que veig possible i útil aquesta metodologia de treball.
Tot i veure-la útil, hi ha alguns aspectes que cal tenir presents:
- El desenvolupador ha de ser un funcional i desenvolupador expert per tal de construir solucions estables i escalables a mesura que evolucioni el projecte
- Els usuaris de negoci han de ser experts en els processos que volen millorar
- Cal comparar el cost que pot suposar aquesta metodologia de treball, amb equips autoorganitzats enfront els mètodes habituals de gestionar un ‘pool’ de demandes i realitzar-les segons les prioritats del global del usuaris.
- En projectes on han d’intervenir varis mòduls de SAP es fa difícil poder fer coincidir els equips de treball de les diferents àrees.
La prova definitiva per saber si aquesta metodologia Agile de treball es pot aplicar a SAP, i concretament en la nostra empresa es fer una prova, crear un equip de treball per un projecte d’un parell de mesos i veure que passa.
Durant el transcurs de la ‘prova’ s’hauria d’aplicar alguna de els metodologies Agile (Scrum, Extreme Programming) al peu de la lletra. Al final de la prova s’hauria d’avaluar els resultats tant des de la part tècnica de desenvolupament com des de la part dels usuaris de negoci.
¿Creieu que es pot aplicar alguna metodologia Agile en projectes SAP?