Commenti all’esempio del treno Nell’esempio del treno si è iniziato dalle attività generiche che tipicamente servono per portare a termine i compiti iniziali.

Slides:



Advertisements
Presentazioni simili
DFD (Data Flow Diagram)
Advertisements

il senso delle nostre azioni
Introduzione ai Casi dUso (c) TECNET DATI (c) TECNET DATI Pag. 2 Dai requisiti ai casi duso obiettividefinire gli obiettivi –gli obiettivi del committente.
Analisi e progettazione
Sistemi informativi e Sistemi informatici
Tabelle LALR Costruzione delle tabelle LALR Metodo LALR Introduciamo lultimo metodo di costruzione di tabelle per il parsing LR Nome: lookahead-LR abbreviato.
Costruire una Home Page La homepage rappresenta la vostra faccia nel mondo. I vostri clienti prima di iniziare qualche affare con voi cercheranno la vostra.
Chiara Mocenni – Analisi delle Decisioni a.a Analisi delle Decisioni Preferenze, decisioni e incertezza Chiara Mocenni.
DIAGRAMMI DI FLUSSO DEI DATI
Levels of constraint I vincoli (o livelli di costrizione) sono i condizionamenti impiegati dalla ricerca.
LA JOB ANALYSIS (Analisi del Lavoro)
L’analisi delle reti sociali
Il report di progetto Perché scrivere il report del progetto?
Analisi, rappresentazione e progettazione delle procedure
Progettare una ricerca: approcci e metodologie
CORSO DI MODELLI DI SISTEMI BIOLOGICI LAUREA IN INGEGNERIA CLINICA E BIOMEDICA.
Unità Didattica 2 I Linguaggi di Programmazione
Ciclo di vita del software
Progettare interventi di orientamento Linee guida e suggerimenti operativi.
Notazioni Asintotiche e Ordini di Grandezza delle funzioni
Progettazione di una base di dati
Modello E-R Generalizzazioni
DIAGRAMMI DI FLUSSO Notazione grafica usata per descrivere in modo intuitivo le azioni di cui è fatto un algoritmo. Viene usata per descrivere i passi.
A.Natali DL Maggio1999 Oggetti Concetti fondamentali.
LINGUAGGI DI PROGRAMMAZIONE
1 Programmazione = decomposizione basata su astrazioni (con riferimento a Java)
1 Modelli e attività di modellizzazione Rosa Roberto
La gestione del credito e delle richieste di pagamento Guida alle operazioni transfrontaliere nell'UE.
INTEGRAZIONE, RILASCIO
L’ingegneria del software
IPOTESI DI LAVORO GRUPPO n° 3: LEO, RIBATTEZZATO, ROSSI, SCIANGUETTA
I sistemi di pianificazione e controllo.
Un approccio soft per i primi tre anni della primaria
Basi di Dati e Sistemi Informativi
User stories Claudio Maccari Mail:
DIDATTICA DELLA MATEMATICA TFA A059
Ingegneria dei Requisiti - e dei Sistemi - Giuseppe Berio DI-Unito 2007.
Scelta di un modello di processo: esempio
Commenti alle Attività Generiche. Attività Generiche (Pressman) Principali: Comunicazioni; Pianificazione; Modellazione; Costruzione, Dispiegamento Collaterali:
Scenari e Casi d’Uso (UML)
Commenti all’esempio del treno Nell’esempio del treno si è iniziato dalle attività generiche e/o attività operative che tipicamente costituiscono i passi.
Esercitazioni di Ingegneria del Software con UML
(Una) Definizione di Ingegneria del Software (IEEE) Strategie sistematiche, a partire da richieste formulate del committente, per lo sviluppo, esercizio.
Ingegnerie dei Requisiti e dei Sistemi
Typical steps in project planning and scheduling To identify the tasks and their durations To evaluate consistency of the task net To evaluate the critical.
Fasi di uno studio Disegno dello studio = decidere obiettivi e metodi
Progettazione concettuale di SI basati su Web
Un approccio soft per i primi tre anni della primaria
Definizione(i) di Ingegneria del Software (IEEE) Strategie sistematiche, a partire da richieste formulate del committente, per lo sviluppo, esercizio e.
Nemesi Creazione e pubblicazione di una rivista online tramite l’utilizzo di Java Message Service.
1.1 Progettazione di Basi di Dati PROGETTAZIONE: SCOPO Requisiti: cosa realizzare; progetto: come realizzarlo Livelli di dettaglio: concettuale/logico/fisico;
Sistemi e Tecnologie Informatiche Verifica di correttezza di un programma.
Diagramma delle Classi
Commenti all’esempio del treno Nell’esempio del treno si è iniziato dalle attività generiche e/o attività operative che tipicamente costituiscono i passi.
Analisi dei requisiti Il primo passo di “qualsiasi” processo di sviluppo è la definizione dei requisiti  Definizione del Business Model  Solitamente.
Laboratorio di Progettazione A cura di: Arosio Cattaneo Prandi
1 Interpretazione astratta: un approccio sistematico all’analisi statica.
Ingegneria del software Modulo 1 -Introduzione al processo software Unità didattica 4 - Progettazione del software Ernesto Damiani Università degli Studi.
Progettazione di una base di dati Ciclo di vita di un sistema informativo Studio di fattibilità definisce le varie alternative possibili, i relativi costi.
Progettazione di basi di dati: metodologie e modelli
Problemi, algoritmi e programmazione
Fasi di sviluppo di un software
DFD (Data Flow Diagram) Riferimenti: –Pressman, Cap. 8.
La filosofia dell’organizzazione Cfr - Materiale corso di organizzazione aziendale dott. Stefano Colferai.
Università degli studi di Modena e Reggio Emilia Facoltà di Scienze Fisiche, Informatiche e Matematiche Corso di Laurea in Informatica Progettazione e.
METODI E STRUMENTI DELLA SCIENZA POLITICA
Diagramma degli Stati. Diagramma degli Stati … Definizione è un grafico con nodi ed archi in cui i nodi rappresentano gli stati di una classe e gli archi,
Valutazione dei crediti L’art comma 1 n. 8 c.c. prescrive che «i crediti sono rilevati in bilancio secondo il criterio del costo ammortizzato, tenendo.
Dall’idea al progetto perché progettare?. non partiamo da zero valorizziamo l’esperienza in ogni organizzazione esiste una attività di progettazione inconsapevole.
ALGORITMI, LINGUAGGI E PROGRAMMI Facoltà di Lingue e Letterature Straniere Corso di laurea in Relazioni Pubbliche.
Transcript della presentazione:

Commenti all’esempio del treno Nell’esempio del treno si è iniziato dalle attività generiche che tipicamente servono per portare a termine i compiti 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. di Sistema), Cap 7 (Ing. dei Req.) Cap 8 (Modellazione Analitica)

Commenti indipendenti dalla notazione Si è osservato come la richiesta del committente non indica necessariamente in modo preciso/completo cosa si vuole ottenere dal software ma cosa si vuole ottenere dal software+ambiente Si è osservata l’importanza di 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 è osservata l’importanza di rappresentare alternative possibili associandovi anche un tempo ed un costo (ai fini della negoziazione dei requisiti)

I casi d’uso aiutano a completare la matrice Caso d’Uso idtipoprioritàrischiodescrizionefonteriftempocosto CU11BassaAltoTestoInterv sita del… G 1, … Tasks1000 Scenario (Passo)

Tracciabilità (§7.2.7) Ridurre CodeFar usare il software ai clienti Pagare CC - Casa (CU1) +++- Pagare CC - Stazione -+ Caso d’Uso Rif.

Descrivere Requisiti Il diagramma Casi d’Uso può essere usato in vari casi per descrivere requisiti; a differenza dei DFD, il diagramma potrebbe essere non troppo complesso per il committente e potrebbe costituire un utile strumento di presentazione degli scenari (associati ai casi) Infatti, i casi d’uso come insiemi di scenari raggruppano, consistentemente, affermazioni in linguaggio naturale usate per descrivere gli scenari

Descrivere i Requisiti: Esempio “Il cliente che intende pagare con carta di credito inserisce il numero della carta e la data di scadenza; per sviluppi futuri, deve essere possibile inserire il CIV” Questo requisito descrive in modo naturale uno passo di uno scenario di un caso d’uso (Pagare CC ed in particolare quelli di Pagare CC – Casa e Pagare CC - Stazione)

Commenti dipendenti dalla notazione (Casi d’Uso) 1.Utilità della notazione 1.Aiuta a rappresentare (anche solo parzialmente) ciò che è interno ed esterno al software che si vuole/deve sviluppare (attori e pre e post condizioni) 2.Aiuta a decomporre uno scenario complesso in scenari più semplici che potrebbero essere riusati per descrivere altri scenari; ogni caso d’uso è orientato a produrre risultati d’interesse per l’attore principale, utile linea guida durante la costruzione di un diagramma (e quindi i casi d’uso dovrebbe essere fortemente indipendenti, anche temporalmente) 3.Permette di rimandare le scelte ed è, quindi, meno soggetto ad errori rispetto a DFD 4.Le pre e post-condizioni aiutano nella verifica e validazione per gli scenari descritti 2.Problemi della notazione 1.Non ha fondamenti teorici (ed è quindi parzialmente inadatta alla specifica dei requisiti) 2.La descrizione degli scenari non è standardizzata (quanti e quali passi o pre-post condizioni) 3.C’è una generale confusione sul significato dei singoli passi negli scenari (ad esempio, i passi possono essere unilaterali o collaborativi o a cosa il passo corrisponde effettivamente) 4.Non permette di capire in modo preciso se tutte le informazioni sono disponibili (evidente in un DFD) affinché un passo abbia senso 5.In mancanza d’esperienza, la notazione potrebbe essere usata per rappresentare delle funzioni (nel senso DFD) focalizzandosi anche troppo sul diagramma

Come rispondere ai seguenti problemi? 1.Un caso d’uso come insieme di scenari può essere descritto anche solo con pre e post-condizioni ma, comunque, non è evidente quante e quali essere tali condizioni. 1.Nel caso d’uso “ricercare” il passo “inserire partenza, arrivo etc.” non è evidente il significato; è il cliente che scrive (rendering locale) oppure il fatto che i dati sono inviati e controllati etc.; nel caso “prenotare” non è chiaro cosa s’intende per Cercare Disponibilità; nella creazione del biglietto potrebbe essere omesso come passo “confermare l’acquisto”; 2.Se non fosse stato indicato nel creare biglietto la pre-condizione “se il viaggio prevede una prenotazione questa è stata fatta” si poteva pensare nel caso “crearebiglietto” alcuni scenari che prevedono la prenotazione; 3.i flussi eccezionali non sono trattati sempre nello stesso modo (ma alcune eccezioni potrebbero omettersi – ad esempio, “se il cliente non inserisce partenza o arrivo corretti per 3 volte” perché considerata non importante) 4.E’ vero che le informazioni sono tutte disponibili per contattare il cliente nel caso “PagareCC”? 5.Difficile avere una visione d’insieme se non combinando pre e post condizioni. 2.A cosa corrisponde uno scenario o un insieme di scenari? Ha un modello matematico associato? Non è certamente un algoritmo in senso stretto! 3.Ma il caso d’uso “ricercare” è simile (o uguale) alla funzione “ricercare” introdotta nel DFD?

Soluzioni possibili 1.(1) Definire metodologie con linee guida molto precise con particolare uso di pre e post condizioni 2.(1.4) E’ possibile combinare i casi d’uso con i DFD anche se ciò non è generalmente usato (si perde la strutturazione di pre e post-condizioni, il DFD tende a diventare incomprensibile): –DFD di contesto e poi Casi d’uso –Casi d’uso e poi DFD per ogni singolo passo negli scenari (anche se si tende a non fare: il DFD probabilmente soffrirebbe dei problemi precedentemente identificati) 3.(1.5, 2) E’ possibile passare dai casi d’uso ad altre notazioni in modo da incrementare la precisione di ciò che è espresso dai casi d’uso stessi 4.(3) E’ di fondamentale importanza considerare il fatto che un caso d’uso deve creare qualcosa d’interesse per l’attore principale e che quindi non sono né troppo complesse né troppo semplici come tendono ad essere le funzioni

Ad un passo di un caso d’uso possono essere associati funzioni e flussi di dati Inserire dati… (Il software) crea il biglietto (Il software) crea ed invia un… (Il software) ricerca