Il processo di Noema

Il processo adottato da Noema STI nasce dall'esperienza del RUP (Rational Unified Process) ed è il frutto di un know-how acquisito affrontando diverse tipologie di progetto.

L'abilità di Noema STI consiste proprio nel modellare e configurare opportunamente il processo in funzione delle singole esigenze specifiche richieste dal progetto.

Si tratta di un processo iterativo guidato dai casi d'uso e finalizzato allo sviluppo di soluzioni software innovative ed efficaci, di cui Noema ha raffinato l'aspetto web-oriented.
Grazie alla consistenza e alla qualità del suo processo aziendale, Noema riesce ad assistere al meglio il cliente dall'inizio del progetto fino al lancio dello stesso sul mercato, mettendo a sua disposizione un'azienda organizzata con spiccate doti tanto nello sviluppo applicativo che nella consulenza di progetto.

Usare un processo consistente, un vocabolario comune e una roadmap condivisa col cliente ne incrementa l'efficacia, permettendo di concentrarsi maggiormente sull'esigenza del cliente.

Le quattro fasi del processo di Noema, ispirate al RUP, per la gestione di un progetto software

Il modello iterativo

Il processo di Noema STI si svolge, analogamente al RUP, seguendo quattro fasi principali, caratterizzate da iterazioni successive interne e esterne condivise con il cliente.

Ogni iterazione produce un sistema in crescita, grazie alla realizzazione di nuovi casi d'uso prioritari per le esigenze del cliente o per criticità architetturali.
Il cliente può così seguire costantemente lo stato di avanzamento del progetto, partecipando attivamente all'evoluzione dello stesso.

Sviluppare software iterativamente

Modello iterativo vs. modello a cascata

Il modello iterativo, rispetto al tradizionale modello a cascata, offre diversi vantaggi:

  • Permette di gestire il cambiamento dei requisiti in corso d'opera.
  • Gli elementi vengono integrati progressivamente e in quantità contenute, a differenza di una unica fase di integrazione finale, una sorta di "big-bang" dalle conseguenze note.
  • I rischi vengono scoperti e risolti preventivamente, attenuandone o annullandone l'effetto negativo.
  • Abbassamento dei costi di gestione degli errori applicativi.
  • I test sono eseguiti costantemente in ogni iterazione, aumentando la qualità del software prodotto, permettendo di valutare con precisione lo stato di avanzamento e suddividendo in maniera uniforme il carico di lavoro.
  • Agevolazione dell'acquisizione di competenze del gruppo di lavoro.
  • Agevolazione delle strategie di marketing del prodotto.

Le fasi

  1. Una prima fase di Ideazione permette di analizzare il progetto nel suo complesso e di affrontarne, mediante la realizzazione di opportuni prototipi, gli aspetti più critici e che possono comportare i maggiori rischi, quando è ancora possibile attaccarli e reagire in maniera tempestiva ed efficiente. Il focus di questa fase è rivolto alla formalizzazione dei principali casi d'uso. Si stabiliscono i tempi e il peso delle varie fasi, formalizzandole mediante un piano di progetto che preveda delle scadenze per le diverse milestone di rilascio.
  2. Nella fase di Elaborazione viene analizzata l'architettura della l'applicazione: l'utilizzo di prototipi e di relativi test aiuta a individuare le problematiche più complesse che si dovranno affrontare. Anche la documentazione relativa all'architettura del software e alla realizzazione dei casi d'uso sarà sottoposta ad aggiornamenti iterativi durante lo svolgimento del progetto.
  3. Durante la fase di Costruzione, invece, si procede con la vera e propria implementazione progettuale, parallelamente a una costante attività di test, basandosi sulla documentazione di analisi sin qui prodotta. I piani di deployment e la campagna di marketing vengono messi a punto, mentre le funzionalità e le qualità dell'applicazione crescono fino allo stadio desiderato.
  4. Infine la fase di Transizione si preoccupa di confezionare l'applicazione per il cliente, concentrandosi sull'attività di test e ottimizzando, dove necessario, le funzionalità anche a livello di performance. La fase di costruzione si conclude con la milestone di rilascio del prodotto, che conclude l'intero ciclo di sviluppo della prima generazione del software.

La disponibilità di Noema prosegue anche con un'assistenza post-vendita che coinvolge il cliente nel corretto utilizzo dell'applicazione, mediante un'attività di manutenzione svolta dalle stesse figure professionali che hanno partecipato allo sviluppo dell'applicazione.

Quest'attività gioca un ruolo fondamentale nell'evoluzione del prodotto nei suoi successivi cicli evolutivi, che può sfociare in una nuova sequenza di ideazione, elaborazione, costruzione e transizione, con un diverso peso assegnato alle singole fasi, per migliorare - o, in caso di modifiche sostanziali, versionare - il prodotto.