Da circa un decennio hanno cambiato il nostro modo di vivere, ma molti di noi non saprebbero più separarsene. Stiamo parlando delle app: utili, pratiche, divertenti, che fanno ormai parte integrante della nostra vita quotidiana.
Definizione di App
La parola app è una forma abbreviata di “applicazione”. Di per sé, il termine può essere utilizzato per indicare qualsiasi programma, indipendentemente dal supporto su cui è utilizzato. Nell’uso quotidiano, però, ci si riferisce con questa parola soprattutto alle app mobile, quindi a quelle per cellulari e tablet.
Questi piccoli software condividono alcune caratteristiche particolari. Generalmente sono leggeri (pesano pochi MB) e sono strutturati per garantire un’esperienza di utilizzo il più semplice e intuitiva possibile.
Realizzazione App: le varie tipologie
A livello tecnico, le principali tipologie di app sono tre: native, web e ibride.
- App native: sono sviluppate appositamente per un certo sistema operativo, utilizzando il linguaggio di programmazione più adatto per quest’ultimo. Attualmente, i due principali sistemi operativi mobile sono iOs per i dispositivi Apple e Android per la maggior parte degli altri device. Un’app nativa è un vero e proprio programma, che deve essere installato acquistandolo da uno store di app;
- Web app: sono una sorta di collegamento ad un’applicazione, che però non è fisicamente installata sul dispositivo, ma è resa accessibile tramite un browser internet (Chrome, Safari etc.);
- App ibride: sono una via di mezzo tra le webapp e le app native; hanno una velocità di realizzazione più alta e questo le rende la scelta ideale per lo sviluppo di prototipi di applicazioni, prima di lanciarle in versioni “native” per tutti i sistemi operativi.
Metodi di realizzazione App: il metodo Scrum
Per realizzare un’app ci sono diversi modi diversi tra loro. Uno di questi è il Metodo Scrum. Ma quale è il significato di tale termine?
Scrum è un framework agile per la gestione del ciclo di sviluppo del software, concepito per gestire progetti e prodotti software o applicazioni di sviluppo, creato e sviluppato da Ken Schwaber e Jeff Sutherland. Scrum rende chiara l’efficacia relativa del proprio product management e delle proprie pratiche di sviluppo così da poterle migliorare. Inoltre, enfatizza tutti gli aspetti di gestione di progetto legati a contesti in cui è difficile pianificare in anticipo. Vengono utilizzati meccanismi propri di un “processo di controllo empirico”, in cui cicli di feedback che ne costituiscono le tecniche di management fondamentali risultano in opposizione alla gestione basata sul concetto tradizionale di command and control.
Il termine Scrum, in quanto applicato allo sviluppo di prodotti, è stato per la prima volta utilizzato in “New New Product Development Game” e successivamente elaborato in “The Knowledge Creating Company”, entrambi testi di Ikujiro Nonaka e Hirotaka Takeuchi.
App to You conduce il progetto di realizzazione app proprio attraverso il metodo Scrum. E lo fa dividendo lo stesso progetto in User Stories. Ciò rappresenta senz’altro un elemento differenziante di realizzazione dell’app rispetto a tutti gli altri competitors.
Il metodo Scrum pensato come metafora
La metodologia SCRUM aiuta il cliente ad arrivare all’obiettivo il prima possibile.
Nello specifico, proponendo una metafora, immaginiamo che il cliente voglia andare a pesca, e voglia andarci con uno yacth.
Ora, l’approccio del project management classico, il metodo waterfall, prevede che il cliente possa andare a pesca solo una volta terminata la costruzione dello yacth. Da quando il cliente esprime la sua esigenza ed il momento in cui può materialmente andare a pesca passa quindi del tempo, mesi o forse anni.
Con la metodologia SCRUM cambia tutto. Non si aspetta più il termine definitivo del progetto ma si danno intanto gli strumenti per soddisfare l’esigenza del cliente. Il cliente vuole andare a pesca? Bene, in primis allora avrà bisogno di poter andare in acqua. Il primo obiettivo sarà quindi costruire una zattera, così che possa intanto andare a pescare; alla zattera poi saranno aggiunti i remi, poi le vele, poi il motore.
Fino ad arrivare allo yacth.
Che ci siano voluti mesi, o addirittura anni, il cliente fin da subito è potuto andare a pesca, soddisfacendo quindi la sua esigenza principale.
Questo è il grande vantaggio dello SCRUM. Ogni storia, infatti, si focalizza sul descrivere cosa fare, per chi e perché deve essere fatto. Comprensibile al tecnico e al cliente nella stessa maniera.
La metodologia SCRUM, combinata con l’user story, fornisce così un triplice vantaggio per la realizzazione app:
- Permette una customizzazione e una modularità al progetto: ogni User Story sarà infatti potenzialmente pubblicabile e sarà il cliente che potrà sceglierne l’ordine in base a priorità aziendali/strategiche;
- Permette un controllo accurato in ogni passaggio; alla fine di ogni User Story il cliente verrà infatti chiamato ad analizzarla e valutarla, prima di procedere con la successiva;
- Permette di corrispondere il saldo solo in relazione alle User Stories scelte; a completamento di una User Story sarà corrisposto il saldo della successiva.