Corso di Ingegneria del Software. Casi d uso

Documenti analoghi
Corso di Ingegneria del Software. Esempi di casi d uso

Corso di Ingegneria del Software. Informazioni sul corso

Corso di Ingegneria del Software. Activity Diagram

Corso di Ingegneria del Software. Il modello UP

Corso di Ingegneria del Software. La architettura software

SOMMARIO. DIAGRAMMI DEI CASI D USO INGEGNERIA DEL SOFTWARE Università degli Studi di Padova. Cosa sono gli Use Case. Specifica Use Case

Corso di Ingegneria del Software. Testing

SOMMARIO DIAGRAMMI DI SEQUENZA

SOMMARIO. DIAGRAMMI DI SEQUENZA INGEGNERIA DEL SOFTWARE Università degli Studi di Padova. Introduzione. Partecipanti e messaggi.

Programma operativo Regione Lombardia/Ministero del Lavoro/Fondo Sociale Europeo, Obiettivo 3 Misura C3

Catia Trubiani. Laboratorio di Ingegneria del Software a.a

Microsoft Visio 2002 UML Sergio Colosio

Use Case Diagram. Catia Trubiani. Laboratorio di Ingegneria del Software a.a

Casi d uso. Marina Zanella - Ingegneria del Software UML: Casi d uso 1

Unified Modeling Language (UML)

Ingegneria del Software L-A

Proff. Toni Mancini & Monica Scannapieco Dipartimento di Informatica e Sistemistica Università di Roma La Sapienza

SOMMARIO DIAGRAMMI DEI CASI D USO

UML come abbozzo. Introduzione all UML. UML come linguaggio x programmi. UML come progetto dettagliato

Materiale didattico. Sommario

Analisi dei Casi d Uso

2. Modellazione dei casi d uso

UML2. Concetti base. Andrea Polini. Laboratorio di Ingegneria del Software Corso di Laurea in Informatica L31 Università di Camerino

Introduzione ai casi d uso

SOMMARIO DIAGRAMMI DI ATTIVITÀ INGEGNERIA DEL SOFTWARE. Introduzione. Concetti base. Introduzione. Concetti base

SOMMARIO DIAGRAMMI DI ATTIVITÀ

Corso di Ingegneria del Software. Modelli di produzione del software

Corso di Laurea Magistrale in Ingegneria Informatica Curriculum in IT Management. Ingegneria del Software II (IS2)

Progettazione del Software Analisi

SOMMARIO DIAGRAMMI DI ATTIVITÀ INGEGNERIA DEL SOFTWARE. Introduzione. Concetti base. Introduzione. Concetti base

Progettazione del Software

Corso di Ingegneria del Software. Modelli di produzione del software

Casi d uso: esercizi

UML I diagrammi implementativi

SOMMARIO DIAGRAMMI DELLE CLASSI E DEGLI OGGETTI INGEGNERIA DEL SOFTWARE. Introduzione. Proprietà e Operazioni. Proprietà e Operazioni

UML Introduzione a UML Linguaggio di Modellazione Unificato. Corso di Ingegneria del Software Anno Accademico 2012/13

Corso di Ingegneria del Software. La progettazione della interfaccia utente

SOMMARIO. DIAGRAMMI DI ATTIVITÀ INGEGNERIA DEL SOFTWARE Università degli Studi di Padova. Introduzione. Concetti base.

INGEGNERIA DEL SOFTWARE. Il Corso. Obiettivi. A.A Prof. Giuseppe Visaggio Presentazione

Corso di Ingegneria del Software. Modelli di produzione del software

UML Unified Modeling Language

Corso di Ingegneria del Software. Architetture in UML

UML GML- Classi di Oggetti

UML GML- Classi di Oggetti

Programma operativo Regione Lombardia/Ministero del Lavoro/Fondo Sociale Europeo, Obiettivo 3 Misura C3

LEZIONE 3 USE CASE DIAGRAM && ACTIVITY DIAGRAM

Il PROCESSO UNIFICATO

Elementi di UML (6): Diagrammi dinamici di flusso

Corso di Ingegneria del Software. I costi del software

UML UNIFIED MODELING LANGUAGE

Fondamenti di Informatica II 21. Standard UML

Fondamenti di Informatica

INSEGNAMENTO DI INGEGNERIA DEL SOFTWARE B (5 CFU) CORSO DI LAUREA SPECIALISTICA IN INGEGNERIA INFORMATICA a.a

Modellazione discreta con UML

Informatica e Comunicazione Digitale. Docente responsabile Nome Cognome Indirizzo Mail. Stanza Docenti Dip. Inf. (TARANTO) disciplinare

LEZIONE 5 SEQUENCE DIAGRAM

CLASS DIAGRAM PARTE 1

UML GML- Classi di Oggetti

Casi d uso: esercizi

Ingegneria del Software 4. Introduzione a UML. Dipartimento di Informatica Università di Pisa A.A. 2014/15

Corso di Ingegneria del Software. Metriche Parte II

UML. Il linguaggio UML e ArgoUML. Ingegneria dei sistemi software 2009/ /09/2009

SOMMARIO DIAGRAMMI DEI CASI D USO INGEGNERIA DEL SOFTWARE. Cosa sono gli Use Case. Specifica Use Case

Informatica e Tecnologie per la Produzione del Software. VI Piano Stanza 619

Ingegneria del Software T

Corso di Laurea Magistrale in Ingegneria Informatica. Ingegneria del Software II (IS2)

INGEGNERIA DEL SOFTWARE

Capitolo 7. Ingegneria del Software. Mauro Giacomini Pearson Addison-Wesley. All rights reserved

Corso di Ingegneria del Software. Modelli di produzione del software

Progettazione del Software

Descrivono la collaborazione di un gruppo di oggetti per implementare collettivamente un comportamento

Ingegneria del Software 2010

Una metodologia per la specifica di software a componenti

Dip. Informatica VI Piano. Ambito disciplinare. Secondo Semestre Secondo Anno Lezioni frontali (9 CFU) Progetto (3 CFU)

SOMMARIO. DIAGRAMMI DELLE CLASSI INGEGNERIA DEL SOFTWARE Università degli Studi di Padova. Introduzione. Proprietà e Operazioni

Progettazione Concettuale e Modello di Progetto

UML. Unified Modeling Language (UML) Breve storia dell UML. Perchè usare la progettazione visuale? Ken Jacobs, Oracle Vice-president:

Sistemi Informativi. Marino Segnan introduzione 1

Ingegneria Informatica A.A

Corso di Ingegneria del Software. I costi del software

INGEGNERIA DEL SOFTWARE INFORMATICA ARDIMENTO PASQUALE

SOMMARIO. DIAGRAMMI DELLE CLASSI INGEGNERIA DEL SOFTWARE Università degli Studi di Padova. Introduzione. Proprietà e Operazioni

SOMMARIO. DIAGRAMMI DELLE CLASSI INGEGNERIA DEL SOFTWARE Università degli Studi di Padova. Introduzione. Proprietà e Operazioni

Laboratorio di Progettazione di Sistemi Software UML per Design Patterns e Refactoring

Basi di Dati. Modello Concettuale

DIAGRAMMI DEI PACKAGE

Progettazione Logica e Modello Realizzativo

Laboratorio di Sistemi Software UML per Design Patterns e Refactoring

Corso di Laurea Specialistica in Ingegneria Informatica. Corso di Ingegneria del Software A. A Introduzione ad UML E.

Elementi di UML (7): Diagrammi dei componenti e di deployment

1. UML 2 ed il Processo Unificato

Corso di Ingegneria del Software. Modelli di produzione del software

Tecniche di sviluppo di progetti. Lezione 4: Diagrammi UML

Fondamenti di Informatica per la Sicurezza a.a. 2008/09. Introduzione. Stefano Ferrari

Sistemi Informativi Aziendali

Transcript:

Corso di Ingegneria del Software a.a. 2009/2010 Mario Vacca mario.vacca1@istruzione.it

1. 2. 2.1 Il linguaggio dei casi d uso 2.2 Esempi 3. Bibliografia Sommario

1. 2. 2.1 Il linguaggio dei casi d uso 2.2 Caratteristiche dei casi d uso 2.3 Esempi 3. Bibliografia Sommario

Generalità La tecnica dei casi d uso è stata definita da Ivar Jacobson (1992) come evoluzione dei classici storyboards, e fa parte ora di UML. I casi d uso rappresentano i servizi (funzioni) che un software fornisce ad un utente. storie interazione tra un utente ed il software. I servizi possono essere rappresentati a diversi livelli di dettaglio e di aggregazione. Il software è visto dalla prospettiva dell utente che gli chiede un servizio.

Generalità I casi d uso rappresentano cosa fa un software, non entrano in come tecnicamente lo fa. I casi d uso possono essere rappresentati con diagrammi (UML), o descritti con linguaggio naturale.

1. 2. 2.1 Il linguaggio dei casi d uso 2.2 Caratteristiche dei casi d uso 2.3 Esempi 3. Bibliografia Sommario

Attore Un attore definisce un insieme coerente di ruoli

Caso d uso Uno use case rappresenta una funzionalità completa così come viene percepita da un attore. Definisce il comportamento di un sistema o di un altra entità senza rivelarne la struttura interna. Un caso d uso è un tipo di classificatore che rappresenta un unità coerente di funzionalità fornita da una specifica entità (sistema, sottosistema, classe) e descritta sia dalla serie di messaggi scambiati tra l entità stessa e un altra interagente esterna (attore), sia dalla sequenza di azioni svolte.

Caso d uso Uno use case rappresenta una funzionalità completa così come viene percepita da un attore. Definisce il comportamento di un sistema o di un altra entità senza rivelarne la struttura interna. Un caso d uso è un tipo di classificatore che rappresenta un unità coerente di funzionalità fornita da una specifica entità (sistema, sottosistema, classe) e descritta sia dalla serie di messaggi scambiati tra l entità stessa e un altra interagente esterna (attore), sia dalla sequenza di azioni svolte.

Relazione di associazione tra attori e casi d uso Esempio L interazione tra l attore e il caso d uso (e, indirettamente, tra l attore e il sistema che implementa il caso d uso) è rappresentata mediante una linea che collega i due elementi (associazione). Figura: Il docente registra il voto

System Boundary Actor Rappresenta attore o un

Attori primari e secondari Un attore primario attiva (o inizia) il caso d uso. Un attore secondario ha un ruolo marginale poich e partecipa al caso d uso solamente come sorgente di dati in input oppure come ricevitore di dati in output. L attore secondario ha quindi un ruolo di supporto al caso d uso, il quale è concepito per fornire una funzionalità il cui valore è percepito soprattutto dall attore primario. Un database esterno al sistema è un esempio tipico di attore secondario che riceve o fornisce dati ma che non utilizza altrimenti il sistema.

Relazione di generalizzazione tra attori Esempi Un attore A è generalizzazione di un attore B quando B è visto come un caso particolare di A.

Relazione di generalizzazione tra casi d uso La generalizzazione si applica sia ad attori sia a use case. Uno use case A è generalizzazione di uno use case B quando B è visto come un caso particolare di A.

Extend La relazione extend tra use case è rappresentata da una freccia etichettata con hhextend ii dallo use case che definisce l estensione allo use case base. La relazione extend tra uno use case A ed uno use case B indica che ogni istanza di B, in condizioni particolari, viene esteso con le funzionalit`di una istanza di A.

Una relazione extend tra uno Use Case A ed uno Use Case B indica che ogni istanza dello Use Case B viene estesa (con riferimento a condizioni particolari specificate nell estensione) con le funzionalità di un istanza di Use Case A. Il caso d uso base definisce (eventualmente) il punto di estensione e il caso d uso di estensione definisce la condizione di attivazione

Include Una relazione d inclusione tra Use Case è rappresentata da una freccia tratteggiata tra lo Use Case che include e quello che è incluso. La freccia è etichettata con include (stereotipo hhincludeii). Viene usata quando c è una funzionalità comune tra più Use Case ed è quindi conveniente metterla a fattor comune. può essere utilizzato per modellare componenti riutilizzati/riutilizzabili Lo use case incluso è incondizionatamente incorporato nell esecuzione dello use case che include. La responsabilità della decisione su quando e perchè usare lo use case incluso è dello usa case che include.

Include Una relazione d inclusione da uno use case A ad uno use case B, indica che ogni istanza dello use case A includerà anche il comportamento specificato per lo use case B. In altre parole, qualche funzionalità di A richiede di servirsi di qualche funzionalità di B.

Include

Una relazione d inclusione tra casi d uso mette a fattor comune tra di essi attività ricorrenti e condivise. Si utilizza per evitare il ripetere della esplicitazione di questi casi d uso di servizio in diagrammi complessi.

Inclusione e Estensione: similarità entrambe fattorizzano comportamenti comuni a più use case entrambe aumentano il comportamento dello use case di base

Inclusione e Estensione: differenze L intento è differente nell estensione l attore esegue sia lo use case base che tutte le sue estensioni (se attivabili). nell inclusione l attore esegue sia lo use case base che tutte le sue inclusioni. Nell inclusione (spesso) non c è un attore associato con lo use case comune (incluso)

Inclusione e Estensione: uso Usare: extend quando si stanno descrivendo variazioni dalla funzionalità standard o condizioni particolari (es. di errore) include quando si sta ripetendo la stessa funzionalità in più use case separati e si vogliono quindi evitare queste ripetizioni

Bibliografia 1. 2. 2.1 Il linguaggio dei casi d uso 2.2 Esempi 3. Bibliografia Sommario

Bibliografia Bibliografia Riferimenti bibliografici - Generali 1. R. Pressman Ingegneria del software Mc Graw Hill Italia, 5a edizione, 2007, capitolo 9. 2. P. Jalote A Concise Introduction to Software Engineering Springer, 2008, capitolo 3.

Bibliografia Bibliografia Riferimenti bibliografici - Specifici 1. S. Bennett, J. Skelton, K. Lunn, Introduzione a UML, McGraw Hill, 2002. 2. M. Fowler, UML Distilled Guida rapida al linguaggio di modellazione standard, Addison Wesley, 2004.

Bibliografia Bibliografia Riferimenti bibliografici - Siti utili 1. StarUML http://staruml.sourceforge.net/en/ 2. ArgoUML http://argouml.tigris.org/