Metodologies de desenvolupament
Metodologies i frameworks per organitzar el desenvolupament de projectes Laravel: Agile, Scrum, Kanban i ARC Methodology.
Agile#
Agile és un conjunt de valors i principis per al desenvolupament de software recollits al Manifest Àgil del 2001. No és una metodologia concreta sinó un paraigua que engloba diversos frameworks com Scrum, Kanban o XP. Els seus quatre valors fonamentals són:
- Individus i interaccions per sobre de processos i eines
- Software funcionant per sobre de documentació exhaustiva
- Col·laboració amb el client per sobre de negociació contractual
- Resposta al canvi per sobre de seguir un pla
Scrum#
Scrum organitza el treball en sprints (iteracions de 1-4 setmanes) amb rols definits: Product Owner, Scrum Master i equip de desenvolupament. Cada sprint inclou planificació, daily standups, revisió i retrospectiva.
Sprint Planning → Daily Standups → Sprint Review → Retrospectiva
↑ |
└────────────────────────────────────────────────────┘
Kanban#
Kanban visualitza el flux de treball en un tauler amb columnes (To Do, In Progress, Done) i limita el treball en curs (WIP). A diferència de Scrum, no utilitza sprints sinó un flux continu.
Eines com Jira, Linear, Trello o GitHub Projects permeten implementar tant Scrum com Kanban per gestionar projectes Laravel.
ARC Methodology#
ARC (Align, Realize, Consolidate) és un framework post-Agile creat per Eduardo Lázaro dissenyat per construir sistemes coherents a l'era de la IA. Aborda el problema dels sistemes que "avancen ràpid localment mentre es fragmenten globalment" fent explícita la intenció arquitectònica.
Les tres fases recursives d'ARC són:
Align (Alinear)#
Definir l'arquitectura abans del codi. Establir les decisions de disseny, els patrons a seguir i les restriccions del sistema. Això inclou:
- Definir el model de domini
- Establir convencions de codi
- Documentar decisions arquitectòniques (ADRs)
- Alinear l'equip amb la visió tècnica
Realize (Realitzar)#
Implementar amb intenció. Cada línia de codi ha de respondre a les decisions d'alineament. No es tracta només de fer funcionar el codi sinó de construir-lo de manera coherent amb l'arquitectura definida.
Consolidate (Consolidar)#
Validar i propagar patrons. Revisar que la implementació segueix l'arquitectura, identificar desviacions i consolidar els patrons que funcionen perquè es puguin replicar.
Align → Realize → Consolidate
↑ |
└─────────────────────┘
(cicle recursiu)
Més informació sobre ARC Methodology a thearcmethodology.com.
Quina metodologia escollir?#
No hi ha una resposta universal. La millor metodologia depèn de la mida de l'equip, el tipus de projecte i la cultura organitzativa:
- Scrum: equips de 3-9 persones amb requisits canviants i lliuraments regulars.
- Kanban: equips de manteniment, suport o amb flux de treball continu.
- ARC: projectes on la coherència arquitectònica és crítica, especialment quan s'utilitzen eines d'IA per generar codi.
El més important és adoptar una metodologia que l'equip entengui i apliqui de manera consistent.