UML: Use Cases Corso IS I /03

Slides:



Advertisements
Presentazioni simili
DFD (Data Flow Diagram)
Advertisements

Introduzione ai Casi dUso (c) TECNET DATI (c) TECNET DATI Pag. 2 Dai requisiti ai casi duso obiettividefinire gli obiettivi –gli obiettivi del committente.
Real World UML Omid Ehsani Senior Consultant and Trainer Omid Ehsani Senior Consultant and Trainer
L’Informatica dal Problema alla Soluzione
Corso IS I /03 Esame Scritto - Parte generale 10 Giugno 2003 Punteggio massimo totale punti 18; soglia superamento prova 10 Avvertenza Si vuole sempre.
Corso IS I /03 Esame Scritto - Parte generale 10 Luglio 2003 Punteggio massimo totale punti 18; soglia superamento prova 10 Avvertenza Si vuole sempre.
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.
Prototipo di uno strumento per la produzione di siti Web adattativi in grado di gestire varie coordinate di adattamento Riccardo Torlone Milano, novembre.
Esame Scritto (esempio) Corso IS I /03. v. 0.0 Parte generale (punti 18) Domanda 1 a) Chi partecipa al processo dello sviluppo software? b) Qualificare.
Componenti: interoperabilità. Tecnologia per componenti Sono necessari Un linguaggio (con annessi e connessi) per esprimere le interfacce (IDL) Un ambiente.
UML: Extension Mechanism Corso IS I /03 Gianna Reggio Versione 0.0.
Modello E-R Generalizzazioni
Modello E-R Generalizzazioni
A.Natali DL Maggio1999 Oggetti Concetti fondamentali.
La sicurezza può essere fornita in ciascuno degli strati: applicazione, trasporto, rete. Quando la sicurezza è fornita per uno specifico protocollo dello.
La progettazione di un sistema informatico
GLI STANDARD PER L’INFORMATICA MEDICA una necessità da condividere.
Descrizione Semantica ad Alto Livello di Ambienti Virtuali in X3D
L’ingegneria del software
UML: Collaboration diagram Corso IS I /03 Gianna Reggio Versione 1.0.
Project Review Località Sciistica 5 Dicembre 2011.
Project Review Novembrer 17th, Project Review Agenda: Project goals User stories – use cases – scenarios Project plan summary Status as of November.
Project Review byNight byNight December 21th, 2011.
Project Review byNight byNight December 21th, 2011.
User stories Claudio Maccari Mail:
Analisi dei Requisiti (Requirements Engineering) Seminario RE Università degli Studi di Padova, 12 Gennaio 2004.
Tecniche di accessibilità web Tabelle e form accessibili Le tabelle di dati WCAG 1.0, linea guida 5 Garantire che le tabelle abbiano.
Ingegneria dei Requisiti - e dei Sistemi - Giuseppe Berio DI-Unito 2007.
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
Ingegnerie dei Requisiti e dei Sistemi
Progettazione concettuale di SI basati su Web
G.ADORNI, M.COCCOLI, G.VERCELLI, G.VIVANET E-LEARNING & KNOWLEDGE MANAGEMENT LAB. UNIVERSITÀ DI GENOVA Il Semantic Web per l’e-learning e l’e-government:
Progettazione di dati e applicazioni per il Web S. Ceri, P. Fraternali, A. Bongio, M. Brambilla, S. Comai, M. Matera Copyright © The McGraw-Hill.
I PASSI PER L’IMPLEMENTAZIONE DEGLI STANDARD , Napoli Roch Bertucat.
Dynamic Modeling in COMET Seconda parte Valentina Cordì.
Project Review byNight byNight December 21th, 2011.
Giovanni Biondi ICT e trasformazione della Scuola.
Diagramma delle Classi
UML: Activity diagram Corso IS I /03 Gianna Reggio Versione 0.1.
Prog. applicazioni Web- 1 - Processo di sviluppo: Visione d’insieme.
Analisi dei requisiti Il primo passo di “qualsiasi” processo di sviluppo è la definizione dei requisiti  Definizione del Business Model  Solitamente.
Taccani1 7.4 Identification ANALISI DEI PERICOLI Hazard Analysis Identificazione Valutazione Misure di Controllo Control Measures Assessment.
Distribuzione controllata del software con Systems Management Server 2003 Fabrizio Grossi.
ANNUNCIO DI SEMINARIO Il giorno Venerdi' 21 Maggio 2004 alle ore 11:30 presso l'Aula C3.4 della Facolta' di Scienze Matematiche Fisiche e Naturali dell'Universita'
Catalogo 2.0 La Biblioteca nel Web 2.0 Karen Coyle
Ingegneria del software Modulo 1 -Introduzione al processo software Unità didattica 4 -Progettazione del software Ernesto Damiani Università degli Studi.
Corso di Laurea in Informatica
Corso IS I /03 Esame Scritto - Parte generale 18 Febbraio 2003 Punteggio massimo totale punti 18; soglia superamento prova 10 Avvertenza Si vuole.
UML: Introduzione Corso IS I /03 Gianna Reggio Versione 0.0.
Ingegneria del software Modulo 1 -Introduzione al processo software Unità didattica 4 – Progettazione del software Ernesto Damiani Università degli Studi.
SUMMARY Time domain and frequency domain RIEPILOGO Dominio del tempo e della frequenza RIEPILOGO Dominio del tempo e della frequenza.
DFD (Data Flow Diagram) Riferimenti: –Pressman, Cap. 8.
Gestione trasferte SAP Best Practices. ©2013 SAP AG. All rights reserved.2 Finalità, vantaggi e passi fondamentali del processo Finalità  Fornire una.
Progettazione concettuale di SI basati su Web B. Pernici.
Gestione dei numeri di serie SAP Best Practices. ©2013 SAP AG. All rights reserved.2 Finalità, vantaggi e passi fondamentali del processo Finalità  Descrizione.
DIT Department of Information and Communication Technology Information System Ingegneria del Software: un caso di studio.
Project Review Novembrer 17th, Project Review Agenda: Project goals User stories – use cases – scenarios Project plan summary Status as of November.
Standard e strumenti per lo sviluppo del software Marco Carezzano Andrea Andrenacci (ZEROPIU, Business Partner di Telecom Italia) Milano, 2 febbraio 2005.
Progetti 2015/2016. Proj1: Traduzione di regole snort in regole iptables Snort: – analizza i pacchetti che transitano in rete, confrontandoli con un database.
Titolo evento Luogo, data Seminario INSPIRE Bologna, luglio 2012 Profili, strumenti ed implementazioni dei metadati Antonio Rotundo Agenzia per l’Italia.
Activity diagrams Data & Control Flows Esempi
STMan Advanced Graphics Controller. What is STMan  STMan is an advanced graphic controller for Etere automation  STMan is able to control multiple graphics.
Do You Want To Pass Actual Exam in 1 st Attempt?.
TECO Teacher Education Competency Ontology
Cyber Safety.
Studente : Andrea Cassarà Classe: 5AII A.S. 2014/2015 Link Sito
Transcript della presentazione:

UML: Use Cases Corso IS I - 2002/03 Gianna Reggio Versione 0.0

Use Cases Tecnica per esprimere requisiti/proprietà funzionali su un sistema descrivere dal punto di vista di chi lo usa (senza guardare come è fatto) un sistema sistemi di vario genere quello softaware\hardware da sviluppare Il business da supportare con il software da sviluppare Ma anche una componente/un sottosistema Sviluppata indipendentemente da UML (e dal mondo OO) Non visuale (solo testo, al più formattato in modo standard) UML offre una notazione visuale per presentare alcuni aspetti di un insieme di use case

Use cases: che cosa sono Alcune definizioni dalla letteratura corrente A complete set of use cases specifies all the different ways to use the system, and thus defines all behavior required of the system, bounding the scope of the system. User goals summarize system functions (functional requirements) in verifiable terms of use that users, executives, and developers can appreciate and validate against their interests.

Esempio tipico (1) Use Case: Deposit Money frase verbale Scope: Bank Accounts and Transactions System Level: User Goal Intention in Context: The intention of the Client is to deposit money on an account. Clients do not interact with the System directly; instead, for this use case, a Client interacts via a Teller. Many Clients may be performing transactions and queries at any one time. Primary Actor: Client Main Success Scenario: 1. Client requests Teller to deposit money on an account, providing sum of money. 2. Teller requests System to perform a deposit, providing deposit transaction details. 3. System validates the deposit, credits account for the amount, records details of the transaction, and informs Teller.

Esempio tipico (2) Extensions: 2a. Client requests Teller to cancel deposit: use case ends in failure. 3a. System ascertains that it was given incorrect information: 3a.1. System informs Teller; use case continues at step 2. 3b. System ascertains that it was given insufficient information to perform deposit: 3b.1. System informs Teller; use case continues at step 2. 3c. System is not capable of depositing (e.g. transaction monitor of System is down): 3c.1. System informs Teller; use case ends in failure.

Attori (1) Alcune definizioni The actors represent what interacts with the system. An actor represents a role that an external entity such as a user, a hardware device, or another system plays in interacting with the system. A role is defined by a set of characteristic needs, interests, expectations, behaviors and responsibilities. In generale un attore comunica mandando messaggi al/ricevendo messaggi dal sistema sotto considerazione In generale un use case non si limita ad un solo attore

Attori (2) Come trovare gli attori 2 categorie di attori Cercare le entità esterne che interagiscono con il sistema Quali persone interagiscono con il sistema (direttamente o indirettamente)? Non dimenticare la manutenzione Il sitema interagirà con altri sistemi o sistemi legacy? Ci sono dei dispositivi hardaware o softaware che interagiscono con il sistema ? Ci sono interafcce per presentare rapporti sull’attività o interfacce per scopi amministrativi ? 2 categorie di attori Primari chi ha delle mire sul sistema chi guadagna qualcosa dal sistema Secondari quelli su cui il sistema ha delle mire chi produce qualcosa per il sistema

Limiti del sistema considerato Quando si vuole utilizzare gli use case è importante aver ben chiaro i limti del sistema sotto considerazione

Scenario Uno scenario è una sequenza ordinata di interazioni tra un sistema ed un insieme di attori esterni al sistema Uno scenario rappresenta una particolare esecuzione di un use case (istanza), e rappresenta un singolo cammino attraverso l’use case Gli scenari sono utili poichè Forniscono un prototipo di carta È più facile partire con scenari (concreti) e poi generalizzare Sono usati per il testing Gli scenari possono essere presentati usando i sequence diagram di UML

Cosa è un use case Un use case cattura chi (attori) fa cosa (interazione) con il sistema. Con quale scopo (goal), senza consoderare ciò che è dentro il sistema Un use case Raggiunge un singolo, discreto, completo, significativo, e ben definito task di interesse per un attore È un pattern di comportamento tra alcuni attori ed il sistema — una collezione di possibili scenari È scritto usando il vocabolario del dominio Definisce scopo ed intento (non azioni concrete) È generale e indipendente dalla tecnologia

Use Case Description Gli use case sono principalmente descrizioni testuali I passi di un use case sono scritti come narrattiva strutturata, facile da capire, usando il vocabolario del dominio dell’applicazione Gli use case sono descrizioni chiare, precise, generali, e indipendenti dalle tecnologie Un use case riassume un gruppo di scenari Ogni scenario parte dal trigger (evento scatenante) fino al suo completamento La descrizione di un use case include Come lo use case inizia e come finisce Il contesto dello use case Il comportamento degli attori e del sistema descritti come intenzioni e responsabilità Tutte le circostanze in cui il goal dell’attore primario è raggiunto e quando no Che informazioni sono scambiate tra attori e sistema

Granularità degli use case Una proposta recente per tre livelli di use case summary level Dall’aereo user–goal level a livello del mare Subfunction level da sotto l’acqua

Granularità degli use case (2) Summary level UC possono descrivere gli scopi principali del sistema di solito ciascuno si può decomporre in vari user–goal UC User-goal UC Descrivono un goal che un attore primario od un utente ha per avere qualcosa fatto dal sistema o usando il sitema Di solito sono fatti da una persona, in un posto, ad un certo tempo; l’attore primario di solito se ne va felice e contento immediatamente dopo che l’use case è terminato Subfunction UC Forniscono supporto esecutivo ad user-goal UC Sono a basso livello e devono essere giustificati o per ragioni di riuso o per fornire I necessari dettagli in modo strutturato

UML supporto per gli use case Use case diagram Per presentare i vari use case con gli attori coinvolti Possibilità di definire relazioni tra use case (poco chiare, meglio limitarsi ad usare quelle sufficientemente precise) Attori = tipo di classifier (stereotype) Quindi è possibile descriverli in un class diagram (association, specialization…) Vari diagrammi di UML possono essere utilizzati per descrivere un singolo use case (es. activity, state chart) o uno scenario singolo (sequence, collaboration)

Use case diagram attore partecipa all’use case attore Use case UC1 System-name UC1 UCk …... act-name1 act-name2 act-name3 Nome del sistema descritto con gli use case

Include Relazione tra use case Significa che un use case incorpora esplicitamente il comportamento di un altro use in un punto specificato nel primo UC1 <<include>>

Esempio con include