Testing. Definizioni. incomprensione umana nel tentativo di comprendere o risolvere un problema, o nell uso di strumenti
|
|
- Saverio Alfano
- 8 anni fa
- Visualizzazioni
Transcript
1 Definizioni Problemi del testing:criterio di selezione dei casi di test Test Funzionale: suddivisione in classi di equivalenza e analisi dei valori limite Test Strutturale: basato sul flusso di controllo e dei dati Valutazione dei risultati del testing Criterio di terminazione del testing Livelli di testing Test di programmi OO Pianificazione, Specifica, esecuzione e rapporto del test 1 Definizioni Errore (umano) incomprensione umana nel tentativo di comprendere o risolvere un problema, o nell uso di strumenti Difetto (fault o bug) Manifestazione nel software di un errore umano, e causa del fallimento del sistema nell eseguire la funzione richiesta Malfunzionamento (failure) incapacità del software di comportarsi secondo le aspettative o le specifiche un malfunzionamento ha una natura dinamica: accade in un certo istante di tempo e può essere osservato solo mediante esecuzione 2 1
2 Relazione fra Errore, Difetto e Malfunzionamento errore causa Difetto causa Malfunzionamento 1..* 1..* 1..* 3 Definizioni Il (collaudo) è un processo di esecuzione del software allo scopo di scoprirne i malfunzionamenti osservando i malfunzionamenti possiamo dedurre la presenza di difetti Tesi di Dijkstra: Il testing non può dimostrare l assenza di difetti, ma può solo dimostrare la presenza di difetti Il Debugging è il processo di scoperta dei difetti a partire da malfunzionamenti noti L Ispezione è un processo di analisi del software per scoprirne i difetti 4 2
3 Problemi del testing Criterio di selezione dei casi di test Valutazione dei risultati del test Criterio di terminazione del testing 5 Valutazione dei risultati del test Condizione necessaria per effettuare un test: conoscere il comporatmento atteso per poterlo confrontare con quello osservato L oracolo conosce il comportamento atteso per ogni caso di prova Oracolo umano si basa sulle specifiche o sul giudizio Oracolo automatico generato dalle specifiche (formali) stesso software ma sviluppato da altri versione precedente (test di regressione) Software da testare Casi di test Comparatore Oracolo Risultati del test 6 3
4 Terminazione del testing Quando il programma si può ritenere analizzato a sufficienza Criterio temporale: periodo di tempo predefinito Criterio di costo: sforzo allocato predefinito Criterio di copertura: percentuale predefinita degli elementi di un modello di programma legato ad un criterio di selezione dei casi di test Criterio statistico MTBF (mean time between failures) predefinito e confronto con un modello di affidabilità esistente 7 Problema della selezione dei casi di test Un programma è corretto se è corretto per ogni dato d ingresso Un programma è esercitato da un caso di test (sottoinsieme dei dai di input) Un test è formato da un insieme di casi di test L esecuzione del test consiste nell esecuzione del programma per tutti i casi di test Un test ha successo se rileva uno o più malfunzionamenti del programma Un test è ideale se l insuccesso del test implica la correttezza del programma Un test esaustivo è un test che contiene tutti i dati di ingresso al programma un test esaustivo è un test ideale un test esaustivo non è pratico e quasi sempre non è fattibile Obiettivo realistico: selezionare casi di test che approssimano un test ideale 8 4
5 Criterio di selezione di test Specifica le condizioni che devono essere soddisfatte da un test Consente di selezionare più test per uno stesso programma Un criterio di selezione di test è affidabile per un programma se per ogni coppia di test selezionati, T1 e T2, se T1 ha successo anche T2 ha successo e viceversa (ossia ogni insieme di casi di test che sddisfano il criterio rilevano gli stessi errori) Un criterio di selezione di test è valido per un programma se, qualora il programma non è corretto, esiste almeno un test selezionato che ha successo Teorema di Goodenough e Gerhart Il fallimento di un test T per un programma P, selezionato da un criterio C affidabile e valido, permette di dedurre la correttezza del programma P 9 Esempio Program raddoppia (input, output); var x, y: integer; begin read(x); y:= x*x; write(y); end Criterio affidabile ma non valido: T deve contenere sottoinsiemi di {0, 2} Criterio valido ma non affidabile: T deve contenere sottoinsiemi di {0,1, 2, 3, 4} Criterio valido e affidabile: T deve contenere almeno un valore maggiore di
6 Selezione dei casi di test Teorema di Howden Non esiste un algoritmo che, dato un programma arbitrario P, generi un test ideale finito, e cioè un test definito da un criterio affidabile e valido Al di là di casi banali, non è possibile costruire un criterio di selezione generale di test valido e affidabile che non sia il test esaustivo Obiettivi pratici massimizzare il numero di malfunzionamenti scoperti (richiede molti casi di test) minimizzare il numero di casi di test (e quindi il costo del testing) E preferibile usare più di un criterio di selezione dei test 11 Classi di criteri di selezione Criteri black-box o funzionali dipendono solo dalle specifiche del software Criteri white-box o strutturali dipendono dalla struttura interna del software Suddivisione in classi di equivalenza Analisi dei valori limite Grafi causa-effetto Criteri basati sul flusso di controllo Criteri basati sul flusso dei dati Analisi mutazionale Sono spesso usati in maniera complementare 12 6
7 Suddivisione in classi di equivalenza Il dominio dei dati di ingresso è suddiviso in classi di casi di test in modo tale che, se il programma è corretto per un caso di test, si possa dedurre ragionevolmente che è corretto per ogni caso di test in quella classe Una classe di equivalenza rappresenta un insieme di stati validi o non validi per una condizione sulle variabili d ingresso 13 Definizione delle classi di equivalenza Se la condizione sulle variabili d ingresso specifica: intervallo di valori una classe valida per valori interni all intervallo, una non valida per valori inferiori al minimo, e una non valida per valori superiori al massimo valore specifico una classe valida per il valore specificato, una non valida per valori inferiori, e una non valida per valori superiori elemento di un insieme discreto una classe valida per ogni elemento dell insieme, una non valida per un elemento non appartenente valore booleano una classe valida per il valore TRUE, una classe non valida per il valore FALSE 14 7
8 Selezione dei casi di test dalle classi di equivalenza Ogni classe di equivalenza deve essere coperta da almeno un caso di test Un caso di test per ogni classe non valida Ciascun caso di test per le classi valide deve comprendere il maggior numero di classi valide ancora scoperte 15 Esercizio L utente può chiamare la banca usando il proprio computer collegato via modem, digitare una password di 6 cifre, e digitare vari comandi che consentono di accedere alle varie funzioni bancarie (trasferimento fondi, estratto conto, saldo, fine sessione). L utente non può trasferire meno di lire e più di un milione per telefonata Selezionare i casi di test mediante partizione in classi di equivalenza 16 8
9 Le condizioni sull input password Condizioni d ingresso: La password può avere una valore compreso tra e Classi di equivalenza: Valida CE 1 : PASSWORD Non valide CE 2 : COD < CE 3 : COD > Le condizioni sull input comando Condizioni di ingresso: Il comando può essere di tipo: trasferimento fondi, estratto conto, saldo, fine sessione Classi di equivalenza Valide CE 5 : COMANDO = trasferimento fondi CE 6 : COMANDO = estratto conto CE 7 : COMANDO = saldo CE 8 : COMANDO = fine sessione Non valida CE 9 : COMANDO = moltiplica 18 9
10 Le condizioni sull input importo Condizioni di ingresso: L importo non può essere maggiore di nè minore di Classi di equivalenza Valida CE 10 : <= IMPORTO<= Non valide CE 11 : IMPORTO< CE 12 : IMPORTO> Selezione dei casi di test CONDIZIONI Valore della password tra e Tipo di comando: CE 4 CE 5 CE 6 CE 7 L importo deve essere tra e CLASSI DI EQUIVALENZA #CE Valide #CE Non valide CE password CE 2 password< AND CE 3 password > password CE 9 Trasferimento Estratto conto Saldo Fine sessione importo AND importo CE 8 Moltiplica CE 10 CE 11 importo< importo >
11 Scelta dei casi di test... Test case TC1 TC2 TC3 password comando trasferimento estratto conto saldo importo Classi coperte CE1, CE4, CE9 CE1, CE5, CE9 CE1, CE6, CE9 Test case TC4 TC5 TC6 password comando fine sessione estratto conto saldo importo Classi coperte CE1, CE7, CE9 CE2, CE5, CE9 CE3, CE6, CE9 21 Scelta dei casi di test Test case TC7 TC8 TC9 password comando moltiplica estratto conto saldo importo Classi coperte CE1, CE8, CE9 CE1, CE5, CE10 CE1, CE6, CE
12 Analisi dei valori limite I casi di test che esplorano condizioni limite spesso rilevano la presenza di malfunzionamenti Le condizioni limite: sono direttamente agli estremi immediatamente al di sopra immediatamente al di sotto degli estremi di: classi di equivalenza di ingresso classi di equivalenza di uscita Le condizioni limite possono essere molto sottili usare la creatività per cercare altre situazioni estreme 23 Criteri basati sul flusso di controllo Criteri di selezione Copertura dei comandi (statement test) Copertura delle decisioni (branch test) Copertura delle condizioni (condition test) Copertura delle decisioni e delle condizioni Copertura dei cammini (path test) Copertura dei cammini indipendenti Criteri di adeguatezza n.ro comandi eseguiti/ n.ro comandi eseguibili n.ro archi percorsi/ n.ro archi percorribili n.ro cammini percorsi/ n.ro cammini percorribili n.ro cammini indip. percorsi/ n.ro ciclomatico 24 12
13 UN MODELLO DI RAPPRESENTAZIONE DEI PROGRAMMI: il Control-Flow Graph Il grafo del flusso di controllo (Control-Flow Graph) di un programma P: dove: CFG (P) = <N, AC, ni, nf> <N, AC> è un grafo diretto con archi etichettati, {ni, nf} N, N- {ni, nf} = Ns Np Ns e Np sono insiemi disgiunti di nodi istruzione e nodi predicato; AC N-{nF} N-{nI } {vero, falso, incond} rappresenta la relazione flusso di controllo; ni ed nf sono detti rispettivamente nodo iniziale e nodo finale. Un nodo n Ns {ni} ha un solo successore immediato e il suo arco uscente è etichettato con incond. Un nodo n Np ha due successori immediati e i suoi archi uscenti sono etichettati rispettivamente con vero e falso. 25 procedure Quadrato; var x, y, n: integer; begin 1. read(x); 2. if x > 0 then begin 3. n := 1; 4. y := 1; 5. while x > 1 do begin 6. n := n + 2; 7. y := y + n; 8. x := x - 1; end; 9. write(y); end; end; true true I 1 2 false false I 1,2 true 3,4,5 true false 6,7,8 9 F false F 26 13
14 Copertura dei comandi (statement test) ogni nodo del CFG deve essere eseguito almeno una volta durante il testing; è un criterio di copertura debole, che non assicura la copertura sia del ramo true che false di una decisione Copertura delle decisioni (branch test) ciascun arco del CFG deve essere attraversato almeno una volta; ogni decisione è valutata sia nel caso true che false; un limite è legato alle decisioni in cui più condizioni (legate da operatori logici AND ed OR) sono valutate Copertura delle condizioni (condition test) ciascuna condizione nei nodi decisione di un CFG deve essere valutata sia per valori true che false. int check (x);// controlla se un intero è fra 0 e 100 int x; { if ((x>=0) && (x<= 200)) check= true; else check = false; } TC={x=5, x=-5 } valuta la decisione sia per valori True che False, ma non le condizioni Copertura delle decisioni e delle condizioni non basta assicurare la copertura delle condizioni, ma anche quella delle decisioni 27 Criteri di copertura dei cammini Copertura dei cammini (path test) spesso gli errori si verificano eseguendo cammini che includono particolari sequenze di nodi decisione non tutti i cammini eseguibili in un CFG possono essere eseguiti durante il test (un CFG con loop può avere infiniti cammini eseguibili) Copertura dei cammini indipendenti ci si limita ad eseguire un insieme di cammini indipendenti di un CFG, ossia un insieme di cammini in cui nessun cammino è completamente contenuto in un altro dell insieme, nè è la combinazione di altri cammini dell insieme ciascun cammino dell insieme presenterà almeno un arco non presente in qualche altro cammino il numero di cammini indipendenti coincide con la complessità ciclomatica del programma 28 14
15 Complessità ciclomatica di un programma 0 1 Dato un grafo G di n nodi ed e archi il numero ciclomatico è dato da: true true 2 false false V(G) = e- n+ 2 oppure: V(G)= d + 1 d= # nodi branch 3 4 V(G)= 3 =>3 cammini indipendenti Compessità ciclomatica del programma è 3 5 c1= c2= c3= Principi I test vanno pianificati in anticipo I test devono cominciare in piccolo e proseguire in grande Livelli di testing Bisogni del cliente Requisiti Progetto Test di accettazione Test di sistema Test di integrazione Codice Test di unità Modifiche Test di regressione 30 15
16 LIVELLI DI TESTING livello produttore unit testing ( di Unità) integration testing ( di Integrazione) system testing ( di Sistema) livello cooperativo produttore-cliente privilegiato alpha testing beta testing livello cliente o utente acceptance testing ( di accettazione) 31 di unità (..detta anche di modulo..) il testing é applicato isolatamente ad una unità o ad un modulo di un sistema software; obiettivo fondamentale é quello di rilevare errori (logica e dati) nel modulo; prassi diffusa é che esso venga realizzato dal programmatore che ha prodotto l'unità sotto test. unità: elemento definito nel progetto di un sistema software e testabile separatamente; nel testing unità e modulo sono spesso usati come sinonimi
17 d integrazione il testing é applicato ad un aggregato di due o più unità di un sistema software; l'obiettivo é quello di rilevare errori nelle interazioni fra le unità e nelle funzioni che l'aggregato deve assolvere; non é compito dei programmatori che hanno prodotto le unità componenti le unità da integrare sono selezionabili in base a criteri funzionali ricavabili dal progetto (architettura del sistema); partendo da una architettura organizzata gerarchicamente, le integrazioni possono essere realizzate con approccio top-down o bottom-up 33 di sistema il testing é applicato al sistema software completo ed integrato; l'obiettivo è quello di valutare l'adesione del sistema ai requisiti specificati; va effettuato dal team addetto al testing i requisiti del sistema non sono solo le funzionalità esterne; fondamentali sono i requisiti di qualità, stabiliti ad esempio sulla base di un modello di qualità del prodotto opportunamente istanziato 34 17
18 di accettazione testing effettuato sull'intero sistema sulla base di un piano e di procedure approvate dal cliente (o utente); l'obiettivo é quello di mettere il cliente, l'utente o altri a ciò preposti ( collaudatori o enti ad hoc) in condizione di decidere se accettare il prodotto; segna il passaggio del sistema dal produttore all'ambiente operativo;..é più 'una dimostrazione che un test' é a carico del committente; 35 2 livelli di test di accettazione alpha testing uso del sistema da parte di utenti reali ma nell'ambiente di produzione e prima della immissione sul mercato beta testing: installazione ed uso del sistema in ambiente reale prima della immissione sul mercato tipicamente adottati dai produttori di packages per mercato di massa 36 18
19 di programmi orientati agli oggetti I criteri black-box non sono influenzati La struttura OO può avere impatto sui criteri white-box Test di unità operazioni di una classe: stessi criteri applicabili classe di oggetti:sono necessari altri criteri è l oggetto che può essere testato, non la classe all interno di una classe non c è un unico flusso di controllo (a causa dello scambio di messaggi) lo stato di un oggetto influenza il risultato problemi dovuti all uso di ereditarietà problemi legati all uso di binding dinamico 37 Piano di test Documento relativo all intero progetto Struttura specifica delle unità di test (per un dato livello di test) Es. Modulo, gruppi di moduli, programma, sottosistemi, intero sistema Caratteristiche da testare: funzionalità, prestazioni, vincoli di progetto, sicurezza Approccio: criterio di selezione dei test, criterio di terminazione, strumenti Prodotti del test: es. Casi di test, rapporto finale, diario del test, statistiche di copertura Schedulazione: quando effettuare il testing e lo sforzo per attività Allocazione del personale 38 19
20 Specifica dei casi di test Per ogni livello di test n.ro di caso di test input condizione da testare output atteso Effettuato il test, si può completare con output osservato Le specifiche ed i casi di test possono essere riusati per il test di regressione 39 Esecuzione del test Costruzione di Moduli guida (invocano l unità sotto test) Moduli fittizi (sono invocati dall unità sotto test) Modulo guida Unità sotto test Modulo fittizio 40 20
21 Rapporti sul test Diario del test descrive i dettagli del test per come si è svolto effettivamente la specifica dei casi di test può essere completata e usata come diario Riepilogo del test Rivolto al management del progetto numero totale di casi di test eseguiti numero e tipo di malfunzionamenti osservati numero e tipo di difetti scoperti Sommario dei malfunzionamenti Rivolto a chi deve effettuare il debugging o la correzione 41 21
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
DettagliVerifica parte IIA. Test (o analisi dinamica) Mancanza di continuità. Esempio
Test (o analisi dinamica) Verifica parte IIA Rif. Ghezzi et al. 6.3-6.3.3 Consiste nell osservare il comportamento del sistema in un certo numero di condizioni significative Non può (in generale) essere
DettagliIngegneria del Software
Ingegneria del Software Testing - Strategie di del Software Testing del Software Il testing è quell attivit attività di esercizio del software tesa all individuazione dei malfunzionamenti prima della messa
DettagliEsempi 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
DettagliCollaudo e qualità del software Quali test eseguire
Collaudo e qualità del software Relatore Ercole Colonese Roma, Tipologie di test Temi trattati nel libro Modello a V Livelli di testing Tipi di test Test funzionali Test delle funzionalità Test di gestione
DettagliTest del Software. Definizione SCOPO LIMITI DEL TEST
Definizione! Verifica dinamica del comportamento del software rispetto a quello atteso, utilizzando un insieme finito di casi di test, appropriatamente selezionati nel dominio di tutti i casi possibili
DettagliUniversità degli Studi di Parma Facoltà di Scienze MM. FF. NN. Corso di Laurea in Informatica. Ingegneria del Software.
Università degli Studi di Parma Facoltà di Scienze MM. FF. NN. Corso di Laurea in Informatica Ingegneria del Software La fase di Test Giulio Destri Ing. del Software: Test - 1 Scopo del modulo Definire
DettagliLezione 8. La macchina universale
Lezione 8 Algoritmi La macchina universale Un elaboratore o computer è una macchina digitale, elettronica, automatica capace di effettuare trasformazioni o elaborazioni su i dati digitale= l informazione
DettagliIngegneria del Software
Ingegneria del Software Testing - Tecniche di Collaudo del Software Collaudabilità Un attributo di qualità del software E il grado di semplicità con cui il software può essere collaudato Si compone di
DettagliSono casi particolari di MCF : SPT (cammini minimi) non vi sono vincoli di capacità superiore (solo x ij > 0) (i, j) A : c ij, costo di percorrenza
Il problema di flusso di costo minimo (MCF) Dati : grafo orientato G = ( N, A ) i N, deficit del nodo i : b i (i, j) A u ij, capacità superiore (max quantità di flusso che può transitare) c ij, costo di
DettagliIndice generale. OOA Analisi Orientata agli Oggetti. Introduzione. Analisi
Indice generale OOA Analisi Orientata agli Oggetti Introduzione Analisi Metodi d' analisi Analisi funzionale Analisi del flusso dei dati Analisi delle informazioni Analisi Orientata agli Oggetti (OOA)
DettagliLE CARTE DI CONTROLLO (4)
LE CARTE DI CONTROLLO (4) Tipo di carta di controllo Frazione difettosa Carta p Numero di difettosi Carta np Dimensione campione Variabile, solitamente >= 50 costante, solitamente >= 50 Linea centrale
DettagliVerifica e Validazione (V & V) Software e difetti. Processo di V & V. Test
Software e difetti Il software con difetti è un grande problema I difetti nel software sono comuni Come sappiamo che il software ha qualche difetto? Conosciamo tramite qualcosa, che non è il codice, cosa
DettagliCorrettezza. Corso di Laurea Ingegneria Informatica Fondamenti di Informatica 1. Dispensa 10. A. Miola Novembre 2007
Corso di Laurea Ingegneria Informatica Fondamenti di Informatica 1 Dispensa 10 Correttezza A. Miola Novembre 2007 http://www.dia.uniroma3.it/~java/fondinf1/ Correttezza 1 Contenuti Introduzione alla correttezza
DettagliIL SOFTWARE SECONDO LA NORMA UNI EN ISO 13849-1:2008 (IIA PARTE) 1
Ernesto Cappelletti (ErnestoCappelletti) IL SOFTWARE SECONDO LA NORMA UNI EN ISO 13849-1:2008 (IIA PARTE) 6 April 2012 1. Requisiti per la scrittura del software secondo la norma UNI EN ISO 13849-1:2008
DettagliConcetti di base di ingegneria del software
Concetti di base di ingegneria del software [Dalle dispense del corso «Ingegneria del software» del prof. A. Furfaro (UNICAL)] Principali qualità del software Correttezza Affidabilità Robustezza Efficienza
DettagliRicerca Operativa e Logistica
Ricerca Operativa e Logistica Dott. F.Carrabs e Dott.ssa M.Gentili A.A. 2011/2012 Lezione 10: Variabili e vincoli logici Variabili logiche Spesso nei problemi reali che dobbiamo affrontare ci sono dei
DettagliLa Metodologia adottata nel Corso
La Metodologia adottata nel Corso 1 Mission Statement + Glossario + Lista Funzionalià 3 Descrizione 6 Funzionalità 2 Schema 4 Schema 5 concettuale Logico EA Relazionale Codice Transazioni In PL/SQL Schema
DettagliGenerazione Automatica di Asserzioni da Modelli di Specifica
UNIVERSITÀ DEGLI STUDI DI MILANO BICOCCA FACOLTÀ DI SCIENZE MATEMATICHE FISICHE E NATURALI Corso di Laurea Magistrale in Informatica Generazione Automatica di Asserzioni da Modelli di Specifica Relatore:
DettagliSistemi Operativi mod. B. Sistemi Operativi mod. B A B C A B C P 1 2 0 0 P 1 1 2 2 3 3 2 P 2 3 0 2 P 2 6 0 0 P 3 2 1 1 P 3 0 1 1 < P 1, >
Algoritmo del banchiere Permette di gestire istanze multiple di una risorsa (a differenza dell algoritmo con grafo di allocazione risorse). Ciascun processo deve dichiarare a priori il massimo impiego
DettagliIntroduzione ai tipi di dato astratti: applicazione alle liste
Universitàdegli Studi di L Aquila Facoltàdi Scienze M.F.N. Corso di Laurea in Informatica Corso di Laboratorio di Algoritmi e Strutture Dati A.A. 2005/2006 Introduzione ai tipi di dato astratti: applicazione
DettagliSistemi elettronici per la sicurezza dei veicoli: presente e futuro. Il ruolo della norma ISO 26262 per la Sicurezza Funzionale
La Sicurezza Funzionale del Software Prof. Riccardo Sisto Ordinario di Sistemi di Elaborazione delle Informazioni Dipartimento di Automatica e Informatica Sicurezza Funzionale del Vari Aspetti Sicurezza
DettagliVerifica e validazione della qualità del sw
Verifica e validazione della qualità del sw Tecniche di Programmazione Lez. 07 Università di Firenze a.a. 2009/10, I semestre 1/40 contenuti Termini e definizioni Tecniche rispetto alle caratteristiche
DettagliA intervalli regolari ogni router manda la sua tabella a tutti i vicini, e riceve quelle dei vicini.
Algoritmi di routing dinamici (pag.89) UdA2_L5 Nelle moderne reti si usano algoritmi dinamici, che si adattano automaticamente ai cambiamenti della rete. Questi algoritmi non sono eseguiti solo all'avvio
DettagliPiano di gestione della qualità
Piano di gestione della qualità Pianificazione della qualità Politica ed obiettivi della qualità Riferimento ad un eventuale modello di qualità adottato Controllo della qualità Procedure di controllo.
DettagliGestione parte IIC. Diagrammi di Gantt. Esempio. Schemi di scomposizione delle attività
Schemi di scomposizione delle attività Gestione parte IIC Work Breakdown Structures (WBS) Struttura ad albero: radice: attività principale i nodi figli rappresentano la scomposizione del nodo padre le
DettagliTECNICHE DI SIMULAZIONE
TECNICHE DI SIMULAZIONE INTRODUZIONE Francesca Mazzia Dipartimento di Matematica Università di Bari a.a. 2004/2005 TECNICHE DI SIMULAZIONE p. 1 Introduzione alla simulazione Una simulazione è l imitazione
DettagliPianificazione e progettazione
Pianificazione e progettazione L analisi preventiva degli eventi e delle loro implicazioni rappresenta una necessità sempre più forte all interno di tutte le organizzazioni variamente complesse. L osservazione
DettagliOrganizzazione degli archivi
COSA E UN DATA-BASE (DB)? è l insieme di dati relativo ad un sistema informativo COSA CARATTERIZZA UN DB? la struttura dei dati le relazioni fra i dati I REQUISITI DI UN DB SONO: la ridondanza minima i
DettagliDescrizione di un algoritmo
Descrizione di un algoritmo Un algoritmo descrive due tipi fondamentali di oper: calcoli ottenibili tramite le oper primitive su tipi di dato (valutazione di espressioni) che consistono nella modifica
DettagliSCENARIO. Personas. 2010 ALICE Lucchin / BENITO Condemi de Felice. All rights reserved.
SCENARIO Personas SCENARIO È una delle tecniche che aiuta il designer a far emergere le esigente dell utente e il contesto d uso. Gli scenari hanno un ambientazione, attori (personas) con degli obiettivi,
DettagliSoftware Testing. Lezione 2 Livelli di test. Federica Spiga. federica_spiga@yahoo.it. A.A. 2010-2011 Autori: F.Rabini/F.Spiga
Software Testing Lezione 2 Livelli di test Federica Spiga federica_spiga@yahoo.it A.A. 2010-2011 Autori: F.Rabini/F.Spiga 1 2 Livelli di test Unit Testing Integration Testing System Testing Unit Testing
DettagliDatabase. Si ringrazia Marco Bertini per le slides
Database Si ringrazia Marco Bertini per le slides Obiettivo Concetti base dati e informazioni cos è un database terminologia Modelli organizzativi flat file database relazionali Principi e linee guida
DettagliIn legenda sono riportate le fasi R, P, C/T e I/SA come specificato nella norma ISO/IEC 12207.
Durante le attività di sviluppo del software applicativo è spesso utilizzato un ciclo di vita incrementale il cui schema di processo è sintetizzato nella figura seguente. In legenda sono riportate le fasi
DettagliProgettazione di Basi di Dati
Progettazione di Basi di Dati Prof. Nicoletta D Alpaos & Prof. Andrea Borghesan Entità-Relazione Progettazione Logica 2 E il modo attraverso il quale i dati sono rappresentati : fa riferimento al modello
DettagliProcessi principali per il completamento del progetto
Piano di progetto È un documento versionato, redatto dal project manager per poter stimare realisticamente le risorse, i costi e i tempi necessari alla realizzazione del progetto. Il piano di progetto
DettagliSistemi di misurazione e valutazione delle performance
Sistemi di misurazione e valutazione delle performance 1 SVILUPPO DELL'INTERVENTO Cos è la misurazione e valutazione delle performance e a cosa serve? Efficienza Efficacia Outcome Requisiti minimi Indicatori
Dettagli13: Il test del software. 13Test.1
13: Il test del software 13Test.1 Concetti fondamentali Costo estremamente elevato Filosofia distruttiva Eseguire un programma con l intento di trovare degli errori; Un caso di test e ben studiato se ha
DettagliTrasformazione dei Processi in Progetti DIB 1
Trasformazione dei Processi in Progetti DIB 1 Generalità DIB 2 Progetto PROGETTO: esecuzione di un insieme di attività in un tempo e con risorse limitati per raggiungere uno specifico scopo. A causa dell
DettagliPROJECT MANAGEMENT SERVIZI DI PROJECT MANAGEMENT DI ELEVATA PROFESSIONALITÀ
PROJECT MANAGEMENT SERVIZI DI PROJECT MANAGEMENT DI ELEVATA PROFESSIONALITÀ SERVIZI DI PROJECT MANAGEMENT CENTRATE I VOSTRI OBIETTIVI LA MISSIONE In qualità di clienti Rockwell Automation, potete contare
DettagliFasi di creazione di un programma
Fasi di creazione di un programma 1. Studio Preliminare 2. Analisi del Sistema 6. Manutenzione e Test 3. Progettazione 5. Implementazione 4. Sviluppo 41 Sviluppo di programmi Per la costruzione di un programma
DettagliCAPITOLO 8 LA VERIFICA D IPOTESI. I FONDAMENTI
VERO FALSO CAPITOLO 8 LA VERIFICA D IPOTESI. I FONDAMENTI 1. V F Un ipotesi statistica è un assunzione sulle caratteristiche di una o più variabili in una o più popolazioni 2. V F L ipotesi nulla unita
DettagliIL PROJECT MANAGEMENT
IL PROJECT MANAGEMENT Scopi e campi di applicazione La pianificazione del progetto Le tecniche di pianificazione del progetto Le tecniche di pianificazione dei tempi La gestione e il controllo del progetto
DettagliPROCEDURA OPERATIVA PER LA GESTIONE DELLO SVILUPPO DEL SOFTWARE BM-33T
Proc. 23 Pag. 1 di 8 PROCEDURA OPERATIVA PER LA GESTIONE DELLO SVILUPPO DEL SOFTWARE BM-33T 1. SCOPO... 2 2. APPLICABILITÀ... 2 3. DOCUMENTI DI RIFERIMENTO... 2 3.1. Norme e leggi di riferimento... 2 3.2.
DettagliCorso di. Analisi e contabilità dei costi
Corso di Analisi e Contabilità dei Costi Prof. 1_I costi e il sistema di controllo Perché analizzare i costi aziendali? La CONOSCENZA DEI COSTI (formazione, composizione, comportamento) utile EFFETTUARE
DettagliEsercizi su. Funzioni
Esercizi su Funzioni ๒ Varie Tracce extra Sul sito del corso ๓ Esercizi funz_max.cc funz_fattoriale.cc ๔ Documentazione Il codice va documentato (commentato) Leggibilità Riduzione degli errori Manutenibilità
DettagliTesti di Esercizi e Quesiti 1
Architettura degli Elaboratori, 2009-2010 Testi di Esercizi e Quesiti 1 1. Una rete logica ha quattro variabili booleane di ingresso a 0, a 1, b 0, b 1 e due variabili booleane di uscita z 0, z 1. La specifica
DettagliI modelli normativi. I modelli per l eccellenza. I modelli di gestione per la qualità. ! I modelli normativi. ! I modelli per l eccellenza
1 I modelli di gestione per la qualità I modelli normativi I modelli per l eccellenza Entrambi i modelli si basano sull applicazione degli otto principi del TQM 2 I modelli normativi I modelli normativi
DettagliMODELLO RELAZIONALE. Introduzione
MODELLO RELAZIONALE Introduzione E' stato proposto agli inizi degli anni 70 da Codd finalizzato alla realizzazione dell indipendenza dei dati, unisce concetti derivati dalla teoria degli insiemi (relazioni)
Dettagli12 - Introduzione alla Programmazione Orientata agli Oggetti (Object Oriented Programming OOP)
12 - Introduzione alla Programmazione Orientata agli Oggetti (Object Oriented Programming OOP) Programmazione e analisi di dati Modulo A: Programmazione in Java Paolo Milazzo Dipartimento di Informatica,
DettagliScheduling della CPU. Sistemi multiprocessori e real time Metodi di valutazione Esempi: Solaris 2 Windows 2000 Linux
Scheduling della CPU Sistemi multiprocessori e real time Metodi di valutazione Esempi: Solaris 2 Windows 2000 Linux Sistemi multiprocessori Fin qui si sono trattati i problemi di scheduling su singola
DettagliBasi di dati. Il Modello Relazionale dei Dati. K. Donno - Il Modello Relazionale dei Dati
Basi di dati Il Modello Relazionale dei Dati Proposto da E. Codd nel 1970 per favorire l indipendenza dei dati Disponibile come modello logico in DBMS reali nel 1981 (non è facile realizzare l indipendenza
DettagliSoftware di sistema e software applicativo. I programmi che fanno funzionare il computer e quelli che gli permettono di svolgere attività specifiche
Software di sistema e software applicativo I programmi che fanno funzionare il computer e quelli che gli permettono di svolgere attività specifiche Software soft ware soffice componente è la parte logica
Dettagli11. Evoluzione del Software
11. Evoluzione del Software Andrea Polini Ingegneria del Software Corso di Laurea in Informatica (Ingegneria del Software) 11. Evoluzione del Software 1 / 21 Evoluzione del Software - generalità Cosa,
DettagliStimare il WCET Metodo classico e applicazione di un algoritmo genetico
Stimare il WCET Metodo classico e applicazione di un algoritmo genetico Sommario Introduzione Definizione di WCET Importanza del WCET Panoramica dei classici metodi per calcolare il WCET [1] Utilizzo di
DettagliIl sistema monetario
Il sistema monetario Premessa: in un sistema economico senza moneta il commercio richiede la doppia coincidenza dei desideri. L esistenza del denaro rende più facili gli scambi. Moneta: insieme di tutti
DettagliIl SOFTWARE DI BASE (o SOFTWARE DI SISTEMA)
Il software Software Il software Il software è la sequenza di istruzioni che permettono ai computer di svolgere i loro compiti ed è quindi necessario per il funzionamento del calcolatore. Il software può
DettagliI COSTI DELLA SICUREZZA INFORMATICA IN AMBITO AZIENDALE. Best Practices di Organizzazione per la Sicurezza delle Informazioni.
I COSTI DELLA SICUREZZA INFORMATICA IN AMBITO AZIENDALE Best Practices di Organizzazione per la Sicurezza delle Informazioni Roberto Gattoli Sicurezza delle Informazioni Informatica La sicurezza delle
DettagliTXT e-solutions. Passion for Quality. Banking&Finance
TXT e-solutions Passion for Quality Banking&Finance TXT: passion for quality La qualità del software è passione metodologia esperienza conoscenza dei processi Passione, metodologia, esperienza e conoscenza
DettagliRiepilogo delle modifiche di PA-DSS dalla versione 2.0 alla 3.0
Settore delle carte di pagamento (PCI) Standard di protezione dei dati per le applicazioni di pagamento () Riepilogo delle modifiche di dalla versione 2.0 alla 3.0 Novembre 2013 Introduzione Il presente
DettagliPronto Esecuzione Attesa Terminazione
Definizione Con il termine processo si indica una sequenza di azioni che il processore esegue Il programma invece, è una sequenza di azioni che il processore dovrà eseguire Il processo è quindi un programma
DettagliAUDITOR D.Lgs 231/01. Seminario ACIQ SICEV Sessione di Aggiornamento Dedicata ai Registri SICEV SICEP. Milano 28 Settembre 2012.
AUDITOR D.Lgs 231/01 Seminario ACIQ SICEV Sessione di Aggiornamento Dedicata ai Registri SICEV SICEP Milano 28 Settembre 2012 Rosso Claudio 0 INDICE 01. D.Lgs. 231/01: Implicazioni Penali e strumenti Organizzativi
DettagliBrochure Internet. Versione 2010.1 The Keyrules Company s.r.l. Pagina 2 di 8
Ogni organizzazione possiede un sistema di regole che la caratterizzano e che ne assicurano il funzionamento. Le regole sono l insieme coordinato delle norme che stabiliscono come deve o dovrebbe funzionare
DettagliIl Testing. Ing. Emilio Spinicci 24/03/2002 1
Il Testing Ing. Emilio Spinicci 24/03/2002 1 Introduzione Cenni sulla teoria del testing Unit Testing - test funzionale - test strutturale - misure di copertura IPL Cantata 3.3 - Descrizione e esempi di
DettagliIndice. pagina 2 di 10
LEZIONE PROGETTAZIONE ORGANIZZATIVA DOTT.SSA ROSAMARIA D AMORE Indice PROGETTAZIONE ORGANIZZATIVA---------------------------------------------------------------------------------------- 3 LA STRUTTURA
DettagliBusiness Process Management
Business Process Management Comprendere, gestire, organizzare e migliorare i processi di business Caso di studio a cura della dott. Danzi Francesca e della prof. Cecilia Rossignoli 1 Business process Un
DettagliIntroduzione ai Metodi Formali
Intruzione ai Meti Formali Sistemi software anche molto complessi regolano la vita quotidiana, anche in situazioni life-critical (e.g. avionica) e business-critical (e.g. operazioni bancarie). Esempi di
DettagliUn esempio di applicazione della programmazione lineare intera all ingegneria del software: stima del worst-case execution time di un programma
Un esempio di applicazione della programmazione lineare intera all ingegneria del software: stima del worst-case execution time di un programma Corso di Ricerca Operativa per il Corso di Laurea Magistrale
DettagliVerifica e Validazione del Simulatore
Verifica e del Simulatore I 4 passi principali del processo simulativo Formulare ed analizzare il problema Sviluppare il Modello del Sistema Raccolta e/o Stima dati per caratterizzare l uso del Modello
DettagliEsercizi Capitolo 6 - Alberi binari di ricerca
Esercizi Capitolo 6 - Alberi binari di ricerca Alberto Montresor 23 settembre 200 Alcuni degli esercizi che seguono sono associati alle rispettive soluzioni. Se il vostro lettore PDF lo consente, è possibile
DettagliLinee guida per l assicurazione della qualità nelle piccole e medie imprese di revisione
Linee guida per l assicurazione della qualità nelle piccole e medie imprese di revisione Le presenti linee guida sul controllo di qualità sono la messa in pratica delle esigenze descritte nello SR 220
DettagliLa gestione manageriale dei progetti
PROGETTAZIONE Pianificazione, programmazione temporale, gestione delle risorse umane: l organizzazione generale del progetto Dimitri Grigoriadis La gestione manageriale dei progetti Per organizzare il
DettagliIl sapere tende oggi a caratterizzarsi non più come un insieme di contenuti ma come un insieme di metodi e di strategie per risolvere problemi.
E. Calabrese: Fondamenti di Informatica Problemi-1 Il sapere tende oggi a caratterizzarsi non più come un insieme di contenuti ma come un insieme di metodi e di strategie per risolvere problemi. L'informatica
DettagliUniversità degli Studi di Parma Facoltà di Scienze MM. FF. NN. Corso di Laurea in Informatica. Ingegneria del Software. La fase di Analisi
Università degli Studi di Parma Facoltà di Scienze MM. FF. NN. Corso di Laurea in Informatica Ingegneria del Software La fase di Analisi Giulio Destri Ing. del software: Analisi - 1 Scopo del modulo Definire
DettagliLo sviluppo del software: usi e clausole commentate Aspetti Tecnici. Prof. Franco Sirovich Dipartimento di Informatica Università di Torino
Lo sviluppo del software: usi e clausole commentate Aspetti Tecnici Prof. Franco Sirovich Dipartimento di Informatica Università di Torino Ipotesi di Fondo Software sviluppato su misura Non prêt à porter
DettagliTitolo della tesi Testing Black Box di un Web Service : sperimentazione su di un servizio con stato
tesi di laurea Titolo della tesi Testing Black Box di un Web Service : sperimentazione su di un servizio con stato Anno Accademico 2005/2006 relatore Ch.mo prof. Porfirio Tramontana candidato Giuseppe
DettagliISO 9000:2000 Assicurazione della qualità Parte della gestione per la qualità mirata a dare fiducia che i requisiti per la qualità saranno
ISO 9000:2000 Assicurazione della qualità Parte della gestione per la qualità mirata a dare fiducia che i requisiti per la qualità saranno soddisfatti. Azione correttiva Azione per eliminare la causa di
DettagliSpecifiche dello sviluppo di un progetto software e indicazioni sulla documentazione e sulle modalità di esercizio delle prestazioni
Specifiche dello sviluppo di un progetto software e indicazioni sulla documentazione e sulle modalità di esercizio delle prestazioni Redatto dalla Commissione per l elettronica, l informatica e la telematica
DettagliLA REVISIONE LEGALE DEI CONTI La comprensione
LA REVISIONE LEGALE DEI CONTI La comprensione dell impresa e del suo contesto e la valutazione dei rischi di errori significativi Ottobre 2013 Indice 1. La comprensione dell impresa e del suo contesto
DettagliPROVA FINALE V. AULETTA G. PERSIANO ALGORITMI II - -MAGIS INFO
PROVA FINALE V. AULETTA G. PERSIANO ALGORITMI II - -MAGIS INFO 1. Load Balancing Un istanza del problema del load balancing consiste di una sequenza p 1,..., p n di interi positivi (pesi dei job) e un
DettagliModelli di Programmazione Lineare e Programmazione Lineare Intera
Modelli di Programmazione Lineare e Programmazione Lineare Intera 1 Azienda Dolciaria Un azienda di cioccolatini deve pianificare la produzione per i prossimi m mesi. In ogni mese l azienda ha a disposizione
DettagliOggetti Lezione 3. aspetti generali e definizione di classi I
Programmazione a Oggetti Lezione 3 Il linguaggio Java: aspetti generali e definizione di classi I Sommario Storia e Motivazioni Definizione di Classi Campi e Metodi Istanziazione di oggetti Introduzione
DettagliCorso di Informatica
Corso di Informatica Modulo T3 1-Sottoprogrammi 1 Prerequisiti Tecnica top-down Programmazione elementare 2 1 Introduzione Lo scopo di questa Unità è utilizzare la metodologia di progettazione top-down
DettagliSistema Operativo. Fondamenti di Informatica 1. Il Sistema Operativo
Sistema Operativo Fondamenti di Informatica 1 Il Sistema Operativo Il Sistema Operativo (S.O.) è un insieme di programmi interagenti che consente agli utenti e ai programmi applicativi di utilizzare al
DettagliIL SISTEMA INFORMATIVO
LEZIONE 15 DAL MODELLO DELLE CONDIZIONI DI EQUILIBRIO AL MODELLO CONTABILE RIPRESA DEL CONCETTO DI SISTEMA AZIENDALE = COMPLESSO DI ELEMENTI MATERIALI E NO CHE DIPENDONO RECIPROCAMENTE GLI UNI DAGLI ALTRI
DettagliMANUALE PARCELLA FACILE PLUS INDICE
MANUALE PARCELLA FACILE PLUS INDICE Gestione Archivi 2 Configurazioni iniziali 3 Anagrafiche 4 Creazione prestazioni e distinta base 7 Documenti 9 Agenda lavori 12 Statistiche 13 GESTIONE ARCHIVI Nella
DettagliNorme per l organizzazione - ISO serie 9000
Norme per l organizzazione - ISO serie 9000 Le norme cosiddette organizzative definiscono le caratteristiche ed i requisiti che sono stati definiti come necessari e qualificanti per le organizzazioni al
DettagliParte 4. Progettazione di una simulazione
Parte 4 Progettazione di una simulazione Fasi di uno studio di simulazione l approccio a cascata Problema Analisi e validazione Progettazione e test Sistema Modello concettuale Programma di simulazione
DettagliLa Formazione: elemento chiave nello Sviluppo del Talento. Enzo De Palma Business Development Director
La Formazione: elemento chiave nello Sviluppo del Talento Enzo De Palma Business Development Director Gennaio 2014 Perché Investire nello Sviluppo del Talento? http://peterbaeklund.com/ Perché Investire
DettagliCap.1 - L impresa come sistema
Cap.1 - L impresa come sistema Indice: L impresa come sistema dinamico L impresa come sistema complesso e gerarchico La progettazione del sistema impresa Modelli organizzativi per la gestione Proprietà
DettagliGuida Compilazione Piani di Studio on-line
Guida Compilazione Piani di Studio on-line SIA (Sistemi Informativi d Ateneo) Visualizzazione e presentazione piani di studio ordinamento 509 e 270 Università della Calabria (Unità organizzativa complessa-
DettagliL analisi dei rischi: l aspetto statistico Ing. Pier Giorgio DELLA ROLE Six Sigma Master Black Belt
L analisi dei rischi: l aspetto statistico Ing. Pier Giorgio DELL ROLE Six Sigma Master lack elt Dicembre, 009 Introduzione Nell esecuzione dei progetti Six Sigma è di fondamentale importanza sapere se
DettagliTecniche di Simulazione: Introduzione. N. Del Buono:
Tecniche di Simulazione: Introduzione N. Del Buono: 2 Che cosa è la simulazione La SIMULAZIONE dovrebbe essere considerata una forma di COGNIZIONE (COGNIZIONE qualunque azione o processo per acquisire
DettagliFollia è fare quel che si è sempre fatto aspettandosi risultati diversi
I Sistemi di gestione Follia è fare quel che si è sempre fatto aspettandosi risultati diversi Jim Kearns Relatore: Sandro Vanin Qualita, Sicurezza, Ambiente Schemi di certificazione. ISO 9001, OHSAS 18001,
DettagliRegistratori di Cassa
modulo Registratori di Cassa Interfacciamento con Registratore di Cassa RCH Nucleo@light GDO BREVE GUIDA ( su logiche di funzionamento e modalità d uso ) www.impresa24.ilsole24ore.com 1 Sommario Introduzione...
DettagliSgravi Contrattazione di Secondo Livello: dettaglio dei Controlli, dei Formati e dei messaggi di errore.
Istituto Nazionale Previdenza Sociale Sgravi Contrattazione di Secondo Livello: dettaglio dei Controlli, dei Formati e dei messaggi di errore. Vers. 1.0 Pagina 1 di 15 Sommario 1 STORIA DELLE REVISIONI...
DettagliIl campionamento statistico
Lezione 13 Gli strumenti per il miglioramento della Qualità Il campionamento statistico Aggiornamento: 19 novembre 2003 Il materiale didattico potrebbe contenere errori: la segnalazione e di questi errori
DettagliAutomazione Industriale (scheduling+mms) scheduling+mms. adacher@dia.uniroma3.it
Automazione Industriale (scheduling+mms) scheduling+mms adacher@dia.uniroma3.it Introduzione Sistemi e Modelli Lo studio e l analisi di sistemi tramite una rappresentazione astratta o una sua formalizzazione
DettagliTest di Apprendimento
Normativa di riferimento Corso NORMATIVA AERONAUTICA Slide Unità 01 : Ambiente normativo volontario ISO 9000 & Normativa di altri Enti Terzi Il questionario consiste in 20 domande La durata del TEST è
DettagliProgetto Lauree Scientifiche Liceo Classico L.Ariosto, Ferrara Dipartimento di Matematica Università di Ferrara 24 Gennaio 2012
Progetto Lauree Scientifiche Liceo Classico L.Ariosto, Ferrara Dipartimento di Matematica Università di Ferrara 24 Gennaio 2012 Concetti importanti da (ri)vedere Programmazione imperativa Strutture di
Dettagli