Analisi dei requisiti Il primo passo di “qualsiasi” processo di sviluppo è la definizione dei requisiti  Definizione del Business Model  Solitamente.

Slides:



Advertisements
Presentazioni simili
CONCLUSIONE - Nucleo (o Kernel) Interagisce direttamente con lhardware Interagisce direttamente con lhardware Si occupa dellesecuzione.
Advertisements

DFD (Data Flow Diagram)
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
No Silver Bullet Essenza ed Accidenti nella Ingegneria del Software Mario Capurso
Specifiche Algebriche
Corso IS I /03 Esame Scritto - Parte generale 10 Giugno 2003 Punteggio massimo totale punti 18; soglia superamento prova 10 Avvertenza Si vuole sempre.
Principi di Programmazione Object-Oriented
Principi di Programmazione Object-Oriented
4 – Progettazione – Introduzione e Modello E-R
Basi di Dati prof. A. Longheu 4 – Progettazione – Introduzione e Modello E-R Cap. 5 Basi di dati Atzeni – Ceri – Paraboschi - Torlone.
DIAGRAMMI DI FLUSSO DEI DATI
Pianificazione Strategica
©Carlo Tasso 1999 Object Oriented Programming Slide 1 OO Analysis Vs. OO Design OOA – Object Oriented Analysis. –Specifica COSA, IN QUALE CONTESTO il sistema.
1 14. Verifica e Validazione Come assicurarsi che il software corrisponda alle necessità dellutente? Introdurremo i concetti di verifica e validazione.
Analisi dettagliata e design B. Pernici M.G. Fugini AA
Analisi dettagliata e design B. Pernici. Sommario Analisi dettagliata –Separazione interfaccia, controllo, entita Design –Logical view –Progettazione.
Analisi, rappresentazione e progettazione delle procedure
Basi di dati 2002 EER Vogliamo aumentare lespressività degli Entity Model EER: Entity Model Esteso.
Modello E-R Generalizzazioni
Progettazione di una base di dati
Modello E-R Generalizzazioni
Daniel Stoilov Tesi di Laurea
Elementi di Informatica
1 Programmazione = decomposizione basata su astrazioni (con riferimento a Java)
La progettazione di un sistema informatico
L’ingegneria del software
Lo sviluppo del progetto informatico
Everywhere Takeaway Progetto di SSCSWeb A.A. 2011/2012.
Everywhere Takeaway Progetto di SSCSWeb A.A. 2011/2012.
Everywhere Takeaway Progetto di SSCSWeb A.A. 2011/2012.
Everywhere Takeaway Progetto di SSCSWeb A.A. 2011/2012 V. Costamagna, F. Dotta, F. Barbano, L. Violanti, Oltikuka.
Everywhere Takeaway Progetto di SSCSWeb A.A. 2011/2012.
Lazienda SCInformatica si occupa della progettazione e della realizzazione di sistemi informatici dedicati alle farmacie. Fornisce inoltre un servizio.
LA GESTIONE DELLASSISTENZA. LO SCENARIO LHelp Desk è Il Servizio di Assistenza Tecnica che si rivolge alla clientela esterna allazienda. LHelp Desk gestisce.
Lazienda SC Informatica si occupa della progettazione e della realizzazione di sistemi informatici dedicati alle farmacie. Fornisce inoltre un servizio.
RICERCA PER LA VALUTAZIONE
Scenari e Casi d’Uso (UML)
Commenti all’esempio del treno Nell’esempio del treno si è iniziato dalle attività generiche che tipicamente servono per portare a termine i compiti iniziali.
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
UML.
Progettazione concettuale di SI basati su Web
La modellazione degli oggetti
I processi.
Diagramma delle Classi
Prog. applicazioni Web- 1 - Processo di sviluppo: Visione d’insieme.
Analisi dettagliata e design
Commenti all’esempio del treno Nell’esempio del treno si è iniziato dalle attività generiche e/o attività operative che tipicamente costituiscono i passi.
Feed Back Esonero. UCD.Relazioni: Dipendenze 2 Dipendenza stereotipata > Il Caso d’uso base incorpora esplicitamente il comportamento di un altro caso.
Laboratorio di Progettazione A cura di: Arosio Cattaneo Prandi
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.
Ingegneria del software Modulo 1 -Introduzione al processo software Unità didattica 4 - Progettazione del software Ernesto Damiani Università degli Studi.
II - Approccio progettuale
Progettazione di basi di dati: metodologie e modelli
Per un nuovo orientamento nella progettazione dei linguaggi di programmazione Tesi di Laurea di: RICCARDO SOLMI Università degli Studi di Bologna Facoltà.
Ingegneria del software Modulo 1 -Introduzione al processo software Unità didattica 4 – Progettazione del software Ernesto Damiani Università degli Studi.
PROGETTAZIONE DI BASE DI DATI Metodologie e modelli.
Everywhere Takeaway Progetto di SSCSWeb A.A. 2011/2012 V. Costamagna, F. Dotta, F. Barbano, L. Violanti, Oltikuka.
DFD (Data Flow Diagram) Riferimenti: –Pressman, Cap. 8.
Progettazione concettuale di SI basati su Web B. Pernici.
Cloud Tecno V. Percorso didattico per l’apprendimento di Microsoft Access 4 - Le maschere.
Milano, 18 febbraio 2013 IMPRESA FORMATIVA SIMULATA LEGGE 28 marzo 2003, n.53 Art. 4. (Alternanza Scuola-Lavoro) UNA MODALITA’ DI ATTUAZIONE DELL’ALTERNANZA.
Informatica Problemi e algoritmi. una situazione che pone delle domande cui si devono dare risposte. Col termine problema o situazione problematica s’indica.
CIVIS canale telematico per l’assistenza sulle comunicazioni di irregolarità, sulle cartelle di pagamento e la presentazione documenti (36/ter)
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,
Parsing ricorsivo discendente Il parsing ricorsivo discendente (recursive descent parsing) è un metodo di tipo top-down che può essere facilmente codificato.
Ingegneria del software1 Casi d’uso. Ingegneria del software2 Sommario Definizione Caratteristiche dei casi d’uso Casi d’uso e UML Diagramma dei casi.
Cassetto Professionisti Cassetto Previdenziale per Liberi Professionisti iscritti alla Gestione Separata 1.
Transcript della presentazione:

Analisi dei requisiti Il primo passo di “qualsiasi” processo di sviluppo è la definizione dei requisiti  Definizione del Business Model  Solitamente informale e in linguaggio naturale Jacobson propone una notazione particolare che è confluita in UML USE CASE DIAGRAMS

Caso d'Uso (def. Jacobson) “un caso d’uso è una sequenza di transazioni in un sistema il cui compito è di conseguire un risultato di valore misurabile per un singolo attore del sistema.” (Jacobson 1995)‏

Use Case -definizioni preliminari Descrive una particolare funzionalità fornita dal sistema o da una sua parte dal punto di vista dell’utilizzatore. Mostra le unità coinvolte nella fornitura del sistema (attori e sistema)‏ Uno use case:  Rappresenta le funzionalità visibili dall’utente  Può avere differenti granularità  Rappresenta un obiettivo specifico per l’utente In generale, gli use case vengono ricavati sulla base di colloqui con diversi profili di utenti che utilizzeranno il sistema

Use Case -notazione Actor: è qualcuno (utente) o qualcosa (sistemi esterni - hardware) che: Controlla le funzionalità Fornisce input o riceve output dal sistema Use Case: è un’unità funzionale parte del sistema

Use Case -attori Attore: entità esterna al sistema che interagisce con esso assumendo un ruolo Diversi attori con lo stesso ruolo e diversi ruoli con lo stesso attore Diversi attori possono esercitare uno use case e diversi use case che possono essere esercitati da un attore Non è detto che un attore corrisponda a una o più persone (es. sistema esterno) Gli attori possono essere il mezzo per individuare gli use case (individuo una lista di attori) Gli use case rappresentano le funzionalità ai morsetti del sistema

Relazione tra attori e use-case Può capitare che una funzione esista perché di interesse di un attore che non partecipa all’azione stessa Azione indotta da altre iniziative del sistema e ha come destinatario un attore fuori dal contesto operativo Es. notifica ordine di pagamento ad un compratore dopo 2 mesi dall’acquisto Un attore, nei confronti di uno use case può esserne il beneficiario, il controllore, informato,…

Relazione casi d'uso come interazioni i casi d’uso possono essere descritti sotto forma di scenario di interazione (dialogo) tra gli utilizzatori e il sistema: –il cliente richiede l’elenco dei prodotti –il sistema propone i prodotti disponibili –il cliente sceglie i prodotti che desidera –il sistema fornisce il costo totale dei prodotti selezionati –il cliente conferma l’ordine –il sistema comunica l’accettazione dell’ordine l’attenzione va rivolta all’interazione, non alle attività interne al sistema

Relazioni principali Associations identificano relazioni semplici tra attori e casi Include fattorizza proprietà comuni. A includes B Extend identifica comportamenti simili (varianti). A può essere visto come una variante di B Generalization si applica sia ad attori che a use case. A eredita il comportamento di B. A può essere sostituito ad ogni occorrenza di B

Esempio di associazione (Ufficio Postale)‏ Il primo Use Case diagram definisce il contesto del modello Scelte diverse possono imporre Attori diversi e Use case diversi

Esempio diagramma dei casi d'uso caso d'uso: particolarità di uso del sistema attore: un utilizzatore del sistema (essere umano, altro sistema, …)‏

Esempio di associazione (Registrazione corsi)‏

Generalizzazione (1) Lo use case figlio Eredita tutti gli attributi, scenari… definiti nello use case padre Partecipa a tutte le relazioni in cui è coinvolto lo use case padre Lo use case figlio può prevedere nuovi scenari non previsti nello use case padre o ridefinirne alcuni Padre Uno use case Può ereditare da n altri use cases Può essere il padre di n altri use case

Generalizzazione (2)‏

Inclusione Esistono use case che rappresentano attività ricorrenti condivise da use case più complessi Per evitare di ripetere in ogni use case la descrizione dell’attività comune la si mette a fattor comune indicando che viene inclusa in use case più complessi La funzionalità individuata viene inclusa in un punto specifico o nella sua interezza nella sequenza di interazioni che caratterizza lo use case base. Analogie con Chiamata a sottoprocedura in un linguaggio di programmazione Stereotipo : >

Punti Estensione

Estensione Viene specificato in che modo sotto quali condizioni il comportamento individuato dallo use case estensione può essere incorporato nello use case base E’ necessario specificare sempre i punti estensione Quando si verifica la condizione di estensione lo use case estensione viene inglobato nello use case base Stereotipo: >

Esempio di inclusion (Immobiliare)‏

Esercizio (livello 0)

Raffinamento use-case (livello 1)‏

Modellazione flussi di eventi Flusso di eventi principali: corrisponde allo scenario di esecuzione ideale  L’attore non compie e non genera errori  Un flusso di eventi principale è sempre presente Flusso di eventi eccezionale  Cammino percorso in presenza di errori  Cammino percorso con bassa frequenza  Un caso d’uso presenta molto spesso eventi eccezionali

Modellazione flussi di eventi scenario base: è (di solito) quello che prevede il successo del caso d’uso, ed uno svolgimento lineare scenari alternativi: possono essere di successo o fallimento, con complicazioni varie non è necessario (e sarebbe molto costoso) analizzare in dettaglio tutti i possibili scenari di un caso d’uso (combinazioni di varianti)‏ è invece necessario individuare le singole possibili varianti che possono portare al fallimento del caso d’uso, o che comportano trattamenti particolari

esempio: apertura conto corrente 1 il cliente si presenta in banca per aprire un nuovo c/c 2 l’addetto riceve il cliente e fornisce spiegazioni 3 se il cliente accetta fornisce i propri dati 4 l’addetto verifica se il cliente è censito in anagrafica 5 l’addetto crea il nuovo conto corrente 6 l’addetto segnala il numero di conto al cliente Varianti: 3 (a) se il cliente non accetta il caso d’uso termina 3 (b) se il conto va intestato a più persone vanno forniti i dati di tutte 4 (a) se il cliente (o uno dei diversi intestatari) non è censito l’addetto provvede a registrarlo

Use case (Processo)‏ Il processo di definizione degli use case è iterativo  Si inizia identificando il comportamento più semplice  Si descrivono i comportamenti alternativi e più complessi Quando smettere?  Un buon livello di dettaglio facilità tutte le attività successive  Troppi dettagli - Complicherebbero inutilmente la descrizione - Introdurrebbero prematuramente scelte progettuali - Precluderebbero la visione d’insieme