vuoi
o PayPal
tutte le volte che vuoi
Vantaggi: permette un raffinamento dei
di un prodotto dipende dalla qualità del 3. Attività
modelli tramite prototipazione, molto utile
processo produttivo. 4. Stati
dal punto di vista dell'utente finale. E' molto 5. Oggetti
utile nel caso in cui i requisiti siano piuttosto
- Un processo di creazione del SW è un 6. Sequenza
mutevoli.
insieme di attività, metodi, pratiche, e 7. Collaborazione
Svantaggi: la semplicità di
trasformazioni che le persone utilizzano per documentazione è ridotta rispetto
lo sviluppo e la revisione del SW e delle Definisce praticamente 12 tipi di diagrammi,
all'incrementale, in quanto le varie fasi di
attività correlate (es. piani di progetto, divisi in 3 categorie:
iterazione costringono all'integrazione delle
progetto di documenti, coidce, test cases documentazioni esistenti.
ecc) - Diagrammi Strutturali: sono delle
definizioni statiche di applicazioni, ed
Prototipazione includono i diagrammi di classe, di oggetto,
Tipi di cicli di sviluppo di componente, e deployment.
E' una parziale implementazione di un - Diagrammi comportamentali: sono delle
- Semplice: si codificano i requisiti e si sistema, che aiuta l'utente finale a definizioni dinamiche ed includono use
debugga finché il tutto non funziona. comprenderne le funzionalità. cases, (usati da alcune metodologie nel
Vantaggi: tempo di startup ridotto al recupero dei requisiti), diagramma di
minimo indispensabile, si può lavorare - Usa e getta: può essere utile per validare sequeza, diagramma di attività, diagramma
direttamente. un'interfaccia grafica o per teestare le di collaborazione, e statechart diagram.
Svantaggi: seri problemi di revisione, di potenzialità di architetture difficilmente - Diagrammi di Management dei modelli:
documentazione differita delle revisioni riproducibili in scala completa, senza includono packages, sottosistemi e modelli.
stesse ecc. sostenere dei costi molto ingenti di
prototipazione. Agile Software Development
- Waterfall: approccio di tipo strettamente
gerarchizzato, mirato a partire dalla - Evoluzionario: capacie di essere
definizione dei requisiti, progettazione, - Individui ed interazioni al di sopra dei
modificato nel tempo e somministrato nella
implementazione, trasferimento, ed processi e degli strumenti
sua interezza alla fine del processo
operatività. Nelle fasi intermedie sono - SW funzionante prima della
evolutivo. Non è particolarmente rapido e
presenti delle consegne da parte di documentazione comprensibile
può essere molto oneroso.
persone, e tutto il lavoro relativo ad ogni - Collaborazione dei consumatori al di sopra
fase viene svolto da personale della negoziazione dei contratti
Verifica & Validazione
specializzato. Alla fine dell'implementazione - Risposta alle modifiche prima di ogni
vi è una consegna del SW nella versione pianificazione possibile
originale, mentre la fase di operatività - Verifica: controllo della conformità rispetto
risente di un non perfetto bilanciamento in ai requisiti Model Driven Development
termini di tempo rispetto alle altre (troppo - Validazione: conformità rispetto alle attese
lunga). del committente. E' la concezione di un modello di
Vantaggi: è molto semplice da utilizzare, costruzione del SW basato sull'utilizzo di
in quanto la specializzazione permette una Rational Unified Process (RUP) punti di vista astratti, trasformati in seguito
facile gestione delle competenze e dei ruoli. in codice funzionante sia tramite l'utilizzo
Svantaggi: le fasi sono rigide e realizzate - Fasi: Inception (concezione)[INITIAL], dell'automazione, sia manualmente. Questo
da personale specializzato. Nel momento in Elaborazione[ELAB1+2], Costruzione tipo di discorso può introdurre dei fattori di
cui viene scoperto un baco in una fase [CONSTR1+2+3], Transizione crescente produttività e TTM ristretti,
preliminare in seguito alla consegna, è [TRANS1+2], vengono riportate sulle abilitando il lavoro ad alto livello in modo
molto difficile riuscire a ripristinare il lavoro ascisse tale da rendere più facile la descrizione del
senza dover modificare una ingente mole di - Discipline: Business modeling, sw a chi in realtà non è un esperto del
dati, e senza dover rovinare la torta a requirements, analysis & design, settore. Molto spesso la modellizzazione è
qualcuno. Difficile da conciliare la implementation test, Deployment, basata sulla rappresentazione grafica delle
documentazione specifica emessa in Configuration & Change management, informazioni tramite immagini, diagrammi
ciascuna delle fasi. La visione tayloristica è Project management, Environment ecc.
poco versatile al momento della revisione. (riportate sulle ordinate). Nel momento in cui i modelli hanno una
semantica operazionale, possono essere
- Incrementale: Simile alla waterfall rispetto Le varie discipline assumono ruoli e facilmente trasformati in prototipi, o in
al taylorismo delle fasi ma incrementale nel importanze differenti a seconda della fase porzioni di applicazione.
lavoro a livello di consegna in cui si considera il loro contributo. Il principio fondamentale è quello di scrivere
dell'implementazione corrente. Si passa da Ogni tipo di attività è dedicata soprattutto meno codice a mano, riutilizzando
un'implementazione minima iniziale ad una fase ma partecipa anche se in modo possibilmente quello che è stato già
sottoposta al testing, per un raffinamento trascurabile alle altre. consolidato e testato in passato.
ed un ampliamento progressivo nel tempo.
Vantaggi: lo sviluppo e la consegna sono - Iterativo ed incrementale: in quanto si Analisi dei requisiti
incrementali, quindi risentono minimamente procede per fasi e ad ogni fase si raggiunge
degli errori commessi,facilmente una milestone, comprendendo un certo Un requisito software è:
individuabili e correggibili nel breve. Il numero di iterazioni. Un'iterazione a sua - una fondamentale capacità del sw
richiesta dall'utente per risolvere un processi std. Tutto ciò che viene approvato fase di smembramento dei requisiti)
partricolare problema. viene sottoposto ad una revisione su - SP 3.4 Analisi dei requisiti per il
- una capacità computazionale richiesta da misura delle esigenze e dei requisiti. Il raggiungimento dell'equilibrio di sistema
un sw per poter soddisfare un contratto, mantenimento e la revisione del sw sono - Si cerca di dare un'occhiata preliminare
una specifica, uno std, o qualcosa che sia processi ormai noti e maturi. alle esigenze del committente
specificamente imposto da una legge o 4. Managed: misure dettagliate e statistiche - Si scompone il lavoro in sotto processi
qualcosa di simile. sui prodotti e sulle prestazioni. fase per la modellizzazione, la prototipazione,
indispensabile per passare all'ultimo livello. l'analisi dei requisiti minimi in modo tale da
L'ingegneria dei requisiti è: 5. Optimizing, ottimizzato, in cui le nuove raggiungere l'equilibrio di sistema riducendo
- un approccio sistematico nell'estrazione, scoperte sono frutto dell'analisi dei dati il rischio di uscite fuori-tema
nell'organizzazione, e nella raccolti nel livello precedente, e il processo - Analisi dei rischi
documentazione dei requisiti di un sistema produttivo è talmente avanzato da generare -SP 3.5 Validazione dei requisiti con metodi
- un processo che stabilisce e consolida gli automaticamente delle innovazioni. esaustivi
accordi tra l'utente finale e il team di - Obiettivo: verificare la correttezza dei
progetto, sulla svolta temporale dei requisiti CMMI (Capability Maturity Model requisiti dal punto di vista del committente;
di un sistema (evoluzione) Integration) : suite di norme pensate per - Si utilizzano dei tool che oltre a
miglioreare la produttività ed il servizio, permettere di avere dei feedback costruttivi,
Tipi di requisiti: orientando il tutto verso la manutenzione come nel caso della prototipazione,
- Funzionali: riguardano le attività svolte dal post-vendita. Queste pratiche sono permettono di avere dei contributi rilevanti
sw. Ogni requisito funzionale riguarda degli correlate e riguardano l'area di processo, dagli interventi stessi del committente.
in, degli out e l'elaborazione degli in per secondo una catalogazione specifica in 4 - Si sottopone in più fasi il lavoro
diventare out. categorie: Engineering, Project incompleto ma funzionante nella sua
- Non funzionali: attributi di priorità, stato, Management, Support and Process parzialità al committente, in modo tale da
difficoltà, origine, stabilità, responsible Management. perfezionare le singole parti e giungere
party, raziocinio, costo. all'assemblamento consistente.
Il più importante livello, nonché il più
1. Requisiti non funzionali importante target del modello è quello di Formalismi UML
raggiungere il III stadio evolutivo.
- reliability: capacità di mantenere un Al livello III sono presenti le seguenti aree 1. Diagramma CR: entità statica che
certo livello di performance nel caso di di processo: definisce un sistema nella sua fisicità, a
errori del sw. specifica di fail safeness. - Sviluppo dei requisiti: inteso come il livello di oggetti rappresentanti dati, che a
- usability: sforzo richiesto dall'utente per processo di produzione e di analisi dei livello basso sono contenuti in un DB, a
operare. requisiti; livello implementativo sono istanziati in
- efficienza: tempo di risposta e - Soluzioni di natura tecnica: inteser come oggetti di un linguaggio apposito. Le classi
throughput rate. quantità di risorse sviluppo progettazione ed implementazione rappresentano i dati, le relazioni sono le
impiegate delle soluzioni ai requisiti; interdipendenze e i vincoli di tipo statico su
- interoperability: capacità di operare con - Integrazione di prodotto: assemblaggio del di essi.
altri sistemi, esistenti o futuri progotto a partire dalle componenti,
- compliance: congruità rispetto a degli preventivamente testate nella loro 2. Ruoli: sono i personaggi attivi del
standard imposti o de facto. funzionalità; sistema, e rappresentano le entità non
- security: capacità di gestire situazioni ad - Verifica: il prodotto deve poter funzionare fisiche a cui vengono assegnate le attività
alto rischio di truffa, di intrusione ecc. correttamente nell'ambiente in cui è stato (manuali). I ruoli corrispondono agli account
- portability: possibilità di esportazione designato; ed hanno privilegi e raggi d'azione
semplice in altri sistemi - Validazione: il prodotto deve soddisfare predefiniti, in modo statico o dinamico dal
- maintenability: possibilità di essere appieno i requisiti del committente; sistema. Vi sono dei ruoli di tipo
modificato nel tempo senza sforzo ingente, - Focus di tipo organizzativo sul prdotto: amministrativo (admin) e di tipo ges