analisi strutturata analisi dei requisiti di un'applicazione analisi dei requisiti di...

95
alisi strutturata Analisi dei requisiti di un'applicazione Analisi dei requisiti di un'applicazione Versione preliminare

Upload: concetto-paolini

Post on 02-May-2015

230 views

Category:

Documents


3 download

TRANSCRIPT

Page 1: Analisi strutturata Analisi dei requisiti di un'applicazione Analisi dei requisiti di un'applicazione Versione preliminare

Analisi strutturata

Analisi dei requisiti di un'applicazione

Analisi dei requisiti

di un'applicazioneVersione preliminare

Page 2: Analisi strutturata Analisi dei requisiti di un'applicazione Analisi dei requisiti di un'applicazione Versione preliminare

Analisi strutturata

Analisi dei requisiti di un'applicazione

Copyright © 1997 by Mario G. Montobbio

All rights reserved. No part of this publication may be reproduced, stored in a retrieval system, or transmitted, in any form or by any means, electronic, mechanical, photocopying, recording, or otherwise, without the prior written permission of the author.

Mario G. Montobbio

mailto:[email protected]

Permission to use, copy and distribute this publication for the purposes of research or private study without fee is hereby granted, provided that this copyright notice and this permission notice appear in all copies.

Page 3: Analisi strutturata Analisi dei requisiti di un'applicazione Analisi dei requisiti di un'applicazione Versione preliminare

Analisi strutturata

Applicazione da costruire

Applicazione da costruire

Page 4: Analisi strutturata Analisi dei requisiti di un'applicazione Analisi dei requisiti di un'applicazione Versione preliminare

Analisi strutturata

Applicazione da costruire

Centro di verificaAlcune centrali telefoniche di costruttori diversi inviano le registrazioni delle chiamate (ticket) ad un centro di verifica.Ogni costruttore adotta uno o più formati diversi.L’amministratore del centro di verifica configura il centro di verifica per fagli elaborare i diversi formati dei ticket.L’amministratore poi definisce le regole di verifica da applicare ai ticket per scartare i ticket incompleti o non validi.I ticket che hanno superato la verifica devono essere inviati all’applicazione di fatturazione che li richiede in un suo specifico formato.L’amministratore del centro di verifica configura il centro di verifica per fargli trasformare i ticket nel formato atteso dall’applicazione di fatturazione.

Page 5: Analisi strutturata Analisi dei requisiti di un'applicazione Analisi dei requisiti di un'applicazione Versione preliminare

Analisi strutturata

Diagramma di contesto dei dati — Passi di analisi

Diagramma di contesto dei dati

Passi di analisi

Page 6: Analisi strutturata Analisi dei requisiti di un'applicazione Analisi dei requisiti di un'applicazione Versione preliminare

Analisi strutturata

Diagramma di contesto dei dati — Passi di analisi

Centro di verificaAlcune centrali telefoniche di costruttori diversi inviano le registrazioni delle chiamate (ticket) ad un centro di verifica.Ogni costruttore adotta uno o più formati diversi.L’amministratore del centro di verifica configura il centro di verifica per fagli elaborare i diversi formati dei ticket.L’amministratore poi definisce le regole di verifica da applicare ai ticket per scartare i ticket incompleti o non validi.I ticket che hanno superato la verifica devono essere inviati all’applicazione di fatturazione che li richiede in un suo specifico formato.L’amministratore del centro di verifica configura il centro di verifica per fargli trasformare i ticket nel formato atteso dall’applicazione di fatturazione.

Questo è un estratto dalla requisiti dell’utente per un’applicazione di verifica dei dati di tassazione registrati da centrali telefoniche.

Page 7: Analisi strutturata Analisi dei requisiti di un'applicazione Analisi dei requisiti di un'applicazione Versione preliminare

Analisi strutturata

Diagramma di contesto dei dati — Passi di analisi

Passi di analisi

1. Ricerca dei flussi di dati entranti2. Ricerca delle sorgenti esterne dei dati3. Ricerca dei flussi di dati uscenti4. Ricerca dei pozzi esterni dei dati5. Sintesi in un diagramma

Page 8: Analisi strutturata Analisi dei requisiti di un'applicazione Analisi dei requisiti di un'applicazione Versione preliminare

Analisi strutturata

Diagramma di contesto dei dati — Passi di analisi

Passi di analisi

1. Ricerca dei flussi di dati entranti2. Ricerca delle sorgenti esterne dei dati3. Ricerca dei flussi di dati uscenti4. Ricerca dei pozzi esterni dei dati5. Sintesi in un diagramma

Page 9: Analisi strutturata Analisi dei requisiti di un'applicazione Analisi dei requisiti di un'applicazione Versione preliminare

Analisi strutturata

Diagramma di contesto dei dati — Passi di analisi

Passo di analisi Nr. 1: Questi sono i flussi di entrata che l’applicazione elabora.

Centro di verificaAlcune centrali telefoniche di costruttori diversi inviano le registrazioni delle chiamate (ticket) ad un centro di verifica.Ogni costruttore adotta uno o più formati diversi.L’amministratore del centro di verifica configura il centro di verifica per fagli elaborare i diversi formati dei ticket.L’amministratore poi definisce le regole di verifica da applicare ai ticket per scartare i ticket incompleti o non validi.I ticket che hanno superato la verifica devono essere inviati all’applicazione di fatturazione che li richiede in un suo specifico formato.L’amministratore del centro di verifica configura il centro di verifica per fargli trasformare i ticket nel formato atteso dall’applicazione di fatturazione.

Page 10: Analisi strutturata Analisi dei requisiti di un'applicazione Analisi dei requisiti di un'applicazione Versione preliminare

Analisi strutturata

Diagramma di contesto dei dati — Passi di analisi

Passi di analisi

1. Ricerca dei flussi di dati entranti2. Ricerca delle sorgenti esterne dei dati3. Ricerca dei flussi di dati uscenti4. Ricerca dei pozzi esterni dei dati5. Sintesi in un diagramma

Page 11: Analisi strutturata Analisi dei requisiti di un'applicazione Analisi dei requisiti di un'applicazione Versione preliminare

Analisi strutturata

Diagramma di contesto dei dati — Passi di analisi

Passo di analisi Nr. 2: Queste sono le sorgenti esterne dei dati che inviano flussi di dati all’applicazione.

Centro di verificaAlcune centrali telefoniche di costruttori diversi inviano le registrazioni delle chiamate (ticket) ad un centro di verifica.Ogni costruttore adotta uno o più formati diversi.L’amministratore del centro di verifica configura il centro di verifica per fagli elaborare i diversi formati dei ticket.L’amministratore poi definisce le regole di verifica da applicare ai ticket per scartare i ticket incompleti o non validi.I ticket che hanno superato la verifica devono essere inviati all’applicazione di fatturazione che li richiede in un suo specifico formato.L’amministratore del centro di verifica configura il centro di verifica per fargli trasformare i ticket nel formato atteso dall’applicazione di fatturazione.

Page 12: Analisi strutturata Analisi dei requisiti di un'applicazione Analisi dei requisiti di un'applicazione Versione preliminare

Analisi strutturata

Diagramma di contesto dei dati — Passi di analisi

Passi di analisi

1. Ricerca dei flussi di dati entranti2. Ricerca delle sorgenti esterne dei dati3. Ricerca dei flussi di dati uscenti4. Ricerca dei pozzi esterni dei dati5. Sintesi in un diagramma

Page 13: Analisi strutturata Analisi dei requisiti di un'applicazione Analisi dei requisiti di un'applicazione Versione preliminare

Analisi strutturata

Diagramma di contesto dei dati — Passi di analisi

Passo di analisi Nr. 3: Questi sono i flussi di uscita che l’applicazione produce.

Centro di verificaAlcune centrali telefoniche di costruttori diversi inviano le registrazioni delle chiamate (ticket) ad un centro di verifica.Ogni costruttore adotta uno o più formati diversi.L’amministratore del centro di verifica configura il centro di verifica per fagli elaborare i diversi formati dei ticket.L’amministratore poi definisce le regole di verifica da applicare ai ticket per scartare i ticket incompleti o non validi.I ticket che hanno superato la verifica devono essere inviati all’applicazione di fatturazione che li richiede in un suo specifico formato.L’amministratore del centro di verifica configura il centro di verifica per fargli trasformare i ticket nel formato atteso dall’applicazione di fatturazione.

Page 14: Analisi strutturata Analisi dei requisiti di un'applicazione Analisi dei requisiti di un'applicazione Versione preliminare

Analisi strutturata

Diagramma di contesto dei dati — Passi di analisi

Passi di analisi

1. Ricerca dei flussi di dati entranti2. Ricerca delle sorgenti esterne dei dati3. Ricerca dei flussi di dati uscenti4. Ricerca dei pozzi esterni dei dati5. Sintesi in un diagramma

Page 15: Analisi strutturata Analisi dei requisiti di un'applicazione Analisi dei requisiti di un'applicazione Versione preliminare

Analisi strutturata

Diagramma di contesto dei dati — Passi di analisi

Passo di analisi Nr. 4: Queste sono i pozzi esterni dei dati che ricevono flussi di dati dall’applicazione.

Centro di verificaAlcune centrali telefoniche di costruttori diversi inviano le registrazioni delle chiamate (ticket) ad un centro di verifica.Ogni costruttore adotta uno o più formati diversi.L’amministratore del centro di verifica configura il centro di verifica per fagli elaborare i diversi formati dei ticket.L’amministratore poi definisce le regole di verifica da applicare ai ticket per scartare i ticket incompleti o non validi.I ticket che hanno superato la verifica devono essere inviati all’applicazione di fatturazione che li richiede in un suo specifico formato.L’amministratore del centro di verifica configura il centro di verifica per fargli trasformare i ticket nel formato atteso dall’applicazione di fatturazione.

Page 16: Analisi strutturata Analisi dei requisiti di un'applicazione Analisi dei requisiti di un'applicazione Versione preliminare

Analisi strutturata

Diagramma di contesto dei dati — Passi di analisi

Passi di analisi

1. Ricerca dei flussi di dati entranti2. Ricerca delle sorgenti esterne dei dati3. Ricerca dei flussi di dati uscenti4. Ricerca dei pozzi esterni dei dati5. Sintesi in un diagramma

Page 17: Analisi strutturata Analisi dei requisiti di un'applicazione Analisi dei requisiti di un'applicazione Versione preliminare

Analisi strutturata

Diagramma di contesto dei dati — Passi di analisiCentraletelefonica

Ticket Formati entrata

AmministratoreValidazione

AmministratoreValidazione

Formati uscita

Ticket

AmministratoreValidazione

CentroFatturazione

Localizzazione regole

0

Normalizza-zione

Validazione

Passo di analisi Nr. 5: Un diagramma sintetizza quali sono le informazioni rilevanti per l'argomento esaminato con maggior chiarezza di un testo scritto.

Page 18: Analisi strutturata Analisi dei requisiti di un'applicazione Analisi dei requisiti di un'applicazione Versione preliminare

Analisi strutturata

Diagramma di contesto dei dati — Passi di analisiCentraletelefonica

Ticket Formati entrata

AmministratoreValidazione

AmministratoreValidazione

Formati uscita

Ticket

AmministratoreValidazione

CentroFatturazione

Localizzazione regole

0

Normalizza-zione

Validazione

Vedendo un diagramma assorbiamo e ricordiamo più velocemente le informazioni che leggendo un testo scritto.

Page 19: Analisi strutturata Analisi dei requisiti di un'applicazione Analisi dei requisiti di un'applicazione Versione preliminare

Analisi strutturata

Diagramma di contesto dei dati

Diagramma di contesto dei dati

Page 20: Analisi strutturata Analisi dei requisiti di un'applicazione Analisi dei requisiti di un'applicazione Versione preliminare

Analisi strutturata

Diagramma di contesto dei datiCentraletelefonica

Ticket Formati entrata

AmministratoreValidazione

AmministratoreValidazione

Formati uscita

Ticket

AmministratoreValidazione

CentroFatturazione

Localizzazione regole

0

Normalizza-zione

Validazione

Questo è il livello più alto nei diagrammi di flusso dei dati: il diagramma di contesto dei dati.

Page 21: Analisi strutturata Analisi dei requisiti di un'applicazione Analisi dei requisiti di un'applicazione Versione preliminare

Analisi strutturata

Diagramma di contesto dei dati

Ticket Formati entrata

Formati uscita

Ticket Localizzazione regole

Nel diagramma di contesto dei dati c’è un solo processo che rappresenta la nostra applicazione.

0

Normalizza-zione

Validazione

Centraletelefonica

AmministratoreValidazione

AmministratoreValidazione

AmministratoreValidazione

CentroFatturazione

Page 22: Analisi strutturata Analisi dei requisiti di un'applicazione Analisi dei requisiti di un'applicazione Versione preliminare

Analisi strutturata

Diagramma di contesto dei dati

Ticket Formati entrata

Formati uscita

Ticket Localizzazione regole

Nell’applicazione entrano flussi di dati rappresentati da archi entranti ...

Centraletelefonica

AmministratoreValidazione

AmministratoreValidazione

AmministratoreValidazione

CentroFatturazione

0

Normalizza-zione

Validazione

Page 23: Analisi strutturata Analisi dei requisiti di un'applicazione Analisi dei requisiti di un'applicazione Versione preliminare

Analisi strutturata

Diagramma di contesto dei dati

Ticket Formati entrata

Formati uscita

Ticket Localizzazione regole

... che provengono da sorgenti esterne di dati.

Centraletelefonica

AmministratoreValidazione

AmministratoreValidazione

AmministratoreValidazione

0

Normalizza-zione

Validazione

CentroFatturazione

Page 24: Analisi strutturata Analisi dei requisiti di un'applicazione Analisi dei requisiti di un'applicazione Versione preliminare

Analisi strutturata

Diagramma di contesto dei dati

Ticket Formati entrata

Formati uscita

Ticket Localizzazione regole

Dall’applicazione escono flussi di dati rappresentati da archi uscenti ...

Centraletelefonica

AmministratoreValidazione

AmministratoreValidazione

AmministratoreValidazione

CentroFatturazione

0

Normalizza-zione

Validazione

Page 25: Analisi strutturata Analisi dei requisiti di un'applicazione Analisi dei requisiti di un'applicazione Versione preliminare

Analisi strutturata

Diagramma di contesto dei dati

Ticket Formati entrata

Formati uscita

Ticket

CentroFatturazione

Localizzazione regole

... che terminano in pozzi esterni di dati.

Centraletelefonica

AmministratoreValidazione

AmministratoreValidazione

AmministratoreValidazione

CentroFatturazione

0

Normalizza-zione

Validazione

Page 26: Analisi strutturata Analisi dei requisiti di un'applicazione Analisi dei requisiti di un'applicazione Versione preliminare

Analisi strutturata

Diagramma di contesto dei dati

Ticket Formati entrata

Formati uscita

Ticket Localizzazione regole

Le sorgenti di dati e i pozzi di dati sono entità esterne alla nostra applicazione con cui occorre comunicare.

CentroFatturazione

Centraletelefonica

AmministratoreValidazione

AmministratoreValidazione

AmministratoreValidazione

0

Normalizza-zione

Validazione

Page 27: Analisi strutturata Analisi dei requisiti di un'applicazione Analisi dei requisiti di un'applicazione Versione preliminare

Analisi strutturata

Diagramma di contesto dei dati

Ticket Formati entrata

Formati uscita

Ticket Localizzazione regole

Vicino ad ogni arco c’è il nome del flusso

Centraletelefonica

AmministratoreValidazione

AmministratoreValidazione

AmministratoreValidazione

CentroFatturazione

0

Normalizza-zione

Validazione

Page 28: Analisi strutturata Analisi dei requisiti di un'applicazione Analisi dei requisiti di un'applicazione Versione preliminare

Analisi strutturata

Diagrammi di flusso dei dati — Principi di analisi

Diagrammi di flusso dei dati

Principi di analisi

Page 29: Analisi strutturata Analisi dei requisiti di un'applicazione Analisi dei requisiti di un'applicazione Versione preliminare

Analisi strutturata

Diagrammi di flusso dei dati — Principi di analisi

Principi di analisi

1. Uso di diagrammi2. Dal generale al particolare (top-down)3. Bilanciamento dei flussi (balancing)4. Rispetto della soglia di attenzione (span of attention)5. Affinamento per passi successivi (stepwise refinements)6. Definizione dei flussi (data dictionary)7. Notazione del dizionario elaborabile automaticamente

Page 30: Analisi strutturata Analisi dei requisiti di un'applicazione Analisi dei requisiti di un'applicazione Versione preliminare

Analisi strutturata

Diagrammi di flusso dei dati — Principi di analisi

Principi di analisi

1. Uso di diagrammi2. Dal generale al particolare (top-down)3. Bilanciamento dei flussi (balancing)4. Rispetto della soglia di attenzione (span of attention)5. Affinamento per passi successivi (stepwise refinements)6. Definizione dei flussi (data dictionary)7. Notazione del dizionario elaborabile automaticamente

Page 31: Analisi strutturata Analisi dei requisiti di un'applicazione Analisi dei requisiti di un'applicazione Versione preliminare

Analisi strutturata

Diagrammi di flusso dei dati — Principi di analisi

Principio di analisi Nr. 1: Un diagramma sintetizza quali sono le informazioni rilevanti per l'argomento esaminato con maggior chiarezza di un testo scritto.

Centrale elefonica

Amministratore Validazione

CentroFatturazione

Amministratore Validazione

Amministratore Validazione

0

1

2 3

4

Diagramma di flusso di livello 1

Diagramma di contesto dei dati

DFD 0

CFD

Page 32: Analisi strutturata Analisi dei requisiti di un'applicazione Analisi dei requisiti di un'applicazione Versione preliminare

Analisi strutturata

Diagrammi di flusso dei dati — Principi di analisi

Vedendo un diagramma assorbiamo e ricordiamo più velocemente le informazioni che leggendo un testo scritto.

Centrale elefonica

Amministratore Validazione

CentroFatturazione

Amministratore Validazione

Amministratore Validazione

0

1

2 3

4

Diagramma di flusso di livello 1

Diagramma di contesto dei dati

DFD 0

CFD

Page 33: Analisi strutturata Analisi dei requisiti di un'applicazione Analisi dei requisiti di un'applicazione Versione preliminare

Analisi strutturata

Diagrammi di flusso dei dati — Principi di analisi

Principi di analisi

1. Uso di diagrammi2. Dal generale al particolare (top-down)3. Bilanciamento dei flussi (balancing)4. Rispetto della soglia di attenzione (span of attention)5. Affinamento per passi successivi (stepwise refinements)6. Definizione dei flussi (data dictionary)7. Notazione del dizionario elaborabile automaticamente

Page 34: Analisi strutturata Analisi dei requisiti di un'applicazione Analisi dei requisiti di un'applicazione Versione preliminare

Analisi strutturata

Diagrammi di flusso dei dati — Principi di analisi

Nel diagramma di flusso dei dati di livello 1 descriviamo in maggior dettaglio l’unico processo del diagramma di contesto dei dati.

Centrale elefonica

Amministratore Validazione

CentroFatturazione

Amministratore Validazione

Amministratore Validazione

0

1

2 3

4

Diagramma di flusso di livello 1

Diagramma di contesto dei dati

DFD 0

CFD

Page 35: Analisi strutturata Analisi dei requisiti di un'applicazione Analisi dei requisiti di un'applicazione Versione preliminare

Analisi strutturata

Diagrammi di flusso dei dati — Principi di analisi

Principio di analisi Nr. 2: L’analisi del sistema procede dal generale al particolare (top-down).

Centrale elefonica

Amministratore Validazione

CentroFatturazione

Amministratore Validazione

Amministratore Validazione

0

1

2 3

4

Diagramma di contesto dei dati

Diagramma di flusso di livello 1

DFD 0

CFD

Page 36: Analisi strutturata Analisi dei requisiti di un'applicazione Analisi dei requisiti di un'applicazione Versione preliminare

Analisi strutturata

Diagrammi di flusso dei dati — Principi di analisi

Principi di analisi

1. Uso di diagrammi2. Dal generale al particolare (top-down)3. Bilanciamento dei flussi (balancing)4. Rispetto della soglia di attenzione (span of attention)5. Affinamento per passi successivi (stepwise refinements)6. Definizione dei flussi (data dictionary)7. Notazione del dizionario elaborabile automaticamente

Page 37: Analisi strutturata Analisi dei requisiti di un'applicazione Analisi dei requisiti di un'applicazione Versione preliminare

Analisi strutturata

Diagrammi di flusso dei dati — Principi di analisi

Il confine del diagramma di flusso di livello 1 ...

Centrale elefonica

Amministratore Validazione

CentroFatturazione

Amministratore Validazione

Amministratore Validazione

0

1

2 3

4

Diagramma di contesto dei dati

Diagramma di flusso di livello 1

DFD 0

CFD

Page 38: Analisi strutturata Analisi dei requisiti di un'applicazione Analisi dei requisiti di un'applicazione Versione preliminare

Analisi strutturata

Diagrammi di flusso dei dati — Principi di analisi

... corrisponde al confine dell’unico processo nel diagramma di contesto dei dati.

Centrale elefonica

Amministratore Validazione

CentroFatturazione

Amministratore Validazione

Amministratore Validazione

0

1

2 3

4

Diagramma di contesto dei dati

Diagramma di flusso di livello 1

DFD 0

CFD

Page 39: Analisi strutturata Analisi dei requisiti di un'applicazione Analisi dei requisiti di un'applicazione Versione preliminare

Analisi strutturata

Diagrammi di flusso dei dati — Principi di analisi

I flussi di di dati che attraversano il confine del diagramma di flusso dei dati di livello 1 ...

Centrale elefonica

Amministratore Validazione

CentroFatturazione

Amministratore Validazione

Amministratore Validazione

0

1

2 3

4

Diagramma di contesto dei dati

Diagramma di flusso di livello 1

DFD 0

CFD

Page 40: Analisi strutturata Analisi dei requisiti di un'applicazione Analisi dei requisiti di un'applicazione Versione preliminare

Analisi strutturata

Diagrammi di flusso dei dati — Principi di analisi

... sono i flussi che compaiono nel diagramma di contesto dei dati.

Centrale elefonica

Amministratore Validazione

CentroFatturazione

Amministratore Validazione

Amministratore Validazione

0

1

2 3

4

Diagramma di contesto dei dati

Diagramma di flusso di livello 1

DFD 0

CFD

Page 41: Analisi strutturata Analisi dei requisiti di un'applicazione Analisi dei requisiti di un'applicazione Versione preliminare

Analisi strutturata

Diagrammi di flusso dei dati — Principi di analisi

Principio di analisi Nr. 3: Quando un processo viene dettagliato i flussi che lo attraversano devono comparire anche nel diagramma di livello inferiore.

Centrale elefonica

Amministratore Validazione

CentroFatturazione

Amministratore Validazione

Amministratore Validazione

0

1

2 3

4

Diagramma di contesto dei dati

Diagramma di flusso di livello 1

DFD 0

CFD

Page 42: Analisi strutturata Analisi dei requisiti di un'applicazione Analisi dei requisiti di un'applicazione Versione preliminare

Analisi strutturata

Diagrammi di flusso dei dati — Principi di analisi

Principi di analisi1.Uso di diagrammi

2. Dal generale al particolare (top-down)3. Bilanciamento dei flussi (balancing)4. Rispetto della soglia di attenzione (span of attention)5. Affinamento per passi successivi (stepwise refinements)6. Definizione dei flussi (data dictionary)7. Notazione del dizionario elaborabile automaticamente

Page 43: Analisi strutturata Analisi dei requisiti di un'applicazione Analisi dei requisiti di un'applicazione Versione preliminare

Analisi strutturata

Diagrammi di flusso dei dati — Principi di analisi

Principio di analisi Nr. 4: Un diagramma di flusso dei dati dovrebbe contenere non più di 7 ± 2 processi (soglia di attenzione: span of attention).

Centrale elefonica

Amministratore Validazione

CentroFatturazione

Amministratore Validazione

Amministratore Validazione

0

1

2 3

4

Diagramma di contesto dei dati

Diagramma di flusso di livello 1

DFD 0

CFD

Page 44: Analisi strutturata Analisi dei requisiti di un'applicazione Analisi dei requisiti di un'applicazione Versione preliminare

Analisi strutturata

Diagrammi di flusso dei dati — Principi di analisi

Principi di analisi

1. Uso di diagrammi2. Dal generale al particolare (top-down)3. Bilanciamento dei flussi (balancing)4. Rispetto della soglia di attenzione (span of attention)5. Affinamento per passi successivi (stepwise refinements)6. Definizione dei flussi (data dictionary)7. Notazione del dizionario elaborabile automaticamente

Page 45: Analisi strutturata Analisi dei requisiti di un'applicazione Analisi dei requisiti di un'applicazione Versione preliminare

Analisi strutturata

Diagrammi di flusso dei dati — Principi di analisi

Ogni processo del diagramma di livello 1 – se necessario – è dettagliato da un altro diagramma di flusso di livello 2.

1

2 3

4

Diagramma di flusso di livello 1

Diagramma di flusso di livello 2

1.1

1.21.3

DFD 1

DFD 0

Page 46: Analisi strutturata Analisi dei requisiti di un'applicazione Analisi dei requisiti di un'applicazione Versione preliminare

Analisi strutturata

Diagrammi di flusso dei dati — Principi di analisi

Ogni processo del diagramma di livello 1 – se necessario – è dettagliato da un altro diagramma di flusso di livello 2.

1

2 3

4

Diagramma di flusso di livello 1

Diagramma di flusso di livello 2

2.1

2.2

2.3

2.4

2.5

DFD 2

DFD 0

Page 47: Analisi strutturata Analisi dei requisiti di un'applicazione Analisi dei requisiti di un'applicazione Versione preliminare

Analisi strutturata

Diagrammi di flusso dei dati — Principi di analisi

Ogni processo del diagramma di livello 1 – se necessario – è dettagliato da un altro diagramma di flusso di livello 2.

1

2 3

4

Diagramma di flusso di livello 1

Diagramma di flusso di livello 2

3.1

3.2

3.3

3.4

DFD 3

DFD 0

Page 48: Analisi strutturata Analisi dei requisiti di un'applicazione Analisi dei requisiti di un'applicazione Versione preliminare

Analisi strutturata

Diagrammi di flusso dei dati — Principi di analisi

Principio di analisi Nr. 5: L’analisi del sistema è affinata per passi successivi (stepwise refinements).

1

2 3

4

Diagramma di flusso di livello 1

Diagramma di flusso di livello 2

2.1

2.2

2.3

2.4

2.5

DFD 2

DFD 0

Page 49: Analisi strutturata Analisi dei requisiti di un'applicazione Analisi dei requisiti di un'applicazione Versione preliminare

Analisi strutturata

Diagrammi di flusso dei dati — Principi di analisi

Principi di analisi

1. Uso di diagrammi2. Dal generale al particolare (top-down)3. Bilanciamento dei flussi (balancing)4. Rispetto della soglia di attenzione (span of attention)5. Affinamento per passi successivi (stepwise refinements)6. Definizione dei flussi (data dictionary)7. Notazione del dizionario elaborabile automaticamente

Page 50: Analisi strutturata Analisi dei requisiti di un'applicazione Analisi dei requisiti di un'applicazione Versione preliminare

Analisi strutturata

Formati entrata

Formati uscita

Localizzazione regole

Diagrammi di flusso dei dati — Principi di analisi

Ticket

Ticket

Principio di analisi Nr. 6: Ogni flusso è definito con la precisione necessaria nel dizionario dei dati.

Centraletelefonica

AmministratoreValidazione

AmministratoreValidazione

AmministratoreValidazione

CentroFatturazione

0

Normalizza-zione

Validazione

Ticket = * File sequenziale letto * * da centrale via FTP * * oppure letto da nastro * Tipo_ticket +[Data_inizio_conversazione |Data_fine_conversazione] + Numero_chiamante + Numero_chiamato + Durata_conversazione + (Quantità_impulsi)

Page 51: Analisi strutturata Analisi dei requisiti di un'applicazione Analisi dei requisiti di un'applicazione Versione preliminare

Analisi strutturata

Diagrammi di flusso dei dati — Principi di analisi

Principi di analisi

1. Uso di diagrammi2. Dal generale al particolare (top-down)3. Bilanciamento dei flussi (balancing)4. Rispetto della soglia di attenzione (span of attention)5. Affinamento per passi successivi (stepwise refinements)6. Definizione dei componenti dei flussi (data dictionary)7. Notazione del dizionario elaborabile automaticamente

Page 52: Analisi strutturata Analisi dei requisiti di un'applicazione Analisi dei requisiti di un'applicazione Versione preliminare

Analisi strutturata

Formati entrata

Formati uscita

Localizzazione regole

Diagrammi di flusso dei dati — Principi di analisi

Ticket

Ticket

Principio di analisi Nr. 7: I componenti dei flussi sono descritti nel dizionario dei dati con una notazione che può essere elaborata automaticamente.

Centraletelefonica

AmministratoreValidazione

AmministratoreValidazione

AmministratoreValidazione

CentroFatturazione

0

Normalizza-zione

Validazione

Ticket = * File sequenziale letto * * da centrale via FTP * * oppure letto da nastro * Tipo_ticket + [Data_inizio_conversazione |Data_fine_conversazione] + Numero_chiamante + Numero_chiamato + Durata_conversazione + (Quantità_impulsi)

Page 53: Analisi strutturata Analisi dei requisiti di un'applicazione Analisi dei requisiti di un'applicazione Versione preliminare

Analisi strutturata

Diagrammi di flusso dei dati — Livello 1

Diagrammi di flusso dei dati

Livello 1

Page 54: Analisi strutturata Analisi dei requisiti di un'applicazione Analisi dei requisiti di un'applicazione Versione preliminare

Analisi strutturata

Diagrammi di flusso dei dati — Livello 1

Ticket Formati entrata

Formati uscita

Ticket Localizzazione regole

Nel diagramma di flusso dei dati di livello 1 descriviamo in maggior dettaglio l’unico processo del diagramma di contesto dei dati.

Centraletelefonica

AmministratoreValidazione

AmministratoreValidazione

AmministratoreValidazione

CentroFatturazione

0

Normalizza-zione

Validazione

Page 55: Analisi strutturata Analisi dei requisiti di un'applicazione Analisi dei requisiti di un'applicazione Versione preliminare

Analisi strutturata

Diagrammi di flusso dei dati — Livello 1Centraletelefonica

Ticket Formati entrata

AmministratoreValidazione

1

Normalizza-zione

formati entrata

Valori normalizzati

Localizzazione regole

AmministratoreValidazione

2

Coordinamento validazione

Esito validazione campo

Argomenti

3

Funzioni di validazione

campo

Esito validazione complessivo

4

Normalizza-zione

formati uscita

Formati uscita

AmministratoreValidazione

CentroFatturazione

Questo è il diagramma di flusso dei dati di livello 1.

Ticket

Page 56: Analisi strutturata Analisi dei requisiti di un'applicazione Analisi dei requisiti di un'applicazione Versione preliminare

Analisi strutturata

Diagrammi di flusso dei dati — Livello 1

La riga tratteggiata è il confine con l’esterno dell’applicazione ...

Centraletelefonica

Ticket Formati entrata

AmministratoreValidazione

1

Normalizza-zione

formati entrata

Valori normalizzati

Localizzazione regole

AmministratoreValidazione

2

Coordinamento validazione

Esito validazione campo

Argomenti

3

Funzioni di validazione

campo

Esito validazione complessivo

4

Normalizza-zione

formati uscita

Formati uscita Ticket

AmministratoreValidazione

CentroFatturazione

Page 57: Analisi strutturata Analisi dei requisiti di un'applicazione Analisi dei requisiti di un'applicazione Versione preliminare

Analisi strutturata

Diagrammi di flusso dei dati — Livello 1

... e corrisponde al confine dell’unico processo nel diagramma di contesto dei dati.

Ticket Formati entrata

Formati uscita

Ticket Localizzazione regole

Centraletelefonica

AmministratoreValidazione

AmministratoreValidazione

AmministratoreValidazione

CentroFatturazione

0

Normalizza-zione

Validazione

Page 58: Analisi strutturata Analisi dei requisiti di un'applicazione Analisi dei requisiti di un'applicazione Versione preliminare

Analisi strutturata

Diagrammi di flusso dei dati — Livello 1

I flussi di dati che attraversano la linea tratteggiata nel diagramma di flusso dei dati di livello 1 ...

Centraletelefonica

Ticket Formati entrata

AmministratoreValidazione

1

Normalizza-zione

formati entrata

Valori normalizzati

Localizzazione regole

AmministratoreValidazione

2

Coordinamento validazione

Esito validazione campo

Argomenti

3

Funzioni di validazione

campo

Esito validazione complessivo

4

Normalizza-zione

formati uscita

Formati uscita Ticket

AmministratoreValidazione

CentroFatturazione

Page 59: Analisi strutturata Analisi dei requisiti di un'applicazione Analisi dei requisiti di un'applicazione Versione preliminare

Analisi strutturata

Diagrammi di flusso dei dati — Livello 1

... sono i flussi che compaiono nel diagramma di contesto dei dati.

Ticket Formati entrata

Formati uscita

Ticket Localizzazione regole

Centraletelefonica

AmministratoreValidazione

AmministratoreValidazione

AmministratoreValidazione

CentroFatturazione

0

Normalizza-zione

Validazione

Page 60: Analisi strutturata Analisi dei requisiti di un'applicazione Analisi dei requisiti di un'applicazione Versione preliminare

Analisi strutturata

Diagrammi di flusso dei dati — Livello 1

Criterio di verifica: quando un processo viene dettagliato i flussi che entrano ed escono dal processo ...

Ticket Formati entrata

Formati uscita

Ticket Localizzazione regole

Centraletelefonica

AmministratoreValidazione

AmministratoreValidazione

AmministratoreValidazione

CentroFatturazione

0

Normalizza-zione

Validazione

Page 61: Analisi strutturata Analisi dei requisiti di un'applicazione Analisi dei requisiti di un'applicazione Versione preliminare

Analisi strutturata

Diagrammi di flusso dei dati — Livello 1

... devono entrare ed uscire anche dal diagramma di dettaglio.

Centraletelefonica

Ticket Formati entrata

AmministratoreValidazione

1

Normalizza-zione

formati entrata

Valori normalizzati

Localizzazione regole

AmministratoreValidazione

2

Coordinamento validazione

Esito validazione campo

Argomenti

3

Funzioni di validazione

campo

Esito validazione complessivo

4

Normalizza-zione

formati uscita

Formati uscita Ticket

AmministratoreValidazione

CentroFatturazione

Page 62: Analisi strutturata Analisi dei requisiti di un'applicazione Analisi dei requisiti di un'applicazione Versione preliminare

Analisi strutturata

Diagrammi di flusso dei dati — Livello 1

Dettagliando l’unico processo del diagramma di contesto dei dati ...

Ticket Formati entrata

Formati uscita

Ticket Localizzazione regole

Centraletelefonica

AmministratoreValidazione

AmministratoreValidazione

AmministratoreValidazione

CentroFatturazione

0

Normalizza-zione

Validazione

Page 63: Analisi strutturata Analisi dei requisiti di un'applicazione Analisi dei requisiti di un'applicazione Versione preliminare

Analisi strutturata

... evidenziamo i processi principali dell’applicazione.

Diagrammi di flusso dei dati — Livello 1Centraletelefonica

Ticket Formati entrata

AmministratoreValidazione

1

Normalizza-zione

formati entrata

Valori normalizzati

Localizzazione regole

AmministratoreValidazione

2

Coordinamento validazione

Esito validazione campo

Argomenti

3

Funzioni di validazione

campo

Esito validazione complessivo

4

Normalizza-zione

formati uscita

Formati uscita Ticket

AmministratoreValidazione

CentroFatturazione

Page 64: Analisi strutturata Analisi dei requisiti di un'applicazione Analisi dei requisiti di un'applicazione Versione preliminare

Analisi strutturata

Diagrammi di flusso dei dati — Livello 1Centraletelefonica

Ticket Formati entrata

AmministratoreValidazione

1

Normalizza-zione

formati entrata

Valori normalizzati

Localizzazione regole

AmministratoreValidazione

2

Coordinamento validazione

Esito validazione campo

Argomenti

3

Funzioni di validazione

campo

Esito validazione complessivo

4

Normalizza-zione

formati uscita

Formati uscita Ticket

AmministratoreValidazione

CentroFatturazione

Il diagramma di flusso dei dati di livello 1 contiene non più di 7 ± 2 processi (soglia di attenzione).

Page 65: Analisi strutturata Analisi dei requisiti di un'applicazione Analisi dei requisiti di un'applicazione Versione preliminare

Analisi strutturata

Diagrammi di flusso dei dati — Livello 1

I flussi di dati che non attraversano il confine dell’applicazione non comparivano nel diagramma di contesto dei dati.

Centraletelefonica

Ticket Formati entrata

AmministratoreValidazione

1

Normalizza-zione

formati entrata

Valori normalizzati

Localizzazione regole

AmministratoreValidazione

2

Coordinamento validazione

Esito validazione campo

Argomenti

3

Funzioni di validazione

campo

Esito validazione complessivo

4

Normalizza-zione

formati uscita

Formati uscita Ticket

AmministratoreValidazione

CentroFatturazione

Page 66: Analisi strutturata Analisi dei requisiti di un'applicazione Analisi dei requisiti di un'applicazione Versione preliminare

Analisi strutturata

Diagrammi di flusso dei dati — Depositi dei dati

Depositi dei dati

(data store)

Page 67: Analisi strutturata Analisi dei requisiti di un'applicazione Analisi dei requisiti di un'applicazione Versione preliminare

Analisi strutturata

Diagrammi di flusso dei dati — Depositi dei dati

Quali flussi di dati continuano ad esistere anche dopo i processi che li hanno generati?

Centraletelefonica

Ticket Formati entrata

AmministratoreValidazione

1

Normalizza-zione

formati entrata

Valori normalizzati

Localizzazione regole

AmministratoreValidazione

2

Coordinamento validazione

Esito validazione campo

Argomenti

3

Funzioni di validazione

campo

Esito validazione complessivo

4

Normalizza-zione

formati uscita

Formati uscita Ticket

AmministratoreValidazione

CentroFatturazione

Page 68: Analisi strutturata Analisi dei requisiti di un'applicazione Analisi dei requisiti di un'applicazione Versione preliminare

Analisi strutturata

Questi flussi di dati sono congelati e possono essere usati anche dopo che sono stati creati.

Diagrammi di flusso dei dati — Depositi dei datiCentraletelefonica

Ticket Formati entrata

AmministratoreValidazione

1

Normalizza-zione

formati entrata

Valori normalizzati

Localizzazione regole

AmministratoreValidazione

2

Coordinamento validazione

Esito validazione campo

Argomenti

3

Funzioni di validazione

campo

Esito validazione complessivo

4

Normalizza-zione

formati uscita

Formati uscita Ticket

AmministratoreValidazione

CentroFatturazione

Page 69: Analisi strutturata Analisi dei requisiti di un'applicazione Analisi dei requisiti di un'applicazione Versione preliminare

Analisi strutturata

Diagrammi di flusso dei dati — Depositi dei dati

Rappresentiamo i flussi congelati con i depositi dei dati.

Centraletelefonica

AmministratoreValidazione

1

Normalizza-zione

formati entrata

Valori normalizzati

AmministratoreValidazione

2

Coordinamento validazione

Esito validazione campo

Argomenti

3

Funzioni di validazione

campo

Esito validazione complessivo

4

Normalizza-zione

formati uscita

AmministratoreValidazione

CentroFatturazione

Ticket Formati entrata

Localizzazione regole

Formati uscita Ticket

Page 70: Analisi strutturata Analisi dei requisiti di un'applicazione Analisi dei requisiti di un'applicazione Versione preliminare

Analisi strutturata

Dizionario dei dati

Dizionario dei dati

Page 71: Analisi strutturata Analisi dei requisiti di un'applicazione Analisi dei requisiti di un'applicazione Versione preliminare

Analisi strutturata

Dizionario dei dati

I componenti dei flussi sono descritti nel dizionario dei dati con una notazione che può essere elaborata automaticamente.

Ticket = Tipo_ticket + [Data_inizio_conversazione|Data_fine_conversazione] + Numero_chiamante + Numero_chiamato + Durata_conversazione + (Quantità_impulsi)Numero_chiamante = Prefisso_interurbano + Prefisso_urbano + Migliaia + Centinaia + Decine + UnitàNumero_chiamato = [(Prefisso_interurbano) + Prefisso_urbano + Migliaia + Centinaia + Decine + Unità |Servizio_in_decade_uno |Codice_accesso + Prefisso_speciale + Migliaia + Centinaia + Decine + Unità]

Page 72: Analisi strutturata Analisi dei requisiti di un'applicazione Analisi dei requisiti di un'applicazione Versione preliminare

Analisi strutturata

Dizionario dei dati

Un elemento del flusso Ticket è composto ...

Ticket = Tipo_ticket + [Data_inizio_conversazione|Data_fine_conversazione] + Numero_chiamante + Numero_chiamato + Durata_conversazione + (Quantità_impulsi)Numero_chiamante = Prefisso_interurbano + Prefisso_urbano + Migliaia + Centinaia + Decine + UnitàNumero_chiamato = [(Prefisso_interurbano) + Prefisso_urbano + Migliaia + Centinaia + Decine + Unità |Servizio_in_decade_uno |Codice_accesso + Prefisso_speciale + Migliaia + Centinaia + Decine + Unità]

Page 73: Analisi strutturata Analisi dei requisiti di un'applicazione Analisi dei requisiti di un'applicazione Versione preliminare

Analisi strutturata

Dizionario dei dati

... dal Tipo ticket ...

Ticket = Tipo_ticket + [Data_inizio_conversazione|Data_fine_conversazione] + Numero_chiamante + Numero_chiamato + Durata_conversazione + (Quantità_impulsi)Numero_chiamante = Prefisso_interurbano + Prefisso_urbano + Migliaia + Centinaia + Decine + UnitàNumero_chiamato = [(Prefisso_interurbano) + Prefisso_urbano + Migliaia + Centinaia + Decine + Unità |Servizio_in_decade_uno |Codice_accesso + Prefisso_speciale + Migliaia + Centinaia + Decine + Unità]

Page 74: Analisi strutturata Analisi dei requisiti di un'applicazione Analisi dei requisiti di un'applicazione Versione preliminare

Analisi strutturata

Dizionario dei dati

... seguito da uno solo degli elementi fra parentesi quadrate ...

Ticket = Tipo_ticket + [Data_inizio_conversazione|Data_fine_conversazione] + Numero_chiamante + Numero_chiamato + Durata_conversazione + (Quantità_impulsi)Numero_chiamante = Prefisso_interurbano + Prefisso_urbano + Migliaia + Centinaia + Decine + UnitàNumero_chiamato = [(Prefisso_interurbano) + Prefisso_urbano + Migliaia + Centinaia + Decine + Unità |Servizio_in_decade_uno |Codice_accesso + Prefisso_speciale + Migliaia + Centinaia + Decine + Unità]

Page 75: Analisi strutturata Analisi dei requisiti di un'applicazione Analisi dei requisiti di un'applicazione Versione preliminare

Analisi strutturata

Dizionario dei dati

... – Data inizio conversazione oppure ...

Ticket = Tipo_ticket + [Data_inizio_conversazione|Data_fine_conversazione] + Numero_chiamante + Numero_chiamato + Durata_conversazione + (Quantità_impulsi)Numero_chiamante = Prefisso_interurbano + Prefisso_urbano + Migliaia + Centinaia + Decine + UnitàNumero_chiamato = [(Prefisso_interurbano) + Prefisso_urbano + Migliaia + Centinaia + Decine + Unità |Servizio_in_decade_uno |Codice_accesso + Prefisso_speciale + Migliaia + Centinaia + Decine + Unità]

Page 76: Analisi strutturata Analisi dei requisiti di un'applicazione Analisi dei requisiti di un'applicazione Versione preliminare

Analisi strutturata

Dizionario dei dati

... Data fine conversazione – ...

Ticket = Tipo_ticket + [Data_inizio_conversazione|Data_fine_conversazione] + Numero_chiamante + Numero_chiamato + Durata_conversazione + (Quantità_impulsi)Numero_chiamante = Prefisso_interurbano + Prefisso_urbano + Migliaia + Centinaia + Decine + UnitàNumero_chiamato = [(Prefisso_interurbano) + Prefisso_urbano + Migliaia + Centinaia + Decine + Unità |Servizio_in_decade_uno |Codice_accesso + Prefisso_speciale + Migliaia + Centinaia + Decine + Unità]

Page 77: Analisi strutturata Analisi dei requisiti di un'applicazione Analisi dei requisiti di un'applicazione Versione preliminare

Analisi strutturata

Dizionario dei dati

... seguita dal Numero chiamante, dal Numero chiamato ...

Ticket = Tipo_ticket + [Data_inizio_conversazione|Data_fine_conversazione] + Numero_chiamante + Numero_chiamato + Durata_conversazione + (Quantità_impulsi)Numero_chiamante = Prefisso_interurbano + Prefisso_urbano + Migliaia + Centinaia + Decine + UnitàNumero_chiamato = [(Prefisso_interurbano) + Prefisso_urbano + Migliaia + Centinaia + Decine + Unità |Servizio_in_decade_uno |Codice_accesso + Prefisso_speciale + Migliaia + Centinaia + Decine + Unità]

Page 78: Analisi strutturata Analisi dei requisiti di un'applicazione Analisi dei requisiti di un'applicazione Versione preliminare

Analisi strutturata

Dizionario dei dati

... seguito dalla Durata conversazione ...

Ticket = Tipo_ticket + [Data_inizio_conversazione|Data_fine_conversazione] + Numero_chiamante + Numero_chiamato + Durata_conversazione + (Quantità_impulsi)Numero_chiamante = Prefisso_interurbano + Prefisso_urbano + Migliaia + Centinaia + Decine + UnitàNumero_chiamato = [(Prefisso_interurbano) + Prefisso_urbano + Migliaia + Centinaia + Decine + Unità |Servizio_in_decade_uno |Codice_accesso + Prefisso_speciale + Migliaia + Centinaia + Decine + Unità]

Page 79: Analisi strutturata Analisi dei requisiti di un'applicazione Analisi dei requisiti di un'applicazione Versione preliminare

Analisi strutturata

Dizionario dei dati

... seguita opzionalmente dalla Quantità impulsi.

Ticket = Tipo_ticket + [Data_inizio_conversazione|Data_fine_conversazione] + Numero_chiamante + Numero_chiamato + Durata_conversazione + (Quantità_impulsi)Numero_chiamante = Prefisso_interurbano + Prefisso_urbano + Migliaia + Centinaia + Decine + UnitàNumero_chiamato = [(Prefisso_interurbano) + Prefisso_urbano + Migliaia + Centinaia + Decine + Unità |Servizio_in_decade_uno |Codice_accesso + Prefisso_speciale + Migliaia + Centinaia + Decine + Unità]

Page 80: Analisi strutturata Analisi dei requisiti di un'applicazione Analisi dei requisiti di un'applicazione Versione preliminare

Analisi strutturata

Dizionario dei dati

A sua volta Numero chiamante è un aggregato composto ...

Ticket = Tipo_ticket + [Data_inizio_conversazione|Data_fine_conversazione] + Numero_chiamante + Numero_chiamato + Durata_conversazione + (Quantità_impulsi)Numero_chiamante = Prefisso_interurbano + Prefisso_urbano + Migliaia + Centinaia + Decine + UnitàNumero_chiamato = [(Prefisso_interurbano) + Prefisso_urbano + Migliaia + Centinaia + Decine + Unità |Servizio_in_decade_uno |Codice_accesso + Prefisso_speciale + Migliaia + Centinaia + Decine + Unità]

Page 81: Analisi strutturata Analisi dei requisiti di un'applicazione Analisi dei requisiti di un'applicazione Versione preliminare

Analisi strutturata

Dizionario dei dati

... dal Prefisso interurbano ...

Ticket = Tipo_ticket + [Data_inizio_conversazione|Data_fine_conversazione] + Numero_chiamante + Numero_chiamato + Durata_conversazione + (Quantità_impulsi)Numero_chiamante = Prefisso_interurbano + Prefisso_urbano + Migliaia + Centinaia + Decine + UnitàNumero_chiamato = [(Prefisso_interurbano) + Prefisso_urbano + Migliaia + Centinaia + Decine + Unità |Servizio_in_decade_uno |Codice_accesso + Prefisso_speciale + Migliaia + Centinaia + Decine + Unità]

Page 82: Analisi strutturata Analisi dei requisiti di un'applicazione Analisi dei requisiti di un'applicazione Versione preliminare

Analisi strutturata

Dizionario dei dati

... seguito dal Prefisso urbano ...

Ticket = Tipo_ticket + [Data_inizio_conversazione|Data_fine_conversazione] + Numero_chiamante + Numero_chiamato + Durata_conversazione + (Quantità_impulsi)Numero_chiamante = Prefisso_interurbano + Prefisso_urbano + Migliaia + Centinaia + Decine + UnitàNumero_chiamato = [(Prefisso_interurbano) + Prefisso_urbano + Migliaia + Centinaia + Decine + Unità |Servizio_in_decade_uno |Codice_accesso + Prefisso_speciale + Migliaia + Centinaia + Decine + Unità]

Page 83: Analisi strutturata Analisi dei requisiti di un'applicazione Analisi dei requisiti di un'applicazione Versione preliminare

Analisi strutturata

Dizionario dei dati

... seguito dalle Migliaia, dalle Centinaia, dalle Decine, e dalle Unità.

Ticket = Tipo_ticket + [Data_inizio_conversazione|Data_fine_conversazione] + Numero_chiamante + Numero_chiamato + Durata_conversazione + (Quantità_impulsi)Numero_chiamante = Prefisso_interurbano + Prefisso_urbano + Migliaia + Centinaia + Decine + UnitàNumero_chiamato = [(Prefisso_interurbano) + Prefisso_urbano + Migliaia + Centinaia + Decine + Unità |Servizio_in_decade_uno |Codice_accesso + Prefisso_speciale + Migliaia + Centinaia + Decine + Unità]

Page 84: Analisi strutturata Analisi dei requisiti di un'applicazione Analisi dei requisiti di un'applicazione Versione preliminare

Analisi strutturata

Dizionario dei dati

Come è definito Numero_chiamato ? Provate a rispondere.

Ticket = Tipo_ticket + [Data_inizio_conversazione|Data_fine_conversazione] + Numero_chiamante + Numero_chiamato + Durata_conversazione + (Quantità_impulsi)Numero_chiamante = Prefisso_interurbano + Prefisso_urbano + Migliaia + Centinaia + Decine + UnitàNumero_chiamato = [(Prefisso_interurbano) + Prefisso_urbano + Migliaia + Centinaia + Decine + Unità |Servizio_in_decade_uno |Codice_accesso + Prefisso_speciale + Migliaia + Centinaia + Decine + Unità]

Page 85: Analisi strutturata Analisi dei requisiti di un'applicazione Analisi dei requisiti di un'applicazione Versione preliminare

Analisi strutturata

Dizionario dei dati

Cosa indicano le parentesi quadre [ ], e la barra orizzontale | ?

Ticket = Tipo_ticket + [Data_inizio_conversazione|Data_fine_conversazione] + Numero_chiamante + Numero_chiamato + Durata_conversazione + (Quantità_impulsi)Numero_chiamante = Prefisso_interurbano + Prefisso_urbano + Migliaia + Centinaia + Decine + UnitàNumero_chiamato = [(Prefisso_interurbano) + Prefisso_urbano + Migliaia + Centinaia + Decine + Unità |Servizio_in_decade_uno |Codice_accesso + Prefisso_speciale + Migliaia + Centinaia + Decine + Unità]

Page 86: Analisi strutturata Analisi dei requisiti di un'applicazione Analisi dei requisiti di un'applicazione Versione preliminare

Analisi strutturata

Dizionario dei dati

Cosa indicano le parentesi tonde ( ) ?

Ticket = Tipo_ticket + [Data_inizio_conversazione|Data_fine_conversazione] + Numero_chiamante + Numero_chiamato + Durata_conversazione + (Quantità_impulsi)Numero_chiamante = Prefisso_interurbano + Prefisso_urbano + Migliaia + Centinaia + Decine + UnitàNumero_chiamato = [(Prefisso_interurbano) + Prefisso_urbano + Migliaia + Centinaia + Decine + Unità |Servizio_in_decade_uno |Codice_accesso + Prefisso_speciale + Migliaia + Centinaia + Decine + Unità]

Page 87: Analisi strutturata Analisi dei requisiti di un'applicazione Analisi dei requisiti di un'applicazione Versione preliminare

Analisi strutturata

Diagrammi di flusso dei dati — Livello 2

Diagrammi di flusso dei dati

Livello 2

Page 88: Analisi strutturata Analisi dei requisiti di un'applicazione Analisi dei requisiti di un'applicazione Versione preliminare

Analisi strutturata

Diagrammi di flusso dei dati — Livello 2

Non ancora disponibile al 1998-01-26

Page 89: Analisi strutturata Analisi dei requisiti di un'applicazione Analisi dei requisiti di un'applicazione Versione preliminare

Analisi strutturata

Analisi dei requisiti di un'applicazione — Riepilogo

Riepilogo

Page 90: Analisi strutturata Analisi dei requisiti di un'applicazione Analisi dei requisiti di un'applicazione Versione preliminare

Analisi strutturata

Diagramma di contesto dei flussi — Passi di costruzione

Diagramma di contesto dei flussi

1. Ricerca dei flussi di dati entranti2. Ricerca delle sorgenti esterne dei dati3. Ricerca dei flussi di dati uscenti4. Ricerca dei pozzi esterni dei dati5. Sintesi in un diagramma

Page 91: Analisi strutturata Analisi dei requisiti di un'applicazione Analisi dei requisiti di un'applicazione Versione preliminare

Analisi strutturata

Diagrammi di flusso dei dati — Principi di analisi

Diagrammi di flusso dei dati

1. Uso di diagrammi2. Dal generale al particolare (top-down)3. Bilanciamento dei flussi (balancing)4. Rispetto della soglia di attenzione (span of attention)5. Affinamento per passi successivi (stepwise refinements)6. Definizione dei flussi (data dictionary)7. Notazione del dizionario elaborabile automaticamente

Page 92: Analisi strutturata Analisi dei requisiti di un'applicazione Analisi dei requisiti di un'applicazione Versione preliminare

Analisi strutturata

Diagrammi di flusso dei dati — Simboli

DFD — Simboli

Sorgenteesternadei dati

Flusso di dati entrante

Pozzoesternodei dati

Flusso di dati uscente

99

Processodi

elaborazione

Deposito di dati

Page 93: Analisi strutturata Analisi dei requisiti di un'applicazione Analisi dei requisiti di un'applicazione Versione preliminare

Analisi strutturata

Dizionario dei dati — Esempio

Dizionario dei dati — Esempio

Elemento_da_definire

= (Elemento_opzionale_1)

+ Elemento_obbligatorio_1

+ [Elemento_in_alternativa_1

|Elemento_in_alternativa_2

|Elemento_in_alternativa_3]

+ {Elemento_ripetuto_più_volte}

+ 2{Elemento_ripetuto_da_2_a_5_volte}5

+ (Elemento_opzionale_2)

Page 94: Analisi strutturata Analisi dei requisiti di un'applicazione Analisi dei requisiti di un'applicazione Versione preliminare

Analisi strutturata

Dizionario dei dati — Simboli

Dizionario dei dati — Simboli

= È definito come

+ Seguito da

( ) Opzionale

[ | ] Uno a scelta fra

{ } Ripetizione di

x{ }y Ripetuto da x a y volte

* * Commento

Page 95: Analisi strutturata Analisi dei requisiti di un'applicazione Analisi dei requisiti di un'applicazione Versione preliminare

Analisi strutturata

Analisi dei requisiti di un'applicazione

Copyright © 1997 by Mario G. Montobbio

All rights reserved. No part of this publication may be reproduced, stored in a retrieval system, or transmitted, in any form or by any means, electronic, mechanical, photocopying, recording, or otherwise, without the prior written permission of the author.

Mario G. Montobbio

mailto:[email protected]

Permission to use, copy and distribute this publication for the purposes of research or private study without fee is hereby granted, provided that this copyright notice and this permission notice appear in all copies.