Ingegneria del Software DA UML A JAVA

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "Ingegneria del Software DA UML A JAVA"

Transcript

1 DA UML A JAVA

2 The Unified Modeling Language Molte discipline ingegneristiche dispongono di validi mezzi di rappresentazione (schemi, diagrammi di prestazioni e consumi,...) Il software non dispone ancora di tecniche efficaci per descriverne la struttura, le funzionalità e le prestazioni UML cerca di rimediare a questa situazione UML è diventato uno standard di fatto per object-oriented modelling design Una famiglia di notazioni

3 Class Diagram

4 Class Diagram Definiscono la visione statica del sistema classi relazioni tra classi associazione (uso) generalizzazione (ereditarietà) aggregazione (contenimento) È forse il modello più importante perché definisce gli elementi base del sistema

5 Classi In UML una classe è composta da tre parti nome attributi (lo stato) metodi (il comportamento) Professore nome cognome create() delete() Professore create() delete() Professore Professore nome cognome

6 Visibilità Professore Professore nome: String cognome: String età: integer visualizza() sceglicorso() Professore {abstract} + nome: String # cognome: String - età: integer = 32 + visualizza() - sceglicorso()

7 Classe Ingegneria del Software Dettagli classe Attributo: visibilità nome: tipo [molteplicità] = default {stringa di proprietà} Metodo: visibilità nome (lista parametri): tipo di ritorno {stringa di proprietà} Visibilità: + public, - private, # protected, ~ friendly Parametro: direzione nome: tipo = default 7

8 Traduzione Ingegneria del Software Classe UML e classe Java public class Persona { private String nome; private String cognome; private Date datanascita; private static int numpersone; public boolean sisposa(persona p) { } public boolean compieanni(date d) { } } 8

9 Ereditarietà Le classi sono di solito organizzate in una gerarchia Le classi in cima alla gerarchia hanno caratteristiche comuni a tutte le classi Le classi più in basso ereditano attributi e servizi dalle classi superiori, ma possono essere specializzate se necessario Ereditarietà è detta generalizzazione in UML

10

11 Interfacce Ingegneria del Software Interfacce 11

12 UML package Oxygen plant Oxygen plant Pressure controller Alarm and protection (a) Package symbol Temperature controller (b) Package containing packages Un package è una cartella che contiene altre entità (oggetti, classi, altri package, ).

13 Package Ingegneria del Software Package Decomposizione gerarchica e dipendenze tra package 13

14 Associazioni Un associazione indica una relazione tra classi ad esempio persona che lavora per azienda Un associazione deve avere un nome Il nome è solitamente un verbo (un etichetta al centro della linea che definisce l associazione) Corso appare CartellaStudente

15 Molteplicità La molteplicità definisce il numero di oggetti che prendono parte alla relazione La molteplicità dice: Se l associazione è obbligatoria oppure no? Il numero minimo e massimo di oggetti che possono essere relazionati ad un altro oggetto Corso segue Studente 0..*

16 Molteplicità (cont.) 1 Esattamente * zero o più zero o uno m..n entro gli estremi specificati

17 Esempio1 Associazioni e molteplicità in Java - persone - casa Associazioni sono attributi impliciti (con visibilità) class Persona { private Casa casa; } class Casa { private Persona[] persone; } 17

18 Ruolo Definisce il ruolo svolto nell associazione Persona lavora 1..* 0..1 Impiegato DatoreDiLavoro Azienda

19 Ruolo (cont.) Il ruolo diventa importante quando una classe è coinvolta più volte nella stessa associazione Utente proprietario 0..* utente autorizzato 0..* contenente 0..* Directory 0..* contenuto 0..1

20 Esempio2 Ingegneria del Software Associazioni riflessive e ruoli class Persona { private String nome; private String cognome; private Date datanascita; private static int numpersone; public Persona marito; public Persona moglie; public boolean sisposa(persona p) { } } public boolean compieanni(date d) { } 20

21 Esempio3 Ingegneria del Software Associazioni con ruolo e verso class Persona { private String nome; private String cognome; private String codfiscale; private int stipendio; } class Banca { private Persona[] clienti; } class Prestito { private int ammontare; private int rata; private Date datainizio; private Date datafine; private Persona intestatario; private Banca banca; } 21

22 Aggregazioni Le aggregazioni sono una forma particolare di associazione. Una parte è in relazione con un oggetto (part-of) La traduzione in Java è simile al caso delle associazioni Corso 1..* Curriculum

23 Composizioni Una relazione di composizione è un aggregazione forte Le parti componenti non esistono senza il contenitore Creazione e distruzione avvengono nel contenitore I componenti non sono parti di altri oggetti Window scrollbar Slider 2 body 1 Panel close 1 Button

24 Composizione (Notazioni Alternative) Window Window 2 body:panel 1 scrollbar: Slider 1 body 2 scrollbar Panel Slider close: Button 1 1 close Button

25 Analisi Orientata agli Oggetti Object Modeling

26 Modello di un sistema Descrizione astratta del sistema di cui si stanno analizzando i requisiti Modello è una specifica in cui è inclusa anche una descrizione dell ambiente in cui il sistema dovrà operare

27 System modelling Modellare il sistema (System modelling) aiuta gli analisti a capire le funzionalità del sistema I modelli del sistema sono usati per comunicare con i committenti Diversi modelli presentano il sistema da diverse prospettive Esterna: Mostrare il contesto o l ambiente Comportamentale (Behavioural): operazione svolte dal sistema Strutturale: architettura del sistema

28 Object models Modelli a oggetti (Object models) descrivono il sistema in termini di classi di oggetti Una classe è un'astrazione di un insieme di oggetti come costituiti da attributi comuni e da servizi (operazioni) fornite da ogni oggetto. Modo naturale di descrivere le entità del mondo reale manipolate dal sistema Identificazione delle classi è un processo difficile che richiede una profonda conoscenza del domino dell'applicazione Le classi che rispecchiano il dominio dell'applicazione, sono riutilizzabili per definire sistemi diversi

29 Concetti base Oggetti Classi Relazioni tra classi Questi concetti si ritrovano nella (sono ispirati dalla) Programmazione ad Oggetti, ma lo scopo è molto diverso. Oggetti qui possono essere entità del mondo reale, non solo elementi di un programmnon sono

30 Oggetti Un oggetto è un concetto, un astrazione o una cosa con un significato ben preciso per l applicazione in esame Un oggetto è un entità: fisica concettuale software

31 Stato Lo stato rappresenta la condizione in cui si trova l oggetto Lo stato è definito dai valori delle proprietà (attributi) Gli oggetti possono essere suddivisi in: passivi (lista di nomi) attivi (orologio, persona)

32 Comportamento Determina come agisce e reagisce un oggetto cambiamenti di stato e reazioni verso altri oggetti È definito dall insieme di operazioni che l oggetto può compiere Apriti!

33 Operazioni Un operazione è un servizio fornito dagli oggetti della classe. L insieme delle operazioni definiscie il comportamento Tutte e sole le operazioni rilevanti per il dominio applicativo Bancario riceveprestito, ricevecredito, apreconto Medico faesame, prendemedicina, vaospedale

34 Classi Una classe è un gruppo di entità identificato da un insieme di caratteristiche comuni Una classe è un modello per descrivere oggetti con proprietà simili La classe è un astrazione della realtà enfatizza alcune caratteristiche tralascia altre proprietà

35 Esempi

36 Ascensore Shaft Elevator Floor Door Station Scheduler Button

37 Relazioni (associazioni) Oggetti e classi partecipano a relazioni ("associazioni" in UML) con altri oggetti e classi Associazioni possono essere annotate con informazioni che descrivono l'associazione Nessun significato formale Associazioni possono anche indicare un oggetto è associato con uno (o più) metodi o attributi di altri oggetti

38 Class Diagram

39 Classificare le entità Utile minimizzare numero delle classi per migliorare produttività e riusco. Eseguire classificazione degli oggetti, identificando fattori in comune: funzione e comportamenti Qualità (attributi). Esempio: prima classificazione suddivide in tre gruppi: sensor, controller and actuator. Gli attuatori sono fra loro identici, ma I sensori hanno dettagli diversi Cosa fare? Airspeed Roll actuator Height System controller Pitch actuator Attitude Yaw actuator (a) System Objects Sensors Airspeed Height Attitude Controllers System Actuators Roll Pitch Yaw (b) Grouping of system objects

40 L i br a ry us e r N a m e A d d re ss P h on e R e gi st ra t io n # User class hierarchy R e gi st e r () D e -r e gi st e r () Re a de r A ffil ia t io n B o rro w e r Ite m s o n l oa n M a x. lo a ns S t a ff D e p a rtm e n t D e p a rtm e n t ph on e S t ud e nt M a jo r s ub je c t H o m e a d d re ss

41 Vantaggi ereditarietà per OOA Meccanismo di astrazione utile per classificare entità e trovare relazioni fra entità simili Es.: vari tipi di sensori sono diversi ma hanno caratteristiche comuni, fattorizzabili in una classe sensore, da cui le altre ereditano. Meccanismo di riuso, sia per l'analisi del dominio, che a livello di design e di programmazione Il grafo dell'ereditarietà è sorgente di informazione organizzativa sul dominio dell'applicazione e sui sistemi realizzati, utile anche documentazione Svantaggio: Problema di leggibilità classi non sono entrocontenute: occorre leggere anche le superclassi per capirle

42 Multiple inheritance Possibilità di ereditare da più classi Può portare a conflitti fra attributi o servizi con lo stesso nome ereditati da classi diverse B o ok A u th or E d it io n P u bl ic a t io n d a t e I S B N V o ic e re c or d in g S p e ake r D u ra t io n Re c ord in g d a t e T a lk in g bo ok # Ta pe s

43 System and software design

44 Analisi vs. Design OOA Modello dei requisiti Punto di vista dell utente OOD Aggiunta di dettagli e decisioni progettuali Punto di vista del progettista Transizione OOA -> OOD presenta spesso discontinuita : scelte architetturali.

45 Object-oriented Design La progettazione del software può essere descritta come un insieme di oggetti software interagenti che gestiscono il proprio stato e le proprie operazioni Vari modelli per descrivere OOD, e UML può essere usato per rappresentarli

46 Vantaggi di OOD Manutenzione semplificata. Oggetti comprensibli come entità stand-alone Oggetti sono componenti riusabili Per molti sistemi, c'è una chiara corrispondenza fra le entità del "mondo reale" (persone, ruoli, dispositivi ) e gli oggetti del sistema

47 Oggetti in OOD/OOP Oggetto: entità in memoria, con uno stato e un insieme definito di operazioni che manipolano lo stato. lo stato è rappresentato dai valori in memoria degli attributi dell'oggetto. Le operazioni forniscono servizi ad altri oggetti (clienti), che li richiedono quando necessario. Oggetti sono creati secondo quanto definito nella classe corrispondente. Una classe è quindi uno "stampo" per creare oggetti dello stesso tipo. Include dichiarazioni di tutti gli attributi e servizi che dovrebbero essere parte degli oggetti della classe.

48 Object-oriented development Object-oriented analysis, design and programming: correlate ma distinte OOA: sviluppare un modello a oggetti del dominio applicativo e individuare le responsabilità del sistema da sviluppare OOD: sviluppare un modello object-oriented di un sistema che implementa i requisiti OOP: realizzare un design object-oriented usando un linguaggio di programmazione OO (Java, C++, ) E' possibile utilizzare solo OOA, oppure solo OOA e OOD e poi implementare in linguaggio tradizionale come C (ma allora alcuni accorgimenti )

49 Cenni ad altri diagrammi statici

50 Diagrammi dei componenti Utili per decomporre il sistema in esame

51 prenotazione Esempio Piano Pulsantiera Display visualizzazione richieste richieste visualizzazione posizione Ascensore Controllo Sistema movimento

52 Diagramma di deployment Cellulare1 Cellulare2 client.jar server.jar JME TCP/IP client.jar JME

53 Cellulare browser http/internet Web server prenota.war Application server gestprenotazioni.ear Database server prenotazioni.myd

54 Diagrammi di comportamento

55 Modellare il comportamento Comportamento: modalità di interazione fra oggetti Sequence diagrams sono utilizzati a tale scopo

56 Diagrammi di sequenza Diagrammi di sequenza I diagrammi di sequenza rappresentano interazioni tra oggetti Materializzazione di scenari specifici Sono utili per Evidenziare le interazioni tra oggetti e quindi i metodi da associare alle diverse classi Provare l efficacia dei servizi identificati 56

57 Il caso più semplice 57

58 Cosa succede se 58

59 Distribuzione di materiale in formato elettronico E c a t : C a ta l o g : L ib r a r y I te m L i b 1 : N e t S e r v e r : L ib r a r y U s e r L o o k u p D i s p l ay I ss u e I ss u e li c e n c e A c c e p t li c e nc e C o m p r e ss D e l iv e r

60 Frame di interazione Frame di interazione ref alt opt loop par neg 60

61 State Diagrams models Modellano il comportamento del sistema come risposta a eventi interni e esterni Particolarmente adatti a sistemi reattivi e in tempo reale (descrivono risposte a stimoli esterni) Stati = nodi, eventi= archi fra i nodi. Quando accade un evento il sistema si sposta da uno stato all'altro

62 StateCharts Gli Statecharts sono un'estensione degli automi a stati finiti, tipicamente utilizzati per descrivere sistemi di controllo. Dovuti a David Harel, primi anni 80. Specificano tramite diagrammi (charts) il comportamento di un sistema o di singoli oggetti La compatezza della loro rappresentazione permette di controllare l esplosione degli stati

63 Caratteristiche Una specifica e scomposta in vari oggetti comunicanti. Ogni oggetto e un automa a stati finiti descritto in termini di: Eventi a cui gli oggetti sono sensibili (segnali, chiamate di metodi, passaggio del tempo, cambi di stato di altri oggetti) Azioni prodotte in risposta agli eventi Transizioni di stato Possibilità di descrivere evoluzioni parallele e cooperanti degli oggetti. Ricca notazione grafica per rendere piu semplice la descrizione

64 StateCharts: blocchi base della notazione Stato Decomposizione OR evento [condizione] azione Decomposizione AND Transizione

65 Identificare gli stati Analizzare tutti gli stati in cui un oggetto può trovarsi Usare gli use case e gli scenari Definire un livello di dettaglio giusto e omogeneo Identificare gli attributi significativi Individuare le condizioni limite

66 Esempio (senza stato finale): centrale telefonica Chiamante.Aggancia Inattivo Chiamante.Aggancia Chiamante.Sgancia Tono T Pronto Tono TimeOut Compone(n) Compos. Numero Compone(n) T NumNonValido Messaggio Vocale Tono Occupato Occupato ProntoA Connettere NumValido Connesso Ricevente.Sgancia Tono Libero Instradato FineMessaggio

67 Inizio e Fine Inizio Bianco Muovere Matto o Abbandono Stallo o Accordo Vince Nero Mossa Bianca Mossa Nera Stallo o Accordo Patta Nero Muovere Matto o Abbandono Vince Bianco

68 Condizioni Funzioni booleane sui valori degli oggetti Opzionali, ma utili Utili quando non basta l'evento, ma si vuole aggiungere un predicato Anche evento e opzionale: ci puo essere solo condizione Evento Condizione Pronto Verde [incrocio.stato=libero] InCorsa

69 Operazioni Azioni Operazioni che hanno durata istantanea Tipicamente produzione di eventi Sono associate alle transizioni di stato oppure all'ingresso o all'uscita da uno stato Attività Sono operazioni con durata significativa Sono associate ad uno stato Continue o sequenziali Possono essere descritte con linguaggio di programmazione

70 Stato Completo In ogni stato si possono dichiarare variabili, da inizializzare opportunamente. Nome attributo1: tipo1 = val.iniziale attributo2: tipo2 = val.iniziale do: attività1 entry / azione1 exit / azione2 event1 / azione3 event2 / azione4 event3 [condizione1] / azione5 event4 [condizione2] / azione6

71 Eventi (Generati da Azioni) Spesso le azioni consistono nell'inviare un evento ad un altro oggetto : questi sono detti eventi INTERNI 0 Oggetti selezionati right-mouse-down(location) [location in window] / object:=pick-object(location) ^object.highlight() 1 Oggetto selezionato

72 Eventi (2) Gli eventi ESTERNI sono invece quelli non generati dal sistema. Gli eventi (interni e esterni) sono messi in una coda (buffer FIFO) ed estratti uno alla volta. Se nessuna transizione associata all evento e in grado di scattare, l evento e perduto. Attenzione a catene infinite di eventi in composizione parallela (A invia evento e1 a B che in risposta invia e2 ad A che invia e1 a B, )

73 State Diagram Piatti La complessità cresce esponenzialmente Descresce l espressività e la comprensibilità Diagrammi Strutturati Favoriscono la sintesi e aumentano la leggibilità Generalizzazione (macro stati) Aggregazione (stati concorrenti)

74 Diagrammi a stati strutturati Un macro stato equivale ad una scomposizione Or degli stati I sottostati ereditano le transizioni dei loro superstati Cambio Automatico levaf Folle levan levar levan RetroMarcia MarciaAvanti ferma accelera accelera Prima Seconda Terza decelera decelera

75 Altro es. di Decomposizione OR

76 History History può essere associata a stati non foglia Quando l esecuzione lascia uno stato S con history Si salva l ultimo stato visitato S1 in S Quando l esecuzione ritorna in S Si riparte da S1 A A1 B A2 H

77 Registrazione Corsi Creazione H corsi < 4 Selezione corsi corsi = 4 corsie < 2 Selezione corsi extra sospendi ricomincia corsie = 2 Sospeso giorni > 3 Salva quit Sottometti

78 Concorrenza di due attività Guida distratta Guida Normale do: guida sms do: guida do: sms clacson invia Guida Attenta do: guida piano

79 Sottostati Concorrenti. Decomposizione AND Incompleto lab1 lab2 scritto passato progetto non passato

80 Oggetti Compositi Accendino Serbatoio Fornello Vuoto carica [gas = 0] Pieno [gas > 0] Serbatoio Fornello Chiuso apri chiudi Aperto Acceso scintilla

81 Interazione fra Componenti carica Vuoto [gas = 0] Fornello apri Chiuso chiudi Serbatoio Pieno [gas > 0] Aperto scintilla [Serbatoio.stato == Pieno] Acceso

82 Stubbed Transitions A B E F W C D A B W C D

83 Microwave oven model F u ll p ow e r F u ll pow e r d o: se t po w e r = 6 00 W a it in g T i m e r d o: di sp la y ti m e F u ll p ow e r S e t ti m e d o: ge t nu m be r e xi t: s e t t im e N u m b er O p e r a ti on d o: op e r a te o ve n H a l f H a l f p ow e r p ow e r T i m e r D o or c lo se d C a nc e l D o or S t a rt H a l f p ow e r o pe n E n a bl e d D o or o pe n W a it in g d o: se t po w e r = 3 00 D o or c lo se d d o: di sp la y ' R e a dy ' d o: di sp la y ti m e D i s ab l ed d o: di sp la y ' W a it in g'

84 Microwave oven operation O p e r ati on T i m e C h ec k in g d o: c he c k s ta tu s O K d o: run C o ok ge ne ra t or T u rn ta b le fa ul t E m i tt e r fa ul t T i m eo ut A l a rm d o: di sp la y ev e nt D o ne d o: bu z z e r on for 5 s e c s. D o or o pe n C a nc e l D i s ab le d Wa it in g

Unified Modeling Language

Unified Modeling Language Unified Modeling Language Luciano Baresi Luciano Baresi 1 OMT Booch UML Sono simili in molti aspetti: Prescrivono un approccio passo-passo Consentono il passaggio dall analisi al progetto in modo omogeneo

Dettagli

Indice generale. OOA Analisi Orientata agli Oggetti. Introduzione. Analisi

Indice generale. OOA Analisi Orientata agli Oggetti. Introduzione. Analisi Indice generale OOA Analisi Orientata agli Oggetti Introduzione Analisi Metodi d' analisi Analisi funzionale Analisi del flusso dei dati Analisi delle informazioni Analisi Orientata agli Oggetti (OOA)

Dettagli

!"#$%&&'()#*%+%+!"#$"',,'()#*%+ -")%*&'&'+'$.)+-$$%&&) !"#$%&&'(%)'*+%",#-%"#.'%&'#/0)-+#12"+3,)4+56#7+#.')8'9

!#$%&&'()#*%+%+!#$',,'()#*%+ -)%*&'&'+'$.)+-$$%&&) !#$%&&'(%)'*+%,#-%#.'%&'#/0)-+#12+3,)4+56#7+#.')8'9 !"#$%&&'()#*%+%+!"#$"',,'()#*%+ -")%*&'&'+'$.)+-$$%&&)!"#$%&&'(%)'*+%",#-%"#.'%&'#/0)-+#12"+3,)4+56#7+#.')8'9 Slide 1 Paradigmi di Programmazione! Un linguaggio supporta uno stile di programmazione se

Dettagli

Strumenti di modellazione. Gabriella Trucco

Strumenti 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

Dettagli

Concetti di base di ingegneria del software

Concetti 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

Dettagli

Object Oriented Programming

Object 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

Dettagli

La specifica del problema

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

Dettagli

Identificare le classi in un sistema

Identificare le classi in un sistema 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

Dettagli

Programmazione a Oggetti e JAVA. Prof. B.Buttarazzi A.A. 2012/2013

Programmazione 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

Dettagli

7. Architetture Software

7. Architetture Software 7. Architetture Software progettare la struttura Andrea Polini Ingegneria del Software Corso di Laurea in Informatica (Ingegneria del Software) 7. Architetture Software 1 / 20 Scopo della fase di design

Dettagli

Automazione Industriale 4- Ingegneria del Software

Automazione Industriale 4- Ingegneria del Software Automation Robotics and System CONTROL Università degli Studi di Modena e Reggio Emilia Automazione Industriale 4- Ingegneria del Software Cesare Fantuzzi (cesare.fantuzzi@unimore.it) Ingegneria Meccatronica

Dettagli

Raccolta 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 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

Dettagli

Corso di Laurea Specialistica in Ingegneria Informatica. Corso di Ingegneria del Software A. A. 2008-2009. Class Discovery E.

Corso di Laurea Specialistica in Ingegneria Informatica. Corso di Ingegneria del Software A. A. 2008-2009. Class Discovery E. Corso di Laurea Specialistica in Ingegneria Informatica Corso di Ingegneria del Software A. A. 2008 - Class Discovery E. TINELLI Contenuti Classi di analisi: definizione ed esempi Tecniche per la definizione

Dettagli

12 - Introduzione alla Programmazione Orientata agli Oggetti (Object Oriented Programming OOP)

12 - 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,

Dettagli

Modellazione di sistema

Modellazione di sistema Corso di Laurea Specialistica in Ingegneria Informatica Corso di Ingegneria del Software A. A. 2008 - Modellazione di sistema E. TINELLI Contenuti Approcci di analisi Linguaggi di specifica Modelli di

Dettagli

Università 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 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

Dettagli

Alessandra Raffaetà. Basi di Dati

Alessandra Raffaetà. Basi di Dati Lezione 2 S.I.T. PER LA VALUTAZIONE E GESTIONE DEL TERRITORIO Corso di Laurea Magistrale in Scienze Ambientali Alessandra Raffaetà Dipartimento di Informatica Università Ca Foscari Venezia Basi di Dati

Dettagli

Architettura MVC-2: i JavaBeans

Architettura MVC-2: i JavaBeans Siti web centrati sui dati Architettura MVC-2: i JavaBeans Alberto Belussi anno accademico 2008/2009 Limiti dell approccio SEVLET UNICA La servlet svolge tre tipi di funzioni distinte: Interazione con

Dettagli

Modellazione dei dati in UML

Modellazione 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):

Dettagli

UML Unified Modeling Language

UML 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

Dettagli

ISTITUTO TECNICO ECONOMICO MOSSOTTI

ISTITUTO TECNICO ECONOMICO MOSSOTTI CLASSE III INDIRIZZO S.I.A. UdA n. 1 Titolo: conoscenze di base Conoscenza delle caratteristiche dell informatica e degli strumenti utilizzati Informatica e sistemi di elaborazione Conoscenza delle caratteristiche

Dettagli

UML. Una introduzione incompleta. UML: Unified Modeling Language

UML. Una introduzione incompleta. UML: Unified Modeling Language UML Una introduzione incompleta 1/23 UML: Unified Modeling Language Lo Unified Modeling Language (UML) è una collezione di notazioni grafiche che aiuta a progettare sistemi software, specialmente quelli

Dettagli

Claudia Raibulet raibulet@disco.unimib.it

Claudia Raibulet raibulet@disco.unimib.it Classi e stati Claudia Raibulet raibulet@disco.unimib.it la classe Cane modella le proprietà comuni di un insieme di oggetti quali attributi ha un cane peso colore come si comporta abbaia morde quali comandi

Dettagli

Object Oriented Software Design

Object 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

Dettagli

Diagrammi di Flusso dei Dati

Diagrammi di Flusso dei Dati Ingegneria del Software Diagrammi di Flusso dei Dati Corso di Ingegneria del Software Anno Accademico 2012/2013 Lucidi liberamente tratti dalle dispense online del prof. Lucio Sansone, Univ. di Napoli

Dettagli

UML - Unified Modeling Language

UML - 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

Dettagli

Considera tutti i requisiti funzionali (use cases) NON deve necessariamente modellare i requisiti non funzionali

Considera tutti i requisiti funzionali (use cases) NON deve necessariamente modellare i requisiti non funzionali Corso di Laurea Specialistica in Ingegneria Informatica Corso di Ingegneria del Software A. A. 2008 - Progettazione OO E. TINELLI Punto di Partenza Il modello di analisi E una rappresentazione minima del

Dettagli

Lezione 4. Modello EER

Lezione 4. Modello EER Lezione 4 Modello EER 1 Concetti del modello EER Include tutti i concetti di modellazione del modello ER Concetti addizionali: sottoclassi/superclassi, specializzazione, categorie, propagazione (inheritance)

Dettagli

Introduzione alle basi di dati. Gestione delle informazioni. Gestione delle informazioni. Sistema informatico

Introduzione alle basi di dati. Gestione delle informazioni. Gestione delle informazioni. Sistema informatico Introduzione alle basi di dati Introduzione alle basi di dati Gestione delle informazioni Base di dati Modello dei dati Indipendenza dei dati Accesso ai dati Vantaggi e svantaggi dei DBMS Gestione delle

Dettagli

Database. Appunti di Amaranto Oronzo e Giancane Diego Lezione dell Ing. Lucia Vaira 24/04/2014

Database. Appunti di Amaranto Oronzo e Giancane Diego Lezione dell Ing. Lucia Vaira 24/04/2014 Database Appunti di Amaranto Oronzo e Giancane Diego Lezione dell Ing. Lucia Vaira 24/04/2014 Cos'è un database? È una struttura di dati composta da tabelle a loro volta composte da campi. Caratteristiche

Dettagli

connessioni tra i singoli elementi Hanno caratteristiche diverse e sono presentati con modalità diverse Tali relazioni vengono rappresentate QUINDI

connessioni tra i singoli elementi Hanno caratteristiche diverse e sono presentati con modalità diverse Tali relazioni vengono rappresentate QUINDI Documenti su Internet LINGUAGGI DI MARKUP Internet permette (tra l altro) di accedere a documenti remoti In generale, i documenti acceduti via Internet sono multimediali, cioè che possono essere riprodotti

Dettagli

Statechart Diagrams. Ing. Orazio Tomarchio Orazio.Tomarchio@diit.unict.it

Statechart Diagrams. Ing. Orazio Tomarchio Orazio.Tomarchio@diit.unict.it Statechart Diagrams Ing. Orazio Tomarchio Orazio.Tomarchio@diit.unict.it Dipartimento di Ingegneria Informatica e delle Telecomunicazioni Università di Catania Agenda Cosa è uno Statechart Diagram Quando

Dettagli

Database. Si ringrazia Marco Bertini per le slides

Database. Si ringrazia Marco Bertini per le slides Database Si ringrazia Marco Bertini per le slides Obiettivo Concetti base dati e informazioni cos è un database terminologia Modelli organizzativi flat file database relazionali Principi e linee guida

Dettagli

Introduzione al data base

Introduzione al data base Introduzione al data base L Informatica è quella disciplina che si occupa del trattamento automatico dei dati con l ausilio del computer. Trattare i dati significa: raccoglierli, elaborarli e conservarli

Dettagli

I Sistemi Informativi

I Sistemi Informativi I Sistemi Informativi Definizione Un Sistema Informativo è un mezzo per acquisire, organizzare, correlare, elaborare e distribuire le informazioni che riguardano una realtà che si desidera descrivere e

Dettagli

Esercitazione di Basi di Dati

Esercitazione di Basi di Dati Esercitazione di Basi di Dati Corso di Fondamenti di Informatica 6 Maggio 2004 Come costruire una ontologia Marco Pennacchiotti pennacchiotti@info.uniroma2.it Tel. 0672597334 Ing.dell Informazione, stanza

Dettagli

Siti web centrati sui dati Architettura MVC-2: i JavaBeans

Siti web centrati sui dati Architettura MVC-2: i JavaBeans Siti web centrati sui dati Architettura MVC-2: i JavaBeans 1 ALBERTO BELUSSI ANNO ACCADEMICO 2009/2010 Limiti dell approccio SEVLET UNICA La servlet svolge tre tipi di funzioni distinte: Interazione con

Dettagli

9. Architetture di Dominio

9. Architetture di Dominio 9. Architetture di Dominio imparare dall esperienza comune Andrea Polini Ingegneria del Software Corso di Laurea in Informatica (Ingegneria del Software) 9. Architetture di Dominio 1 / 20 Sommario 1 Architetture

Dettagli

Progettaz. e sviluppo Data Base

Progettaz. 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

Dettagli

Diagrammi dei package

Diagrammi dei package Diagrammi dei package Package Meccanismo di raggruppamento di più classi (riferito al momento della compilazione) in unità di livello più alto, al fine di dominare la complessità strutturale di un sistema

Dettagli

I casi d uso corrispondono ai compiti che l attore (che può essere una persona fisica e non) può svolgere.

I 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

Dettagli

Ingegneria del Software. Introduzione ai pattern

Ingegneria del Software. Introduzione ai pattern Ingegneria del Software Introduzione ai pattern 1 Definizione di pattern [dal [dal vocabolario vocabolario Garzanti] Garzanti] Alcuni esempi: Pattern architetturale Pattern di circuito stampato Pattern

Dettagli

INGEGNERIA DEL SOFTWARE. Prof. Paolo Salvaneschi

INGEGNERIA DEL SOFTWARE. Prof. Paolo Salvaneschi Università di Bergamo Facoltà di Ingegneria Corso di Laurea in Ingegneria Informatica INGEGNERIA DEL SOFTWARE Prof. Paolo Salvaneschi 1 Obiettivi Scopi del corso: - Fornire gli elementi di base della disciplina,

Dettagli

Dalla progettazione concettuale alla modellazione di dominio

Dalla 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

Dettagli

Sommario. Definizione di informatica. Definizione di un calcolatore come esecutore. Gli algoritmi.

Sommario. 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

Dettagli

UniRoma2 - Ingegneria del Software 1 1

UniRoma2 - 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

Dettagli

object oriented analysis

object 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

Dettagli

Testo Esercizio. Un modello è ragionevole quando contiene queste tre caratteristiche.

Testo 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

Dettagli

Stefania Marrara - Esercitazioni di Tecnologie dei Sistemi Informativi. Integrazione di dati di sorgenti diverse

Stefania 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

Dettagli

Introduzione alla Programmazione Orientata agli Oggetti. Classi, Oggetti e Messaggi

Introduzione alla Programmazione Orientata agli Oggetti. Classi, Oggetti e Messaggi Introduzione alla Programmazione Orientata agli Oggetti Classi, Oggetti e Messaggi Agenda 1. La metodologia di progettazione ad oggetti Concetti fondamentali: oggetti, classi, messaggi 2. I concetti fondamentali

Dettagli

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

Elementi di UML (7): Diagrammi dei componenti e di deployment Elementi di UML (7): Diagrammi dei componenti e di deployment Università degli Studi di Bologna Facoltà di Scienze MM. FF. NN. Corso di Laurea in Scienze di Internet Anno Accademico 2004-2005 Laboratorio

Dettagli

Basi di dati. Le funzionalità del sistema non vanno però ignorate

Basi di dati. Le funzionalità del sistema non vanno però ignorate Basi di dati La progettazione di una base di dati richiede di focalizzare lo sforzo su analisi, progettazione e implementazione della struttura con cui sono organizzati i dati (modelli di dati) Le funzionalità

Dettagli

Fasi del ciclo di vita del software (riassunto) Progetto: generalità. Progetto e realizzazione (riassunto)

Fasi 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

Dettagli

La Progettazione Concettuale

La Progettazione Concettuale La Progettazione Concettuale Università degli Studi del Sannio Facoltà di Ingegneria Corso di Laurea in Ingegneria Informatica CorsodiBasidiDati Anno Accademico 2006/2007 docente: ing. Corrado Aaron Visaggio

Dettagli

Corso di Informatica

Corso di Informatica Corso di Informatica Modulo T1 B2 Significato e proprietà della OOP 1 Prerequisiti Concetto ed elementi della comunicazione Allocazione e deallocazione della memoria Compilazione di un programma Spazio

Dettagli

Sistema Informativo Geografico:

Sistema Informativo Geografico: Sistemi Informativi Geografici Sistema Informativo Geografico: È un sistema informativo che tratta informazioni spaziali georeferenziate, ne consente la gestione e l'analisi. Informazioni spaziali: dati

Dettagli

Scaletta. Estensioni UML per il Web. Applicazioni web - 2. Applicazioni web. WAE: Web Application Extension for UML. «Client page»

Scaletta. Estensioni UML per il Web. Applicazioni web - 2. Applicazioni web. WAE: Web Application Extension for UML. «Client page» Scaletta Estensioni UML per il Web Michele Zennaro 14-05-2004 Le applicazioni web Scopo di un estensione UML per il web Due punti di vista Uno più astratto Uno più vicino ai file fisici conclusivo Commenti

Dettagli

Cosa significa che il SW è non lineare? Piccoli cambiamenti nel codice portano a grandi cambiamenti di comportamento

Cosa significa che il SW è non lineare? Piccoli cambiamenti nel codice portano a grandi cambiamenti di comportamento Cosa significa che il SW è non lineare? Piccoli cambiamenti nel codice portano a grandi cambiamenti di comportamento Cosa s'intende per Information Hiding? Impedire l'accesso a dettagli implementativi

Dettagli

TECNICHE DI SIMULAZIONE

TECNICHE 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

ING SW. Progetto di Ingegneria del Software. e-travel. Requisiti Utente. Specifiche Funzionali del Sistema

ING 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...

Dettagli

Esercitazione n 4. Obiettivi

Esercitazione n 4. Obiettivi Esercitazione n 4 Obiettivi Progettare e implementare per intero un componente software in Java Linguaggio Java: Classi astratte Utilizzo di costruttori e metodi di superclasse Polimorfismo Esempio guida:

Dettagli

Organizzazione degli archivi

Organizzazione degli archivi COSA E UN DATA-BASE (DB)? è l insieme di dati relativo ad un sistema informativo COSA CARATTERIZZA UN DB? la struttura dei dati le relazioni fra i dati I REQUISITI DI UN DB SONO: la ridondanza minima i

Dettagli

Soluzione dell esercizio del 2 Febbraio 2004

Soluzione 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

Dettagli

Generazione Automatica di Asserzioni da Modelli di Specifica

Generazione 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:

Dettagli

Database: collezione di fatti, registrabili e con un ben preciso significato, relazionati fra di loro

Database: collezione di fatti, registrabili e con un ben preciso significato, relazionati fra di loro Database relazionali: un'introduzione Database: collezione di fatti, registrabili e con un ben preciso significato, relazionati fra di loro Rappresentazione astratta di aspetti del mondo reale (Universe

Dettagli

Tema di Progetto n 1

Tema di Progetto n 1 Ingegneria e Tecnologie dei Sistemi di Controllo L-A Tema di Progetto n 1 Si progetti in ambiente CoDeSys il controllo di sequenze di un sistema costituito da un ascensore. Si utilizzi il file AscensoreSingolo.pro

Dettagli

Sequence Diagram e Collaboration Diagram

Sequence Diagram e Collaboration Diagram Sequence Diagram e Collaboration Diagram Ing. Orazio Tomarchio Orazio.Tomarchio@diit.unict.it Dipartimento di Ingegneria Informatica e delle Telecomunicazioni Università di Catania Sommario Interaction

Dettagli

Relazioni tra oggetti e classi : Composizione. Relazioni tra oggetti e classi : esempio di Aggregazione. classe contenitore

Relazioni 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

Dettagli

1. BASI DI DATI: GENERALITÀ

1. BASI DI DATI: GENERALITÀ 1. BASI DI DATI: GENERALITÀ BASE DI DATI (DATABASE, DB) Raccolta di informazioni o dati strutturati, correlati tra loro in modo da risultare fruibili in maniera ottimale. Una base di dati è usualmente

Dettagli

NORMA CEI EN 61131. PLC: programmazione. PLC: programmazione. PLC: programmazione. Automazione Industriale 3. Automazione Industriale

NORMA CEI EN 61131. PLC: programmazione. PLC: programmazione. PLC: programmazione. Automazione Industriale 3. Automazione Industriale NORMA CEI EN 61131 Ing.Francesco M. Raimondi www.unipa.it/fmraimondi Lezioni del corso di Dipartimento di Ingegneria dell Automazione e dei Sistemi 1 La normativa IEC 1131 del 1993 ha standardizzato 5

Dettagli

LEZIONE 7 - STATE MACHINE DIAGRAM

LEZIONE 7 - STATE MACHINE DIAGRAM Laboratorio di Ingegneria del Software a.a. 2013-2014 LEZIONE 7 - STATE MACHINE DIAGRAM Catia Trubiani Gran Sasso Science Institute (GSSI), L Aquila catia.trubiani@gssi.infn.it Riepilogo della lezione

Dettagli

Automazione Industriale (scheduling+mms) scheduling+mms. adacher@dia.uniroma3.it

Automazione Industriale (scheduling+mms) scheduling+mms. adacher@dia.uniroma3.it Automazione Industriale (scheduling+mms) scheduling+mms adacher@dia.uniroma3.it Introduzione Sistemi e Modelli Lo studio e l analisi di sistemi tramite una rappresentazione astratta o una sua formalizzazione

Dettagli

Scenario di Progettazione

Scenario 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

Dettagli

Lo schema concettuale risultante dalla progettazione concettuale è l input alla fase di progettazione logica.

Lo schema concettuale risultante dalla progettazione concettuale è l input alla fase di progettazione logica. Progettazione logica Lo schema concettuale risultante dalla progettazione concettuale è l input alla fase di progettazione logica. La progettazione logica è basata su un particolare modello logico dei

Dettagli

Dispensa di Informatica I.1

Dispensa di Informatica I.1 IL COMPUTER: CONCETTI GENERALI Il Computer (o elaboratore) è un insieme di dispositivi di diversa natura in grado di acquisire dall'esterno dati e algoritmi e produrre in uscita i risultati dell'elaborazione.

Dettagli

Esempio ordini 08UMLEX1.1

Esempio ordini 08UMLEX1.1 Esempio ordini 08UMLEX1.1 Sommario Specifiche del sistema di gestione ordini Specifiche Use Case Use Case Specifiche del diagramma delle classi Diagramma delle classi Specifiche per lo scenario della richiesta

Dettagli

Il database management system Access

Il 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

Dettagli

Progettazione di Basi di Dati

Progettazione 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

Dettagli

Basi di dati 9 febbraio 2010 Compito A

Basi 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

Dettagli

Programmazione II. Lezione 4. Daniele Sgandurra 30/09/2011. daniele.sgandurra@iit.cnr.it

Programmazione II. Lezione 4. Daniele Sgandurra 30/09/2011. daniele.sgandurra@iit.cnr.it Programmazione II Lezione 4 Daniele Sgandurra daniele.sgandurra@iit.cnr.it 30/09/2011 1/46 Programmazione II Lezione 4 30/09/2011 Sommario 1 Esercitazione 2 Panoramica della Programmazione Ad Oggetti 3

Dettagli

Alcuni diagrammi. OCL (Object Constraint Language)

Alcuni diagrammi. OCL (Object Constraint Language) UML e Java UML Alcune discipline ingegneristiche dispongono di validi mezzi di rappresentazione (schemi, diagrammi di prestazioni e consumi,...) Il software non dispone ancora di tecniche efficaci per

Dettagli

FONDAMENTI di INFORMATICA L. Mezzalira

FONDAMENTI di INFORMATICA L. Mezzalira FONDAMENTI di INFORMATICA L. Mezzalira Possibili domande 1 --- Caratteristiche delle macchine tipiche dell informatica Componenti hardware del modello funzionale di sistema informatico Componenti software

Dettagli

Corso: Sistemi di elaborazione delle informazioni 2. Anno Accademico: 2007/2008. Docente: Mauro Giacomini

Corso: Sistemi di elaborazione delle informazioni 2. Anno Accademico: 2007/2008. Docente: Mauro Giacomini Corso: Sistemi di elaborazione delle informazioni 2. Anno Accademico: 2007/2008. Docente: Mauro Giacomini Organizzazione no-profit per lo sviluppo di standard che fornisce linee guida per: lo scambio la

Dettagli

Gestione del workflow

Gestione 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

Dettagli

Locker Management. Software. la gestione degli armadietti da personal computer, cellulare, Tablet PC ecc. monitoraggio e messaggi di allarme

Locker Management. Software. la gestione degli armadietti da personal computer, cellulare, Tablet PC ecc. monitoraggio e messaggi di allarme Locker Management DESCRIZIONE Software (ELS Software) Applicazione WEB Supporta diversi Metra sistemi di serratura elettronica Completa gestione degli armadietti inženiring d.o.o. Špruha 19 1236 Trzin

Dettagli

Corso sul linguaggio SQL

Corso sul linguaggio SQL Corso sul linguaggio SQL Modulo L2B (SQL) 2.1 Comandi sui database 1 Prerequisiti Introduzione ai DB Linguaggi per database Tipi fondamentali di dati 2 1 Introduzione In questa Unità introduciamo il linguaggio

Dettagli

Diagrammi di Interazione

Diagrammi 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

Dettagli

Architetture Applicative

Architetture Applicative Alessandro Martinelli alessandro.martinelli@unipv.it 6 Marzo 2012 Architetture Architetture Applicative Introduzione Alcuni esempi di Architetture Applicative Architetture con più Applicazioni Architetture

Dettagli

Progettazione orientata agli oggetti

Progettazione orientata agli oggetti Progettazione orientata agli oggetti Introduzione alle tecniche orientate agli oggetti Modelli ad oggetti Oggetti, classi, associazioni, aggregazione OO - Introduzione Il compito del programmatore: collegare

Dettagli

DFD DISPENSA DEL CORSO DI SISTEMI INFORMATIVI UNIVERSITÀ DEGLI STUDI DI VERONA FACOLTÀ DI MM.FF.NN LAUREA SPECIALISTICA IN INFORMATICA

DFD 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

Dettagli

ANALISI FUNZIONALE E DIAGRAMMI DI FLUSSO DEI DATI DFD 1

ANALISI FUNZIONALE E DIAGRAMMI DI FLUSSO DEI DATI DFD 1 ANALISI FUNZIONALE E DIAGRAMMI DI FLUSSO DEI DATI DFD 1 Nelle lezioni precedenti Abbiamo definito il modello Entità- Associazione che serve a descrivere la struttura dei dati Abbiamo usato il modello per

Dettagli

Ti consente di ricevere velocemente tutte le informazioni inviate dal personale, in maniera assolutamente puntuale, controllata ed organizzata.

Ti consente di ricevere velocemente tutte le informazioni inviate dal personale, in maniera assolutamente puntuale, controllata ed organizzata. Sommario A cosa serve InfoWEB?... 3 Quali informazioni posso comunicare o ricevere?... 3 Cosa significa visualizzare le informazioni in maniera differenziata in base al livello dell utente?... 4 Cosa significa

Dettagli

Scheduling della CPU. Sistemi multiprocessori e real time Metodi di valutazione Esempi: Solaris 2 Windows 2000 Linux

Scheduling della CPU. Sistemi multiprocessori e real time Metodi di valutazione Esempi: Solaris 2 Windows 2000 Linux Scheduling della CPU Sistemi multiprocessori e real time Metodi di valutazione Esempi: Solaris 2 Windows 2000 Linux Sistemi multiprocessori Fin qui si sono trattati i problemi di scheduling su singola

Dettagli

La gestione di un calcolatore. Sistemi Operativi primo modulo Introduzione. Sistema operativo (2) Sistema operativo (1)

La gestione di un calcolatore. Sistemi Operativi primo modulo Introduzione. Sistema operativo (2) Sistema operativo (1) La gestione di un calcolatore Sistemi Operativi primo modulo Introduzione Augusto Celentano Università Ca Foscari Venezia Corso di Laurea in Informatica Un calcolatore (sistema di elaborazione) è un sistema

Dettagli

Corso di Informatica

Corso di Informatica Corso di Informatica Modulo T2 3-Compilatori e interpreti 1 Prerequisiti Principi di programmazione Utilizzo di un compilatore 2 1 Introduzione Una volta progettato un algoritmo codificato in un linguaggio

Dettagli

Progettazione : Design Pattern Creazionali

Progettazione : Design Pattern Creazionali Progettazione : Design Pattern Creazionali Alessandro Martinelli alessandro.martinelli@unipv.it 30 Novembre 2010 Progettazione : Design Pattern Creazionali Aspetti generali dei Design Pattern Creazionali

Dettagli

Guida all uso di Java Diagrammi ER

Guida 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

Dettagli

GESTIONE DEI PROCESSI

GESTIONE DEI PROCESSI Sistemi Operativi GESTIONE DEI PROCESSI Processi Concetto di Processo Scheduling di Processi Operazioni su Processi Processi Cooperanti Concetto di Thread Modelli Multithread I thread in Java Concetto

Dettagli

Programmi e Oggetti Software

Programmi 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

Dettagli

Programmazione a Oggetti Modulo B

Programmazione a Oggetti Modulo B Programmazione a Oggetti Modulo B Progetto Dott. Alessandro Roncato 4/10/2011 Progetto Da svolgere singolarmente Scadenza consegna: una settimana prima dello scritto; Valutazione in base a: Corretta compilazione

Dettagli