SCD IS. Processi SW. Processi Software. Ciclo di vita del SW 1. Ciclo di vita del SW 2. Parole chiave 3

Documenti analoghi
SCD IS. Processi Software. UniPD Ingegneria del Software mod. A 1. Parole chiave 3. Modelli di ciclo di vita.

SCD IS. Processi SW. Processi Software. Glossario 4. Ciclo di vita del SW 2. Ciclo di vita del SW 1

SCD IS. Processi SW. Processi Software. UniPD Ingegneria del Software mod. A 1. Parole chiave 3. Parole chiave 4. Modelli di ciclo di vita

Tecniche di Programmazione 2009/10

Definizioni - 1. Ingegneria del Software 2 2. Processi di sviluppo software. Ingegneria del Software 2 Processi di sviluppo software

SCD IS. Documentazione. Documentazione. Perché documentare... Valutazione quantitativa 1. Domande ricorrenti 1. Perché documentare

SCD IS. Accertamento di qualità. Accertamento di qualità. UniPD /10 - Ingegneria del Software mod. B 1. Premesse 1. Premesse 2.

SCD IS. Processi software. Processi Software. UniPD Ingegneria del Software mod. A 1. Definizioni. Modelli di ciclo di vita

Il ciclo di vita del SW

Corso di Laurea Triennale in Ingegneria Informatica Ingegneria del software. Processo software. Marina Mongiello. il processo

Il ciclo di vita del SW

Sviluppo e applicazione di un sistema di gestione dell'energia a edifici condominiali, secondo UNI CEI EN ISO 50001:2011

Il ciclo di vita del SW

La famiglia ISO 9000: il gruppo coerente

Università di Bergamo Dip. di Ingegneria gestionale, dell'informazione e della produzione INGEGNERIA DEL SOFTWARE. Paolo Salvaneschi A2_2 V3.

ACCREDITAMENTO LABORATORI DI ANALISI UNI CEI EN ISO/IEC 17025:2005. Dr.ssa Eletta Cavedoni Cosmolab srl Tortona

ISO 9001:2000. Norma ISO 9001:2000. Sistemi di gestione per la qualita UNI EN ISO 9001

IS Corso di Ingegneria del Software 1

Kit Documentale Qualità UNI EN ISO 9001:2015. Templates modificabili di Manuale, Procedure e Modulistica. Nuova versione 3.

In altri termini cos è

Gradi di libertà. Ingegneria del Software 2 5. Metodiche standard di sviluppo industriale

Manuale della Qualità. QUALITÀ Pag. 1 di 10

Esperienza del Sistema di Gestione per la Qualità della Facoltà di Scienze Agrarie e Alimentari. Roberto Rovelli Alberto Tamburini

L ORGANIZZAZIONE PER PROCESSI COME SUPPORTO PER LA GESTIONE DELLA PUBBLICA AMMINISTRAZIONE. Relatore: GABRIELE DE SIMONE

Il ciclo di vita del SW

Presentazione ragionata del corso

IS Corso di Ingegneria del Software 1

Oggetto Progetto Responsabile di progetto GESTIONE DELLA MODIFICA

Modelli di processo. Marina Zanella - Ingegneria del Software Processo 1

IS Corso di Ingegneria del Software 1

TERMINI E DEFINIZIONI

Corso di Ingegneria del Software. Modelli di produzione del software

INTRODUZIONE ALLA QUALITA. Introduzione alla Qualità 1

Lo sviluppo del progetto informatico

Con Giulia & Angela ricapitoliamo I modelli di organizzazione e di gestione della salute e sicurezza sul lavoro

Autovalutazione di Istituto Struttura e funzione del RAV e dei Piani di Miglioramento

UniPD Ingegneria del Software mod. A 1

Materiale didattico. Sommario

ENERGY MANAGEMENT La nostra proposta per un percorso di: efficientamento energetico partecipato

SOLUZIONI PER L EFFICIENZA ENERGETICA

Gestione dello sviluppo software Modelli Base

Configuration Management secondo l ISO

SCD IS. Premesse al Corso. UniPD Ingegneria del Software mod. A 1. Ingegneria del software 1. Parole chiave 1. Ingegneria del software 2

Via Brianza, Seguici GESTIRE Oriago di Mira (Ve) /divisione-energia L ENERGIA

RRS The Mythical Man-Month

Sistemi di Gestione per la Qualità e della Sicurezza Informatica

Comune Fabriano. Protocollo Generale, Servizio Progettazione, Servizio Edilizia Privata. Progetto di Certificazione secondo le norme ISO 9000

ACM CERT S.r.l. ACM CERT S.r.l. Corso Auditor/Lead Auditor ISO 9001:2015. Organismo di Certificazione. SGQ n. 135A

QUALITA QUALITA GARANZI A

EQDL Start. Approccio per processi. Temi: Individuazione e descrizione dei processi. Syllabus da a

Qualità dei processi software

Qualità. Qualità. L impresa guidata dal cliente. Realizzare un sistema qualità GOVERNARE L IMPRESA NELL ECONOMIA DELL INCERTEZZA

CICLO DI VITA DEL PROGETTO

Sicurezza di sistema. Sicurezza: definizioni - 1. Sicurezza: definizioni - 2. Livelli di criticità - 1. Sicurezza: definizioni - 3

Il modello INDIRE del Piano di Miglioramento

SCD IS. Regole del Progetto Didattico. Progetto didattico. Processi di revisione 2. Processi di revisione 1

Syllabus Start rev. 1.03

RAPPORTO DELL AUDIT INTERNO Audit _2 / Rev. 0

AREA C: SISTEMI INTEGRATI

Ingegneria del Software

P r e f a z i o n e. Piano dell opera

Organismo Indipendente di Valutazione della performance (OIV)

Syllabus start rev. 1.04

Corso di Ingegneria del Software. Modelli di produzione del software

Introduzione al corso

Come applicare la ISO 9001:2015 IV parte

Corso di Ingegneria del Software

MANUALE DELLA QUALITA (Dispositivi Medici)

L evoluzione normativa dei sistemi di comando

Processi (di sviluppo del) software. Fase di Analisi dei Requisiti. Esempi di Feature e Requisiti. Progettazione ed implementazione

INDICE PREMESSA 1 INTRODUZIONE 2 1 SCOPO E CAMPO DI APPLICAZIONE 5 2 RIFERIMENTI NORMATIVI 6 3 TERMINI E DEFINIZIONI 6

SCD IS. Ingegneria dei requisiti. Ingegneria dei Requisiti. Definizioni 2. Definizioni 1. Attività necessarie 1. V & V = Qualifica.

MANUALE SISTEMA DI GESTIONE INTEGRATO QUALITA E AMBIENTE

Modulo 1 Concetti di base della Qualità

La progettazione di un evento secondo il Sistema Gestione Qualità

software Progettazione software IS Corso di Ingegneria del Software 1 Contenuti Progettare prima di produrre Dall analisi alla progettazione

SCD IS. Analisi dei requisiti. Analisi dei Requisiti. Glossario 10. Attività necessarie. Glossario 9. V & V = Qualifica. Verifica

Contenuto del documento: Premessa...3 Principi Generali...3 Approccio Metodologico...3 Applicazione del Modello...5 Struttura del Modello...5 Definizi

REPERTORIO DELLE QUALIFICAZIONI PROFESSIONALI DELLA REGIONE CAMPANIA

Le verifiche tecniche del progetto di efficienza energetica ING. GIOVANNI MARAVIGLIA RESPONSABILE TECNICO V.P.E. S.R.L.

Sicurezza di sistema. Sicurezza: definizioni - 2. Sicurezza: definizioni - 1. Livelli di criticità - 1. Sicurezza: definizioni - 3

SISTEMI DI GESTIONE PER LA QUALITA (SGQ)

Concetti Generali. Requisiti Software. Definizione di Requisiti

PIANO DI STUDIO DELLA DISCIPLINA DISCIPLINA: Tecnologia e Progettazione di Sistemi Informatici e di Telecomunicazioni

Il TQM. Pier Giorgio Gabassi, Giantullio Perin, Maria Lisa Garzitto. A cura di

I criteri di qualità in laboratorio Dott.ssa Rosaria Lucchini

ENERGY MANAGEMENT La nostra proposta per un percorso di: EFFICIENTAMENTO ENERGETICO PARTECIPATO

Manuale del Sistema di Gestione Integrato per la Qualità e l Ambiente INDICE

Kit Documentale Qualità UNI EN ISO 9001:2015

Organizzazioni che forniscono dispositivi medici e relativi servizi

MANUALE DELLA QUALITÀ Pag. 1 di 9

Il ruolo delle diagnosi energetiche nelle imprese

Il paradigma Object Oriented. Iolanda Salinari

Studio della Qualità delle Misure in un Laboratorio di Idrodinamica Navale Rev. 0 Cap. 9 data 11/12/2003

Sistemi di Gestione INTEGRATI. Riccardo Beltramo Anno accademico

Transcript:

Ciclo di vita del SW 1 Processi SW Anno accademico 2015/16 Ingegneria del Software mod. A Tullio Vardanega, tullio.vardanega@math.unipd.it SCD IS Conviene vederlo come una macchina a stati... Gli stati rappresentano il grado di maturazione del prodotto SW Concezione sviluppo utilizzo ritiro Le archi (transizioni di stato) sono l insieme di attività svolte sul prodotto che servono a farlo avanzare nel grado di maturazione Specifici obblighi (contratti), regole (standard) e strategie determinano La natura degli stati di inizio e fine (cosa contengono) Le pre- e post-condizioni poste sulle transizioni tra gli stati Corso di Laurea in Informatica, Università di Padova 1/38 Corso di Laurea in Informatica, Università di Padova 3/38 Parole chiave 3 Ciclo di vita del SW 2 Ciclo di vita [del SW] Gli stati che un prodotto SW assume dal concepimento al ritiro Processi di ciclo di vita Specificano le attività che vanno svolte per causare transizioni di stato nel ciclo di vita di un prodotto SW Modelli di ciclo di vita Descrivono come i processi si relazionano tra loro nel tempo rispetto agli stati di ciclo di vita Base concettuale intorno alla quale pianificare, organizzare, eseguire e controllare lo svolgimento delle attività necessarie Corso di Laurea in Informatica, Università di Padova 2/38 Conoscere il ciclo di vita serve per valutare costi, tempi, obblighi e benefici associati allo svolgimento di un progetto SW Di questa conoscenza c è bisogno prima di intraprendere il progetto È utile disporre di un catalogo di possibili cicli di vita (loro vantaggi e loro limiti) da cui scegliere quello che ci conviene I possibili cicli di vita sono categorizzati in modelli astratti Corso di Laurea in Informatica, Università di Padova 4/38

Modelli di ciclo di vita Parole chiave 5 Parliamo di modelli al plurale Perché esistono diversi possibili cicli di vita Non diversi per numero e significato degli stati Ma diversi per le transizioni tra essi e le loro regole di attivazione Modelli [di sviluppo] più noti e significativi Sequenziale o a cascata (waterfall) Incrementale A evoluzioni successive A spirale Agile Tutto ciò che è oggetto di manutenzione ha una storia Che va gestita con controllo di versione Se un insieme è composto di parti, quali esse sono e il modo in cui esse devono stare insieme è detto configurazione Ogni sistema fatto di parti va gestito con controllo di configurazione Corso di Laurea in Informatica, Università di Padova 5/38 Corso di Laurea in Informatica, Università di Padova 7/38 Parole chiave 4 Iterazione Procedere per iterazioni significa operare raffinamenti o rivisitazioni Incremento Procedere per incrementi significa aggiungere a un impianto base Prototipi Servono per provare e scegliere soluzioni Possono essere usa e getta (nel caso delle iterazioni) oppure fornire stati di incremento (baseline) Riuso Occasionale (opportunistico) in stile «copia-incolla» a basso costo ma scarso impatto Sistematico (per progetto, per prodotto, per azienda) a maggior costo ma maggior impatto Obiettivi Norme Bisogni Misurazioni Controllo Processo Il concetto di processo Vincoli Prodotti Risorse Un processo è un insieme di attività correlate e coese che trasformano ingressi in uscite secondo regole fissate, consumando risorse nel farlo (Glossario ISO 9000) Corso di Laurea in Informatica, Università di Padova 6/38 Corso di Laurea in Informatica, Università di Padova 8/38

Standard di processo Tendenze Gli standard di processo si dividono in Generali ISO/IEC 12207:1995 e versioni successive Il modello di riferimento della comunità SWE Settoriali: concepiti per uno specifico dominio applicativo IEC 880 : settore nucleare RTCA DO-178B : settore aeronautico ECSS E40: settore spaziale Lo standard come modello di azione Definizione e imposizione di procedure P.es. gli standard PSS ESA dei primi anni 90 Definizione e proposizione di processi da specializzare P.es. ISO/IEC 12207 di fine anni 90 Lo standard come modello di valutazione Modelli più generali, per coprire contesti diversi Identificazione di best practice Ne riparleremo CMMI, SPICE, ISO/IEC TR 15504 Corso di Laurea in Informatica, Università di Padova 9/38 Corso di Laurea in Informatica, Università di Padova 11/38 Genesi ed evoluzione degli standard Iniziativa del committente Per facilitare le attività di controllo, collaudo e accettazione Prime applicazioni in USA, durante la II Guerra Mondiale DoD-Std-2167A:1988 (sistemi critici) Genesi di ISO/IEC 12207:1995 DoD-Std-2168:1988 (qualità) DoD-Std-1703 (sicurezza) DoD-Std-7935A:1988 (documentazione) DoD Mil 105A (1950) Razionalizzazione delle esperienze di approvvigionamento belliche Processo formale di collaudo e accettazione Acceptable Quality Level misurabile tramite prove IEEE 1074:1991 (process model) DoD-Std-498:1994 (standard integrato) ISO/IEC 12207:1995 (process model) IEEE 1498:1992 (cicli di vita) Corso di Laurea in Informatica, Università di Padova 10/38 Corso di Laurea in Informatica, Università di Padova 12/38

ISO/IEC 12207 1 Il modello più noto e riferito Ma ne esistono altri Modello ad alto livello Identifica i processi dello sviluppo SW Descrive i processi in termini di attività e compiti elementari Struttura modulare che richiede specializzazione Specifica le responsabilità sui processi Identifica i prodotti dei processi Acquisizione Gestione dei propri sotto-fornitori Fornitura Gestione dei rapporti con il cliente Sviluppo Gestione operativa (utilizzo) Installazione ed erogazione dei prodotti e/o servizi Manutenzione Correzione, adattamento, evoluzione Processi primari Corso di Laurea in Informatica, Università di Padova 13/38 Corso di Laurea in Informatica, Università di Padova 15/38 ISO/IEC 12207 2 Processi di supporto Documentazione Accertamento della qualità Gestione delle versioni e delle configurazioni Verifica Qualifica Validazione Revisioni congiunte con il cliente Verifiche ispettive interne Risoluzione dei problemi Corso di Laurea in Informatica, Università di Padova 14/38 Corso di Laurea in Informatica, Università di Padova 16/38

Processi organizzativi Gestione dei processi Gestione delle infrastrutture Miglioramento del processo Formazione del personale Corso di Laurea in Informatica, Università di Padova 17/38 Corso di Laurea in Informatica, Università di Padova 19/38 Allineamento 12207 e 15288 Processi, attività, compiti 1 2007 The MITRE Corporation. All rights reserved Corso di Laurea in Informatica, Università di Padova 18/38 Corso di Laurea in Informatica, Università di Padova 20/38

Processi, attività, compiti 2 Alcuni compiti (task) 1 I processi sono tra loro relazionati in modo chiaro e distinto Modularità Le attività di processo sono ben definite e correlate tra di loro (e così anche i compiti al loro interno) Coesione Classe Processi Attività Compiti Primari 5 35 135 Di supporto 8 25 70 Organizzativi 4 14 27 Totali 17 74 232 Inventario alla versione del 1995 Codifica e prova dei componenti SW (5.3.7) Definire procedure e dati di prova (5.3.7.1) Eseguire e documentare le prove (5.3.7.2) Aggiornare documentazione e pianificare prove d integrazione (5.3.7.4) Valutare l esito delle prove (5.3.7.5) Integrazione dei componenti (5.3.8) Definire il piano di integrazione (5.3.8.1) Eseguire e documentare le prove (5.3.8.2) Aggiornare documentazione e pianificare prove di collaudo (5.3.8.4) Valutare l esito delle prove (5.3.8.5) Corso di Laurea in Informatica, Università di Padova 21/38 Corso di Laurea in Informatica, Università di Padova 23/38 Alcune attività di processo 5.3 Sviluppo SW 5.3.1 Istanziazione del processo 5.3.2 Analisi dei requisiti del sistema 5.3.3 Progettazione architetturale del sistema 5.3.4 Analisi dei requisiti del SW 5.3.5 Progettazione architetturale del SW 5.3.6 Progettazione di dettaglio del SW 5.3.7 Codifica e prova dei componenti SW 5.3.8 Integrazione dei componenti SW 5.3.9 Collaudo del SW 5.3.10 Integrazione di sistema 5.3.11 Collaudo del sistema Corso di Laurea in Informatica, Università di Padova 22/38 Alcuni compiti (task) 2 Collaudo del SW (5.3.9) Eseguire e documentare il collaudo (5.3.9.1) Valutare l esito del collaudo (5.3.9.3) Integrazione del sistema (5.3.10) Eseguire e documentare le prove (5.3.10.1) Aggiornare documentazione e pianificare prove di collaudo (5.3.10.2) Valutare l esito delle prove (5.3.10.3) Collaudo del sistema (5.3.11) Eseguire e documentare il collaudo (5.3.11.1) Valutare l esito del collaudo (5.3.11.2) Corso di Laurea in Informatica, Università di Padova 24/38

Relazione tra attività e tecniche Organizzazione per processi Le tecniche sono ricette per svolgere determinati compiti Vincoli o strategie di sviluppo restringono i gradi di libertà disponibili nello svolgimento La buona organizzazione di un azienda si basa sul riconoscimento dei propri processi, la loro adozione consapevole ed efficace e il loro supporto efficiente Processo Progetto di aziendale progetto Utilizzano specifiche istanze di processi definiti 2007 The MITRE Corporation. All rights reserved Processo Processi standard Processi standard standard Settore aziendale Processi Processo Processi definiti definiti definito Regolano il rapporto produttivo tra I vari settori Corso di Laurea in Informatica, Università di Padova 25/38 Corso di Laurea in Informatica, Università di Padova 27/38 ISO/IEC 15288: livello sistema Processi, aziende, progetti Processo standard Riferimento di base generico Condiviso tra aziende diverse nello stesso dominio applicativo Processo definito Specializzazione di processo standard Per adattarlo alle specifiche esigenze e caratteristiche aziendali Processo di progetto Istanziazione di processi definiti Utilizzano risorse aziendali per raggiungere obiettivi prefissati e limitati nel tempo (progetti) Corso di Laurea in Informatica, Università di Padova 26/38 Corso di Laurea in Informatica, Università di Padova 28/38

Processi definiti Specializzazione di processi Processi specializzati per azienda Chiari, stabili, documentati Indipendenti dal modello di ciclo di vita adottato Indipendenti dalle tecnologie Indipendenti dal dominio applicativo Indipendenti dalla documentazione richiesta Fattori di specializzazione Dimensione del progetto Complessità del progetto Rischi identificati Dominio applicativo Tecnologie in uso Competenza ed esperienza delle risorse umane Fattori dipendenti dal contratto in essere Corso di Laurea in Informatica, Università di Padova 29/38 Corso di Laurea in Informatica, Università di Padova 31/38 Processi di progetto Processi specializzati per progetto Ben pianificati Chiare scelte di specializzazione Definire lo scenario di applicazione Definire attività e compiti aggiuntivi o specifici Organizzare le relazioni tra i processi specializzati Massima attenzione nel condurre il progetto La prima volta il progetto è pilota Valutazione critica dell esito Formalizzare e istituzionalizzare le parti che hanno ben operato Organizzazione di processo 1 Organizzazione interna dei processi incentrata sul principio del miglioramento continuo (W.A. Shewhard, W.E. Deming) Pianificare (Plan): definire attività, scadenze, responsabilità, risorse utili a raggiungere specifici obiettivi di miglioramento Eseguire (Do): eseguire le attività secondo i piani Valutare (Check): verificare l esito delle azioni di miglioramento rispetto alle attese Agire (Act): applicare soluzioni correttive alle carenze rilevate Corso di Laurea in Informatica, Università di Padova 30/38 Corso di Laurea in Informatica, Università di Padova 32/38

Organizzazione di processo 2 Processi e modelli di ciclo di vita La specifica dei processi non determina la scelta di un modello di ciclo di vita Il livello di coinvolgimento del cliente determina natura, funzione e sequenza dei processi di revisione necessari Quando il prodotto SW è parte di un sistema complesso, il modello di ciclo di vita a livello di sistema è spesso sequenziale Corso di Laurea in Informatica, Università di Padova 33/38 Corso di Laurea in Informatica, Università di Padova 35/38 Processi e sistema qualità Fattori critici 1 Cliente Requisiti Altri portatori di interesse P Gestione delle risorse Miglioramento continuo A Responsabilità di direzione C D Realizzazione del prodotto Misurazione e analisi Cliente Soddisfazione Prodotto Altri portatori di interesse Fattori che influenzano la scelta del modello di ciclo di vita Politica di acquisizione e di sviluppo a livello sistema Versione unica / multipla Dipendenze da / verso altre componenti (parti del sistema) Natura, funzione e sequenza dei processi di revisione richiesti / previsti per verificare lo stato di avanzamento Revisioni interne / esterne bloccanti / non bloccanti Adattamento da: UNI EN ISO 9000, figura 1 Corso di Laurea in Informatica, Università di Padova 34/38 Corso di Laurea in Informatica, Università di Padova 36/38

Fattori critici 2 Necessità di fornire / utilità di cercare evidenza preliminare di fattibilità Sviluppi prototipali Usa e getta / da mantenere / da evolvere Studi e analisi preliminari Precedenti l autorizzazione allo sviluppo Corso di Laurea in Informatica, Università di Padova 37/38 Fattori critici 3 Evoluzione del sistema e dei suoi requisiti Possibile necessità di iterazioni Particolari esigenze di configurazione di sistema (build, deployment) Corso di Laurea in Informatica, Università di Padova 38/38