Slide 1 Lezione 2. Il modello Waterfall e le sue fasi [GJM91, Sez. 7.1], [S2001, Cap. 3], [TMcG93, Cap. 2 (#) fotocopia] Modello code-and-fix Processo.

Slides:



Advertisements
Presentazioni simili
Logistica collaborativa per i distretti industriali.
Advertisements

FOXBIT property. The diffusion or disclosure of this document or the contained information without explicit authorization/agreement is prohibited. Any.
TAV.1 Foto n.1 Foto n.2 SCALINATA DI ACCESSO ALL’EREMO DI SANTA CATERINA DEL SASSO DALLA CORTE DELLE CASCINE DEL QUIQUIO Foto n.3 Foto n.4.
II° Circolo Orta Nova (FG)
Ingegneria della Progettazione (Design Engineering)
/ fax
Interfacce Java.
Midrange Modernization Conference 1 Scenari evolutivi per le soluzioni basate su AS/400 Walter Poloni Direttore Developer & Platform Evangelism Microsoft.
TechNet Integration Workshop
1 Teaching Cloud Computing and Windows Azure in Academia Domenico Talia UNIVERSITA DELLA CALABRIA & ICAR-CNR Italy Faculty Days 2010.
A. Oppio, S. Mattia, A. Pandolfi, M. Ghellere ERES Conference 2010 Università Commerciale Luigi Bocconi Milan, june 2010 A Multidimensional and Participatory.
Comitato di Studio B3 - Substation Latina, 24 novembre Cigré Session 2010 Daris Falorni Membro italiano SC B3 43 ma Sessione Generale Cigré Parigi,
Interazione uomo-macchina (HCI – Human-Computer Interaction)
DG Ricerca Ambientale e Sviluppo FIRMS' FUNDING SCHEMES AND ENVIRONMENTAL PURPOSES IN THE EU STRUCTURAL FUNDS (Monitoring of environmental firms funding.
Frontespizio Economia Monetaria Anno Accademico
1 la competenza alfabetica della popolazione italiana CEDE distribuzione percentuale per livelli.
OWASP-Day e progetti OWASP-Italy
Domenico Presenza Stato implementazione prototipo Engineering Milano – 20 Luglio 2005.
Unified Modeling Language class C {…} class B extends C {…} Esiste una notazione grafica per mostrare le relazioni di ereditarietà. Object StringC B Tutte.
HDM Information Design notation v.4. HDM Information Design.
Biometry to enhance smart card security (MOC using TOC protocol)
LInnovazione di Prodotto. Lo sviluppo di nuovi prodotti e nuovi servizi: una vecchia sfida per le imprese innovative. [emilio bellini]
1 GLASTGLAST GLAST Italy meeting Pisa 18/02/2002 A.Brez – INFN Pisa GLAST:Gamma Ray Large Area Telescope Plan for the Engineering Model Tower Construction.
Fanno ormai parte della nostra vita di tutti i giorni….
Directive 96/62/EC - Ambient Air Quality List of air pollutants in the context of air quality assessment and management.
PROGETTAZIONE FERROVIARIA
2000 Prentice Hall, Inc. All rights reserved. 1 Capitolo 6: Classi e astrazione dati 1.Introduzione 2.Definizione delle strutture 3.Accedere ai membri.
Introduzione Grid1 Introduzione ai Sistemi Grid. Introduzione Grid2 Generalità Un sistema Grid permette allutente di richiedere lesecuzione di un servizio.
1 laboratorio di calcolo II AA 2003/04 ottava settimana a cura di Domizia Orestano Dipartimento di Fisica Stanza tel. ( )
FONDAMENTI DI INFORMATICA III WfMC-1. FONDAMENTI DI INFORMATICA III WfMC-2 WFMC Cose WfMC Workflow Management Coalition (WfMC), Brussels, è unorganizzazione.
WP 10 – Applicazioni Astrofisica – stato Leopoldo Benacchio INAF Osservatorio Astronomico di Padova Pisa maggio 03.
ATE / 31 Lezione 3 i sistemi automatici di misurazione - gli ATE.
National Project – on going results Potenza 7/10 November 06 IT-G2-SIC-066 – Social Enterprise and Local Development.
Compito desame del Svolgimento della Sezione 5: CONTROLLORI Esempio preparato da Michele MICCIO.
1 Attivita di ricerca Carlo Batini. 2 Aree Come costruire ed esprimere il contenuto informativo integrato di sistemi informativi complessi basati.
Scuola di Dottorato della Facoltà di Scienze MM. FF. NN., Università di Milano Bicocca ELEMENTI DI ORGANIZZAZIONE AZIENDALE Funzione finanza e controllo:
ETEN – Re-Public – RePublic website 1\5 eTEN Progetto Re-Public – RePublic website Workshop finale Dott. Marco Sentinelli – Galgano International Roma,
Palermo, may 2010 F.Doumaz, S.Vinci (INGV-CNT- Gruppo di telerilevamento)
Università degli studi di Modena e Reggio Emilia Facoltà di Ingegneria di Modena Corso di Laurea Specialistica in Ingegneria Informatica Analisi e valutazione.
Presentazione Finale Team 2 1. Decomposizione in sottosistemi 2.
© 2008 WS (WebScience srl) – All rights reserved WS Tech workshop Software Construction.
Struttura Aziendale Arianna Montervino 4° A T.G.A A.S 2009/2010 Stage.
FORNITURE E SERVIZI TECNOLOGICI
Gruppo 4: Gelmi Martina, Morelato Francesca, Parisi Elisa La mia scuola ha un sito Web: modelli per la qualità dei siti (Ingegneria del Web)
Attività Formativa Sviluppo di un WORKFLOW ENGINE di Dott. Riccardo Gasperoni Alessandro Caricato Gabriele Trabucco in collaborazione con Progesi S.p.A.
1 Negozi Nuove idee realizzate per. 2 Negozi 3 4.
ISOIVA (LOCALE) TO ISOIVA (WEB) RIPARTIZIONE INFORMATICA UFFICIO APPLICATIVI AMMINISTRATIVI 13/04/2011 UNIVERSITÀ DEGLI STUDI DI FERRARA 1.
WPF per il client Desktop
Scheda Ente Ente Privato Ente Pubblico. 2ROL - Richieste On Line.
1 SOSTEGNO PSICOLOGICO SCUOLE DELLAQUILA. 2 Aiuto ai docenti in qualità di persone. L obiettivo è quello di sostenere e contenere lo stato emotivo personale.
Dependability and security modeling for CIP CISSilvia BonomiAntonella Del Pozzo CNRFelicita Di Giandomenico POLIMI POLITO UNIFILeonardo MontecchiPaolo.
Bando Arti Sceniche. Per poter procedere è indispensabile aprire il testo del Bando 2ROL - Richieste On Line.
SCOPRI LA TABELLINA click Trova la regola nascosta… click
Scoprirete che su Office non si può solo contare ma anche sviluppare.
1 Questionario di soddisfazione ATA - a. sc. 2008/09 Il questionario è stato somministrato nel mese di aprile Sono stati restituiti 29 questionari.
1101 = x 10 x 10 x x 10 x = CORRISPONDENZE
Bando di Residenza Cap Scheda ENTE 3ROL - Richieste On Line.
1 Guida per linsegnamento nei corsi per il conseguimento del CERTIFICATO DI IDONEITÀ ALLA GUIDA DEL CICLOMOTORE.
Corso di Web Services A A Domenico Rosaci Patterns di E-Business D. RosaciPatterns per l'e-Business.
Introduzione al linguaggio C. Cos’e’ il C? Il C e’ un linguaggio ad alto livello Un compilatore C prende in input un file contenente codice sorgente C.
Slide 1 Lezione 3. Altri modelli di processo software [GJM91, Sez. 7.1], [S2001, Cap. 3, Sez. 19.4], [TMcG93, Cap. 2], [BRJ99, App. C (°)] Incremental.
Software Cost, Effort,Time and H-resource Estimation: Introduction and COCOMO Model.
Estimating Methods Price-to-win Analogy Expert judgement
"We firmly believe that the on-the-run issues should command a high liquidity premium in the current environment. But with very high probability, the.
Bando Pittori e Scultori in Piemonte alla metà del ‘700
Guida alla compilazione del Piano di Studi Curricula Sistemi per l’Automazione Automation Engineering.
lun mar mer gio ven SAB DOM FEBBRAIO.
1 Acceleratori e Reattori Nucleari Saverio Altieri Dipartimento di Fisica Università degli Studi - Pavia
IL GIOCO DEL PORTIERE CASISTICA. Caso n. 1 Il portiere nella seguente azione NON commette infrazioni.
Transcript della presentazione:

Slide 1 Lezione 2. Il modello Waterfall e le sue fasi [GJM91, Sez. 7.1], [S2001, Cap. 3], [TMcG93, Cap. 2 (#) fotocopia] Modello code-and-fix Processo di sviluppo: specifica, progetto e codifica, validazione, evoluzione Le fasi del modello Waterfall. Fattibilità, requisiti, specifica, progetto, codifica, testing unitario, integrazione e test di sistema, verifica e validazione, manutenzione, evoluzione Waterfall, variante STARTS (#) Waterfall, variante ESA (#)

Slide 2 Il modello di sviluppo Code-and-fix Prima: Problemi di complessita relativamente bassa Programmatore unico Programmatore = utente finale, di formazione scientifica ==> Modello a due fasi CODE-AND-FIX Problemi: il codice diventa rapidamente illeggibile. Poi: Problemi di alta complessita (p. es. business administr.) Team di programmatori (problemi di comunicazione) Utenti finali inesperti (problemi di comunicazione) ==> nuovo approccio: il processo

Slide 3 Quattro attività fondamentali del processo software Vengono riconosciute quattro attività: Specification Design and implementation (coding) Validation Evolution Il processo di sviluppo deve essere modellato esplicitamente, per poter essere gestito e monitorato

Slide 4 Waterfall model Appare in letteratura negli anni 50 in rif. a sistema difensivo SAGE - Semi-Automated Ground Environment. Larga diffusione a partire dagli anni 70.

Slide 5 Modello Waterfall [S2001]

Slide 6 Modello Waterfall [GJM91] Requirements analysis and specification Design and specification Coding and module testing Integration and sytem testing Delivery Feasibility study Maintenance

Slide 7 Modello Waterfall [AC96]

Slide 8 Requirements engineering process (specification) User requirements = requirements definition in Sommerville 5th edition System requirements = requirements specification in Sommerville 5th edition Software specification = Requirements Engineering [S2001, p. 55] * * Consistenti Completi Realistici

Slide 9 Feasibility study Valuta i costi e i benefici della applicazione proposta. Contiene almeno: Definizione del problema Soluzioni alternative e relativi vantaggi Risorse richieste, costi, tempi per ciascuna alternativa Si conclude con una offerta al Cliente Il cliente potrebbe ritirarsi, dunque lo studio e spesso affrettato...

Slide 10 Requirements (elicitation, analysis, specification, validation) Identifica le qualita richieste per lapplicazione funzionalita, performance, facilita duso, portabilita… I requisiti esprimono il COSA ma non il COME. non devono vincolare la architettura e gli algoritmi ===> liberta di implementazione Requisiti funzionali Descrivono cosa fa il sistema, con notazioni formali, informali, o miste. Requisiti non-funzionali Su reliability, safety, performance, man-machine interface, portability, operating requirements. Requisiti sul processo di sviluppo e manutenzione Sulle procedure di controllo di qualita e di testing

Slide 11 Requirements document Il requirements document e una interfaccia fra cliente e sviluppatore Comprensibile, precisa, completa, consistente, non-ambigua Puo offrire anche Manuale duso e Piano di test. Descrizione del sistema sotto piu punti di vista, ma allo stesso livello (alto) di astrazione. Esempio: Modello dei dati (diagrammi ER) Modello delle funzioni (diagrammi data-flow) Strutture di controllo (Reti di Petri)

Slide 12 Design Definisce larchitettura del sistema, mediante decomposizione in moduli. Il design (specification) document descrive le relazioni fra moduli, e cosa fa ciascuno, non come la fa, sebbene... …la decomposizione puo essere iterata (vertical modularity) su piu livelli di astrazione. Design e implementazione (codifica) sono correlati, e vengono spesso eseguiti in ciclo.

Slide 13 Diversi modi di intendere high-level/low-level design

Slide 14 Formati e notazioni per il design specification document Companywide standards Spesso vengono adottati standard internazionali (ISO, CCITT, OMG) Esempi LOTOS (Language of Temporal Ordering Specification) ESTELLE (Ext. State Transition Language) SDL (Specification and Description Language) UML (Unified Modelling Language)

Slide 15 The software design process [S2001] (Software Architecture) High Level (Software Design) Low Level Ripartizione in sottosistemi Identif. dei servizi offerti da ogni sottosistema

Slide 16 Design methods Systematic approaches to developing a software design The design is usually documented as a set of graphical models Possible models Data-flow model Entity-relation-attribute model Object models

Slide 17 Coding (programming) e unit+module testing (debugging) Produce e testa le implementazioni dei moduli del Design Corrisponde al vecchio code-and-fix, o Programming-in-the-small: attività creativa personale (non cè processo) Company standards per: Convenzioni su nomi di variabili nei programmi Convenzioni sui commenti Vincoli su numero di linee di codice per modulo.

Slide 18 Testing Unit testing Individual components are tested Module testing Related collections of dependent components are tested Sub-system testing Modules are integrated into sub-systems and tested. The focus here should be on interface testing System testing Testing of the system as a whole. Testing of emergent properties Acceptance testing = -testing Testing with customer data to check that it is acceptable

Slide 19 Testing phases Le componenti possono venire aggiunte e testate incrementalmente. -testing: esposizione del sistema (specifico) al cliente, che è paziente. Può rivelare problemi di performance

Slide 20 Verifica & validazione Verifica: il software è corretto, cioè conforme alla specifica (system testing) Validazione: si è costruito il sistema giusto, che soddisfa le aspettative del cliente (acceptance testing) La verifica puo riguardare tutti i passi del processo di sviluppo, ed essere formale.

Slide 21 Delivery and maintenance -testing: distribuzione del sistema (generico) limitata a pochi utenti finali, poi Distribuzione illimitata. Manutenzione (60% dei costi di sviluppo) Correttiva - rimuovere errori (20%) Adattiva - adattare lapplicazione a cambi nellambiente in cui il sistema gira (20%) Perfettiva - migliorare, cambiare, aggiungere qualita o funzioni (60%)

Slide 22 Costi di manutenzione [Lientz, Swanson 80] Costi di manutenzione - survey su 400 software house: 42%cambiamenti negli user requirements 17%cambiamenti nel formato dei dati 12%emergency fixes 9%routine debugging 6%cambiamenti di hardware 5%modifiche nella documentazione 4%miglioramento della efficienza ==> puntare a requirements piu affidabili

Slide 23 Waterfall model documents [S95]

Slide 24 Waterfall, variante STARTS (87) Software Technology for Application to large Real-Time Systems - National Computing Centre, Manchester, UK Waterfall esteso: ogni attività si estende a tutte le fasi Fonti: The STARTS Guide, 2nd edition, Vol. 1, In [TMcG93]

Slide 25 Una cascata … a V

Slide 26 Attività per fase

Slide 27...

Slide 28 ESA - Software Lifecycle Model (*) UR phase: User Requirements definition SR phase: Software Requirements definition con stima dei costi al 30% di accuratezza AD phase: Architectural Design con stima dei costi al 10% di accuratezza DD phase: Detailed Design and production (code) TR phase: Transfer OM phase: Operations and Maintenance (*) ESA (European Space Agency) Software Engineering Standards, ESA-PSS- 05-0, Issue 2, Feb In [TMcG93]

Slide 29

Slide 30 ESA - Waterfall approach * Waterfall approach e la più ovvia interpretazione di ESA Soft. Lifecycle Model Le frecce inverse (tratteggiate) rappresentano possibili cicli di correzione (waterfall?) Gli altri due approcci ESA sono: - Incremental delivery - Evolutionary development

Slide 31 Software evolution Il Software is intrinsecamente flessibile, e puo cambiare, per adeguarsi a nuovi requisiti derivanti da nuove situazioni legali, economiche... Sempre piu spesso lo sviluppo di nuovi sistemi non parte da zero, ma si configura come evoluzione e/o assemblaggio di sistemi sviluppati in precedenza. COTS = Components Off The Shelf (o Commmercial…)

Slide 32 Modello Waterfall - problemi e applicabilità Rigida partizione del progetto in fasi difficile e costoso accogliere nuovi requisiti tardivamente Applicabile quando i requisiti sono ben comprensibili, e stabili