Corso di Ingegneria del Software. Testing

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "Corso di Ingegneria del Software. Testing"

Transcript

1 Corso di Ingegneria del Software a.a. 2009/2010 Mario Vacca

2 Concetti base Strategie di testing Bibliografia Sommario

3 Concetti di base Concetti di base Error (1) The difference between a computed, observed, or measured value or condition and the true, specified, or theoretically correct value or condition. For example, a difference of 30 meters between a computed result and the correct result. (2) An incorrect step, process, or data definition. For example, an incorrect instruction in a computer program. (3) An incorrect result. For example, a computed result of 12 when the correct result is 10. (4) A human action that produces an incorrect result. For example, an incorrect action on the part of a programmer or operator. Note: While all four definitions are commonly used, one distinction assigns definition 1 to the word error, definition 2 to the word fault, definition 3 to the word failure, and definition 4 to the word mistake. (da IEEE Standard Glossary of Software Engineering Terminology, pag. 31)

4 Concetti di base Concetti di base Errore errore difetto o anomalia malfunzionamento o guasto

5 Concetti di base Concetti di base Verifica e Validazione (V&V) Verifica: stiamo realizzando correttamente il prodotto? Controlla la qualità delle attività svolte durante una fase dello sviluppo. Validazione: stiamo realizzando il prodotto corretto? Controlla la qualità del prodotto rispetto ai requisiti del committente.

6 Concetti di base Concetti di base Strategie di testing : processo scopo: individuare gli errori di funzionamento di un software the process of executing a program with the intent of finding errors (P. Jalote A Concise Introduction to Software Engineering Springer, 2008, pag. 229 )

7 Concetti di base Concetti di base Test Case, Test Suite, and Test Harness test case Insieme di test input e condizioni di esecuzione test suite Un gruppo di casi di test test harness framework

8 Concetti base Strategie di testing Bibliografia Sommario

9 Programma corretto P programma funzione P : D! R P(d), d 2 D corretto se soddisfa le specifiche, non corretto se diverso dal risultato previsto dalle specifiche. P corretto, 8d 2 D ; ok(p ; d)

10 Test ideale Caso di test d 2 D Test ideale Un insieme di test T si dice ideale se e solo se ogni volta che P è scorretto, allora esiste d 2 T tale che P è scorretto per d.

11 Criterio di selezione Un criterio di selezione di test C per un programma P è un insieme di predicati su D Un test T è selezionato dal criterio C se 8t 2 T 9c 2 C tale c(t) e 8c 2 C9t 2 T tale c(t)

12 Criteri di selezione affidabili e validi Un criterio di selezione di test C è affidabile per un programma P se per ogni coppia di test T 1, T 2 selezionati dal criterio C, il test T 1 ha successo se e solo se T 2 ha successo. Un criterio di selezione C è valido per un programma P se il programma P non è corretto, esiste almeno un test T selezionato da C che ha successo su P.

13 Teorema di Goodenough e Gerhart C affidabile e valido, T selezionato da C, T non ha successo allora P è corretto

14 Problemi indecidibili Dato P qualsiasi, stabilire se la sua esecuzione su un input arbitrario termina

15 Teorema di HOWDEN Non esiste un algoritmo che, dato un programma arbitrario P, generi un test finito definito da un criterio affidabile e valido.

16 Tesi di Dijkstra Il testing di un programma può rivelare la presenza di malfunzionamenti, ma mai dimostrarne l assenza.

17 Problemi indecidibili Teorema di Weyuker Dato P qualsiasi, i seguenti problemi sono indecidbili: esiste almeno un dato di ingresso che causa l esecuzione di un particolare comando? esiste un particolare dato di ingresso che causa l esecuzione di una particolare condizione (branch)? è possibile trovare almeno un dato di ingresso che causa l esecuzione di ogni comando di P? è possibile trovare almeno un dato di ingresso che causa l esecuzione di ogni condizione (branch) di P? è possibile trovare almeno un dato di ingresso che causa l esecuzione di ogni cammino di P?

18 Concetti base Strategie di testing Bibliografia Sommario

19 Concetti di base Strategie di testing revisione formale il testing procede bottom up (dal componente al sistema) uso di tecniche differenziate sviluppatore o tester debugging

20 Concetti di base Strategie di testing da R. Pressman Ingegneria del software Mc Graw Hill Italia, 5a edizione, 2007, pag. 486

21 Concetti base Strategie di testing Bibliografia Sommario

22 Strategie di testing Scriveremo i test prima di scrivere il codice, in continuazione. Conserveremo questi test per tutta la durata del sistema, e li eseguiremo frequentemente tutti assieme. Deriveremo dei test anche dalla prospettiva del cliente. da K. Beck Programmazione estrema, Addison-Wesley, 2000, pag. 126

23 Problema Necessità dei test Difficoltà di realizzarli

24 Il testing secondo la XP Secondo la XP si deve lavorare in accordo con la natura umana, e il testing è contrario alla natura umana. I test sono uno strumento per verificare il comportamento del sistema (CHE È LA COSA CHE INTERESSA) I test che si devono scrivere nell XP sono isolati ed automatici. da K. Beck Programmazione estrema, Addison-Wesley, 2000, pag. 127

25 Il testing secondo la XP Secondo la XP si deve lavorare in accordo con la natura umana, e il testing è contrario alla natura umana. I test sono uno strumento per verificare il comportamento del sistema (CHE È LA COSA CHE INTERESSA) I test che si devono scrivere nell XP sono isolati ed automatici. da K. Beck Programmazione estrema, Addison-Wesley, 2000, pag. 127

26 Il testing secondo la XP Secondo la XP si deve lavorare in accordo con la natura umana, e il testing è contrario alla natura umana. I test sono uno strumento per verificare il comportamento del sistema (CHE È LA COSA CHE INTERESSA) I test che si devono scrivere nell XP sono isolati ed automatici. da K. Beck Programmazione estrema, Addison-Wesley, 2000, pag. 127

27 Il testing secondo la XP I test devono essere non interagenti essere automatici collaudare ciò che potrebbe non funzionare pagare

28 Il testing secondo la XP Se il codice è talmente semplice da non poter non funzionare, e vi accertate che il codice in questione funziona realmente nella pratica, allora non dovete scrivere test. Se vi consigliassi di collaudare ogni cosa, v accorgereste ben presto che la maggior parte dei test che state scrivendo sono privi di valore, e se foste come me smettereste di scriverli dicendo: Questo testing è per gli stupidi. da K. Beck Programmazione estrema, Addison-Wesley, 2000, pag. 127

29 Il testing secondo la XP : tipi di test Test unitari relativi ai metodi programmatori successo 100 % Test funzionali relativi alle storie clienti (in collaborazione con il collaudatore del gruppo) non sempre 100 %

30 Il testing secondo la XP : tipi di test Test parallelo Stress test Test della scimmia

31 Bibliografia Concetti base Strategie di testing Bibliografia Sommario

32 Bibliografia Bibliografia Riferimenti bibliografici 1. R. Pressman Ingegneria del software Mc Graw Hill Italia, 5a edizione, 2007, capitoli 15 e IEEE Standard Glossary of Software Engineering Terminology. 3. K. Beck Programmazione estrema, Addison-Wesley, 2000, (capitolo 18). 4. P. Jalote A Concise Introduction to Software Engineering Springer, 2008, par. 7.4, capitolo C. Ghezzi, M. Jazayeri, D. Mandrioli Ingegneria del software. Fondamenti e principi, Pearson Education Italia, 2004.

Corso di Ingegneria del Software. Casi d uso

Corso di Ingegneria del Software. Casi d uso Corso di Ingegneria del Software a.a. 2009/2010 Mario Vacca mario.vacca1@istruzione.it 1. 2. 2.1 Il linguaggio dei casi d uso 2.2 Esempi 3. Bibliografia Sommario 1. 2. 2.1 Il linguaggio dei casi d uso

Dettagli

Corso di Ingegneria del Software. Esempi di casi d uso

Corso di Ingegneria del Software. Esempi di casi d uso Corso di Ingegneria del Software a.a. 2009/2010 Mario Vacca mario.vacca1@istruzione.it Casi d uso Sommario 1. 2. 3. Casi d uso e specifica dei requisiti 4. Esempio: sistema iscrizione ed esami 5. Bibliografia

Dettagli

Corso di Laurea Magistrale in Ingegneria Informatica Curriculum in IT Management. Ingegneria del Software II (IS2)

Corso di Laurea Magistrale in Ingegneria Informatica Curriculum in IT Management. Ingegneria del Software II (IS2) Corso di Laurea Magistrale in Ingegneria Informatica Curriculum in IT Management Ingegneria del Software II (IS2) a.a. 2017/18 Ingegneria del Software 2 - Introduzione 1 Docente Ing. Porfirio Tramontana

Dettagli

Corso di Ingegneria del Software. Metriche Parte II

Corso di Ingegneria del Software. Metriche Parte II Corso di Ingegneria del Software a.a. 2009/2010 Mario Vacca mario.vacca1@istruzione.it Metriche Sommario 1. Concetti di base 2. METRICHE DIMENSIONALI 3. METRICHE FUNZIONALI 4. 5. Bibliografia Il numero

Dettagli

Ingegneria del Software Testing. Corso di Ingegneria del Software Anno Accademico 2012/2013

Ingegneria del Software Testing. Corso di Ingegneria del Software Anno Accademico 2012/2013 Ingegneria del Software Testing Corso di Ingegneria del Software Anno Accademico 2012/2013 1 Definizione IEEE Software testing is the process of analyzing a software item to detect the differences between

Dettagli

Corso di Ingegneria del Software. Informazioni sul corso

Corso di Ingegneria del Software. Informazioni sul corso Corso di Ingegneria del Software a.a. 2010/2011 Mario Vacca mario.vacca@uniroma1.it Corso di Ingegneria del Software - a.a. 2010/2011 1. 2. Il programma del corso Sommario Corso di Ingegneria del Software

Dettagli

Corso di Ingegneria del Software. La architettura software

Corso di Ingegneria del Software. La architettura software Corso di Ingegneria del Software a.a. 2009/2010 Mario Vacca mario.vacca1@istruzione.it Il concetto e il ruolo della architettura Sommario 1. Il concetto e il ruolo della architettura 2. Tipi di architettura

Dettagli

Testing. Fondamenti teorici

Testing. Fondamenti teorici Testing Fondamenti teorici 1 Riferimenti Ian Sommerville, Ingegneria del Software, capitoli 22-23-24 (più dettagliato sui processi) Pressman, Principi di Ingegneria del Software, 5 edizione, Capitoli 15-16

Dettagli

Corso di Ingegneria del Software. I costi del software

Corso di Ingegneria del Software. I costi del software Corso di Ingegneria del Software a.a. 2009/2010 Mario Vacca mario.vacca1@istruzione.it Riepilogo Tre stime Base livello specifiche Intermedio livello architettura Dettagliato livello architettura di dttaglio

Dettagli

Verifica parte IIA. Rif. Ghezzi et al

Verifica parte IIA. Rif. Ghezzi et al Verifica parte IIA Rif. Ghezzi et al. 6.3-6.3.3 Test (o analisi dinamica) l Consiste nell osservare il comportamento del sistema in un certo numero di condizioni significative l Non può (in generale) essere

Dettagli

Materiale didattico. Sommario

Materiale didattico. Sommario Diploma Universitario in Ingegneria Informatica Corso di Ingegneria del Software Docente: ing. Anna Rita Fasolino Dipartimento di Informatica e Sistemistica Università degli Studi di Napoli Federico II

Dettagli

INSEGNAMENTO DI INGEGNERIA DEL SOFTWARE B (5 CFU) CORSO DI LAUREA SPECIALISTICA IN INGEGNERIA INFORMATICA a.a

INSEGNAMENTO DI INGEGNERIA DEL SOFTWARE B (5 CFU) CORSO DI LAUREA SPECIALISTICA IN INGEGNERIA INFORMATICA a.a INSEGNAMENTO DI INGEGNERIA DEL SOFTWARE B (5 CFU) CORSO DI LAUREA SPECIALISTICA IN INGEGNERIA INFORMATICA a.a. 2010-2011 Docenti Marina Zanella Orario ricevimento (S2): martedì 11:30-12:45 venerdì 9:45-10:30

Dettagli

Corso di Ingegneria del Software. Modelli di produzione del software

Corso di Ingegneria del Software. Modelli di produzione del software Corso di Ingegneria del Software a.a. 2009/2010 Mario Vacca mario.vacca1@istruzione.it Le fasi - Manutenzione e Gestione Figura: (waterfall model) Le fasi - Manutenzione e Gestione Manutenzione del software:

Dettagli

Corso di Laurea Magistrale in Ingegneria Informatica. Ingegneria del Software II (IS2)

Corso di Laurea Magistrale in Ingegneria Informatica. Ingegneria del Software II (IS2) Corso di Laurea Magistrale in Ingegneria Informatica Ingegneria del Software II (IS2) a.a. 2010/12 Ingegneria del Software 2 - Introduzione 1 Docente Prof.ssa Anna Rita Fasolino Dipartimento di Informatica

Dettagli

14. Verifica e Validazione

14. Verifica e Validazione 14. Verifica e Validazione Come assicurarsi che il software corrisponda alle necessità dell utente? Introdurremo i concetti di verifica e validazione Descriveremo le fasi del processo di testing Parleremo

Dettagli

SCD IS. Verifica e validazione: analisi dinamica. Verifica e validazione: analisi dinamica. Caratterizzazione. Definizione.

SCD IS. Verifica e validazione: analisi dinamica. Verifica e validazione: analisi dinamica. Caratterizzazione. Definizione. Caratterizzazione Verifica e validazione: analisi dinamica Anno accademico 2017/18 Ingegneria del Software Tullio Vardanega, tullio.vardanega@math.unipd.it SCD IS Il test è parte essenziale del processo

Dettagli

Verifica e Validazione del Software

Verifica e Validazione del Software Verifica e Validazione del Software Testing processes 1 Riferimenti Ian Sommerville, Ingegneria del Software, capitoli 22-23-24 (più dettagliato sui processi) Pressman, Principi di Ingegneria del Software,

Dettagli

Parte Teorica 1 compitino di Linguaggi per la Sicurezza Ipotesi di Domande

Parte Teorica 1 compitino di Linguaggi per la Sicurezza Ipotesi di Domande Parte Teorica 1 compitino di Linguaggi per la Sicurezza Ipotesi di Domande versione 1.1 1) A cosa servono i tipi nei linguaggi di programmazione? In primo luogo servono per organizzare; cioè attribuire

Dettagli

Corso di Ingegneria del Software. I costi del software

Corso di Ingegneria del Software. I costi del software Corso di Ingegneria del Software a.a. 2009/2010 Mario Vacca mario.vacca1@istruzione.it Costi nella XP 1. Costi nella XP 2. 3. CoCoMo I 4. CoCoMo II 5. Bibliografia Sommario Costi nella XP I costi nella

Dettagli

Corso di Ingegneria del Software. Modelli di produzione del software

Corso di Ingegneria del Software. Modelli di produzione del software Corso di Ingegneria del Software a.a. 2009/2010 Mario Vacca mario.vacca1@istruzione.it 1. Sommario 2. 2.1 Modello a cascata 2.2 Modelli incrementali 2.3 Modelli evolutivi 2.4 Modelli agili 3. Comparazione

Dettagli

Corso di Ingegneria del Software. Activity Diagram

Corso di Ingegneria del Software. Activity Diagram Corso di Ingegneria del Software a.a. 2009/2010 Mario Vacca mario.vacca1@istruzione.it Diagrammi di attività Diagrammi di attività 1. La notazione 2. Uso dei diagrammi di attività 3. TOOL di supporto 4.

Dettagli

SCD IS. Verifica e validazione: analisi dinamica. Verifica e validazione: analisi dinamica. Caratterizzazione. Classificazione delle problematiche

SCD IS. Verifica e validazione: analisi dinamica. Verifica e validazione: analisi dinamica. Caratterizzazione. Classificazione delle problematiche Caratterizzazione Verifica e validazione: analisi dinamica Anno accademico 2013/14 Ingegneria del Software mod. B Tullio Vardanega, tullio.vardanega@math.unipd.it SCD IS Parte essenziale del processo di

Dettagli

extreme Programming Gianluca Demartini 3 maggio 2004

extreme Programming Gianluca Demartini 3 maggio 2004 extreme Programming 3 maggio 2004 Scaletta XP: definizione XP: obiettivo XP: i 4 valori XP: le 12 pratiche XP: l'ambiente di lavoro XP: i ruoli principali XP: i problemi XP: opinioni personali 2 XP: definizione

Dettagli

Corso di Ingegneria del Software. Modelli di produzione del software

Corso di Ingegneria del Software. Modelli di produzione del software Corso di Ingegneria del Software a.a. 2009/2010 Mario Vacca mario.vacca1@istruzione.it 1. Concetti di base Sommario 2. 2.1 Modello a cascata 2.2 2.3 Modelli evolutivi 2.4 Comparazione dei modelli 2.5 Modelli

Dettagli

Verifica e Validazione del Software

Verifica e Validazione del Software Verifica e Validazione del Software Testing White Box Ingegneria del Software 2 Testing White Box 1 Riferimenti Ian Sommerville, Ingegneria del Software, capitoli 22-23-24 (più dettagliato sui processi)

Dettagli

Corso di Ingegneria del Software. Modelli di produzione del software

Corso di Ingegneria del Software. Modelli di produzione del software Corso di Ingegneria del Software a.a. 2009/2010 Mario Vacca mario.vacca1@istruzione.it Le fasi - Disegno del software Figura: (waterfall model) Le fasi - Disegno del software In questa fase si stabilisce

Dettagli

Verifica e validazione: introduzione

Verifica e validazione: introduzione : introduzione Contenuti : introduzione 2001-9 Corso di Ingegneria del Software V. Ambriola, G.A. Cignoni, C. Montangero, L. Semini Con aggiornamenti di: T. Vardanega (UniPD) Dipartimento di Informatica,

Dettagli

SCD IS. Verifica e validazione: analisi dinamica. Verifica e validazione: analisi dinamica. Caratterizzazione. Definizione

SCD IS. Verifica e validazione: analisi dinamica. Verifica e validazione: analisi dinamica. Caratterizzazione. Definizione Caratterizzazione Verifica e validazione: analisi dinamica Anno accademico 2016/17 Ingegneria del Software Tullio Vardanega, tullio.vardanega@math.unipd.it SCD IS Parte essenziale del processo di verifica

Dettagli

Vincenzo Gervasi, Laura Semini Ingegneria del Software Dipartimento di Informatica Università di Pisa

Vincenzo Gervasi, Laura Semini Ingegneria del Software Dipartimento di Informatica Università di Pisa Vincenzo Gervasi, Laura Semini Ingegneria del Software Dipartimento di Informatica Università di Pisa Concetti e terminologia Verifica, validazione, integrazione e collaudo Verifica statica Inspection

Dettagli

Verifica e Validazione del Software

Verifica e Validazione del Software Verifica e Validazione del Software Testing processes Ingegneria del Software 2 Testing Processes 1 Riferimenti Ian Sommerville, Ingegneria del Software, capitoli 22-23-24 (più dettagliato sui processi)

Dettagli

Verifica e Validazione del Software

Verifica e Validazione del Software Verifica e Validazione del Software Testing processes Ingegneria del Software 2 Testing Processes 1 Riferimenti Ian Sommerville, Ingegneria del Software, capitoli 22-23-24 (più dettagliato sui processi)

Dettagli

Capitolo 5. Algoritmi. Mauro Giacomini Pearson Addison-Wesley. All rights reserved

Capitolo 5. Algoritmi. Mauro Giacomini Pearson Addison-Wesley. All rights reserved Capitolo 5 Algoritmi Mauro Giacomini 2007 Pearson Addison-Wesley. All rights reserved Capitolo 5: Algoritmi 5.1 Concetto di algoritmo 5.2 Rappresentazione degli algoritmi 5.3 Scoprire Algoritmi 5.4 Strutture

Dettagli

Fondamenti VBA. Che cos è VBA

Fondamenti VBA. Che cos è VBA Fondamenti VBA Che cos è VBA VBA, Visual Basic for Application è un linguaggio di programmazione, inserito nelle applicazioni Office di Microsoft (Ms Word, Ms Excel, Ms PowerPoint, Visio). VBA è una implementazione

Dettagli

Testing: basato su analisi dinamica del codice. Metodi Formali: basato su analisi statica del codice.

Testing: basato su analisi dinamica del codice. Metodi Formali: basato su analisi statica del codice. Convalida: attività volta ad assicurare che il SW sia conforme ai requisiti dell utente. Verifica: attività volta ad assicurare che il SW sia conforme alle specifiche dell analista. Goal: determinare malfunzionamenti/anomalie/errori

Dettagli

INGEGNERIA DEL SOFTWARE. Il Corso. Obiettivi. A.A. 2003-2004 Prof. Giuseppe Visaggio Presentazione

INGEGNERIA DEL SOFTWARE. Il Corso. Obiettivi. A.A. 2003-2004 Prof. Giuseppe Visaggio Presentazione Scenario dello Sviluppo nella I.T. INGEGNERIA DEL SOFTWARE A.A. 2003-2004 Prof. Giuseppe Visaggio DIB 1 DIB 2 Obiettivi Il Corso!Conoscenza di principi, tecniche e metodi per i processi di sviluppo software.

Dettagli

Corso di Ingegneria del Software. La progettazione della interfaccia utente

Corso di Ingegneria del Software. La progettazione della interfaccia utente Corso di Ingegneria del Software a.a. 2009/2010 Mario Vacca mario.vacca1@istruzione.it Dimensioni dell usabilità Facilità di apprendimento facilità nell apprendere il comportamento del sistema. Esempio:

Dettagli

Ingegneria del Software II

Ingegneria del Software II Ingegneria del Software II Prof. Evelina Lamma Anno accademico 2017-16 Obiettivi del corso l Illustrare modelli, tecniche e strumenti disponibili nelle varie attività/fasi del processo di sviluppo software:

Dettagli

Università degli Studi di Bologna. Facoltà di Ingegneria CORSO DI INGEGNERIA DEL SOFTWARE. Prof. Evelina Lamma

Università degli Studi di Bologna. Facoltà di Ingegneria CORSO DI INGEGNERIA DEL SOFTWARE. Prof. Evelina Lamma Università degli Studi di Bologna Facoltà di Ingegneria CORSO DI INGEGNERIA DEL SOFTWARE Prof. Evelina Lamma Ingegneria Informatica Anno Accademico 1999/2000 Obiettivi del corso Fornire i concetti di base

Dettagli

Piano di Testing. Fontolan Federico Giacomazzi Andrea Yoshida Kotono Rosada Fabio

Piano di Testing. Fontolan Federico Giacomazzi Andrea Yoshida Kotono Rosada Fabio Piano di Testing Fontolan Federico 854230 Giacomazzi Andrea 854522 Yoshida Kotono 853696 Rosada Fabio 851772 February 3, 2017 Indice 1 Introduzione 2 2 Requisiti 2 3 Fase e gerarchia di Test 3 3.1 Unit

Dettagli

Correttezza (prima parte)

Correttezza (prima parte) Fondamenti di informatica Oggetti e Java (prima parte) Capitolo 16 ottobre 2015 1 Contenuti Introduzione alla correttezza dei programmi specifica di un programma correttezza di un programma verifica di

Dettagli

Laboratorio di Informatica

Laboratorio di Informatica Corso di Laurea in Informatica e Tecnologie per la Produzione del Software (Track B) - A.A. 2017/2018 Laboratorio di Informatica Presentazione del Corso docente: Cataldo Musto cataldo.musto@uniba.it Dove

Dettagli

Introduzione. Sommario. Il software. Definizione di Ingegneria del software

Introduzione. Sommario. Il software. Definizione di Ingegneria del software Sommario Introduzione Leggere Cap. 1 Ghezzi et al. Definizione Nascita dell ingegneria del software Ruolo Relazione con altre discipline Introduzione 2 Il software Il software e` definito come: i programmi,

Dettagli

Ingegneria del Software 22a. Progettazione delle prove. Dipartimento di Informatica Università di Pisa A.A. 2014/15

Ingegneria del Software 22a. Progettazione delle prove. Dipartimento di Informatica Università di Pisa A.A. 2014/15 Ingegneria del Software 22a. Progettazione delle prove Dipartimento di Informatica Università di Pisa A.A. 2014/15 prova (o collaudo o test) Verifiche (o validazioni) dinamiche attività che prevedono l

Dettagli

Vincenzo Gervasi, Laura Semini Ingegneria del Software Dipartimento di Informatica Università di Pisa

Vincenzo Gervasi, Laura Semini Ingegneria del Software Dipartimento di Informatica Università di Pisa Vincenzo Gervasi, Laura Semini Ingegneria del Software Dipartimento di Informatica Università di Pisa Concetti e terminologia Verifica, validazione, integrazione e collaudo Verifica statica Inspection

Dettagli

Corso di Ingegneria del Software. Modelli di produzione del software

Corso di Ingegneria del Software. Modelli di produzione del software Corso di Ingegneria del Software a.a. 2009/2010 Mario Vacca mario.vacca1@istruzione.it 1. Concetti di base Sommario 2. 2.1 Modello a cascata 2.2 Modelli incrementali 2.3 Modelli evolutivi 2.4 Modelli agili

Dettagli

12. Verifica e Validazione del Software

12. Verifica e Validazione del Software 12. Verifica e Validazione del Software Andrea Polini Ingegneria del Software Corso di Laurea in Informatica (Ingegneria del Software) 12. Verifica e Validazione del Software 1 / 18 Verifica e Validazione

Dettagli

Utilizzo di un elaboratore

Utilizzo di un elaboratore Utilizzo di un elaboratore Come utente: Uso software applicativo esistente per creare documenti e interfacce grafiche, effettuare calcoli, navigare in rete Come sviluppatore: Creo nuovi programmi sullo

Dettagli

Fondamenti Informatica A.A. 2010/'11. (I parte)

Fondamenti Informatica A.A. 2010/'11. (I parte) Problemi e algoritmi Macchina di Turing Fondamenti di informatica Proff. De Nitto e D Ambrogio A.A. 2010/2011 (I parte) Architettura e visione funzionale Rappresentazione dei numeri Modello computazionale

Dettagli

Ingegneria del Software 2010

Ingegneria del Software 2010 Ingegneria del Software 2010 Materiale, link utili, avvisi http://www.dmi.unict.it/~tramonta/se Forum su SDAI http://www.sdai.unict.it leggere gli avvisi partecipare alle discussioni fare domande Lezioni

Dettagli

Laurea triennale - Comunicazione&DAMS - UNICAL. Dr. Annamaria Bria 1

Laurea triennale - Comunicazione&DAMS - UNICAL. Dr. Annamaria Bria 1 Corso di INFORMATICA Laurea triennale - Comunicazione&DAMS Dr. Annamaria Bria 1 1 Dipartimento di Matematica Università della Calabria Corso di laurea intercalsse in COMUNICAZIONE&DAMS www.mat.unical.it/bria/informatica2011-12.html

Dettagli

Fondamenti Teorici. Antonio Pescapè e Marcello Esposito Parte Quarta v1.0

Fondamenti Teorici. Antonio Pescapè e Marcello Esposito Parte Quarta v1.0 Fondamenti Teorici Antonio Pescapè e Marcello Esposito Parte Quarta v1.0 Agenda Ambiente di sviluppo del software Le fasi di sviluppo del programma La documentazione dei programmi Errori di programmazione

Dettagli

Fondamenti di Informatica. Proff. B.Buttarazzi & A.D Ambrogio A.A. 2011/2012

Fondamenti di Informatica. Proff. B.Buttarazzi & A.D Ambrogio A.A. 2011/2012 Fondamenti di Informatica Proff. B.Buttarazzi & A.D Ambrogio A.A. 2011/2012 Sommario Contenuti del Corso Obiettivi Riferimenti Regole del Corso Materiale Didattico Scheduling Esami Introduzione al Corso

Dettagli

IC Test & Design for Testability

IC Test & Design for Testability IC Test & Design for Testability Collaudo (testing) dei sistemi digitali Realizzazione di sistemi digitali (VLSI) Collaudo e verifica Collaudo ideale e collaudo reale Costo del collaudo Ruolo del collaudo

Dettagli

13. Verifica e Validazione del Software

13. Verifica e Validazione del Software 13. Verifica e Validazione del Software Andrea Polini Ingegneria del Software Corso di Laurea in Informatica (Ingegneria del Software) 13. Verifica e Validazione del Software 1 / 13 Verifica e Validazione

Dettagli

Automatic generation of test cases

Automatic generation of test cases Tecniche Automatiche per la Correttezza del Software 2016/2017 Automatic generation of test cases Prof. Salvatore La Torre Alessandro Sacco Overview Testing Manual Testing vs Automated Testing Generazione

Dettagli

Capitolo 11. Teoria della computazione Pearson Addison-Wesley. All rights reserved

Capitolo 11. Teoria della computazione Pearson Addison-Wesley. All rights reserved Capitolo 11 Teoria della computazione 2007 Pearson Addison-Wesley. All rights reserved Capitolo 11: Teoria della computazione 11.1 Funzioni e loro calcolo 11.2 Macchine di Turing 11.3 Linguaggi gg di programmazione

Dettagli

Tecniche di Testing White Box

Tecniche di Testing White Box Tecniche di Testing White Box Riferimenti Ian Sommerville, Ingegneria del Software, capitoli - - (più dettagliato sui processi) Pressman, Principi di Ingegneria del Software, 5 edizione, Capitoli 5-6 Ghezzi,

Dettagli

Laboratorio di Informatica

Laboratorio di Informatica Corso di Laurea in Informatica e Tecnologie per la Produzione del Sofware (Track B) - A.A. 2016/2017 Laboratorio di Informatica Presentazione del Corso docente: Cataldo Musto cataldo.musto@uniba.it Dove

Dettagli

Ingegneria del Software Agile Testing. Corso di Ingegneria del Software Anno Accademico 2012/13

Ingegneria del Software Agile Testing. Corso di Ingegneria del Software Anno Accademico 2012/13 Ingegneria del Software Agile Testing Corso di Ingegneria del Software Anno Accademico 2012/13 1 Introduzione Le pratiche che descriveremo in questa sezione sono tipiche dell'extreme Programming (XP) L'XP

Dettagli

Introduzione al corso

Introduzione al corso Luca Cabibbo Ingegneria del Software Ingegneria del software: Introduzione al corso Dispensa IDS 0 ottobre 2008 1 Ingegneria e Ingegneria del software Ingegneria gli ingegneri fanno funzionare le cose,

Dettagli

Transient, corrupting is input. A pattern of transactions across the network causes database corruption. Unquantifiable! Should never happen in the lifetime of the system Cost Low Medium High Very Reliability

Dettagli

Corso di laurea triennale in Informatica Turno A

Corso di laurea triennale in Informatica Turno A Corso di laurea triennale in Informatica Turno A Docente: Anna Morpurgo Tutor: Stefano Sambruna Dipartimento di Informatica Università degli Studi di Milano A.A. 2018-2019 Programma svolto a lezione 24/10/18:

Dettagli

Corso di Ingegneria del Software. Introduzione al corso

Corso di Ingegneria del Software. Introduzione al corso Corso di Ingegneria del Software a.a. 2009/2010 Mario Vacca mario.vacca1@istruzione.it I periodi 1. Anni 50: Software Engineering come Hardware Engineering 2. Anni 60: Code&Fix 3. Anni 70: Il modello Waterfall

Dettagli

La tolleranza ai guasti. Concetti generali

La tolleranza ai guasti. Concetti generali Politecnico di Milano La tolleranza ai guasti Concetti generali Docente: William Fornaciari Politecnico di Milano fornacia@elet.polimi.it www.elet.polimi.it/~fornacia Sommario Storia Concetti fondamentali

Dettagli

Programma del corso di: Calcolo Numerico Corso di laurea in Matematica a.a. 2005-06 Prof. B.Paternoster

Programma del corso di: Calcolo Numerico Corso di laurea in Matematica a.a. 2005-06 Prof. B.Paternoster Programma del corso di: Calcolo Numerico Corso di laurea in Matematica a.a. 2005-06 Prof. B.Paternoster Richiami di analisi degli errori. Rappresentazione dei numeri in un calcolatore. Operazioni di macchina.

Dettagli

Ingegneria del Software 2014

Ingegneria del Software 2014 Ingegneria del Software 2014 Materiale, link utili, avvisi http://www.dmi.unict.it/~tramonta/se Forum http://forum.informatica.unict.it leggere gli avvisi partecipare alle discussioni fare domande E. Tramontana

Dettagli

Verifica e validazione: introduzione

Verifica e validazione: introduzione : introduzione 2 Verifica e validazione: introduzione Ingegneria del Software V. Ambriola, G.A. Cignoni, C. Montangero, L. Semini Aggiornamenti di: T. Vardanega (UniPD) La verifica accerta che l esecuzione

Dettagli

CORSO DI PROGRAMMAZIONE. Cosimo Laneve/Ivan Lanese/Elena Giachino

CORSO DI PROGRAMMAZIONE. Cosimo Laneve/Ivan Lanese/Elena Giachino CORSO DI PROGRAMMAZIONE Cosimo Laneve/Ivan Lanese/Elena Giachino 1 argomenti 1. obiettivi del corso e sommario 2. syllabus del corso 3. modalità dell esame 4. questionari degli studenti 2 obiettivi 3 obiettivi

Dettagli

Introduzione all informatica

Introduzione all informatica Introduzione all informatica INFORMATICA Varie definizioni Scienza degli elaboratori elettronici (Computer Science) Scienza dell informazione Definizione proposta Scienza della rappresentazione e dell

Dettagli

Introduction to this Course

Introduction to this Course Introduction to this Course Shahram Rahatlou Computing Methods in Physics http://www.roma1.infn.it/people/rahatlou/cmp/ Anno Accademico 2018/19 About this course Io sono un fisico e faccio ricerca in fisica

Dettagli

Ingegneria del Software L-A

Ingegneria del Software L-A Ingegneria del Software L-A Corso di Laurea Triennale in Ingegneria Informatica III anno A.A. 2009/2010 Docente: Giuseppe Bellavia Collaboratore: Gabriele Zannoni Premessa Una domanda fondamentale Che

Dettagli

Un algoritmo realizza una relazione funzionale tra i valori di input e quelli di output

Un algoritmo realizza una relazione funzionale tra i valori di input e quelli di output Un algoritmo realizza una relazione funzionale tra i valori di input e quelli di output F = { (s, s ) } per ogni s esiste una e una sola coppia (s, s ). Esempio: un algoritmo che calcola il quadrato di

Dettagli

SRT064 BTH SRT051 BTH SRT052 BTH

SRT064 BTH SRT051 BTH SRT052 BTH KIT FOR TRUCK BRAKE TESTERS SRT051 BTH SRT052 BTH OPERATOR S MANUAL SRT064BTH SRT051BTH SRT052BTH CONTENTS 1. INTRODUCTION...1 2. Description of SRT064BTH Kit...2 3. Description of SRT051BTH Kit...2 4.

Dettagli

Capitolo 0. Introduzione. Prof. Mauro Giacomini Pearson Addison-Wesley. All rights reserved

Capitolo 0. Introduzione. Prof. Mauro Giacomini Pearson Addison-Wesley. All rights reserved Capitolo 0 Introduzione Prof. Mauro Giacomini 2007 Pearson Addison-Wesley. All rights reserved Capitolo 0: Introduzione 0.1 Il ruolo degli algoritmi 0.2 L origine delle macchine per il calcolo 0.3 La scienza

Dettagli

Ingegneria del software

Ingegneria del software Ingegneria del software Il test d integrazione Si testano sistemi o sottosistemi composti Conviene che sia di tipo black-box Si testa l interazione dei componenti. Non interessa come sono fatti dentro.

Dettagli

CORSO DI FONDAMENTI DI INFORMATICA

CORSO DI FONDAMENTI DI INFORMATICA Università degli Studi di Bologna Facoltà di Ingegneria CORSO DI FONDAMENTI DI INFORMATICA Ing. Civile/Edile Anno Accademico 1999/2000 http://www-lia.deis.unibo.it/courses/fondcived Prof. Paola Mello Tel.

Dettagli

DIAGNOSTICA DEI CIRCUITI INTEGRATI DEFINIZIONI GENERALI

DIAGNOSTICA DEI CIRCUITI INTEGRATI DEFINIZIONI GENERALI DIAGNOSTICA DEI CIRCUITI INTEGRATI Obiettivi: Verificare la funzionalità del circuito Verificare il possibile uso del circuito per particolari applicazioni DEFINIZIONI GENERALI Affidabilità: Probabilità

Dettagli

Dip. Informatica VI Piano. Ambito disciplinare. Secondo Semestre Secondo Anno Lezioni frontali (9 CFU) Progetto (3 CFU)

Dip. Informatica VI Piano. Ambito disciplinare. Secondo Semestre Secondo Anno Lezioni frontali (9 CFU) Progetto (3 CFU) Principali informazioni sull insegnamento Titolo insegnamento Corso di studio Crediti formativi Denominazione inglese Obbligo di frequenza Lingua di erogazione A.A. 2017-2018 Ingegneria del Software corso

Dettagli

INGEGNERIA DEL SOFTWARE

INGEGNERIA DEL SOFTWARE INGEGNERIA DEL SOFTWARE A.A. 2014 2015 Pasquale Ardimento, Nicola Boffoli, Danilo Caivano, Giuseppe Visaggio Sommario ð Il Piano del Corso ð Svolgimento degli Esami ð Bibliografia ð Materiale didattico

Dettagli

Fondamenti di Informatica per la Sicurezza a.a. 2008/09. Introduzione. Stefano Ferrari

Fondamenti di Informatica per la Sicurezza a.a. 2008/09. Introduzione. Stefano Ferrari Fondamenti di Informatica per la Sicurezza a.a. 2008/09 Stefano Ferrari UNIVERSITÀ DEGLI STUDI DI MILANO DIPARTIMENTO DI TECNOLOGIE DELL INFORMAZIONE Stefano Ferrari Università degli Studi di Milano Fondamenti

Dettagli

Ingegneria del Software ( )

Ingegneria del Software ( ) Ingegneria del Software (2018-2019) Laurea Triennale in Informatica Prof. Paolo Ciancarini Email: paolo.ciancarini@unibo.it Telegram: @PaoloCi Software powers the world https://www.youtube.com/watch?v=f01jmjgj9n8&fbclid=iwar23hv3cn9kdy_q8r4auaofdbltbz8xlbidbpxpfmg8fc0_egucytttbg64

Dettagli

Fondamenti di Informatica e Laboratorio T-AB

Fondamenti di Informatica e Laboratorio T-AB Università degli Studi di Bologna Facoltà di Ingegneria Fondamenti di Informatica e Laboratorio T-AB Corso di Laurea in Ingegneria Elettronica e Telecomunicazioni Prof. Luca Foschini Prof. Rebecca Montanari

Dettagli

Concetti di base sugli automi e sui linguaggi formali

Concetti di base sugli automi e sui linguaggi formali Concetti di base sugli automi e sui linguaggi formali Andrea Burattin 18 marzo 2005 Sommario Piccolo insieme di concetti sul funzionamento degli automi (a stati finiti, a pila,...), delle grammatiche libere

Dettagli

Informatica Generale Andrea Corradini Gli algoritmi e la risoluzione di problemi

Informatica Generale Andrea Corradini Gli algoritmi e la risoluzione di problemi Informatica Generale Andrea Corradini 13 - Gli algoritmi e la risoluzione di problemi Sommario Passi per la risoluzione di problemi Problemi di ricerca e ordinamento Algoritmi iterativi: la ricerca lineare

Dettagli

Presentazione ragionata del corso

Presentazione ragionata del corso Presentazione ragionata del corso Tecniche di Programmazione Lez. 01 Università di Firenze a.a. 2009/10, I semestre 1/22 contenuti Obiettivi e argomenti del corso Modalità di esame Progetto didattico Calendario

Dettagli

Programma del corso di: Laboratorio di Programmazione e Calcolo Corso di laurea in Matematica a.a Proff. B. Paternoster, D.

Programma del corso di: Laboratorio di Programmazione e Calcolo Corso di laurea in Matematica a.a Proff. B. Paternoster, D. Programma del corso di: Laboratorio di Programmazione e Calcolo Corso di laurea in Matematica a.a.009-0 Proff. B. Paternoster, D. Conte Risoluzione di un problema con il calcolatore: dal problema reale

Dettagli

Verifica e Validazione del Software

Verifica e Validazione del Software Verifica e Validazione del Software Testing Object Oriented Ingegneria del Software 2 Testing Object Oriented 1 Riferimenti Ian Sommerville, Ingegneria del Software, capitoli 22-23-24 (più dettagliato

Dettagli

Corso di Ingegneria del Software. Modelli di produzione del software

Corso di Ingegneria del Software. Modelli di produzione del software Corso di Ingegneria del Software a.a. 2009/2010 Mario Vacca mario.vacca1@istruzione.it 1. Concetti di base Sommario 2. 2.1 Modello a cascata 2.2 Modelli incrementali 2.3 2.4 Comparazione dei modelli 2.5

Dettagli

Tutorato di Fondamenti di Informatica TUTOR: DAVIDE GHIANI, GIULIA ORRU

Tutorato di Fondamenti di Informatica TUTOR: DAVIDE GHIANI, GIULIA ORRU Tutorato di Fondamenti di Informatica PROFESSORE: GIAN LUCA MARCIALIS TUTOR: DAVIDE GHIANI, GIULIA ORRU Organizzazione Informazioni di contatto: informatica.marcialis@gmail.com Davide Ghiani Giulia Orrù

Dettagli

FONDAMENTI DI INFORMATICA

FONDAMENTI DI INFORMATICA Fondamenti di Informatica FONDAMENTI DI INFORMATICA Domenico Talia talia@deis.unical.it A.A. 2002-2003 Facoltà di Ingegneria UNICAL Fondamenti di Informatica - D. Talia - UNICAL 1 Fondamenti di Informatica

Dettagli

Il PROCESSO UNIFICATO

Il PROCESSO UNIFICATO Corsi di laurea triennale in Ingegneria Informatica Corso di Ingegneria del software Il PROCESSO UNIFICATO Modellazione ed Implementazione di un Sistema Software per la gestione informatizzata di un ristorante

Dettagli

IS Corso di Ingegneria del Software 1

IS Corso di Ingegneria del Software 1 Contenuti Analisi dei requisiti L attività di analisi Lo studio di fattibilità L analisi dei requisiti 2001 Corso di Ingegneria del Software Specifica dei requisiti V. Ambriola, G.A. Cignoni C. Montenegro,

Dettagli

Stato dell arte sulle tecniche di testing di Sistemi Embedded

Stato dell arte sulle tecniche di testing di Sistemi Embedded tesi di laurea Anno Accademico 2011/2012 relatore Ch.mo prof. Porfirio Tramontana candidato Alfonso Cutolo Matr. 041/3068 Obiettivi Facoltà di Ingegneria Obiettivi Ordinare e descrivere in maniera metodologica

Dettagli

SOMMARIO DIAGRAMMI DI ATTIVITÀ INGEGNERIA DEL SOFTWARE. Introduzione. Concetti base. Introduzione. Concetti base

SOMMARIO DIAGRAMMI DI ATTIVITÀ INGEGNERIA DEL SOFTWARE. Introduzione. Concetti base. Introduzione. Concetti base SOMMARIO Introduzione Concetti base INGEGNERIA DEL SOFTWARE Università degli Studi di Padova Dipartimento di Matematica Corso di Laurea in Informatica, A.A. 2013 2014 2 rcardin@math.unipd.it SOMMARIO Introduzione

Dettagli

Introduzione all Ingegneria del Software

Introduzione all Ingegneria del Software Università degli studi Facoltà di Ingegneria di Napoli Federico II Corso di Laurea in Ingegneria Informatica Prof. Stefano Russo Introduzione all Ingegneria del Software 1 Introduzione al corso Breve storia

Dettagli

Metodi formali per la verifica dell affidabilità di sistemi: materiale didattico

Metodi formali per la verifica dell affidabilità di sistemi: materiale didattico Metodi formali per la verifica dell affidabilità di sistemi: materiale didattico Prima parte: verifica basata su logica temporale lineare Peled: Software Reliability Methods, cap. 1. Katoen: Concepts,

Dettagli

A.A. 2006/2007 Laurea di Ingegneria Informatica. Fondamenti di C++ Horstmann Capitolo 3: Oggetti Revisione Prof. M. Angelaccio

A.A. 2006/2007 Laurea di Ingegneria Informatica. Fondamenti di C++ Horstmann Capitolo 3: Oggetti Revisione Prof. M. Angelaccio A.A. 2006/2007 Laurea di Ingegneria Informatica Fondamenti di C++ Horstmann Capitolo 3: Oggetti Revisione Prof. M. Angelaccio Obbiettivi Acquisire familiarità con la nozione di oggetto Apprendere le proprietà

Dettagli

Esempi di errori/difetti. algoritmi sintassi calcolo e precisione documento stress capacità ricovery sistema hardware e software standard e procedure

Esempi di errori/difetti. algoritmi sintassi calcolo e precisione documento stress capacità ricovery sistema hardware e software standard e procedure COLLAUDO Esempi di errori/difetti algoritmi sintassi calcolo e precisione documento stress capacità ricovery sistema hardware e software standard e procedure Verifica e Validazione Validazione Requisiti

Dettagli

Politecnico di Bari Facoltà di Ingegneria

Politecnico di Bari Facoltà di Ingegneria Politecnico di Bari Facoltà di Ingegneria Dispensa per il Corso di Controlli Automatici I Uso del software di calcolo Matlab 4. per il tracciamento del luogo delle radici Ing. Mariagrazia Dotoli Uso del

Dettagli