En aquest article es realitza una reflexió sobre els diferents tipus de metodologies que s’utilitzen en els projectes i serveis de desenvolupament de programari (SW), tradicional, àgil i híbrida, fent especial focus en l’Administració Pública Espanyola. Partint de les tipologies més esteses, tradicional i àgil, s’aprofundeix en el concepte de metodologia híbrida, i com s’ha anat estenent gradualment, en recollir les bondats i beneficis de les metodologies tradicional i àgil, podent d’aquesta manera adaptar-se a les necessitats de cada organisme.
1. Diferents Metodologies de Desenvolupament Programari en la AAPP: introducció
Avui dia existeixen un gran nombre de metodologies per a l’execució de diferents tipus de projectes, no obstant això, abans d’entrar a detall en cadascuna d’elles, és important emfatitzar i tenir clar el significat de metodologia. Segons la Reial Acadèmia Espanyola, una metodologia és un “conjunt de mètodes que se segueixen en una recerca científica o en una exposició doctrinal”.
Pel que, en utilitzar una metodologia de programari, el que obtindrem és un conjunt de pràctiques i eines que facilitin el procés de desenvolupament, amb la finalitat d’obtenir un producte amb alta qualitat, assegurança i sobretot que satisfaci les expectatives del client.
Actualment, existeixen molts tipus de metodologies en el mercat, que es divideixen en dos tipus principals: tradicionals i àgils. No obstant això, les metodologies híbrides, estan marcant una nova tendència en el desenvolupament de programari, considerant i combinant les millors característiques de totes dues metodologies. Amb el que ens porta a fer-nos una sèrie de preguntes: Quina és la diferència entre la metodologia tradicional i àgil? Quina és la millor metodologia a utilitzar en les Administracions Públiques? Què és la metodologia híbrida? Aquestes preguntes seran respostes en els següents apartats.
2. Metodologies de desenvolupament del software
Quan parlem de metodologies de desenvolupament de software, és important diferenciar les famílies metodològiques que existeixen, entre les quals destaquem metodologies tradicionals, àgils i híbrides.
Metodologies Tradicionals
Se centren especialment en el control del procés, establint rigorosament les activitats involucrades, l’abast del projecte, els lliurables a generar i les eines i seguiment que s’utilitzarà. En aquest context, adquireix gran importància la documentació generada en cadascuna de les fases del procés de desenvolupament del SW. No obstant això, perquè aquestes metodologies funcionin, es requereix un alt grau de disciplina en el compliment de terminis en cadascuna de les fases. A més, no es té una resposta ràpida a canvis i es genera moltes vegades documentació innecessària. Exemple d’aquestes metodologies són: RUP (Rational Unified Process), OMT (Object Modeling Technique) i Mètrica V3.
Metodologies Àgils
Estan basades en processos iteratius i de curta durada. Presenten respostes ràpides i efectives al canvi. Tenen un pla de projecte flexible, tractant de buscar i aportar valor des de l’inici del projecte, duent a terme una evolució continuada del producte, centrant-se principalment en la satisfacció de l’usuari. A vegades la documentació generada no té el detall necessari i fa ús de mètodes menys formals que en les metodologies tradicionals. Exemples d’aquestes metodologies, són: Scrum, XP (extremi Programming) i Cristall Methods.
Metodologies Híbrides
Combinen les millors pràctiques de les metodologies tradicionals i àgils, incorporant els avantatges d’ambdues.
L’ús d’aquestes metodologies s’ha anat incrementant de manera gradual, ja que s’adapten a la cultura i necessitats de cada organisme, generant un increment de productivitat. Alguns exemples d’aquesta mena de metodologia són: EssUP (Essencial Unified Process), la combinació de Cascada i Scrum i SXP (Scrum i XP).
Entre els beneficis de l’ús de la metodologia híbrida, podem trobar:
- Simple i fàcil d’entendre i usar.
- Millora contínua exponencial.
- Flexibilitat a canvis dins d’un abast de pressupost definit.
Hem de tenir en compte que en una mateixa organització poden conviure més d’una mena de metodologia, sobre la base d’una sèrie de criteris, entre els quals podem destacar:
- Criteris Interns: el nivell de maduresa de l’organització, la naturalesa del projecte, els interessats, els processos i la tecnologia a utilitzar.
- Criteris Externs: les expectatives i requisits dels agents externs que participen en els diferents processos de l’organització.
3. Les metodologies en l’Administració Pública
Tradicionalment, en el sector públic espanyol, la majoria dels projectes de desenvolupament de SW s’han dut a terme sota metodologia tradicional, i encara que l’adopció de metodologies àgils, tipus Scrum, s’està incrementant de manera notable, la seva implantació ha estat més lenta, en comparació amb el sector privat.
La naturalesa i cultura pròpia de les grans organitzacions, juntament amb la complexitat organitzativa i procedimental de les Administracions Públiques ha generat que l’adopció tècnica i organitzativa d’aquesta mena de metodologies no sigui un procés precisament àgil, i que hàgim de plantejar-nos escenaris a mitjà termini, començant per pilots fitats, l’èxit dels quals permetrà estendre la mateixa filosofia a la resta de l’organització.
Fins i tot seguint aquesta estratègia d’implantació gradual, ens trobem amb dificultats que una implantació “pura” de metodologia àgil no és capaç de sortejar en certes organitzacions, o almenys en un temps raonable (possibilitat de dedicació del personal de l’organisme, processos del cicle de vida del SW que no confessen amb la filosofia àgil, etc.). Per això la implantació de metodologies híbrides, com a solució temporal o definitiva, s’està erigint en una alternativa molt adequada per a certes organitzacions.
Per això, s’ha analitzat la viabilitat de combinar metodologies de desenvolupaments àgils i metodologies tradicionals, donant com a resultat una metodologia híbrida. En aquest sentit, AXPE Consulting ha desenvolupat una metodologia híbrida, on combinem el millor de Mètrica V3, Scrum i les bones pràctiques de Kanban. La gestió de projectes híbrida requereix un pla de projecte complet, però els detalls específics de cada sprint no es defineixen fins que es completi el primer sprint. AXPE Consulting ha desenvolupat el marc complet d’aquesta metodologia on, en cadascuna de les fases del cicle de vida de desenvolupament del SW es detallen les tasques a realitzar amb cada tipus de metodologia.
AXPE Consulting disposa d’una àmplia experiència en la implantació de solucions amb diferents metodologies de desenvolupament, posant a la disposició de les diferents administracions públiques el nostre coneixement en tot el procés, des de la selecció de la metodologia més adequada (tradicional, àgil o híbrida) passant per l’adopció inicial, fins a la seva implantació en els diferents projectes de l’organització, per mitjà d’un exhaustiu coneixement tècnic i una adequada gestió del canvi.