Use Case Driven Object Modeling: ICONIX
|
|
- Geraldo Guglielmo Pagano
- 8 anni fa
- Visualizzazioni
Transcript
1 Use Case Driven Object Modeling: ICONIX Un esempio di specifica, analisi, progetto e sviluppo utilizzando ICONIX Ditta di Noleggio Dvd Un sistema per la gestione di una ditta di noleggio dvd che ha più punti di distribuzione Autore: Valeriano Sandrucci Università di Firenze Facoltà di Ingegneria Corso di Ingegneria del Software (Prof. Giacomo Bucci)
2 ICONIX ICONIX è una metodologia di sviluppo software In ICONIX (come pure in Unified Process (UP)) il processo è guidato dai casi d'uso UML ICONIX è un approccio più leggero di UP ICONIX (a differenza dell'extreme Programming (XP)) fornisce una documentazione sufficiente dei requisiti e dell'analisi e del progetto Non si ha il problema noto come Analysis Paralysis ICONIX è descritto nel libro: Use Case Driven Object Modeling with UML: Theory and Practice.
3 ICONIX ICONIX è un processo che permette di trasformare i casi d'uso in codice funzionante Prima di iniziare il processo ICONIX occorre avere disponibile l'analisi dei requisiti. Dalla specifica dei requisiti si identificano i casi d'uso, il modello di dominio ed il prototipo dell'interfaccia Modello di dominio, casi d'uso ed interfaccia vengono validati per mezzo della Robustness Analysis Utilizzando i diagrammi dei passi precedenti viene costruito un diagramma delle classi a livello di specifica ed i diagrammi di sequenza Deployment: vengono scritti i test necessari a verificare il buon funzionamento del sistema e viene scritto il codice.
4 ICONIX Il tratto caratteristico di ICONIX è il suo uso dell'analisi di robustezza, un metodo per colmare la distanza tra Analysis e Design L'analisi di robustezza riduce l'ambiguità nella descrizione dei casi d'uso assicurando che vengano scritti nel contesto del corrispondente modello di dominio L'analisi di robustezza rende i casi d'uso più facili da implementare e testare
5 Analisi dei Requisiti Analisi dei Requisiti (operazione preliminare al processo ICONIX)
6 Cosa sono i requisiti Con la parola requisito si intende una caratteristica od una proprietà che una data persona o cosa è tenuta a possedere Requisiti del prodotto software Un requistito è: Qualcosa che il prodotto deve fare Una caratteristica che deve possedere Un requisito esiste sia perché il prodotto stesso lo richiede, sia perché il committente vuole che esso sia parte del prodotto.
7 Cosa sono i requisiti Distinguiamo tra scopo del prodotto e suoi requisiti Scopo: obiettivo (finalità) che il prodotto si prefigge Requisiti: insieme delle caratteristiche che il prodotto deve possedere per soddisfare al proprio scopo di uso. Esempio: Un sistema per il controllo del traffico areo Scopo: il controllo del traffico aereo di una certa regione Requisiti: N minimo di aerei controllati nello stesso tempo Riconoscimento immediato di situazioni che possono portare a collisioni Robustezza rispetto ad attacchi di hacker (terroristi).
8 Requisiti funzionali Ciò che il sistema deve fare Costituiscono la ragione stessa per la quale il sistema viene costruito/impiegato Esempio: Il sistema deve consentire ad un generico utente dal proprio PC di vedere i movimenti sul suo CC Il sistema deve consentire di effettuare operazioni di deposito dagli sportelli abilitati all'operazione....
9 Altri requisiti Requisiti non funzionali: proprietà (qualità) che il sistema deve possedere Il sistema deve essere portabile tra gli ambienti X,Y e Z Vincoli (Constraints): Requisiti di carattere generale che si applicano all'intero prodotto e sono definiti inizialmente prima che inizi l'effettiva raccolta dei requisiti Lo scopo del progetto è esso stesso un vincolo (ne determina i requisiti funzionali); gli utenti sono un vincolo (influenzano l'usabilità del prodotto)
10 Requisiti 1/3 Scopo Gestione dell'operazione di noleggio video Vincoli La ditta ha più punti di distribuzione sul territorio ognuno dei quali deve poter operare in modo indipendente dagli altri Gli utenti devono poter fruire di un servizio web nel quale trovare informazioni relative a tutti i punti di distribuzione
11 Requisiti 2/3 [R1] Il sistema deve consentire il noleggio di dvd da parte di un utente [R1.1] Ogni dvd si riferisce ad un solo film [R1.2] Ogni film ha un titolo una descrizione della trama ed un genere [R2] Il sistema deve permettere ad un utente autorizzato il caricamento e la rimozione di dvd nel punto di distribuzione
12 Requisiti 3/3 [R3] Il sistema deve permettere all'utente di lasciare un feedback relativamente ad un film che ha precedentemente noleggiato [R4] Il sistema deve permettere la prenotazione di dvd se disponibili
13 Analysis Inizia il processo ICONIX
14 Domain Model Domain Model
15 Domain Model Si vuole derivare il modello di dominio dall'elenco dei requisiti Il modello di dominio si rappresenta con un Class Diagram UML Il diagramma delle classi è volutamente semplice I dettagli verranno aggiunti successivamente Col modello di dominio si descrivono gli aspetti statici del sistema
16 Domain Model Nel diagramma delle classi: Non si specificano per adesso attributi e metodi delle classi Si adoperano solo le relazioni: Generalization (essere) Aggregation (avere)
17 Domain Model 1/3
18 Domain Model 2/3
19 Domain Model 3/3
20 Use Cases Use Cases
21 Use Cases Si vuole derivare il modello dei casi d'uso dall'elenco dei requisiti Il modello dei casi d'uso si rappresenta con un Use Cases Diagram UML Anche in questo caso è importante costruire una vista d'insieme e non perdersi nei dettagli Col modello dei casi d'uso si descrivono gli aspetti dinamici del sistema
22 Use Cases Nel costruire il diagramma dei casi d'uso Il committente potrebbe non comprendere le relazioni: include ed extends Sono più intuitive le relazioni: precedes ed invokes Nel costruire il diagramma dei casi d'uso conviene procedere per approssimazioni successive I casi d'uso devono riferirsi al modello di dominio
23 Actors
24 Use Cases Summary
25 Use Cases Summary
26 Distributor System
27 Distributor Use Cases 1/3
28 Distributor Use Cases 2/3
29 Distributor Use Cases 3/3
30 Distributor Domain Model
31 Center System
32 Center Use Cases 1/3
33 Center Use Cases 2/3
34 Center Use Cases 3/3
35 Center Domain Model
36 Use Cases Text & Mock-up Use Cases Text & Mock-up
37 Use Cases Text Il testo dei casi d'uso può essere rigorosamente formattato o meno (dressed use cases) Il testo dei casi d'uso deve essere non ambiguo e fare esplicito riferimento al modello di dominio ed alle interfacce usate
38 Use Cases Text Semplice template per i casi d'uso: UC: <nome del caso d'uso> Scope: <sistema/sottosistema cui si riferisce> Level: <livello di astrazione> Summary User goal Function Actor: <attore che inizia il caso d'uso> Basic Course: <interazione legata al caso positivo> Alternative Courses: <flussi alternativi>
39 Mock-up Sono prototipi dell'interfaccia Servono a capire come si presenterà il sistema una volta realizzato Sono estremamente facili da comprendere per il committente
40 Distributor Use Cases
41 UC: Search for Dvd UC: Search for Dvd Scope: Distributor System Level: User Goal Actor: Distributor User Basic Course: 1. Distributor User sulla maschera DvdSearch imposta filtri preme [Search] 2. Distributor System: 2.1 Estrae i Movie corrispondenti ai filtri 2.2 Estrae i Dvd disponibili corrispondenti ai Movie 2.3 Mostra DvdResults Alternative Corse: 2.1a Nessun Movie trovato: 2.1a.1 Distributor System mostra DialogMessage col messaggio "Nessun film trovato" 2.2a Nessun Dvd disponibile: 2.2a.1 Distributor System mostra DialogMessage col messaggio "Nessun Dvd disponibile" a Read error: a.1 Distributor System mostra DialogMessage col messaggio "Errore di sistema. Servizio non disponibile"
42 Mock-up DvdSearch DvdResults DialogMessage
43 UC: Get Dvd availability UC: Get Dvd availability Scope: Distributor System Level: User goal Actor: Center System Basic Course: 1. Center System chiama il metodo howmanydvdavailable di DistributorService per il distributore desiterato specificando id di Movie 2. Distributor System conteggia il numero di Dvd disponibili e restituisce AvailableDvd
44 Boundary Classes
45 Distributor Domain Model
46 Center Use Cases
47 UC: Create User UC: Create User Scope: Center System Level: User Goal Actor: Center Admin Basic Course: 1. Center Admin sulla maschera UserList preme [Create New User] 2. System mostra la maschera UserDetail vuota 3. Center Admin compila la maschera e preme [Save] 4. Center System: 4.1 Valida i dati 4.2 Salva il nuovo User 4.3 Mostra la maschera UserList aggiornata Alternative Courses: 3a. Center Admin preme [Cancel] 3a.1 Center System mostra la maschera UserList 4.1a Dati non validi: 4.1a.1 Center System mostra la maschera UserDetail con messaggio "Dati non validi" 4.2a Errore di salvataggio: 4.2a.1 Center System Mostra la maschera UserDetail col messaggio "Salvataggio non riuscito"
48 Mock up UserList UserDetail
49 UC: Notify Dvd unload UC: Notify Dvd unload Scope: Center System Level: User Goal Actor: Distributor System Basic Course: 1. Distributor System chiama il metodo unloaddvd di CenterService specificando id del distributore ed id del Dvd 2. Center System cancella il Dvd specificato e restituisce true (Boolean) Alternative Course: 2a Save Error: 2a.1 Center System restituisce false (Boolean)
50 CenterService Boundary
51 Center Domain Model
52 Robustness Analysis Robustness Analysis
53 Robustness Analysis L'analisi di robustezza è il tratto più caratteristico di ICONIX Per ogni caso d'uso si costruisce un diagramma di robustezza I diagrammi di robustezza devono essere costruiti con riferimento al modello di dominio ed all'interfaccia del sistema
54 Robustness Analysis Nei diagrammi di robustezza ci sono: Actor, Boundary, Controller, Entity Non tutte le relazioni sono ammissibili Sono ammissibili le relazioni tra: Actor Boundary Boundary Controller Controller Controller Controller Entity
55 UC: Search for Dvd 1/6 UC: Search for Dvd Scope: Distributor System Level: User Goal Actor: Distributor User Basic Course: 1. Distributor User sulla maschera DvdSearch imposta filtri preme [Search] 2. Distributor System: 2.1 Estrae i Movie corrispondenti ai filtri 2.2 Estrae i Dvd disponibili corrispondenti ai Movie 2.3 Mostra DvdResults Alternative Corse: 2.1a Nessun Movie trovato: 2.1a.1 Distributor System mostra DialogMessage col messaggio "Nessun film trovato" 2.2a Nessun Dvd disponibile: 2.2a.1 Distributor System mostra DialogMessage col messaggio "Nessun Dvd disponibile" a Read error: a.1 Distributor System mostra DialogMessage col messaggio "Errore di sistema. Servizio non disponibile"
56 UC: Search for Dvd 2/6 UC: Search for Dvd Scope: Distributor System Level: User Goal Actor: Distributor User Basic Course: 1. Distributor User sulla maschera DvdSearch imposta filtri preme [Search] 2. Distributor System: 2.1 Estrae i Movie corrispondenti ai filtri 2.2 Estrae i Dvd disponibili corrispondenti ai Movie 2.3 Mostra DvdResults Alternative Corse: 2.1a Nessun Movie trovato: 2.1a.1 Distributor System mostra DialogMessage col messaggio "Nessun film trovato" 2.2a Nessun Dvd disponibile: 2.2a.1 Distributor System mostra DialogMessage col messaggio "Nessun Dvd disponibile" a Read error: a.1 Distributor System mostra DialogMessage col messaggio "Errore di sistema. Servizio non disponibile"
57 UC: Search for Dvd 3/6 UC: Search for Dvd Scope: Distributor System Level: User Goal Actor: Distributor User Basic Course: 1. Distributor User sulla maschera DvdSearch imposta filtri preme [Search] 2. Distributor System: 2.1 Estrae i Movie corrispondenti ai filtri 2.2 Estrae i Dvd disponibili corrispondenti ai Movie 2.3 Mostra DvdResults Alternative Corse: 2.1a Nessun Movie trovato: 2.1a.1 Distributor System mostra DialogMessage col messaggio "Nessun film trovato" 2.2a Nessun Dvd disponibile: 2.2a.1 Distributor System mostra DialogMessage col messaggio "Nessun Dvd disponibile" a Read error: a.1 Distributor System mostra DialogMessage col messaggio "Errore di sistema. Servizio non disponibile"
58 UC: Search for Dvd 4/6 UC: Search for Dvd Scope: Distributor System Level: User Goal Actor: Distributor User Basic Course: 1. Distributor User sulla maschera DvdSearch imposta filtri preme [Search] 2. Distributor System: 2.1 Estrae i Movie corrispondenti ai filtri 2.2 Estrae i Dvd disponibili corrispondenti ai Movie 2.3 Mostra DvdResults Alternative Corse: 2.1a Nessun Movie trovato: 2.1a.1 Distributor System mostra DialogMessage col messaggio "Nessun film trovato" 2.2a Nessun Dvd disponibile: 2.2a.1 Distributor System mostra DialogMessage col messaggio "Nessun Dvd disponibile" a Read error: a.1 Distributor System mostra DialogMessage col messaggio "Errore di sistema. Servizio non disponibile"
59 UC: Search for Dvd 5/6 UC: Search for Dvd Scope: Distributor System Level: User Goal Actor: Distributor User Basic Course: 1. Distributor User sulla maschera DvdSearch imposta filtri preme [Search] 2. Distributor System: 2.1 Estrae i Movie corrispondenti ai filtri 2.2 Estrae i Dvd disponibili corrispondenti ai Movie 2.3 Mostra DvdResults Alternative Corse: 2.1a Nessun Movie trovato: 2.1a.1 Distributor System mostra DialogMessage col messaggio "Nessun film trovato" 2.2a Nessun Dvd disponibile: 2.2a.1 Distributor System mostra DialogMessage col messaggio "Nessun Dvd disponibile" a Read error: a.1 Distributor System mostra DialogMessage col messaggio "Errore di sistema. Servizio non disponibile"
60 UC: Search for Dvd 6/6
61 UC: Get Dvd availability UC: Get Dvd availability Scope: Distributor System Level: User goal Actor: Center System Basic Course: 1. Center System chiama il metodo howmanydvdavailable di DistributorService per il distributore desiterato specificando id di Movie 2. Distributor System conteggia il numero di Dvd disponibili e restituisce AvailableDvd
62 UC: Create User UC: Create User Scope: Center System Level: User Goal Actor: Center Admin Basic Course: 1. Center Admin sulla maschera UserList preme [Create New User] 2. System mostra la maschera UserDetail vuota 3. Center Admin compila la maschera e preme [Save] 4. Center System: 4.1 Valida i dati 4.2 Salva il nuovo User 4.3 Mostra la maschera UserList aggiornata Alternative Courses: 3a. Center Admin preme [Cancel] 3a.1 Center System mostra la maschera UserList 4.1a Dati non validi: 4.1a.1 Center System mostra la maschera UserDetail con messaggio "Dati non validi" 4.2a Errore di salvataggio: 4.2a.1 Center System Mostra la maschera UserDetail col messaggio "Salvataggio non riuscito"
63 UC: Create User
64 UC: Notify Dvd unload UC: Notify Dvd unload Scope: Center System Level: User Goal Actor: Distributor System Basic Course: 1. Distributor System chiama il metodo unloaddvd di CenterService specificando id del distributore ed id del Dvd 2. Center System cancella il Dvd specificato e restituisce UnloadSuccess Alternative Course: 2a Save Error: 2a.1 Center System restituisce UnloadFail
65 UC: Notify Dvd unload
66 Architecture
67 Design Design
68 UC: Search for Dvd
69 Distributor Application
70 Search for Dvd
71 Distributor Domain Model
72 Riassumendo ICONIX inizia dopo che sono stati raccolti i requisiti ICONIX si compone di due fasi principali Analysis e Design (per ora abbiamo visto solo Analysis) La Robustness Analysis completa la fase di Analysis ICONIX non specifica in che modo debbano essere trattati i requisiti non funzionali ed architetturali
73 Osservazioni L'analisi di robustezza completa la fase di analisi I diagrammi di robustezza permettono di verificare che casi d'uso, modello di dominio ed interfacce sono consistenti tra di loro I diagrammi di robustezza saranno la base per la successiva fase di Design
74 Osservazioni ICONIX sembra un metodo di sviluppo a cascata Ogni fase può essere applicata ad un sotto-problema in modo da rendere iterativo il metodo Esempio: scrivo il testo e disegno le interfacce solo per un sottoinsieme di casi d'uso La gestione delle fasi può essere fatta con UP Le iterazioni di ogni fase possono venire gestite con ICONIX
Use Case Driven Object Modeling: ICONIX
Use Case Driven Object Modeling: ICONIX Un esempio di specifica, analisi, progetto e sviluppo utilizzando ICONIX (applicazione web) Ditta di Noleggio Dvd Un sistema per la gestione di una ditta di noleggio
DettagliSoluzione dell esercizio del 2 Febbraio 2004
Soluzione dell esercizio del 2 Febbraio 2004 1. Casi d uso I casi d uso sono riportati in Figura 1. Figura 1: Diagramma dei casi d uso. E evidenziato un sotto caso di uso. 2. Modello concettuale Osserviamo
DettagliStrumenti di modellazione. Gabriella Trucco
Strumenti di modellazione Gabriella Trucco Linguaggio di modellazione Linguaggio formale che può essere utilizzato per descrivere (modellare) un sistema Il concetto trova applicazione soprattutto nell
DettagliSoluzione dell esercizio del 12 Febbraio 2004
Soluzione dell esercizio del 12/2/2004 1 Soluzione dell esercizio del 12 Febbraio 2004 1. Casi d uso I casi d uso sono riportati in Figura 1. Figura 1: Diagramma dei casi d uso. 2. Modello concettuale
DettagliING SW. Progetto di Ingegneria del Software. e-travel. Requisiti Utente. Specifiche Funzionali del Sistema
Pagina: 1 e-travel ING SW Progetto di Ingegneria del Software e-travel Requisiti Utente Specifiche Funzionali del Sistema e Pagina: 2 di 9 Indice dei contenuti 1 INTRODUZIONE... 3 1.1 SCOPO DEL DOCUMENTO...
DettagliModellazione dei dati in UML
Corso di Basi di Dati e Sistemi Informativi Modellazione dei dati in UML Angelo Montanari Dipartimento di Matematica e Informatica Università degli Studi di Udine Introduzione UML (Unified Modeling Language):
DettagliUna metodologia per la specifica di software basato su componenti
Luca Cabibbo Architetture Software Una metodologia per la specifica di software basato su componenti Dispensa ASW 445 ottobre 2014 La mappa non è il territorio. Douglas R. King 1 -Fonti [UML Components],
DettagliUniversità degli Studi di L Aquila. Facoltà di Ingegneria. Corso di Laurea in Ingegneria Elettronica Corso di Sistemi Informativi
Università degli Studi di L Aquila Facoltà di Ingegneria Corso di Laurea in Ingegneria Elettronica Corso di Sistemi Informativi Prof. Gaetanino Paolone Dott. Ottavio Pascale a.a.2003-2004 Progetto Campo
DettagliManuale d uso per la raccolta: Sicurezza degli impianti di utenza a gas - Postcontatore
Manuale d uso per la raccolta: Sicurezza degli impianti di utenza a gas - Postcontatore 1. Obbligo di comunicazione dei dati... 2 2. Accesso alla raccolta... 2 3. Compilazione... 6 2.1 Dati generali Sicurezza
DettagliProgrammi e Oggetti Software
Corso di Laurea Ingegneria Civile Elementi di Informatica Programmi e Oggetti Software Settembre 2006 Programmi e Oggetti Software 1 Contenuti Cosa è un programma Cosa significa programmare Il punto di
DettagliUniversità degli Studi di Parma Facoltà di Scienze MM. FF. NN. Corso di Laurea in Informatica. Ingegneria del Software. La fase di Analisi
Università degli Studi di Parma Facoltà di Scienze MM. FF. NN. Corso di Laurea in Informatica Ingegneria del Software La fase di Analisi Giulio Destri Ing. del software: Analisi - 1 Scopo del modulo Definire
DettagliDFD DISPENSA DEL CORSO DI SISTEMI INFORMATIVI UNIVERSITÀ DEGLI STUDI DI VERONA FACOLTÀ DI MM.FF.NN LAUREA SPECIALISTICA IN INFORMATICA
UNIVERSITÀ DEGLI STUDI DI VERONA FACOLTÀ DI MM.FF.NN LAUREA SPECIALISTICA IN INFORMATICA DISPENSA DEL CORSO DI SISTEMI INFORMATIVI Prof. Carlo Combi DFD Appunti a cura di E. Peri M. Devincenzi Indice 1
DettagliCapitolo 3. L applicazione Java Diagrammi ER. 3.1 La finestra iniziale, il menu e la barra pulsanti
Capitolo 3 L applicazione Java Diagrammi ER Dopo le fasi di analisi, progettazione ed implementazione il software è stato compilato ed ora è pronto all uso; in questo capitolo mostreremo passo passo tutta
DettagliPiano di gestione della qualità
Piano di gestione della qualità Pianificazione della qualità Politica ed obiettivi della qualità Riferimento ad un eventuale modello di qualità adottato Controllo della qualità Procedure di controllo.
DettagliTraccia di soluzione dell esercizio del 25/1/2005
Traccia di soluzione dell esercizio del 25/1/2005 1 Casi d uso I casi d uso sono in Figura 1. Ci sono solo due attori: il Capo officina e il generico Meccanico. Figura 1: Diagramma dei casi d uso. 2 Modello
DettagliIntroduzione ai tipi di dato astratti: applicazione alle liste
Universitàdegli Studi di L Aquila Facoltàdi Scienze M.F.N. Corso di Laurea in Informatica Corso di Laboratorio di Algoritmi e Strutture Dati A.A. 2005/2006 Introduzione ai tipi di dato astratti: applicazione
DettagliProgettaz. e sviluppo Data Base
Progettaz. e sviluppo Data Base! Progettazione Basi Dati: Metodologie e modelli!modello Entita -Relazione Progettazione Base Dati Introduzione alla Progettazione: Il ciclo di vita di un Sist. Informativo
DettagliAirone Gestione Rifiuti Funzioni di Esportazione e Importazione
Airone Gestione Rifiuti Funzioni di Esportazione e Importazione Airone Funzioni di Esportazione Importazione 1 Indice AIRONE GESTIONE RIFIUTI... 1 FUNZIONI DI ESPORTAZIONE E IMPORTAZIONE... 1 INDICE...
DettagliRaccolta dei Requisiti con i Casi D'uso. Corso di Ingegneria del Software Anno Accademico 2012/13
Raccolta dei Requisiti con i Casi D'uso Corso di Ingegneria del Software Anno Accademico 2012/13 I casi d uso I casi d'uso (use case) sono una tecnica utilizzata per identificare i requisiti funzionali
DettagliMANUALE D'USO DEL PROGRAMMA IMMOBIPHONE
1/6 MANUALE D'USO DEL PROGRAMMA IMMOBIPHONE Per prima cosa si ringrazia per aver scelto ImmobiPhone e per aver dato fiducia al suo autore. Il presente documento istruisce l'utilizzatore sull'uso del programma
DettagliUML - Unified Modeling Language
UML E CASI D USO UML - Unified Modeling Language Linguaggio stardardizzato per identificare e modellizzare le specifiche di un S.I. Coerente con il paradigma della programmazione ad oggetti Definito a
DettagliTesto Esercizio. Un modello è ragionevole quando contiene queste tre caratteristiche.
Testo Esercizio Si consideri la realizzazione di un semplice programma grafico per il disegno di figure geometriche in due dimensioni. Si analizzino i requisiti e se ne rappresentino i risultati in UML
DettagliBasi di Dati. Programmazione e gestione di sistemi telematici
Basi di Dati. Programmazione e gestione di sistemi telematici Coordinatore: Prof. Paolo Nesi Docenti: Prof. Paolo Nesi Dr.sa Michela Paolucci Dr. Emanuele Bellini UML La prima versione ufficiale risale
DettagliConcetti di base di ingegneria del software
Concetti di base di ingegneria del software [Dalle dispense del corso «Ingegneria del software» del prof. A. Furfaro (UNICAL)] Principali qualità del software Correttezza Affidabilità Robustezza Efficienza
Dettagli12 - Introduzione alla Programmazione Orientata agli Oggetti (Object Oriented Programming OOP)
12 - Introduzione alla Programmazione Orientata agli Oggetti (Object Oriented Programming OOP) Programmazione e analisi di dati Modulo A: Programmazione in Java Paolo Milazzo Dipartimento di Informatica,
DettagliOfficina Meccanica. Analisi, progetto e sviluppo
Officina Meccanica Analisi, progetto e sviluppo Definizione del problema e specifica dei requisiti Un officina meccanica dispone di un magazzino in cui tiene parti di ricambio per automobili. Ogni parte
DettagliLa specifica del problema
2.9 (Caso di studio facoltativo) Pensare a oggetti: esame del problema Iniziamo ora a esaminare il nostro caso di studio di progettazione e implementazione orientate agli oggetti. Le sezioni Pensare a
DettagliRaggruppamenti Conti Movimenti
ESERCITAZIONE PIANO DEI CONTI Vogliamo creare un programma che ci permetta di gestire, in un DB, il Piano dei conti di un azienda. Nel corso della gestione d esercizio, si potranno registrare gli articoli
DettagliSOMMARIO. - NEW DATA INFORMATICA TECHNOLOGY Pagina 1 di 21
SOMMARIO Breve Panoramica... 2 Apertura del programma... 2 Menù principale... 3 Sezione Officina... 4 Articoli... 4 Veicoli... 4 Schede... 4 Fatture e Solleciti... 6 Magazzino... 7 Sezione Deposito / soccorso...
DettagliIngegneria del Software T
Home Finance 1 Requisiti del cliente 1 Si richiede di realizzare un sistema per la gestione della contabilità familiare. Il sistema consente la classificazione dei movimenti di denaro e la loro memorizzazione.
DettagliEsempio 1: CarMatch. Direzione centrale Sedi centrali per ogni paese Concessionarie locali di franchising UML 2
Esempio 1: CarMatch CarMatch è una società di franchising fondata con lo scopo di promuovere il car sharing CarMatch fornisce un servizio per i potenziali condivisori di automobili cercando di abbinare
DettagliObject Oriented Programming
OOP Object Oriented Programming Programmazione orientata agli oggetti La programmazione orientata agli oggetti (Object Oriented Programming) è un paradigma di programmazione Permette di raggruppare in
DettagliProgettazione della componente applicativa
7 Progettazione della componente applicativa In questo capitolo illustreremo la progettazione della componente applicativa di un sistema informativo. La metodologia da noi utilizzata sarà basata sull utilizzo
DettagliSistemi Operativi MECCANISMI E POLITICHE DI PROTEZIONE. D. Talia - UNICAL. Sistemi Operativi 13.1
MECCANISMI E POLITICHE DI PROTEZIONE 13.1 Protezione Obiettivi della Protezione Dominio di Protezione Matrice di Accesso Implementazione della Matrice di Accesso Revoca dei Diritti di Accesso Sistemi basati
DettagliMECCANISMI E POLITICHE DI PROTEZIONE 13.1
MECCANISMI E POLITICHE DI PROTEZIONE 13.1 Protezione Obiettivi della Protezione Dominio di Protezione Matrice di Accesso Implementazione della Matrice di Accesso Revoca dei Diritti di Accesso Sistemi basati
DettagliObiettivi dell esercitazione. Requisiti (cont.) Requisiti. Università di Roma La Sapienza A.A. 2008-2009. Facoltà di Ingegneria Sede di Latina
Università di Roma La Sapienza A.A. 2008-2009 Facoltà di Ingegneria Sede di Latina Laurea in Ingegneria Informatica ed Ingegneria dell Informazione Corso di PROGETTAZIONE DEL SOFTWARE Esercitazione sulla
DettagliIL MARKETING E QUELLA FUNZIONE D IMPRESA CHE:
IL MARKETING E QUELLA FUNZIONE D IMPRESA CHE:! definisce i bisogni e i desideri insoddisfatti! ne definisce l ampiezza! determina quali mercati obiettivo l impresa può meglio servire! definisce i prodotti
DettagliUniRoma2 - Ingegneria del Software 1 1
Object Oriented Analysis - OOA La fase di OOA definisce, secondo un approccio ad oggetti, COSA un prodotto software deve fare (mentre la fase di OOD definisce, sempre secondo un approccio ad oggetti, COME
DettagliCorso introduttivo all utilizzo di TQ Qualifica
Corso introduttivo all utilizzo di TQ Qualifica Le pagine che seguono introducono l utente all uso delle principali funzionalità di TQ Qualifica mediante un corso organizzato in quattro lezioni. Ogni lezione
DettagliPagina 2 di 14. Indice
Manuale d uso per la raccolta: Sicurezza e continuità del servizio di distribuzione gas (comma 28.17 dell'allegato A alla deliberazione 574/2013/R/gas) Pagina 1 di 14 Indice 1. Accesso alla raccolta...
DettagliCONTABILITÀ. Gestione Attività Multipunto. Release 5.20 Manuale Operativo
Release 5.20 Manuale Operativo CONTABILITÀ Gestione Attività Multipunto L art. 10, Legge 8 maggio 1998, n. 146 ha previsto l obbligo di annotazione separata dei costi e dei ricavi relativi alle diverse
Dettagli4.1 Che cos è l ideazione
Luca Cabibbo Analisi e Progettazione del Software Ideazione (non è la fase dei requisiti) Capitolo 4 marzo 2013 Il meglio è nemico del bene. Voltaire 1 *** AVVERTENZA *** I lucidi messi a disposizione
DettagliI casi d uso corrispondono ai compiti che l attore (che può essere una persona fisica e non) può svolgere.
UML e i Casi d USO I casi d uso specificano una sequenza di azioni che producono un risultato visibile agli attori del sistema. Essi nascono per fornire descrizioni delle capacità del sistema. I casi d
Dettagli5.3 TABELLE 5.3.1 RECORD 5.3.1.1 Inserire, eliminare record in una tabella Aggiungere record Eliminare record
5.3 TABELLE In un sistema di database relazionali le tabelle rappresentano la struttura di partenza, che resta poi fondamentale per tutte le fasi del lavoro di creazione e di gestione del database. 5.3.1
Dettagli«Gestione dei documenti e delle registrazioni» 1 SCOPO... 2 2 CAMPO DI APPLICAZIONE E GENERALITA... 2 3 RESPONSABILITA... 2 4 DEFINIZIONI...
Pagina 1 di 6 INDICE 1 SCOPO... 2 2 CAMPO DI APPLICAZIONE E GENERALITA... 2 3 RESPONSABILITA... 2 4 DEFINIZIONI... 2 5 RESPONSABILITA... 2 5.3 DESTINATARIO DELLA DOCUMENTAZIONE... 3 6 PROCEDURA... 3 6.1
DettagliScenario di Progettazione
Appunti del 3 Ottobre 2008 Prof. Mario Bochicchio SCENARIO DI PROGETTAZIONE Scenario di Progettazione Il Committente mette a disposizione delle risorse e propone dei documenti che solitamente rappresentano
DettagliSistemi Informativi I Caso di studio con applicazione di UML
9 CASO DI STUDIO CON APPLICAZIONE DI UML...2 9.1 IL CASO DI STUDIO...2 9.1.1 Il sistema attuale...2 9.2 IL PROBLEM STATEMENT...3 9.2.1 Formulazione del Problem statement per il caso proposto...3 9.3 USE
DettagliGestione del workflow
Gestione del workflow Stefania Marrara Corso di Tecnologie dei Sistemi Informativi 2004/2005 Progettazione di un Sistema Informativo Analisi dei processi Per progettare un sistema informativo è necessario
Dettagli2. Simulazione discreta: approcci alla simulazione
Anno accademico 2007/08 Elementi di un programma di simulazione Controllore Tempo di simulazione Generatore dei dati di input Entità Eventi Attività Stati Processi Simulazione per eventi: le classi L approccio
DettagliTesto Esercizio. Un modello è ragionevole quando contiene queste tre caratteristiche.
Testo Esercizio Un negozio di musica vende anche libri e riviste musicali. Si intende automatizzare l intero processo, dall approvvigionamento alla vendita. Si analizzino i requisiti e se ne rappresentino
DettagliRational Unified Process Introduzione
Rational Unified Process Introduzione G.Raiss - A.Apolloni - 4 maggio 2001 1 Cosa è E un processo di sviluppo definito da Booch, Rumbaugh, Jacobson (autori dell Unified Modeling Language). Il RUP è un
DettagliCup HiWeb. Integrazione dei servizi del CUP Marche in applicativi di terze parti
Cup HiWeb Integrazione dei servizi del CUP Marche in applicativi di terze parti Ver 1.2 2015 Insiel Mercato SpA Change History 23/03/2015 Versione 1.0 Paolo Pitton 18/12/2015 Versione 1.1 Paolo Pitton
Dettagliobject oriented analysis
object oriented analysis 1 attività di analisi l obiettivo dell analisi è raggiungere la piena comprensione del dominio di interesse lo strumento è la descrizione di un modello di dominio mediante un opportuno
DettagliPreparazione di una immagine di Windows XP per la distribuzione
Preparazione di una immagine di Windows XP per la distribuzione (versione ampliata) Prof. Franco Ricci Istituto di Istruzione Superiore Benvenuto Cellini Firenze Corso di formazione tecnica 2008/2009 Passo
DettagliLINEA PROJECT MANAGEMENT
LINEA PROJECT MANAGEMENT ITIL FOUNDATION V3 46.10.3 3 giorni Il corso, nell ambito della Gestione dei Servizi IT, mira a: 1. Comprendere Struttura e Processi di ITIL V3 - Information Technology Infrastructure
Dettagli2 - Modifica. 2.1 - Annulla 2.2 - ANNULLA TOPOGRAFICO 2.3 - ANNULLA TOPOGRAFICO MULTIPLO FIGURA 2.1
2 - Modifica FIGURA 2.1 Il menu a tendina Modifica contiene il gruppo di comandi relativi alla selezione e alla gestione delle proprietà delle entità del disegno e alla gestione dei layer. I comandi sono
DettagliSOFTWARE. Aprendo il SW la prima schermata che appare è la seguente:
MediQuadro è il nuovo software creato da Medi Diagnostici per l archiviazione efficace di vetrini e biocassette preparati nei laboratori di ISTOLOGIA, CITOLOGIA, CITOGENETICA e EMATOLOGIA, tramite il proprio
DettagliEsercitazione N7:Gioco dei 21 fiammiferi (impariamo java giocando)
Esercitazione N7:Gioco dei 21 fiammiferi (impariamo java giocando) Le basi della programmazione ad oggetti: per costruire in modo adeguato una applicazione basata sulla programmazione ad oggetti occorre
DettagliGenerazione Automatica di Asserzioni da Modelli di Specifica
UNIVERSITÀ DEGLI STUDI DI MILANO BICOCCA FACOLTÀ DI SCIENZE MATEMATICHE FISICHE E NATURALI Corso di Laurea Magistrale in Informatica Generazione Automatica di Asserzioni da Modelli di Specifica Relatore:
DettagliGestione dei documenti e delle registrazioni Rev. 00 del 11.11.08
1. DISTRIBUZIONE A tutti i membri dell organizzazione ING. TOMMASO 2. SCOPO Descrivere la gestione della documentazione e delle registrazioni del sistema di gestione 3. APPLICABILITÀ La presente procedura
DettagliCiclo di vita dimensionale
aprile 2012 1 Il ciclo di vita dimensionale Business Dimensional Lifecycle, chiamato anche Kimball Lifecycle descrive il framework complessivo che lega le diverse attività dello sviluppo di un sistema
DettagliGESTIONE della BASE di DATI
GESTIONE della SE di DTI I dati sono una componente fondamentale di un GIS Devono essere valutati con attenzione gli strumenti usati per: creare l archivio dei dati manipolare le informazioni contenute
DettagliInformatica Industriale Modello funzionale Casi d uso
DIIGA - Università Politecnica delle Marche A.A. 2006/2007 Informatica Industriale Modello funzionale Casi d uso Luca Spalazzi spalazzi@diiga.univpm.it www.diiga.univpm.it/~spalazzi/ Informatica Industriale
DettagliGESTIONE DEI DOCUMENTI, DEI DATI E DELLE REGISTRAZIONI
Pagina 1 di 5 0. INDICE 0. INDICE... 1 1. SCOPO E CAMPO DI APPLICAZIONE... 2 2. RIFERIMENTI... 2 3. MODALITÀ OPERATIVE... 2 3.1 Emissione... 2 3.2 Identificazione... 3 3.3 Distribuzione... 3 3.4 Modifica
DettagliGuida alla Gestione delle Prenotazioni nella nuova Area Proprietario
Guida alla Gestione delle Prenotazioni nella nuova Area Proprietario HomeAway Spain SL Tutti i Diritti Riservati. E vietata qualsiasi riproduzione, anche parziale o trasmissione, con qualsiasi mezzo, di
DettagliQuesto documento presenta la gestione del pannello di controllo del sistema "PTCPWEB" per le diverse utenze disponibili.
PTCPWEB MANUALE UTENTE 1 Questo documento presenta la gestione del pannello di controllo del sistema "PTCPWEB" per le diverse utenze disponibili. Release Notes... 3 Dicembre 2015... 3 1. Precondizioni...
DettagliMon Ami 3000 Produzione interna/esterna Gestione della produzione interna/esterna
Mon Ami 3000 Produzione interna/esterna Gestione della produzione interna/esterna Introduzione Questa guida illustra tutte le funzioni e le procedure da eseguire per gestire correttamente un ciclo di produzione
DettagliSWIM v2 Design Document
PROGETTO DI INGEGNERIA DEL SOFTWARE 2 SWIM v2 DD Design Document Matteo Danelli Daniel Cantoni 22 Dicembre 2012 1 Indice Progettazione concettuale Modello ER Entità e relazioni nel dettaglio User Feedback
DettagliFunzioni di Trasferimento Movimenti
Airone Gestione Rifiuti Funzioni di Trasferimento Movimenti Airone Funzione di Trasferimento Movimenti pag. 1 Indice INTRODUZIONE... 3 FUNZIONE DI TRASFERIMENTO MOVIMENTI... 3 Configurazione dell applicazione...4
DettagliPolitecnico di Bari Corso di Laurea Specialistica in Ingegneria Informatica A.A. 2008-09. Casi di Studio. Traccia n 1
Politecnico di Bari Corso di Laurea Specialistica in Ingegneria Informatica A.A. 2008-09 Casi di Studio Traccia n 1 Si vuole realizzare un portale web per la gestione della rete di vendita di un'azienda
DettagliPROGETTAZIONE DEL SOFTWARE
PROGETTAZIONE DEL SOFTWARE EMILIANO CASALICCHIO DIPARTIMENTO DI INFORMATICA E SISTEMISTICA SAPIENZA UNIVERSITÀ DI ROMA SEDE DI RIETI HTTP://WWW.CE.UNIROMA2.IT/COURSES/PSW! Cos è UML UNIFIED MODELING LANGUAGE!
DettagliGuida all'installazione driver per DFUSB Rel.1.0 Febbraio 2011
DUEMMEGI Domino Guida all'installazione driver per DFUSB Rel.1.0 Febbraio 2011 Indice 1- Premessa e scopo del documento... 2 2- Installazione driver modulo DFUSB... 2 2.1- Installazione driver su Windows
DettagliGestione Turni. Introduzione
Gestione Turni Introduzione La gestione dei turni di lavoro si rende necessaria quando, per garantire la continuità del servizio di una determinata struttura, è necessario che tutto il personale afferente
DettagliSPC e distribuzione normale con Access
SPC e distribuzione normale con Access In questo articolo esamineremo una applicazione Access per il calcolo e la rappresentazione grafica della distribuzione normale, collegata con tabelle di Clienti,
Dettaglihttps://tfa.cineca.it Istruzioni per l uso
https://tfa.cineca.it Istruzioni per l uso Data Versione Descrizione Autore 30/04/2012 1.0 La procedura di preiscrizione per i TFA CINECA 03/05/2012 1.1 Aggiornamento della procedura. CINECA A partire
DettagliStefania Marrara - Esercitazioni di Tecnologie dei Sistemi Informativi. Integrazione di dati di sorgenti diverse
Politecnico di Milano View integration 1 Integrazione di dati di sorgenti diverse Al giorno d oggi d la mole di informazioni che viene gestita in molti contesti applicativi è enorme. In alcuni casi le
DettagliAta_NiAg02. Modulo Gestione Agenti
Ata_NiAg02 Modulo Gestione Agenti Il software NiAg02 consente alle aziende che utilizzano il software gestionale ATA di gestire in maniera totalmente automatizzata l acquisizione ordini e/o clienti dalla
DettagliTransazioni - Parte 1
Basi di dati II Lezione 3 09/10/2008 Caputo Domenico Cosimo, Francesco Pichierri Transazioni - Parte 1 Le transazioni hanno a che fare con la programmabilità delle basi di dati. Prima di trattarle è necessaria
DettagliTrasformazione dei Processi in Progetti DIB 1
Trasformazione dei Processi in Progetti DIB 1 Generalità DIB 2 Progetto PROGETTO: esecuzione di un insieme di attività in un tempo e con risorse limitati per raggiungere uno specifico scopo. A causa dell
Dettagli2.0 Gli archivi. 2.1 Inserire gli archivi. 2.2 Archivio Clienti, Fornitori, Materiali, Noleggi ed Altri Costi. Impresa Edile Guida all uso
2.0 Gli archivi All interno della sezione archivi sono inserite le anagrafiche. In pratica si stratta di tutti quei dati che ricorreranno costantemente all interno dei documenti. 2.1 Inserire gli archivi
DettagliSTART Affidamenti diretti e Procedure concorrenziali semplificate. Istruzioni per i concorrenti Ver. 1.0
START Affidamenti diretti e Procedure concorrenziali semplificate Istruzioni per i concorrenti Ver. 1.0 Premessa... 1 Accesso al sistema e presentazione offerta... 1 Le comunicazioni fra l Ente ed il Concorrente...
DettagliProgetto Istanze On Line
2009 Progetto Istanze On Line 20 marzo 2009 INDICE 1 INTRODUZIONE ALL USO DELLA GUIDA...3 1.1 SIMBOLI USATI E DESCRIZIONI...3 2 GESTIONE DELL UTENZA...4 2.1 COS È E A CHI È RIVOLTO...4 2.2 NORMATIVA DI
DettagliDiagrammi di Interazione
Corso di Laurea Specialistica in Ingegneria Informatica Corso di Ingegneria del Software A. A. 2008 - Diagrammi di Interazione Definizioni Diagrammi di Interazione una interazione specifica i dettagli
DettagliEsercitazione di Basi di Dati
Esercitazione di Basi di Dati Corso di Fondamenti di Informatica 15/22 Aprile 2004 Progettazione di un Database (DB) Marco Pennacchiotti pennacchiotti@info.uniroma2.it Tel. 0672597334 Ing.dell Informazione,
DettagliQuality gate. Sono eventi programmati regolarmente e condotti seguendo una procedura standard
Quality gate Nei punti chiave del processo di sviluppo del software, viene integrato un insieme di quality gate per monitorare la qualità del prodotto intermedio prima che quest ultimo possa passare al
DettagliIDENTIFICAZIONE DEI BISOGNI DEL CLIENTE
IDENTIFICAZIONE DEI BISOGNI DEL CLIENTE 51 Dichiarazione d intenti (mission statement) La dichiarazione d intenti ha il compito di stabilire degli obiettivi dal punto di vista del mercato, e in parte dal
DettagliProgettazione di Basi di Dati
Progettazione di Basi di Dati Prof. Nicoletta D Alpaos & Prof. Andrea Borghesan Entità-Relazione Progettazione Logica 2 E il modo attraverso il quale i dati sono rappresentati : fa riferimento al modello
DettagliProject Management. Modulo: Introduzione. prof. ing. Guido Guizzi
Project Management Modulo: Introduzione prof. ing. Guido Guizzi Definizione di Project Management Processo unico consistente in un insieme di attività coordinate con scadenze iniziali e finali, intraprese
DettagliFasi del ciclo di vita del software (riassunto) Progetto: generalità. Progetto e realizzazione (riassunto)
Università degli Studi di Roma La Sapienza Facoltà di Ingegneria Sede di Latina Laurea in Ingegneria dell Informazione Fasi del ciclo di vita del software (riassunto) Corso di PROGETTAZIONE DEL SOFTWARE
DettagliMODELLO RELAZIONALE. Introduzione
MODELLO RELAZIONALE Introduzione E' stato proposto agli inizi degli anni 70 da Codd finalizzato alla realizzazione dell indipendenza dei dati, unisce concetti derivati dalla teoria degli insiemi (relazioni)
DettagliGuida all uso di Java Diagrammi ER
Guida all uso di Java Diagrammi ER Ver. 1.1 Alessandro Ballini 16/5/2004 Questa guida ha lo scopo di mostrare gli aspetti fondamentali dell utilizzo dell applicazione Java Diagrammi ER. Inizieremo con
DettagliIntegrazione InfiniteCRM - MailUp
Integrazione InfiniteCRM - MailUp La funzionalità della gestione delle campagne marketing di icrm è stata arricchita con la spedizione di email attraverso l integrazione con la piattaforma MailUp. Creando
DettagliIn legenda sono riportate le fasi R, P, C/T e I/SA come specificato nella norma ISO/IEC 12207.
Durante le attività di sviluppo del software applicativo è spesso utilizzato un ciclo di vita incrementale il cui schema di processo è sintetizzato nella figura seguente. In legenda sono riportate le fasi
DettagliGli attributi di STUDENTE saranno: Matricola (chiave primaria), Cognome, Nome.
Prof. Francesco Accarino Raccolta di esercizi modello ER Esercizio 1 Un università vuole raccogliere ed organizzare in un database le informazioni sui propri studenti in relazione ai corsi che essi frequentano
DettagliIl database management system Access
Il database management system Access Corso di autoistruzione http://www.manualipc.it/manuali/ corso/manuali.php? idcap=00&idman=17&size=12&sid= INTRODUZIONE Il concetto di base di dati, database o archivio
DettagliGALILEO. [OFR] - Progetto GALILEO - How to contabilità. How To Contabilità G.ALI.LE.O. How To Contabilità. pag. 1 di 23.
[OFR] - - G.ALI.LE.O pag. 1 di 23 [OFR] - - Sommario 1 Contabilità... 3 1.1 Gestione Casse... 4 1.2 Gestione Entrate... 5 1.2.0 Sportello al pubblico (nel sottomenù ORDINE)... 6 1.2.1 Reversali... 8 1.2.1.1
DettagliChe cos è un prototipo? Perchè creare prototipi?
Il processo di progettazione requisiti analisi utenza design iterazione prototipazione implementazione e attivazione 1 2 Che cos è un? Perchè creare prototipi? Un modello approssimato o parziale del sistema
DettagliEXCEL PER WINDOWS95. sfruttare le potenzialità di calcolo dei personal computer. Essi si basano su un area di lavoro, detta foglio di lavoro,
EXCEL PER WINDOWS95 1.Introduzione ai fogli elettronici I fogli elettronici sono delle applicazioni che permettono di sfruttare le potenzialità di calcolo dei personal computer. Essi si basano su un area
DettagliAutomazione della gestione degli ordini d acquisto di una società di autonoleggio
Automazione della gestione degli ordini d acquisto di una società di autonoleggio Professore Gaetanino Paolone Studenti Paolo Del Gizzi Maurizio Di Stefano 1 INDICE INTRODUZIONE.pag.3 IL PIANO METODOLOGICO
DettagliTECNICHE DI SIMULAZIONE
TECNICHE DI SIMULAZIONE INTRODUZIONE Francesca Mazzia Dipartimento di Matematica Università di Bari a.a. 2004/2005 TECNICHE DI SIMULAZIONE p. 1 Introduzione alla simulazione Una simulazione è l imitazione
Dettagli