1 / 11

Commenti all’esempio del treno

Commenti all’esempio del treno. Nell’esempio del treno si è iniziato dalle attività generiche e/o attività operative che tipicamente costituiscono i passi iniziali in un qualunque modello di processo

raanan
Download Presentation

Commenti all’esempio del treno

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Commenti all’esempio del treno • Nell’esempio del treno si è iniziato dalle attività generiche e/o attività operative che tipicamente costituiscono i passi iniziali in un qualunque modello di processo • Le considerazioni svolte si possono inquadrare nelle attività di fattibilità e/o nelle attività di determinazione dei requisiti (parzialmente coperte dall’attività comunicazioni ma, come detto, che possono sfruttare elementi di modellazione), parte della Ingegneria dei Requisiti, con considerazioni che sono tipiche della Ingegneria dei Sistemi • Rif. Pressman Cap 5 (Pratiche), Cap 6 (Ing. Del Sistema), Cap 7 (Ing. Dei Req.) Cap 8 (Modellazione Analitica)

  2. Commenti indipendenti dalla notazione • Si è iniziato lo svolgimento di attività quali la fattibilità e la determinazione dei requisiti • Si è osservato come la richiesta del committente non indica necessariamente in modo preciso cosa si vuole ottenere dal software ma cosa si vuole ottenere dal software+ambiente • Si è osservato come la notazione (DFD) aiuta a rappresentare in modo sistematico tutte le varie situazioni in cui il software dovrebbe essere coinvolto (in termini di Input ed Output) (estrazione, deduzione, acquisizione, raccogliere, identificare i requisiti) • Si è osservato come la notazione permette di mostrare parzialmente ed analizzare le alternative possibili (associandovi un costo e un tempo) ed escludere quelle non accettate dal committente (sia per tempi e costi sia per altri motivi), gestendo anche i conflitti interni (negoziazione dei requisiti)

  3. Il DFD aiuta a completare la matrice

  4. Tracciabilità (§7.2.7) Rif. Funzione

  5. Descrivere Requisiti • Il diagramma DFD può essere usato in vari casi per descrivere requisiti ma, come detto, il diagramma potrebbe essere troppo complesso per il committente • Tuttavia, il risultato di ciò che viene fatto anche con l’uso di strumenti quali il DFD, deve necessariamente essere presentato al committente il quale dovrebbe, in ultima analisi, prendere decisioni • I requisiti sono quindi spesso descritti come affermazioni in linguaggio naturale (anche se derivanti da diagrammi DFD o da altre notazioni)

  6. Descrivere i Requisiti: Esempio • “Il cliente che intende pagare con carta di credito deve avere la possibilità di fornire al software il numero della carta e la data di scadenza; per sviluppi futuri, deve essere possibile inserire il CIV” • Questo requisiti descrive in modo naturale un flusso di dati inteso nel senso DFD

  7. Commenti dipendenti dalla notazione (DFD) • Utilità della notazione • Aiuta a rappresentare (anche solo parzialmente) ciò che è interno ed esterno al software che si vuole/deve sviluppare • Aiuta a decomporre una funzione complessa in funzioni più semplici (detto anche raffinamento) • Problemi della notazione • Alcune scelte devono essere anticipate troppo e ciò può propagarsi negativamente nel resto dello sviluppo del software (propagazione dell’errore); il DFD è molto sensibile agli errori di modellazione; • Quando il modello DFD diventa complesso esiste una confusione tra flussi che sono in alternativa e flussi che sono necessari per la produzione dell’output (potrebbe non essere usabile per progettare il software e neppure per descrivere i requisiti al e per il committente) • Ciò che si chiama funzione può in realtà nascondere uno stato • Orientato alle funzioni e cioè alla parte meno stabile dei requisiti (poco adatto nei processi evolutivi) • Orientato alla decomposizione funzionale che non promuove il riuso • Solo i flussi di dati sono disponibili per rappresentare i legami tra terminatori (esterni), funzioni e data-store • Si deve porre attenzione ai “flussi materiali” che non dovrebbero essere parte di un DFD

  8. Come rispondere ai seguenti problemi? • Quale funzione crea il biglietto in un data-store? • Come leggere la funzione ValutareCosto? • Se il cliente richiede di riusare i viaggi trovati ma per passeggeri diversi? • Cosa accadrebbe al data-store biglietti se si aggiungesse un programma fedeltà? • Cosa accadrebbe se entrambe le funzioni ValutareDisponibilità&Costo e ValutareCosto potessero visualizzare il costo? • Come si fa a rappresentare il fatto che un cliente non è contento dei viaggi proposti da Ricercare e ne vuole altri? • Il biglietto inteso come “stampa o copia cartacea” non dovrebbe essere incluso (non permettendo di rappresentare che il biglietto arriva al cliente)

  9. Soluzioni possibili • Una volta costruito, modificare il DFD usando una serie di linee guida • Combinare i DFD con l’uso di altre notazioni (ad esempio ER ma anche altro come i Casi d’Uso) • Usare notazioni diverse (ad esempio i Casi d’Uso)

  10. Modificare un DFD usando linee guida • Un data-store deve essere gestito da una sola funzione • Distinguere le funzioni con flussi alternativi • Identificare funzioni simili a livelli successivi di decomposizione e farle emergere • Generalizzare il contenuto dei data-store • Etc.

  11. Combinare DFD e ER • E’ possibile combinare i diagrammi DFD con i diagrammi ER (o altre notazioni per i dati): in generale, lo (gli) schema(i) ER dovrebbero riferirsi a (parte dei) data-store presenti nel DFD e vice-versa • Dalla combinazione è possibile generare tre metodi possibili: • ER, DFD (le informazioni sono più importanti) • DFD, ER (le funzioni sono più importanti) • DFD e ER insieme (funzioni e dati sono egualmente importanti)

More Related