Requisiti e metriche
Plan: costruire un piano
- Definire gli obiettivi e determinare le strategie e i mezzi utili a raggiungere tali obiettivi
Do: eseguire il piano
- Creare le condizioni, prepararsi sui temi correlati ed eseguire le azioni necessarie ad eseguire il piano
Check: verificare i risultati
- Verificare se il lavoro procede secondo i piani e se si ottengono i risultati attesi
Action: eseguire le azioni appropriate
- Eseguire le appropriate e necessarie azioni se la fase di check rivela che il lavoro non procede secondo il piano o, in generale, come previsto
Software development life cycle
- Analisi dei requisiti e delle specifiche ➤ Progettazione ➤ Sviluppo ➤ Testing ➤ Deploy ➤ Manutenzione
I modelli del ciclo di vita
- "Waterfall"
- Incrementale-iterativo:
- A spirale
- RUP
- Evolutivo
- Modelli specializzati
- Agile / Lean
Il costo di correzione di un errore nei requisiti (stimato):
- In fase di raccolta dei requisiti: 10€
- In fase di analisi: 100€
- In fase di progettazione: 1.000€
- In fase di codifica: 10.000€
- Dopo il rilascio del sistema: 100.000€
È quindi molto importante tenere sotto controllo questi costi!
Stakeholders
"Insieme dei soggetti che hanno un interesse nei confronti di un’organizzazione e che con il loro comportamento possono influenzarne l’attività":
- Tutte le persone in qualche modo interessate alla messa in opera del sistema
- Il cliente e gli utenti finali sono esperti nel loro dominio e hanno una idea generale (spesso vaga) di cosa il sistema debba fare, e poca (o nulla) esperienza nello sviluppo del software
- Gli sviluppatori hanno esperienza nel produrre sistemi software, ma hanno una conoscenza limitata del dominio di applicazione (ambiente degli utenti finali)
Requisiti funzionali e non funzionali
I requisiti funzionali descrivono i servizi, o funzioni, offerti dal sistema in termini di:
- Servizi che il software stesso deve fornire
- Risposte che l’utente aspetta dal software in determinate condizioni
- Risultati che il software deve produrre in risposta a specifici input
I requisiti non-funzionali descrivono vincoli sui servizi offerti dal sistema, e sullo stesso processo di sviluppo.
Requisiti funzionali
Descrivono le interazioni tra il sistema e il suo ambiente indipendentemente dalla sua implementazione (l’ambiente include l’utente e ogni altro sistema esterno).
- I requisiti funzionali devono essere: Completi, Coerenti
Requisiti non funzionali
Descrivono ...
-
Requisiti software
-
Requisiti software
-
Ingegneria del Software -analisi dei requisiti
-
Documento dei Requisiti Sito Università