Studio di fattibilità
Raccolta e analisi dei requisiti
Progettazione
Codifica e test d'unità
Verifica e validazione
Sviluppo software
Innovationweb sviluppa software con approccio ingegneristico seguendo tutte le fasi del progetto, dalla raccolta dei requisiti fino al deployment.
Innovationweb è differente da altre software house perchè tende a realizzare soluzioni che si integrano tra loro non solo sul piano software ma anche su quello dei servizi e dell'infrastruttura di rete.
Alcuni dei nostri prodotti che abbiamo deciso di porre sul mercato sono: MakeBooking Hotel CRS, MakeWeb Hotel CMS, MakeWeb PRO CMS e MakeWeb PA CMS.
Studio di fattibilità
In questa fase si analizza la fattibilità del progetto in termini di costi, tempi di realizzazione e risorse da allocare, non solo infrastrutturali ma anche umane. Spesso esistono già delle soluzioni sul mercato relative al problema oggetto di studio. in tal caso occorre valutare se è conveniente comperare o realizzare il progetto.
Raccolta e analisi dei requisiti
La fase di analisi e raccolta dei requisiti analizza il dominio applicativo e i requisiti che il sistema deve avere. La corretta conoscenza del dominio applicativo, ovvero del problema e del contesto nel quale il sito dovrà operare, sono essenziali al fine di ottenere un prodotto di qualità.
Questa fase richiede un certo grado di interazione con l'utente e l'attenta analisi del preesistente al fine di cogliere tutte le informazioni necessarie a produrre il documento di analisi e specifica dei requisiti, conosciuto anche come documento ASR.
Per ottenere un documento ASR che sia il più possibile completo occorre applicare la regola delle 5 W: Who?, Why?, What?, Where?, When?.
La prima W, "chi userà il sistema?", cerca di individuare i diversi destinatari del sito. La seconda W domanda: "perché sviluppare il sistema e perché gli utenti dovrebbero utilizzarlo?".
Nel caso di HOTEL, la necessità di gestire e pubblicare in tempo reale le informazioni relative a sale, camere, promozioni di pacchetti soggiorno o benessere, news, nonché di disporre di un sistema di Booking On Line è la risposta sul perché sviluppare il sistema. Gli utenti sono invece i potenziali clienti che desiderano prenotare un soggiorno oppure usufruire di una promozione.
La terza W, "che cosa fornirà?", si occupa di definire quali sono i servizi e che cosa viene fornito con il sito. Nel caso di un Hotel i servizi messi a disposizione dei clienti sono la consultazione del sito stesso e la prenotazioni di camere o sale per meeting o matrimoni.
Le ultime due W, "dove verrà usato e per quale architettura?" e "quando e per quanto tempo verrà usato?", chiedono al progettista dove e quando il sito verrà utilizzato. Risulta evidente l'esigenza di un sistema efficiente e sicuro per la gestione del proprio sito, raggiungibile ed interrogabile da Internet, in grado di accumulare, mantenere e aggiornare le informazioni di interesse.
Progettazione
La fase di progettazione definisce l'architettura complessiva del sito. Anche se esistono diverse strategie progettuali, in linea generale, si tende a scomporre l'architettura complessiva del sistema in sottosistemi fino all'identificazione dei singoli moduli che compongono il sistema. L'approccio di suddividere il sistema in moduli è tipico dell'ingegneria del software. Ogni modulo realizza una funzionalità del tutto autosufficiente nella logica complessiva dell'applicazione.
E' questa logica modulare che consente alla suite MakeWeb di essere sia un CMS generico che un CMS specifico che dimostra di essere una eccellente soluzione tanto per gli Hotel che per la Pubblica Amministrazione.
Codifica e test d'unità
In questa fase curiamo l'implementazione del modulo usando il linguaggio scelto: ogni parte viene implementata e testata separatamente prestando particolare cura alla produzione della idonea documentazione sul modulo implementato e sull'attività di test. Questo approccio realizza moduli autosufficienti che andranno integrati allo scopo di produrre l'architettura complessiva del sito.
Successivamente si procederà all'attività di test di sistema suddiviso in alpha test (svolto dal team di sviluppo) e beta test (svolto da persone esterne al team di sviluppo).
Verifica e validazione
E' una fase essenziale che serve per comprendere se il sito o il prodotto che si stà costruendo corrisponde alle specifiche fornite mentre la validazione ci dice se stiamo costruendo il prodotto giusto rispetto alle attese dell'utente. A questo punto viene spontaneo chiedersi che cosa va verificato? Sicuramente il prodotto finale. Il prodotto finale risulta però funzione dei requisiti e del design. Volendo esprimere con una formula tale concetto potremmo dire che:
dove PF è IL prodotto finale da sottoporre a verifica, S è la specifica e D è il design o progetto. Quindi poiché il prodotto finale dipende da S, D occorrerebbe verificare anche queste attività intermedie. Inoltre la stessa attività di verifica dovrebbe essere verificata perché se questa venisse condotta con criteri errati o modalità scorrette non si otterrebbero comunque i risultati sperati. Occorre infine ricordare che anche il prodotto finale dovrà essere sottoposto a test di accettazione da parte del committente; in altre parole il committente si rende conto se ciò che è stato realizzato è la reale soluzione al suo problema oppure se occorre intervenire per modificare il prodotto realizzato.