Identificare le classi in un sistema
|
|
- Paolo Tosi
- 8 anni fa
- Visualizzazioni
Transcript
1 3.7 (Caso di studio facoltativo) Pensare a oggetti: identificare le classi nella specifica del problema Cominciamo ad affrontare la progettazione del simulatore di ascensore introdotto nel capitolo. Iniziamo con il progetto dell ascensore stesso, lasciando perdere per il momento l interfaccia utente e la visualizzazione. Identificare le classi in un sistema Il primo passo del nostro procedimento di progettazione orientata agli oggetti è identificare gli oggetti dalla specifica del problema e raggrupparli in classi. Poi, descriveremo le classi in maniera formale e le implementeremo in Java. Per prima cosa, rivediamo la specifica del problema della sezione.9 e identifichiamo i sostantivi chiave; è probabile che alcuni di essi identifichino oggetti che faranno parte del simulatore di ascensore (l analisi dei sostantivi è un modo semplice di identificare gli oggetti; nell industria, vengono usati anche procedimenti più sofisticati). La figura 3.5 elenca i sostantivi trovati. Sceglieremo solo i sostantivi che hanno significato nella simulazione dell ascensore. Pertanto, ometteremo parecchi sostantivi. Non abbiamo bisogno di modellare azienda come una classe, perché l azienda non fa parte della simulazione. Non modelliamo palazzo, cioè dove l ascensore si trova, perché il palazzo non ha rilevanza nella nostra simulazione di ascensore. I termini visualizzazione, audio e musica dell ascensore riguardano la visualizzazione della simulazione, ma non la simulazione in se stessa. I termini interfaccia utente grafica (GUI), utente della nostra applicazione, bottone First Floor e bottone Second Floor riguardano come l utente controlla la simulazione. Sebbene vogliamo risparmiare energia con la politica di non muovere l ascensore se non è necessario, non modelleremo l energia. Infine, la capacità è una proprietà dell ascensore e del piano, e non un entità separata. Determineremo le classi del nostro sistema raggruppando i rimanenti sostantivi. Tralasciamo, per il momento, sistema d ascensori ; ci focalizziamo solo sul progetto del simulatore I sostantivi nella specifica del problema azienda sistema di ascensori interfaccia utente grafica (GUI) palazzo pozzo dell ascensore persona ascensore porta del piano piano (primo piano; secondo piano) simulatore software campanello interno bottone First Floor (all ascensore) passeggero luce al piano bottone Second Floor utente della nostra energia audio applicazione bottone del piano capacità musica dell ascensore bottone dell ascensore cabina dell ascensore visualizzazione Figura 3.5 I sostantivi nella specifica del problema
2 CAPITOLO 3 e non sul rapporto tra tale simulatore e l intero sistema. Combiniamo ascensore e cabina dell ascensore in ascensore, perché la specifica del problema usa i due termini in modo invariato. Dei sostantivi rimanenti nella figura 3.5, ognuno si riferisce a uno o più dei seguenti (indichiamo tra parentesi la traduzione in inglese per facilitare il lettore nell associazione con i nomi delle relative classi, che da qui in avanti verrà usato): buca dell ascensore (elevator shaft) ascensore (elevator) persona (person) piano (primo piano; secondo piano) (floor; first floor; second floor) porta dell ascensore (elevator door) porta del piano (floor door) bottone dell ascensore (elevator button) bottone del piano (floor button) campanello (bell) luce (light) gli elementi di questa lista sono probabilmente delle classi che dovremo implementare nel nostro sistema. Notate che abbiamo elencato i bottoni del piano e dell ascensore separatamente. I due tipi di bottoni hanno scopi differenti nella nostra simulazione: i bottoni dei piani chiamano l ascensore, e il bottone dell ascensore comanda all ascensore di muoversi verso l altro piano. Ora possiamo modellare le classi del sistema in base alla lista che abbiamo creato. Per convenzione, scriviamo i nomi delle classi con l iniziale maiuscola (come in Java). Se il nome di una classe contiene più di una parola, accostiamo le parole e scriviamo l iniziale di ogni parola con la lettera maiuscola (ad es. ParolaDiPiuLettere). Con queste convenzioni, creiamo le classi Shaft,, Person, Floor, Door, FloorDoor, Button, FloorButton, Bell e Light. Prima di iniziare a costruire il sistema, però, dobbiamo capire meglio le relazioni tra le classi. Modellare le classi Il linguaggio UML ci permette di modellare, usando dei diagrammi di classe, le classi del simulatore di ascensore e le loro relazioni. I diagrammi di classe modellano la struttura di un sistema raffigurando le classi, ovvero i mattoni, del sistema. La figura 3.6 rappresenta la classe. In UML, ogni classe è rappresentata da un rettangolo con diviso in tre scomparti. Lo scomparto superiore contiene il nome della classe. Lo scomparto di mezzo contiene gli attributi della classe (di cui parleremo nelle sezioni 4.4 e 5.). Lo scomparto inferiore contiene le funzionalità della classe (di cui parleremo nella sezione 6.5). Figura 3.6 Rappresentare una classe in UML
3 INTRODUZIONE ALLE APPLET JAVA 3 La figura 3.7 mostra le relazioni tra le classi Shaft, e FloorButton. In questo diagramma, i rettangoli non sono divisi in scomparti, in modo da ottenere un diagramma più leggibile. Tale tipo di diagramma viene detto depennato, perché alcune informazioni, come il contenuto degli scomparti di mezzo e inferiore, non sono modellate. Aggiungeremo queste informazioni rispettivamente nelle sezioni 4.4 e 6.5. Nella figura 3.7, una linea continua che connette delle classi rappresenta un associazione. Un associazione è una relazione tra classi. I numeri vicino alle linee rappresentano valori di cardinalità, che esprimono quanti oggetti di una certa classe partecipano all associazione. Dal diagramma, possiamo vedere che due oggetti della classe FloorButton sono associati a un oggetto della classe Shaft, perché ci sono due bottoni del piano sul pozzo dell ascensore. Quindi, la classe FloorButton ha una relazione due-a-uno con la classe Shaft; la classe Shaft ha una relazione uno-a-due con la classe FloorButton. Inoltre, la classe Shaft ha una relazione uno-a-uno con la classe, e viceversa. Usando UML, possiamo modellare diversi tipi di cardinalità. La figura 3.8 mostra i tipi di cardinalità e come vengono rappresentati. Resets FloorButton Shaft Requests Signals arrival Figura 3.7 Diagramma di classe che mostra le associazioni tra alcune classi del sistema Simbolo Significato 0 Nessuno Uno m Un valore intero 0.. Zero o uno m, n m o n m..n Almeno m, ma non più di n * Zero o più 0..* Zero o più..* Uno o più Figura 3.8 Tipi di cardinalità
4 4 CAPITOLO 3 Le associazioni possono avere dei nomi. Per esempio, la parola Requests (richiede) sopra la linea che connette le classi FloorButton ed indica il nome dell associazione, mentre la freccia indica la direzione dell associazione. Queste parte del diagramma si legge due oggetti della classe FloorButton richiedono un oggetto della classe. Notate che i nomi delle associazioni hanno una direzione indicata dalla freccia, quindi sarebbe sbagliato leggere l associazione precedente come un oggetto della classe richiede due oggetti della classe FloorButton. Inoltre, la parola Resets indica che un oggetto della classe Shaft azzera due oggetti della classe FloorButton. Infine, le parole Signal arrival indicano che un oggetto della classe segnala l arrivo dell oggetto a un oggetto della classe Shaft. Oltre a indicare semplici relazioni, le associazioni possono specificare relazioni più complesse, in cui gli oggetti di una classe sono composti di oggetti di altre classi. Considerate un ascensore reale. Di quali parti è composto? L azienda che ci ha chiesto di costruire il simulatore ci dice che questo sistema completo di ascensori è composto di un pozzo dell ascensore, due bottoni dei piani, due luci, due porte dei piani e una cabina dell ascensore. La cabina dell ascensore è composta di diverse parti: un bottone dell ascensore, una porta dell ascensore e un campanello. I rombi sulle linee di associazione nella figura 3.7 indicano che Shaft è costruito a partire da altre parti. La relazione denotata da questa associazione è chiamata aggregazione. L aggregazione implica una relazione tutto/parte. La classe che ha il simbolo di aggregazione dal suo lato della linea di associazione è il tutto (in questo caso, Shaft), mentre la classe all altro lato della linea di aggregazione è la parte (in questo caso, FloorButton e ). Quindi, in questo diagramma, l associazione indica che un oggetto della classe Shaft è formato da due oggetti della classe FloorButton e un oggetto della classe. Il pozzo dell ascensore ha un ascensore e due bottoni del piano. La relazione ha un definisce l aggregazione (mentre, come vedremo nella sezione 0. la relazione è un definisce l ereditarietà). La figura 3.9 mostra il diagramma di classe completo basato sulle relazioni tra gli oggetti descritti nella specifica del problema. Abbiamo modellato tutte le classi identificate e le loro relazioni ( espanderemo questo diagramma nel capitolo 0 usando il concetto di ereditarietà). La classe Shaft è un aggregazione di un oggetto della classe e due oggetti per ciascuna classe fra Light, FloorDoor e FloorButton (notate la relazione due-auno tra ognuna di queste classi ed Shaft). La classe è un aggregazione delle classi Door, Button e Bell. La classe Person è associata con le classi FloorButton ed Button (ed anche altre, come vedremo). Il nome dell associazione Presses (preme) e la direzione della freccia indicano che un oggetto della classe Person preme questi bottoni. L oggetto della classe Person viaggia (rides) inoltre nell oggetto della classe e cammina (walks across) lungo l oggetto della classe Floor. Il nome dell associazione Requests indica che un oggetto della classe FloorButton richiede un oggetto della classe. Il nome dell associazione Signals to move indica che l oggetto della classe Button segnala all oggetto della classe di muoversi verso l altro piano. Il diagramma indica poi altre associazioni. Notate la parola passenger (passeggero) sulla linea di associazione tra Person ed. Questo è un nome di ruolo, che identifica il ruolo dell oggetto Person nella relazione con
5 INTRODUZIONE ALLE APPLET JAVA 5 Light FloorDoor Opens Door Turns on/off Opens Signals arrival Shaft Rings Bell Resets Requests Signals to move Resets Floor FloorButton Presses Presses Button Rides Walks across Person Passenger Figura 3.9 Diagramma di classe per il modello dell ascensore. Un nome di ruolo aggiunge significato a una associazione tra classi. In questo caso, il nome di ruolo passenger indica che quando un oggetto Person viaggia su un oggetto, è un passenger di. Per molte delle associazioni del diagramma, il significato è già chiaro, e non è necessario specificare esplicitamente un nome di ruolo. Ora abbiamo identificato le classi del nostro sistema (anche se potremmo scoprirne altre in fasi successive della progettazione). Nella sezione 4.4, vedremo gli attributi di ciascuna classe, e nella sezione 5. useremo questi attributi per esaminare come il sistema cambi nel tempo e per introdurre i suoi aspetti comportamentali. Identificare le classi in un sistema. Perché potrebbe essere più complicato implementare un palazzo con tre (o più) piani?. I grandi palazzi di solito hanno più ascensori. Vedremo nel capitolo 0 che, una volta creato un ascensore, è facile crearne quanti ne vogliamo. Quali vantaggi e problemi vedete nell avere parecchi ascensori, ognuno dei quali può caricare e scaricare passeggeri a ogni piano del palazzo? 3. Per semplicità, abbiamo dato al nostro ascensore e a ogni piano una capacità di una persona. Quali vantaggi e problemi si possono determinare se aumentiamo queste capacità?
La 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
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
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
DettagliLE BASI DI DATI. Seconda parte La progettazione di database Relazionali SCHEMA CONCETTUALE LE ASSOCIAZIONI
LE BASI DI DATI Seconda parte La progettazione di database Relazionali SCHEMA CONCETTUALE LE ASSOCIAZIONI L'associazione (in inglese Relationship) descrive eventuali legami concettuali tra una, due o più
DettagliUML Diagrammi delle classi. UML Diagramma classi 1
UML Diagrammi delle classi UML Diagramma classi 1 Diagramma delle classi Non è nei nostri obiettivi affrontare UML nel suo complesso Ci concentreremo sui diagrammi delle classi che ci forniscono un linguaggio
DettagliCapitolo 13: L offerta dell impresa e il surplus del produttore
Capitolo 13: L offerta dell impresa e il surplus del produttore 13.1: Introduzione L analisi dei due capitoli precedenti ha fornito tutti i concetti necessari per affrontare l argomento di questo capitolo:
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):
DettagliE possibile modificare la lingua dei testi dell interfaccia utente, se in inglese o in italiano, dal menu [Tools
Una breve introduzione operativa a STGraph Luca Mari, versione 5.3.11 STGraph è un sistema software per creare, modificare ed eseguire modelli di sistemi dinamici descritti secondo l approccio agli stati
DettagliDalla progettazione concettuale alla modellazione di dominio
Luca Cabibbo A P S Analisi e Progettazione del Software Dalla progettazione concettuale alla modellazione di dominio Capitolo 91 marzo 2015 Se qualcuno vi avvicinasse in un vicolo buio dicendo psst, vuoi
DettagliAPPUNTI DI MATEMATICA ALGEBRA \ INSIEMISTICA \ TEORIA DEGLI INSIEMI (1)
ALGEBRA \ INSIEMISTICA \ TEORIA DEGLI INSIEMI (1) Un insieme è una collezione di oggetti. Il concetto di insieme è un concetto primitivo. Deve esistere un criterio chiaro, preciso, non ambiguo, inequivocabile,
Dettaglilo 2 2-1 - PERSONALIZZARE LA FINESTRA DI WORD 2000
Capittol lo 2 Visualizzazione 2-1 - PERSONALIZZARE LA FINESTRA DI WORD 2000 Nel primo capitolo sono state analizzate le diverse componenti della finestra di Word 2000: barra del titolo, barra dei menu,
DettagliUML Unified Modeling Language
UML Unified Modeling Language Lezione 4-1 - UML Il diagramma delle classi Parte Seconda - 2 - Relazioni tra Classi&Oggetti I diagrammi delle classi mettono in evidenza i blocchi costitutivi del sistema
DettagliFISICA. Le forze. Le forze. il testo: 2011/2012 La Semplificazione dei Testi Scolastici per gli Alunni Stranieri IPSIA A.
01 In questa lezione parliamo delle forze. Parliamo di forza quando: spostiamo una cosa; solleviamo un oggetto; fermiamo una palla mentre giochiamo a calcio; stringiamo una molla. Quando usiamo (applichiamo)
DettagliAlessandro Pellegrini
Esercitazione sulle Rappresentazioni Numeriche Esistono 1 tipi di persone al mondo: quelli che conoscono il codice binario e quelli che non lo conoscono Alessandro Pellegrini Cosa studiare prima Conversione
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
DettagliRAPPRESENTAZIONE GRAFICA DEGLI ALGORITMI
RAPPRESENTAZIONE GRAFICA DEGLI ALGORITMI Diagramma di flusso L algoritmo può essere rappresentato in vari modi, grafici o testuali. Uno dei metodi grafici più usati e conosciuti è il cosiddetto diagramma
DettagliFasi di creazione di un programma
Fasi di creazione di un programma 1. Studio Preliminare 2. Analisi del Sistema 6. Manutenzione e Test 3. Progettazione 5. Implementazione 4. Sviluppo 41 Sviluppo di programmi Per la costruzione di un programma
DettagliRappresentazione grafica di entità e attributi
PROGETTAZIONE CONCETTUALE La progettazione concettuale, ha il compito di costruire e definire una rappresentazione corretta e completa della realtà di interesse, e il prodotto di tale attività, è lo schema
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
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
DettagliRegistratori di Cassa
modulo Registratori di Cassa Interfacciamento con Registratore di Cassa RCH Nucleo@light GDO BREVE GUIDA ( su logiche di funzionamento e modalità d uso ) www.impresa24.ilsole24ore.com 1 Sommario Introduzione...
DettagliFormattazione. ü Introduzione
Formattazione ü Introduzione Abbiamo fatto un bel po' di lavoro con Mathematica, vero? Abbiamo visto come creare, valutare, semplificare, disegnare, programmare, cucinare, pescare, ed anche come sfilare
DettagliPROCEDURA INVENTARIO DI MAGAZZINO di FINE ESERCIZIO (dalla versione 3.2.0)
PROCEDURA INVENTARIO DI MAGAZZINO di FINE ESERCIZIO (dalla versione 3.2.0) (Da effettuare non prima del 01/01/2011) Le istruzioni si basano su un azienda che ha circa 1000 articoli, che utilizza l ultimo
DettagliUso di base delle funzioni in Microsoft Excel
Uso di base delle funzioni in Microsoft Excel Le funzioni Una funzione è un operatore che applicato a uno o più argomenti (valori, siano essi numeri con virgola, numeri interi, stringhe di caratteri) restituisce
DettagliLezione 2. Il modello entità relazione
Lezione 2 Il modello entità relazione Pag.1 Introduzione alla progettazione delle basi di dati 1. Analisi dei requisiti Quali sono le entità e le relazioni dell organizzazione? Quali informazioni su queste
DettagliSiamo così arrivati all aritmetica modulare, ma anche a individuare alcuni aspetti di come funziona l aritmetica del calcolatore come vedremo.
DALLE PESATE ALL ARITMETICA FINITA IN BASE 2 Si è trovato, partendo da un problema concreto, che con la base 2, utilizzando alcune potenze della base, operando con solo addizioni, posso ottenere tutti
DettagliCapitolo 2. Operazione di limite
Capitolo 2 Operazione di ite In questo capitolo vogliamo occuparci dell operazione di ite, strumento indispensabile per scoprire molte proprietà delle funzioni. D ora in avanti riguarderemo i domini A
DettagliCorso di Amministrazione di Reti A.A. 2002/2003
Struttura di Active Directory Corso di Amministrazione di Reti A.A. 2002/2003 Materiale preparato utilizzando dove possibile materiale AIPA http://www.aipa.it/attivita[2/formazione[6/corsi[2/materiali/reti%20di%20calcolatori/welcome.htm
DettagliDATABASE. A cura di Massimiliano Buschi
DATABASE A cura di Massimiliano Buschi Introduzione Con Microsoft Access: Immissione dati e interrogazione Interfaccia per applicazioni e report Ma prima bisogna definire alcune conoscenze di base sui
DettagliOffice 2007 Lezione 08
Word: gli stili veloci e i temi Da questa lezione, iniziamo ad occuparci delle innovazioni che riguardano specificamente Word. Cominceremo parlando di stili e temi. Nella filosofia di questo nuovo Word,
DettagliAnalisi di una Rete Sociale
2012 Analisi di una Rete Sociale Alessandro Lovati Matricola 626053 Comunicazione Digitale ord. F47 26/01/2012 Indice : 1. Obiettivo del progetto 2. Realizzazione 3. Analisi dei risultati 3.1. Numero di
DettagliUTILIZZATORI A VALLE: COME RENDERE NOTI GLI USI AI FORNITORI
UTILIZZATORI A VALLE: COME RENDERE NOTI GLI USI AI FORNITORI Un utilizzatore a valle di sostanze chimiche dovrebbe informare i propri fornitori riguardo al suo utilizzo delle sostanze (come tali o all
Dettagli2003.06.16 Il sistema C.R.M. / E.R.M.
2003.06.16 Il sistema C.R.M. / E.R.M. Customer / Enterprise : Resource Management of Informations I-SKIPPER è un sistema di CONOSCENZE che raccoglie ed integra INFORMAZIONI COMMERCIALI, dati su Clienti,
DettagliOffice 2007 Lezione 02. Le operazioni più
Le operazioni più comuni Le operazioni più comuni Personalizzare l interfaccia Creare un nuovo file Ieri ci siamo occupati di descrivere l interfaccia del nuovo Office, ma non abbiamo ancora spiegato come
Dettagliwww.filoweb.it STAMPA UNIONE DI WORD
STAMPA UNIONE DI WORD Molte volte abbiamo bisogno di stampare più volte lo stesso documento cambiando solo alcuni dati. Potremmo farlo manualmente e perdere un sacco di tempo, oppure possiamo ricorrere
DettagliCome costruire una distribuzione di frequenze per caratteri quantitativi continui
Come costruire una distribuzione di frequenze per caratteri quantitativi continui Consideriamo i dati contenuti nel primo foglio di lavoro (quello denominato dati) del file esempio2.xls. I dati si riferiscono
DettagliAppunti sulla Macchina di Turing. Macchina di Turing
Macchina di Turing Una macchina di Turing è costituita dai seguenti elementi (vedi fig. 1): a) una unità di memoria, detta memoria esterna, consistente in un nastro illimitato in entrambi i sensi e suddiviso
DettagliMon Ami 3000 Multimagazzino Gestione di più magazzini fisici e/o logici
Prerequisiti Mon Ami 3000 Multimagazzino Gestione di più magazzini fisici e/o logici L opzione Multimagazzino è disponibile per le versioni Azienda Light e Azienda Pro. Introduzione L opzione Multimagazzino
DettagliAlgebra booleana. Si dice enunciato una proposizione che può essere soltanto vera o falsa.
Algebra booleana Nel lavoro di programmazione capita spesso di dover ricorrere ai principi della logica degli enunciati e occorre conoscere i concetti di base dell algebra delle proposizioni. L algebra
DettagliLogica binaria. Porte logiche.
Logica binaria Porte logiche. Le porte logiche sono gli elementi fondamentali su cui si basa tutta la logica binaria dei calcolatori. Ricevono in input uno, due (o anche più) segnali binari in input, e
DettagliRelazioni tra oggetti e classi : Composizione. Relazioni tra oggetti e classi : esempio di Aggregazione. classe contenitore
Relazioni tra oggetti e classi : Generalizzazione Fondamenti di Informatica II 20. Laboratorio 6 Collegamenti e associazioni Le relazioni di tipo generalizzazione (specializzazione), servono per poter
DettagliInformatica per la comunicazione" - lezione 7 -
Informatica per la comunicazione - lezione 7 - Campionamento La codifica dei suoni si basa sulla codifica delle onde che li producono, a sua volta basata su una procedura chiamata campionamento.! Il campionamento
DettagliEsame dell 8 settembre 2012
Basi di Dati e Sistemi Informativi Errori ricorrenti nella progettazione concettuale Questo documento ha, come scopo, presentare alcuni gravi errori che ricorrono spesso nella progettazione concettuale
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. Definizione di informatica. Definizione di un calcolatore come esecutore. Gli algoritmi.
Algoritmi 1 Sommario Definizione di informatica. Definizione di un calcolatore come esecutore. Gli algoritmi. 2 Informatica Nome Informatica=informazione+automatica. Definizione Scienza che si occupa dell
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
DettagliAnno 1. Definizione di Logica e operazioni logiche
Anno 1 Definizione di Logica e operazioni logiche 1 Introduzione In questa lezione ci occuperemo di descrivere la definizione di logica matematica e di operazioni logiche. Che cos è la logica matematica?
DettagliVersione 7.0 Taglie e Colori. Negozio Facile
Versione 7.0 Taglie e Colori Negozio Facile Negozio Facile: Gestione taglie e colori Il concetto di base dal quale siamo partiti è che ogni variante taglia/colore sia un articolo a se stante. Partendo
DettagliRealizzazione di una classe con un associazione
Realizzazione di una classe con un associazione Nel realizzare una classe che è coinvolta in un associazione, ci dobbiamo chiedere se la classe ha responsabilità sull associazione. Diciamo che una classe
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,
DettagliProgrammazione a Oggetti e JAVA. Prof. B.Buttarazzi A.A. 2012/2013
Programmazione a Oggetti e JAVA Prof. B.Buttarazzi A.A. 2012/2013 Relazioni tra classi Ereditarietà Generalizzazione Specializzazione Aggregazione Composizione Dipendenza Associazione Sommario Relazioni
DettagliStrutturazione logica dei dati: i file
Strutturazione logica dei dati: i file Informazioni più complesse possono essere composte a partire da informazioni elementari Esempio di una banca: supponiamo di voler mantenere all'interno di un computer
Dettagli2 Rappresentazioni grafiche
asi di matematica per la MPT 2 Rappresentazioni grafiche I numeri possono essere rappresentati utilizzando i seguenti metodi: la retta dei numeri; gli insiemi. 2.1 La retta numerica Domanda introduttiva
DettagliINSERIMENTO DATI BASILARI
PASSO PASSO. Questo applicativo software nasce con l idea di essere molto semplice da usare. Di fatto lo è ed infatti non dispone di un help in linea all interno dello stesso. Tuttavia ci sentiamo in dovere
DettagliMANUALE D USO DELLA PIATTAFORMA ITCMS
MANUALE D USO DELLA PIATTAFORMA ITCMS MANULE D USO INDICE 1. INTRODUZIONE... 2 2. ACCEDERE ALLA GESTIONE DEI CONTENUTI... 3 3. GESTIONE DEI CONTENUTI DI TIPO TESTUALE... 4 3.1 Editor... 4 3.2 Import di
Dettaglida 2 a 5 giocatori, dai 10 anni in su, durata 30 minuti
da 2 a 5 giocatori, dai 10 anni in su, durata 30 minuti OBIETTIVO Il vincitore è colui che, dopo due round di gioco, delle sue 11 ordinazioni, ne ha consegnate il maggior numero. CONTENUTO DELLA SCATOLA
DettagliAZIENDA SIMULATA CREAZIONE DI UN APP
Alternanza Scuola Lavoro Anno scolastico 2015/2016 AZIENDA SIMULATA CREAZIONE DI UN APP Mattia Filardi Giacomo Di Deco Antonio Cozzi Descrizione applicazione Creata per il progetto Alternanza scuola-lavoro,
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
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
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
DettagliDimensione di uno Spazio vettoriale
Capitolo 4 Dimensione di uno Spazio vettoriale 4.1 Introduzione Dedichiamo questo capitolo ad un concetto fondamentale in algebra lineare: la dimensione di uno spazio vettoriale. Daremo una definizione
Dettagli4 3 4 = 4 x 10 2 + 3 x 10 1 + 4 x 10 0 aaa 10 2 10 1 10 0
Rappresentazione dei numeri I numeri che siamo abituati ad utilizzare sono espressi utilizzando il sistema di numerazione decimale, che si chiama così perché utilizza 0 cifre (0,,2,3,4,5,6,7,8,9). Si dice
DettagliRAPPRESENTAZIONI GRAFICHE
RAPPRESENTAZIONI GRAFICHE Prendiamo in considerazione altre rappresentazioni di dati che sono strumenti utili anche in altre discipline di studio o altri settori della vita quotidiana. Questi strumenti
DettagliLa manutenzione come elemento di garanzia della sicurezza di macchine e impianti
La manutenzione come elemento di garanzia della sicurezza di macchine e impianti Alessandro Mazzeranghi, Rossano Rossetti MECQ S.r.l. Quanto è importante la manutenzione negli ambienti di lavoro? E cosa
DettagliCorrispondenze e funzioni
Corrispondenze e funzioni L attività fondamentale della mente umana consiste nello stabilire corrispondenze e relazioni tra oggetti; è anche per questo motivo che il concetto di corrispondenza è uno dei
DettagliInformatica per le discipline umanistiche 2 lezione 14
Informatica per le discipline umanistiche 2 lezione 14 Torniamo ai concetti base dellʼinformatica. Abbiamo sinora affrontato diversi problemi: avere unʼidentità online, cercare pagine Web, commentare il
DettagliDOCUMENTO ESERCITAZIONE ONENOTE. Utilizzare Microsoft Offi ce OneNote 2003: esercitazione rapida
Utilizzare Microsoft Offi ce OneNote 2003: esercitazione rapida MICROSOFT OFFICE ONENOTE 2003 AUMENTA LA PRODUTTIVITÀ CONSENTENDO AGLI UTENTI L ACQUISIZIONE COMPLETA, L ORGANIZZAZIONE EFFICIENTE E IL RIUTILIZZO
DettagliSISTEMI INFORMATIVI AVANZATI -2010/2011 1. Introduzione
SISTEMI INFORMATIVI AVANZATI -2010/2011 1 Introduzione In queste dispense, dopo aver riportato una sintesi del concetto di Dipendenza Funzionale e di Normalizzazione estratti dal libro Progetto di Basi
DettagliObject Oriented Software Design
Dipartimento di Informatica e Sistemistica Antonio Ruberti Sapienza Università di Roma Object Oriented Software Design Corso di Tecniche di Programmazione Laurea in Ingegneria Informatica (Canale di Ingegneria
DettagliMessa in tavola di un modello tridimensionale
18 Messa in tavola di un modello tridimensionale Creare viste d insieme e di dettaglio, con sezioni e particolari di un modello tridimensionale. Introduzione In questo capitolo vedremo come documentare
DettagliDAL PROBLEMA ALL'ALGORITMO AL PROGRAMMA SCRITTO IN Come. Scopo principale dell informatica è risolvere problemi con i calcolatori.
DAL PROBLEMA ALL'ALGORITMO AL PROGRAMMA SCRITTO IN Come Scopo principale dell informatica è risolvere problemi con i calcolatori. Non tutti i problemi sono risolvibili con i calcolatori. Si può dimostrato
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
DettagliVolume GESTFLORA. Gestione aziende agricole e floricole. Guidaall uso del software
Volume GESTFLORA Gestione aziende agricole e floricole Guidaall uso del software GESTIONE AZIENDE AGRICOLE E FLORICOLE Guida all uso del software GestFlora Ver. 2.00 Inter-Ware Srl Viadegli Innocenti,
DettagliSCHEDA M MOSAICI CLASSIFICARE CON LA SIMMETRIA
SCHEDA M MOSAICI CLASSIFICARE CON LA SIMMETRIA Qui sotto avete una griglia, che rappresenta una normale quadrettatura, come quella dei quaderni a quadretti; nelle attività che seguono dovrete immaginare
DettagliPIL : produzione e reddito
PIL : produzione e reddito La misura della produzione aggregata nella contabilità nazionale è il prodotto interno lordo o PIL. Dal lato della produzione : oppure 1) Il PIL è il valore dei beni e dei servizi
DettagliAURORA LUCA MARTINA GIANLUCA
ALESSIO Team Firestorm MICHELE AURORA LUCA MARTINA GIANLUCA Quest anno il nome del robot è Rhynobot a causa del prolungamento frontale che ricorda il corno di un rinoceronte. Capitolo 1: Missioni scelte
DettagliUN PROGRAMMA APPLICATIVO: ACCESS Access è un programma del pacchetto Office che permette di realizzare database
UN PROGRAMMA APPLICATIVO: ACCESS Access è un programma del pacchetto Office che permette di realizzare database Per comprendere al meglio cosa sia un database, dobbiamo prima introdurre il concetto di
DettagliMODELLO E/R. Prof. Francesco Accarino IIS Altiero Spinelli Sesto San Giovanni
MODELLO E/R Prof. Francesco Accarino IIS Altiero Spinelli Sesto San Giovanni Modellazione dei dati Modellare i dati significa: costruire una rappresentazione semplificata della realtà osservata individuandone
DettagliBasi di dati 9 febbraio 2010 Compito A
Basi di dati 9 febbraio 2010 Compito A Domanda 0 (5%) Leggere e rispettare le seguenti regole: Scrivere nome, cognome, matricola (se nota), corso di studio e lettera del compito (ad esempio, A) sui fogli
DettagliCapitolo 13. Interrogare una base di dati
Capitolo 13 Interrogare una base di dati Il database fisico La ridondanza è una cosa molto, molto, molto brutta Non si devono mai replicare informazioni scrivendole in più posti diversi nel database Per
DettagliCALCOLO COMBINATORIO
CALCOLO COMBINATORIO 1 Modi di formare gruppi di k oggetti presi da n dati 11 disposizioni semplici, permutazioni Dati n oggetti distinti a 1,, a n si chiamano disposizioni semplici di questi oggetti,
DettagliPiega, ripiega e... spiega. Laboratori sulla matematica con il foglio di carta
Piega, ripiega e... spiega Laboratori sulla matematica con il foglio di carta Tutto comincia con un... Tutto comincia con un quadrato! Tutto comincia con un quadrato! Osserviamo: Trovate delle linee? I
DettagliAlla ricerca dell algoritmo. Scoprire e formalizzare algoritmi.
PROGETTO SeT Il ciclo dell informazione Alla ricerca dell algoritmo. Scoprire e formalizzare algoritmi. Scuola media Istituto comprensivo di Fagagna (Udine) Insegnanti referenti: Guerra Annalja, Gianquinto
DettagliMacchine a stati finiti G. MARSELLA UNIVERSITÀ DEL SALENTO
Macchine a stati finiti 1 G. MARSELLA UNIVERSITÀ DEL SALENTO Introduzione Al più alto livello di astrazione il progetto logico impiega un modello, la cosiddetta macchina a stati finiti, per descrivere
DettagliDatabase 1 biblioteca universitaria. Testo del quesito
Database 1 biblioteca universitaria Testo del quesito Una biblioteca universitaria acquista testi didattici su indicazione dei professori e cura il prestito dei testi agli studenti. La biblioteca vuole
DettagliProf. Pagani Corrado ESERCITAZIONI DIAGRAMMI DELLE CLASSI UML E JAVA
Prof. Pagani Corrado ESERCITAZIONI DIAGRAMMI DELLE CLASSI UML E JAVA ES 02 - ORGANIZER Voglio un gestionale (organizer) che permetta a ciascun dipendente della mia azienda di inserire le attività che svolgono
DettagliAnalisi sensitività. Strumenti per il supporto alle decisioni nel processo di Valutazione d azienda
Analisi sensitività. Strumenti per il supporto alle decisioni nel processo di Valutazione d azienda Premessa Con l analisi di sensitività il perito valutatore elabora un range di valori invece di un dato
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...
DettagliModulo didattico sulla misura di grandezze fisiche: la lunghezza
Modulo didattico sulla misura di grandezze fisiche: la lunghezza Lezione 1: Cosa significa confrontare due lunghezze? Attività n 1 DOMANDA N 1 : Nel vostro gruppo qual è la matita più lunga? DOMANDA N
DettagliMon Ami 3000 Varianti articolo Gestione di varianti articoli
Prerequisiti Mon Ami 3000 Varianti articolo Gestione di varianti articoli L opzione Varianti articolo è disponibile per le versioni Azienda Light e Azienda Pro e include tre funzionalità distinte: 1. Gestione
DettagliProgettazione concettuale
Progettazione concettuale Strategie top-down A partire da uno schema che descrive le specifiche mediante pochi concetti molto astratti, si produce uno schema concettuale mediante raffinamenti successivi
DettagliIL MIO PRIMO SITO: NEWS
Pagina 1 IL MIO PRIMO SITO: NEWS Sommario IL MIO PRIMO SITO: NEWS...1 Introduzione...2 I Contenitori...2 Creo un Contenitore...3 I Tracciati...4 Creo le Notizie...6 Inserisco il Testo...6 Inserisco un
DettagliProgettazione di un Database
Progettazione di un Database Per comprendere il processo di progettazione di un Database deve essere chiaro il modo con cui vengono organizzati e quindi memorizzati i dati in un sistema di gestione di
DettagliIntroduzione alla programmazione in C
Introduzione alla programmazione in C Testi Consigliati: A. Kelley & I. Pohl C didattica e programmazione B.W. Kernighan & D. M. Ritchie Linguaggio C P. Tosoratti Introduzione all informatica Materiale
DettagliObiettivo Principale: Aiutare gli studenti a capire cos è la programmazione
4 LEZIONE: Programmazione su Carta a Quadretti Tempo della lezione: 45-60 Minuti. Tempo di preparazione: 10 Minuti Obiettivo Principale: Aiutare gli studenti a capire cos è la programmazione SOMMARIO:
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
DettagliLE CARATTERISTICHE DEI PRODOTTI MULTIVARIANTE
LE CARATTERISTICHE DEI PRODOTTI MULTIVARIANTE Che cosa sono e a cosa servono le caratteristiche? Oltre a descrivere le qualità di un prodotto con un testo generico (descrizione) è possibile dettagliare
DettagliIl modello EER comprende tutti i concetti di modellazione del modello ER, cui si aggiungono:
IL MODELLO EER Modellazione Entità-Associazione estesa 2 Modellazione EER (modellazione ER-estesa) Il modello EER comprende tutti i concetti di modellazione del modello ER, cui si aggiungono: i concetti
Dettagli4 Dispense di Matematica per il biennio dell Istituto I.S.I.S. Gaetano Filangieri di Frattamaggiore EQUAZIONI FRATTE E SISTEMI DI EQUAZIONI
119 4 Dispense di Matematica per il biennio dell Istituto I.S.I.S. Gaetano Filangieri di Frattamaggiore EQUAZIONI FRATTE E SISTEMI DI EQUAZIONI Indice degli Argomenti: TEMA N. 1 : INSIEMI NUMERICI E CALCOLO
DettagliIntroduzione. Alberto Fortunato alberto.fortunato@gmail.com. www.albertofortunato.com Pag. 1 di 137
Introduzione Il software Gestione magazzino è stato realizzato con l intenzione di fornire uno strumento di apprendimento per chi intendesse cominciare ad utilizzare Access 2010 applicando le tecniche
Dettagli