Da sviluppatore vecchia scuola, iniziando l’attività negli anni ’90 dopo la laurea in Ingegneria Informatica, era abitudine seguire la metodologia RUP (Rational Unified Process), standard proposto unanimemente per migliorare l’intera attività di sviluppo software.
Sicuramente, il passare dalla modalità “di navigazione a vista” alla metodologia Rational era un grosso passo avanti, soprattutto lavorando in Siemens dove le risorse erano tante e si aveva il tempo di pianificare l’attività di progettazione del software.
La metodologia RUP, tuttavia, avrebbe cominciato a mostrare i sui limiti negli anni seguenti, quando, tra la fine degli anni ’90 e gli anni 2000, sono cominciate a mutare molte prospettive nel campo della progettazione delle applicazioni software, con uno spostamento del focus che vede sempre più il software come onnipresente e pervasivo.
Qualunque azienda ha cominciato ad introdurre i software per le proprie attività, a partire dai primi gestionali fino agli attuali CRM (Customer Relationship Management) ed ERP (Enterprise Resource Planning). E per quanto un osservatore esterno potrebbe ingenuamente ipotizzare che ogni frontiera sia ormai stata raggiunta e superata, proprio per la grande diffusione delle applicazioni è oggi tanto più necessario produrre personalizzazioni o porting, oltre alla normale manutenzione delle applicazioni esistenti.
Ebbene, con queste nuove necessità la metodologia RUP ha finito per risultare oggi sempre più “sovradimensionata“, più adatta alle grandi aziende e ai grandi progetti piuttosto che alle Pmi. Il cliente tipico della Pmi, infatti, ha bisogno del software per necessità: interessa poco che il prodotto finale integri una certa tecnologia o meno, l’importante è che sia solo facile da usare e che funzioni. In questo senso la metodologia RUP risulta pesante e proporzionata.
Da punto di vista degli sviluppatori potrebbe sembrare una lacuna non ricorrere all’ultima versione di un certo prodotto, addirittura denunciando tale mancanza al cliente stesso! Il punto chiave, però, è che azienda e piccolo imprenditore hanno una diversa ottica e soprattutto perseguono risultati differenti, con una logica costi-benefici chiara e inequivocabile.
Nel 2001, quindi, con la pubblicazione dell’Agile Manifesto inizierà quel movimento che viene oggi chiamato Movimento Agile e che tanto bene risponde alle rinnovate esigenze di sviluppo software per le piccole realtà d’impresa. In parole semplici, la metodologia agile sta allo sviluppo software come la metodologia del “Just in time” sta alla pianificazione industriale.
Ricordo ancora una delle prime, accese, discussioni dove difendevo il RUP e un collega me lo smontava pezzo per pezzo: sembrava assurdo all’epoca che potesse esserci un modo per sviluppare progetti in gruppo senza che si formalizzasse alcuno dei fondamenti del RUP. Un limite di chi aveva usato per oltre dieci anni i “vecchi metodi”.
Articolo dai contenuti frutto di esperienza che mi aiuta a capire alcuni passaggi del mio lavoro.
Veramente un ottimo articolo, che spiega con chiarezza e sintesi i principi della metodologia Agile.
Complimenti e Ciao.