Il metodo
Invisiblefarm

Lean Thinking

Aderiamo alla filosofia Lean Thinking: un metodo operativo caratterizzato dall’esaltazione della produzione snella e dalla riduzione degli sprechi, per lo sviluppo dei nostri software. Abbiamo le potenzialità per ridurre il superfluo e il rischio di fallimenti, coinvolgendo direttamente il cliente e rendendolo partecipe al ciclo produttivo.

Qualità ed efficienza certificate

Lo Sviluppo Agile ci consente di offrire un inquadramento leggero e semplice e di mantenere un focus sulla velocità della consegna del progetto. Il risultato di questa attenzione è la riduzione significativa del rischio complessivo connesso alla produzione del software, evitando pericolose derive.

In particolare, lo sviluppo agile accelera la consegna dei moduli realizzati e, attraverso un processo di pianificazione e gestione continua, è in grado di garantire la massimizzazione del valore del prodotto per tutto il processo. Il team di sviluppo è in grado di allineare costantemente il software fornito con le esigenze e le richieste del cliente, grazie a continue misurazioni e valutazioni costanti del progetto e del processo produttivo.

  1. Metodo SCRUM

    Scopri
  2. Metodo KANBAN

    Scopri
  3. Ambienti di sviluppo

    Scopri

1. Analizzare e pianificare

La pianificazione del lavoro consiste nell’analisi dei requisiti del software, eseguita dal Project Manager, al quale spetta il compito di suddividere i requisiti in task e svolgere una valutazione in merito alla loro risoluzione. Il Project Manager inserisce descrizioni e valutazioni per comporre il quadro, disgregandolo e ricomponendolo con i singoli task.

In seguito, il responsabile stende l’SRS (Software Requirements Specification, standard ISO/IEC/IEEE 29148:2011), descrizione completa del comportamento del software e la scheda di collaudo, proponendo eventuali migliorie al cliente. Questi documenti vengono trasmessi alla committenza per l’approvazione o la modifica.

A questo punto, il team di sviluppo esegue una progettazione tecnica della soluzione, realizzando alcuni documenti tra i quali: l’architettura del sistema, il progetto concettuale e logico della base dati, la specifica tecnica dettagliata dei moduli funzionali e il piano di test di modulo e di integrazione.

2. Produrre e collaudare

Il team di sviluppo lavora al progetto software, attraverso dei test di collaudo. Tramite un beta test interno, il personale controlla le funzionalità sviluppate, in modo da far emergere eventuali bug.

Il responsabile del progetto esegue un collaudo interno, basandosi sulla scheda di collaudo, mentre un operatore del committente effettuerà un test sulle nuove funzionalità. Vengono quindi redatti i seguenti documenti: il manuale utente, il manuale operativo e di gestione (ad uso dei sistemisti), il manuale tecnico del prodotto (ad uso degli addetti alla manutenzione e allo sviluppo software).

A seguito dell’esito positivo di ogni collaudo viene effettuato il rilascio definitivo del software sul server di produzione.

3. Misurare e migliorare

Dopo aver analizzato, sviluppato e collaudato il software, il risultato definitivo del progetto viene consegnato al cliente, fornendogli assistenza per la durata predefinita in fase contrattuale.

Offriamo sotto-attività per eventuali modifiche successive alla consegna, in particolare tramite manutenzione correttiva, con l’obiettivo di affiancare il cliente e tramite manutenzione evolutiva, per estendere le funzionalità del software.

La manutenzione per le modifiche del prodotto software è prevista nelle diverse tipologie di contratto da noi proposte.

Standard di riferimento

Gli standard che adottiamo nella gestione della vita del software sono:

  • IEEE 730 – IEEE Standard for Software Quality Assurance Processes;
  • IEEE 828 – IEEE Standard for Configuration Management in Systems and Software Engineering;
  • IEEE 29119 – ISO/IEC/IEEE Software and systems engineering (Software testing);
  • IEEE 29148 – ISO/IEC/IEEE Systems and software engineering (Life cycle processes – Requirements engineering);
  • IEEE 1012 – IEEE Standard for System, Software, and Hardware Verification and Validation;
  • IEEE 1016 – IEEE Standard for Information Technology (Systems Design – Software Design Descriptions);
  • IEEE 16326 – ISO/IEC/IEEE Systems and Software Engineering (Life Cycle Processes – Project Management);
  • IEEE 26512 – ISO/IEC/IEEE Systems and software engineering (Requirements for acquirers and suppliers of information for users);
  • IEEE 26511 – ISO/IEC/IEEE Systems and software engineering (Requirements for managers of information for users of systems, software, and services).