Luca Cabibbo. Persistenza di oggetti
|
|
- Lucio Fiori
- 6 anni fa
- Visualizzazioni
Transcript
1 AP Analisi S Analisi e Progettazione del Software Persistenza di oggetti aprile Persistenza di oggetti Motivazioni e contenuti Contesto applicazioni sviluppate mediante le moderne tecniche di OOA/OOD/OOP che devono gestire dati persistenti/condivisi/transazionali Linguaggi e modelli di riferimento UML e Java basi di dati relazionali Contenuti alcune tecnologie per la gestione di oggetti persistenti/condivisi/transazionali alcuni problemi metodologici rilevanti 2 Persistenza di oggetti
2 Premessa sviluppo iterativo del software Discipline (attività) nello sviluppo del software analisi dei requisiti analisi progettazione implementazione test altre rilascio, manutenzione, gestione del progetto, Organizzazione delle attività in fasi, iterazioni e discipline (UP) 3 Persistenza di oggetti Analisi e progettazione (OO) Analisi investigazione del problema che cosa analisi OO identificazione e descrizione degli oggetti (concetti) nel dominio del problema Progettazione identificazione di una soluzione concettuale che soddisfa i requisiti come progettazione OO definizione e caratterizzazione degli oggetti software e delle loro collaborazioni Programmazione 4 Persistenza di oggetti
3 Architettura a tre livelli ed enfasi dell OOA/D 5 Persistenza di oggetti Analisi modello di dominio 6 Persistenza di oggetti
4 Progettazione diagramma delle classi di progetto 7 Persistenza di oggetti Progettazione design patterns (regole di sconto) 8 Persistenza di oggetti
5 Progettazione design patterns (collegamento con la UI) 9 Persistenza di oggetti Architettura a strati 10 Persistenza di oggetti
6 Gestione della persistenza I sistemi informatici richiedono solitamente di gestire alcuni dati in modo persistente nonché condiviso e transazionale in una applicazione a oggetti, è necessario rendere persistenti alcuni oggetti di alcune classi chiamiamo classi persistenti le classi i cui oggetti vanno resi persistenti spesso, classi della logica applicativa ispirate alle classi concettuali Diversi modi per realizzare la persistenza degli oggetti una base di dati a oggetti, una base di dati relazionale o un insieme di file siamo interessati principalmente persistenza di oggetti mediante basi di dati relazionali 11 Persistenza di oggetti Alcuni problemi Ci sono alcuni problemi legati al voler gestire oggetti persistenti mediante una basi di dati relazionale impedance mismatch differenza tra modello relazionale e modello a oggetti disaccoppiamento nelle competenze degli sviluppatori e nelle metodologie sviluppatore OO una applicazione, sviluppo iterativo e incrementale, uso di skill dell OOA/D, oggetti persistenti e oggetti transienti, sviluppatore BD dati persistenti, transazionali e condivisi (tra più applicazioni), normalizzazione, 12 Persistenza di oggetti
7 Il punto di vista degli sviluppatori Lo sviluppatore OO Lo sviluppatore BD 13 Persistenza di oggetti Il problema in esame Consideriamo questo problema ci sono alcune classi persistenti c è una base di dati relazionale dove devo scrivere il codice per realizzare la persistenza degli oggetti? 14 Persistenza di oggetti
8 Una possibile soluzione Una prima soluzione rendere persistente una classe scrivendo direttamente il codice SQL (JDBC) dentro la classe stessa Prodotto SQL base di dati Vendita SQL logica applicativa contro: coesione, accoppiamento, separazione degli interessi, riuso 15 Persistenza di oggetti Separazione degli interessi Il principio di progettazione per la separazione degli interessi suggerisce la logica applicativa va realizzata, per quanto possibile, in modo indipendente dalla gestione della persistenza dei dati per Layers: accoppiamento basso dalla logica applicativa al gestore della persistenza la persistenza dei dati va realizzata mediante un modulo apposito possibilmente di uso generale e indipendente dalla logica applicativa 16 Persistenza di oggetti
9 Una seconda soluzione Una seconda soluzione scrivere il codice SQL in apposite classi di supporto (data classes) alle classi persistenti Prodotto ProdottoDB SQL base di dati Vendita VenditaDB SQL logica applicativa data classes Pure Fabrication, Indirection, PV 17 Persistenza di oggetti Soluzione basata su un persistence layer Una ulteriore soluzione delegare la gestione della persistenza degli oggetti ad un modulo apposito un persistence layer (PL) un PL nasconde i dettagli della persistenza (nonché della condivisione e della transazionalità) al programmatore Prodotto Vendita Persistence Manager SQL base di dati persistence layer logica applicativa 18 Persistenza di oggetti
10 Uso di un persistence layer Esistono diversi persistence layer che possono essere utilizzati mediante delle API standard ad es., compatibili con le API ODMG utilizzate per accedere le basi di dati a oggetti in pratica, il programmatore vede il gestore della persistenza come una base di dati a oggetti, anche se l implementazione della persistenza è diversa PersistenceManager pm = new PersistenceManager(...); Transaction tx = pm.currenttransaction(); PersonaID pid = new PersonaID("1"); Persona p = (Persona) pm.getobjectbyid(pid); p.setstipendio(1000); tx.commit(); 19 Persistenza di oggetti Gestione trasparente della persistenza Un persistence layer nasconde al programmatore i dettagli di come gli oggetti vengono resi persistenti due approcci principali O/R mapping forward engineering R/O mapping reverse engineering un terzo approccio meet in the middle 20 Persistenza di oggetti
11 O/R mapping forward engineering Nell O/R mapping il programmatore indica in un file di configurazione quali sono le classi che vanno rese persistenti a partire da questo file viene generata la base di dati vengono generate le data classes per le classi persistenti le classi persistenti vengono migliorate da un postcompilatore (enhancer) che stabilisce la cooperazione tra classi persistenti e data classes 21 Persistenza di oggetti R/O mapping reverse engineering Nell R/O mapping il programmatore indica in un file di configurazione la base di dati relazionale di interesse a partire da questo file vengono generate le data classes per accedere e modificare le tuple delle relazioni della base di dati il programmatore rende persistente le proprie classi facendole cooperare (esplicitamente) con le data classes 22 Persistenza di oggetti
12 Meet in the middle Meet in the middle incontro al centro le classi persistenti e la base di dati vengono progettate e realizzate in modo indipendente il programmatore indica in un file di configurazione le corrispondenze tra classi persistenti e base di dati a partire da questo file vengono generate le data classes per le classi persistenti le classi persistenti vengono migliorate da un postcompilatore (enhancer) che stabilisce la cooperazione tra classi persistenti e data classes 23 Persistenza di oggetti Discussione L O/R mapping è utile in fase di prototipazione non è accettabile se la base di dati va condivisa da più applicazioni sviluppate in modo indipendente L R/O mapping è utile se la base di dati è stabile non è accettabile se la base di dati varia continuamente, ad esempio perché la si sta progettando Meet in the middle è la soluzione più flessibile cambiamenti nelle classi persistenti e/o nella base di dati richiedono solo il cambiamento del file di configurazione indipendenza logica dell applicazione dalla base di dati poche realizzazioni spesso incomplete 24 Persistenza di oggetti
13 Standard e sistemi JDO Java Data Objects API Java standard per la persistenza trasparente degli oggetti OJB ObJect relational Bridge uno strumento per l O/R mapping + meetin the middle compatibile con le API ODMG e JDO Torque uno strumento per l R/O mapping Enterprise Java Bean EJB, parte di J2EE Altro JRELAY JDX E i produttori di RDBMS? 25 Persistenza di oggetti Esempio: Lettura di un prodotto con OJB Lettura di un prodotto, a partire dal suo codice itemid Criteria crit = new Criteria(); crit.addequalto("id", (String) itemid); Query q = QueryFactory.newQuery( ProductSpecification.class, crit); ProductSpecification p = null; try { p = (ProductSpecification) pm.getobjectbyquery(q); } catch(exception e) {... } 26 Persistenza di oggetti
14 Esempio: Lettura di un prodotto con Torque Lettura di un prodotto, a partire dal suo codice itemid try { pos.torque.productspecification tp = ProductspecificationPeer. retrievebypk((string) itemid); ProductSpecification p = new ProductSpecification( tp.getitemid(); tp.getdescription(); new Money(tp.getPrice()) ); } catch(exception e) {... } 27 Persistenza di oggetti Gestione della persistenza Una possibile metodologia identifica i cluster di oggetti che vanno acceduti congiuntamente ProductSpecification, Sale-SaleLineItem, identifica le operazioni di interesse per ciascun cluster di oggetti tra le operazioni CRUD creazione (inserimento), lettura, aggiornamento, cancellazione definisci una interfaccia per ciascun cluster di oggetti, che dichiara le operazioni di interesse ISalePersistenceAdapter, implementa questa interfaccia con classi adattatore per i vari possibili gestori della persistenza TorqueSalePersistenceAdapter, 28 Persistenza di oggetti
15 Collegamento con la logica applicativa Creazione bisogna creare una famiglia di adattatori compatibili per i vari cluster e lo specifico gestore della persistenza AbstractFactory, Singleton Uso class Store { }... public void registersale(sale s) { }... PersistenceManagerFactory.getInstance(). getsalepersistenceadapter().savesale(s); 29 Persistenza di oggetti Design pattern utili J2EE patterns Value Object usa un Value Object che incapsula i dati di un oggetto di business (della logica applicativa) tra i vari elementi e strati, scambia il Value Object e non l oggetto di business originale Composite Entity usa una Composite Entity per rappresentare e gestire un gruppo di oggetti persistenti correlati anziché rappresentarli mediante elementi persistenti a grana fine un oggetto Composite Entity rappresenta un grafo di oggetti persistenti 30 Persistenza di oggetti
16 Design pattern utili J2EE patterns Data Access Object usa un Data Access Object (DAO) per astrarre e incapsulare tutti gli accessi alle sorgenti dei dati persistenti il DAO gestisce le connessioni con le sorgenti di dati per ottenere e memorizzare dati può essere utile definire un DAO per ciascuna Composite Entity il DAO può scambiare oggetti che sono Value Object per ogni sorgente di dati diversa va implementato un gruppo di DAO diversi la creazione dei DAO per la sorgente di dati effettivamente utilizzata può essere creata con una Abstract Factory 31 Persistenza di oggetti Un altra tecnologia EJB Gli Enterprise Java Beans (EJB) sono componenti Java riusabili che implementano logica applicativa e abilitano lo sviluppo di applicazioni distribuite basate su componenti gli EJB sono oggetti software che vivono nell ambito di un applicationserver (AS), usato da contenitore di EJB possono essere acceduti remotamente tramite l AS Tre tipologie di EJB (ciascuno con le sue varianti) session bean per implementare servizi (azioni) da eseguire per conto del cliente message-drivenbean per implementare servizi asincroni entity bean oggetti persistenti e transazionali utilizzati per rappresentare dati (entità nel senso del modello ER) 32 Persistenza di oggetti
17 Entity bean Due tipi di entitybean entity bean la cui persistenza è delegata completamente al contenitore (AS) che ospita il bean (CMP) va implementata solo la logica applicativa entity bean la cui persistenza è gestita esplicitamente dal bean (BMP) oltre alla logica applicativa, vanno implementati metodi di supporto alla persistenza ma indipendenti dalla logica applicativa ejbcreate(), ejbload(), ejbstore(), ejbremove() è comunque compito del contenitore decidere quando e come invocare questi metodi di supporto alla persistenza è compito del contenitore anche gestire le transazioni 33 Persistenza di oggetti Conclusioni Gli sviluppatori di applicazioni a oggetti vogliono rendere persistenti i loro oggetti nel modo più efficiente (mediante una base di dati relazionale) ed efficace possibile vogliono ignorare quanto più possibile le problematiche legate alla persistenza degli oggetti progettazione ed evoluzione della base di dati, SQL, JDBC, gestione delle transazioni, caching di oggetti persistenti, da queste esigenze nascono gli strumenti di supporto alla gestione trasparente della persistenza di oggetti 34 Persistenza di oggetti
18 Tesine e tesi Tesine (da 5 crediti) sperimentazione/confronto di strumenti per la gestione trasparente della persistenza sviluppo di un generatore di classi DAO (in coppia) Tesi studio di modelli per la gestione trasparente della persistenza di oggetti di tipo meetin the middle realizzazione di uno strumento per la gestione trasparente della persistenza di tipo meet in the middle sviluppo di un generatore di classi DAO database refactoring database testing 35 Persistenza di oggetti
UNIVERSITA DI FIRENZE Facoltà di Ingegneria. Persistenza Applicazioni Enterprise Uso dei modelli
UNIVERSITA DI FIRENZE Facoltà di Ingegneria Persistenza Applicazioni Enterprise Uso dei modelli 1 IL problema della persistenza APPLICAZIONE (programmi) (oggetti) DATI PERSISTENTI (file, record) (basi
DettagliUNIVERSITA DI FIRENZE Facoltà di Ingegneria. Persistenza Applicazioni Enterprise Uso dei modelli
UNIVERSITA DI FIRENZE Facoltà di Ingegneria Persistenza Applicazioni Enterprise Uso dei modelli 1 IL problema della persistenza APPLICAZIONE (programmi) (oggetti) DATI PERSISTENTI (file, record) (basi
DettagliIntroduzione al mondo della persistenza. Dott. Doria Mauro doriamauro@gmail.com
Hibernate Introduzione al mondo della persistenza Dott. Doria Mauro doriamauro@gmail.com La questione della persistenza Il modo dei database è complesso e le tecniche e le tecnologie sono molte. Per anni
DettagliBASI DI DATI. basi di dati - introduzione ai sistemi informativi 1
BASI DI DATI basi di dati - introduzione ai sistemi informativi 1 Sistema Informativo Insieme degli strumenti, risorse e procedure che consentono la gestione delle informazioni aziendali e' essenziale
DettagliI database. Introduzione alla teoria delle basi di dati
I database Introduzione alla teoria delle basi di dati 1 Cosa sono e a cosa servono i Database Un database (o base di dati) e' una raccolta organizzata di dati correlati. Il principale scopo di un database
DettagliIl calcolatore. Architettura di un calcolatore (Hardware)
Il calcolatore Prima parlare della programmazione, e' bene fare una brevissima introduzione su come sono strutturati i calcolatori elettronici. I calcolatori elettronici sono stati progettati e costruiti
DettagliV. Moriggia Modelli di Base Dati. Modelli di Base Dati. a.a. 2001/2002 4.1
Modelli di Base Dati 4 Un DBMS: Access a.a. 2001/2002 4.1 DBMS 4.2 DBMS = Data Base Management System Software per la costruzione e la gestione di una base dati Esempi di DBMS: Oracle, MySQL, SQLServer,
DettagliLaboratorio di Progettazione di Sistemi Software Progetto: modellazione di un dominio e sue attività
Laboratorio di Progettazione di Sistemi Software Progetto: modellazione di un dominio e sue attività Valentina Presutti (A-L) Riccardo Solmi (M-Z) Definizione del problema Modello di un dominio Si vuole
DettagliIl file system. Le caratteristiche di file, direttorio e partizione sono del tutto indipendenti dalla natura e dal tipo di dispositivo utilizzato.
Il File System Il file system È quella parte del Sistema Operativo che fornisce i meccanismi di accesso e memorizzazione delle informazioni (programmi e dati) allocate in memoria di massa. Realizza i concetti
DettagliObject-Relational Mapping
Object-Relational Mapping Versione Preliminare Antonella Poggi Dipartimento di informatica e Sistemistica Sapienza Università di Roma Progetto di Applicazioni Software Anno accademico 2008-2009 Questi
DettagliAOT Lab Dipartimento di Ingegneria dell Informazione Università degli Studi di Parma
AOT Lab Dipartimento di Ingegneria dell Informazione Università degli Studi di Parma PROGETTAZIONE E REALIZZAZIONE DI UN SISTEMA WEB MULTI-AGENTE PER LA PIANIFICAZIONE DI ITINERARI Relatore: prof. Ing.
DettagliINTRODUZIONE ALLE BASI DATI RELAZIONALI
INTRODUZIONE ALLE BASI DATI RELAZIONALI RELAZIONI E TABELLE Nelle BASI DI DATI RELAZIONALI le informazioni sono organizzate in TABELLE; Le tabelle sono rappresentate mediante griglie suddivise in RIGHE
DettagliIntroduzione ORGANIZZAZIONE DEL LIBRO. Il libro è composto da 12 capitoli organizzati nelle tre parti seguenti:
Introduzione Questo libro, espressamente rivolto ai programmatori esperti in Java, tratta gli elementi essenziali della piattaforma Java 2 Enterprise Edition (J2EE) e analizza in modo particolare le nuove
DettagliLe sue caratteristiche:
I Virus Un virus, in informatica, è un software, appartenente alla categoria dei malware, che è in grado, una volta eseguito, di infettare dei file in modo da riprodursi facendo copie di se stesso, generalmente
DettagliSISTEMA INFORMATIVO E SISTEMA INFORMATICO. Sistema informativo e sistema informatico
BASE DI DATI Una base di dati, detta anche database, può essere considerata come una raccolta di dati logicamente correlati tra di loro e utilizzati per modellare una determinata realtà. In questo caso,
DettagliMappare il DB senza XML. Introduzione alle annotation di Hibernate3
Introduzione alle annotation di Hibernate3 a cura di Lucio Benfante Hibernate Hibernate è un framework che realizza un object/relational mapping (ORM) fra oggetti Java e strutture di un database relazionale
DettagliIl sistema informativo deve essere di tipo centralizzato e accessibile mediante un computer server installato nella rete locale dell albergo.
PROBLEMA. Un albergo di una grande città intende gestire in modo automatizzato sia le prenotazioni sia i soggiorni e realizzare un database. Ogni cliente viene individuato, tra l altro, con i dati anagrafici,
DettagliIngegneria del Software
Ingegneria del Software Analisi Object Oriented ed Elementi di Programmazione OO Origini Le metodologie ad oggi nascono negli anni 70 ma si affermano solo nelgi anni 80 grazie alla nascita dei linguaggi
DettagliDESCRIZIONE CREAZIONE APP Si suddivide in 4 fasi di lavoro: 1. PIANIFICAZIONE; 2. PROGETTAZIONE; 3. SVILUPPO; 4. DISTRIBUZIONE.
DESCRIZIONE CREAZIONE APP Si suddivide in 4 fasi di lavoro: 1. PIANIFICAZIONE; 2. PROGETTAZIONE; 3. SVILUPPO; 4. DISTRIBUZIONE. PIANIFICAZIONE La pianificazione è la prima fase. Questa è la più delicata
DettagliComune Fabriano. Protocollo Generale, Servizio Progettazione, Servizio Edilizia Privata. Progetto di Certificazione secondo le norme ISO 9000
Comune Fabriano Protocollo Generale, Servizio Progettazione, Servizio Edilizia Privata Progetto di Certificazione secondo le norme ISO 9000 Formazione per auditor interni 25 maggio 2009 1 SOMMARIO Il significato
DettagliSQL Server 2008. Architettura Client-Server. SQL Server 2008. Introduzione all uso di SQL Server 2008. Dutto Riccardo. http://dbdmg.polito.
SQL Server 2008 Introduzione all uso di SQL Server 2008 Dutto Riccardo http://dbdmg.polito.it SQL Server 2008 Gestione dei server OLAP e OLTP Gestione Utenti Creazione e gestione DB SQL Server Business
DettagliSISTEMI INFORMATIVI AZIENDALI. introduzione ai sistemi informativi 1
SISTEMI INFORMATIVI AZIENDALI introduzione ai sistemi informativi 1 Sistema Informativo Insieme degli strumenti, risorse e procedure che consentono la gestione delle informazioni aziendali e' essenziale
Dettaglihttp://www.indagini.assolombarda.it/myk-user-ui/begin.jsp?campaignuri=c3rvcmfn...
PERITO INFORMATICO Dati azienda Ragione sociale * Settore Classe dimensionale Seleziona un'opzione Seleziona un'opzione CAP Località - es. 20100 (per Milano) - Associazione di appartenenza * E' possibile
DettagliAutodesk Map parte I digitalizzazione e importazione dati
Autodesk Map parte I digitalizzazione e importazione dati Marco Negretti e-mail: marco.negretti@polimi.it http://geomatica.como.polimi.it V 5.1 10/10/08 I dati in Autodesk Map I dati vengono memorizzati
DettagliIntroduzione alle macchine a stati (non definitivo)
Introduzione alle macchine a stati (non definitivo) - Introduzione Il modo migliore per affrontare un problema di automazione industriale (anche non particolarmente complesso) consiste nel dividerlo in
DettagliNormalizzazione. Definizione
Normalizzazione Definizione Le forme normali 2 Una forma normale è una proprietà di una base di dati relazionale che ne garantisce la qualità, cioè l'assenza di determinati difetti Quando una relazione
DettagliArchitettura SW Definizione e Notazioni
Corso di Laurea Specialistica in Ingegneria Informatica Corso di Ingegneria del Software A. A. 2008 - Stili Architetturali E. TINELLI Architettura SW Definizione e Notazioni Definizione ANSI/IEEE Std Std1471-2000
Dettagliinteroperabilità fra dispositivi forniti da diversi produttori; superare i problemi legati alla limitazione del numero di risorse.
Capitolo 7 Le infrastrutture SoftWare Funzioni del sistema operativo Rendere utilizzabili le risorse fisiche presenti nel sistema informatico: correttezza e precision; anywhere, anytime; affidabilità,
DettagliProgrammazione Java Avanzata Spring - JDBC
Programmazione Java Avanzata Spring - JDBC Ing. Gianluca Caminiti Riferimenti Spring http://www.springsource.org/ (scaricate il reference) Beginning Spring 2 - From Novice to Professional. APress. 2008
DettagliTraduzione dello schema E-R in modello logico relazionale
Traduzione dello schema E-R in modello logico relazionale 1 2 Entità con identificatore esterno - Esempio Risoluzione delle entità con identificatore esterno 3 4 5 Traduzioni dal modello E-R al modello
DettagliEVOLUZIONE dei SISTEMI e delle TECNICHE DI GESTIONE DELLE FUNZIONI AZIENDALI
EVOLUZIONE dei SISTEMI e delle TECNICHE DI GESTIONE DELLE FUNZIONI AZIENDALI -fino agli anni sessanta i sistemi informativi erano rivolti alla gestione delle procedure di base (Contabilità Generale, magazzino,
DettagliMateriale didattico. Sommario
Diploma Universitario in Ingegneria Informatica Corso di Ingegneria del Software Docente: ing. Anna Rita Fasolino Dipartimento di Informatica e Sistemistica Università degli Studi di Napoli Federico II
DettagliDI GESTIONE E CONSERVAZIONE DEI DOCUMENTI
COMUNE DI PINEROLO MANUALE DI GESTIONE E CONSERVAZIONE DEI DOCUMENTI ALLEGATO N. 6 PIANO DI SICUREZZA DEI DOCUMENTI INFORMATICI PIANO DI SICUREZZA DEI DOCUMENTI INFORMATICI Articolo 1 Sicurezza fisica
DettagliLaboratorio di Basi di Dati e Web
Laboratorio di Basi di Dati e Web Docente: Alberto Belussi Lezione 9 Architettura Model-View-Controller (MVC) Adottando l'architettura MVC e la tecnologia Servlet-JSP, un'applicazione web può essere realizzata
Dettagliliceo B. Russell PROGRAMMAZIONE INDIRIZZO: SCIENTIFICO SCIENZE APPLICATE TRIENNIO: TERZA DISCIPLINA: INFORMATICA
INDIRIZZO: SCIENTIFICO SCIENZE APPLICATE PROGRAMMAZIONE TRIENNIO: TERZA DISCIPLINA: INFORMATICA MODULO 1: HTMLe CSS UNITÀ ORARIE PREVISTE: 35 Il linguaggio HTML ed il web I principali tag I fogli di stile:
DettagliLezione 3 Progettazione di siti
Lezione 3 Progettazione di siti Ingegneria dei Processi Aziendali Modulo 1 Servizi Web Unità didattica 1 Protocolli Web Ernesto Damiani Università di Milano Elementi base della progettazione di servizi
DettagliESERCIZIO 1 (12 punti) Dato il seguente schema relazionale, che modella le informazioni relative ad una Software (SW) House:
NOME COGNOME MATRICOLA ESERCIZIO 1 (12 punti) Dato il seguente schema relazionale, che modella le informazioni relative ad una Software (SW) House: SVILUPPATORE(Codice, Nome, Cognome, AnnoNascita) PROGETTO_SW(Nome,
DettagliECDL CORE 5.0. Modulo 1 Concetti di base dell ICT 1.6 Aspetti giuridici. Docente: Stefania De Martino Liceo G. Leopardi Recanati a.s.
ECDL CORE 5.0 Modulo 1 Concetti di base dell ICT Docente: Stefania De Martino Liceo G. Leopardi Recanati a.s. 2012/2013 Scopi del Modulo 1 Concetti di base dell ICT, richiede che il candidato comprenda
DettagliScenario-based Design
Scenario-based Design DESIGN La fase di progettazione è quella che immagina soluzioni per gli spazi progettuali individuati nella fase di analisi dell attività INCORAGGIARE IDEE FOLLI SCRIVERE TUTTO BE
DettagliFondamenti di Internet e Reti. Antonio Capone, Matteo Cesana, Ilario Filippini, Guido Maier
Antonio Capone, Matteo Cesana, Ilario Filippini, Guido Maier 4 - Livello Rete (parte ) Antonio Capone, Matteo Cesana, Ilario Filippini, Guido Maier Strato di rete e strato di trasporto Lo strato di trasporto
DettagliCosa è importante: pom.xml Goal Plug-in Repository
Cos è Maven? Maven è un software usato principalmente per la gestione di progetti Java e build automation, ma è utile anche per gestire documentazione, report, dipendenze... Cosa è importante: pom.xml
DettagliCorso di Informatica. Software di produttività personale e database. Ing Pasquale Rota
Corso di Software di produttività personale e database Ing Pasquale Rota Argomenti I programmi di produttività personale Le basi di dati Fogli elettronici Software di produttività personale e database
Dettagli(1) (2) (3) (4) 11 nessuno/a 9 10. (1) (2) (3) (4) X è il minore tra A e B nessuno/a X è sempre uguale ad A X è il maggiore tra A e B
Compito: Domanda 1 Per l'algoritmo fornito di seguito, qual è il valore assunto dalla variabile contatore quando l'algoritmo termina: Passo 1 Poni il valore di contatore a 1 Passo 2 Ripeti i passi da 3
DettagliSpecifiche tecniche per l interoperabilità tra i sistemi regionali di FSE
Specifiche tecniche per l interoperabilità tra i sistemi regionali di FSE Versione 1.0 25 Febbraio 2016 1/8 Indice Indice... 2 Indice delle figure... 3 Premessa... 4 1 Architettura delle piattaforme regionali
DettagliSoluzioni per le Flotte
Soluzioni per le Flotte QUATTRORUOTE PROFESSIONAL: banche dati e soluzioni integrate per il settore delle flotte il valore aggiunto dell offerta quattroruote professional: soluzioni integrate Il nostro
DettagliARCHITETTURA FISICA DEL SISTEMA
PROGETTO EBLA+ L uso dei contenitori EBLAplus ti aiuterà a gestire i tuoi documenti in modo facile e organizzato. Potrai in ogni momento, dal tuo dispositivo mobile, controllare quali documenti compongono
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
DettagliPresentazione del software Grouper per la gestione dei privilegi di gruppo in un contesto di Single Sign On, a cura del Gruppo di lavoro VOs del CTS
Presentazione del software Grouper per la gestione dei privilegi di gruppo in un contesto di Single Sign On, a cura del Gruppo di lavoro VOs del CTS Danilo Crecchia Università di Modena e Reggio Emilia
DettagliAPPENDICE 4 AL CAPITOLATO TECNICO
APPENDICE 4 AL CAPITOLATO TECNICO Descrizione dei profili professionali INDICE 1 PROFILI PROFESSIONALI RICHIESTI 3 1.1 CAPO PROGETTO 3 1.2 ANALISTA FUNZIONALE 4 1.3 ANALISTA PROGRAMMATORE 5 1.4 PROGRAMMATORE
DettagliLe aree dell informatica
Fondamenti di Informatica per la Sicurezza a.a. 2006/07 Le aree dell informatica Stefano Ferrari UNIVERSITÀ DEGLI STUDI DI MILANO DIPARTIMENTO DI TECNOLOGIE DELL INFORMAZIONE Stefano Ferrari Università
DettagliGestione delle eccezioni in Java
Gestione delle eccezioni in Java Fondamenti di Informatica Ingegneria Gestionale Canale AL 1 Le eccezioni in Java Exception handling: insieme di costrutti e regole sintattiche e semantiche presenti nel
DettagliM n a u n a u l a e l e o p o e p r e a r t a i t v i o v o Ver. 1.0 19/12/2014
Ver. 1.0 19/12/2014 Sommario 1 Introduzione... 3 1.1 Aspetti funzionali NtipaTime... 3 2 Accesso al sistema... 4 2.1 Riservatezza dei dati login Utente... 4 2.2 Funzionalità Role_user... 5 2.2.1 Struttura
DettagliNell ambito quindi di un ulteriore potenziamento della propria struttura, Klopotek Software & Technology Services S.r.l.
Frontend Developer Rif. FD All interno di un ambiente internazionale, la risorsa, riportando direttamente al Development Manager, farà parte del team dedicato al disegno ed all implementazione della nuova
DettagliAnthericaCMS. Gestisci in autonomia i contenuti del tuo sito-web
AnthericaCMS Gestisci in autonomia i contenuti del tuo sito-web INDICE I vantaggi di un sito dinamico... 1 I vantaggi di anthericacms... 2 La piattaforma di gestione dei contenuti... 3 Accesso: le sezioni...
DettagliI lucidi messi a disposizione sul sito del corso di Analisi e progettazione del software NON sostituiscono il libro di testo
Luca Cabibbo Analisi e Progettazione del Software Capitolo 3 marzo 2016 Agilità:1, ogni altra cosa: 0. Tom DeMarco 1 *** AVVERTENZA *** I lucidi messi a disposizione sul sito del corso di Analisi e progettazione
DettagliProcessi, Threads e Agenti
Processi, Threads e Agenti Processi in Sistemi Distribuiti Un sistema software distribuito ècompostodaun insieme di processi in esecuzione su più nodi del sistema. Un algoritmo distribuito può essere definito
DettagliInterfaccia 2 FILI / IP
SCHEDE TECNICHE Interfaccia FILI / IP Descrizione Interfaccia FILI/IP in custodia modulare 10 DIN. Consente la realizzazione di impianti misti FILI /IP molto estesi e con un elevato numero di dispositivi
DettagliProgrammazione Orientata agli Oggetti in Linguaggio Java
Programmazione Orientata agli Oggetti in Linguaggio Java Classi e Oggetti: Metafora Parte a versione 2.2 Questo lavoro è concesso in uso secondo i termini di una licenza Creative Commons (vedi ultima pagina)
DettagliService Oriented Architecture
Service Oriented Architecture Università degli Studi di L Aquila Giuseppe.DellaPenna@univaq.it http://www.di.univaq.it/gdellape Engineering IgTechnology Info92 Maggioli Informatica Micron Technology Neta
DettagliGara n. 4139. Servizi informatici per la manutenzione ordinaria ed evolutiva delle applicazioni informatiche del GSE. SINTESI DELL APPALTO
Gara n. 4139 Servizi informatici per la manutenzione ordinaria ed evolutiva delle applicazioni informatiche del GSE. SINTESI DELL APPALTO Pagina 1 di 6 1. Premessa Il Gestore dei Servizi Energetici - GSE
DettagliProgetto B. Utenti. Di conseguenza si potranno avere solo utenti di questi tipi
Progetto B Progettare un applicazione web basata su Servlet e JSP che permetta la collaborazione di diversi utenti nel creare, aggiornare e gestire un archivio di pagine personali degli autori di un giornale.
DettagliManuale Sito Videotrend
Manuale Sito Videotrend 1 Sommario INTRODUZIONE...3 PRESENTAZIONE...4 1 GESTIONE DDNS...6 1.1 GESTIONE DDNS...6 1.2 CONNESSIONE DDNS...6 1.3 CREA ACCOUNT DDNS...7 1.4 GESTIONEACCOUNT...7 1.5 IMPIANTI DDNS...8
DettagliI-XIII_romane_sawyer 14-02-2006 10:50 Pagina V. Indice. Prefazione
I-XIII_romane_sawyer 14-02-2006 10:50 Pagina V Prefazione XI Capitolo 1 Tecnologie dell informazione e della comunicazione e Sistemi Informativi 1 1.1 Informatica e ICT 1 1.2 Il funzionamento dei computer:
DettagliApplicazione: OIL Online Interactive helpdesk
Riusabilità del software - Catalogo delle applicazioni: Gestione ICT Applicazione: OIL Online Interactive helpdesk Amministrazione: Consiglio Nazionale delle Ricerche (CNR) Responsabile dei sistemi informativi
DettagliUtilizzo collegamento remoto
Utilizzo collegamento remoto Introduzione Il collegamento VPN (virtual private network) consente a PC collegati ad internet ma fisicamente fuori dalla rete interna regionale, di accedere, con le credenziali
DettagliUniversità di Torino. Torino 20 Febbraio, 2004
Università di Torino CENTRO INTERDIPARTIMENTALE DI RICERCA SULLA COMUNICAZIONE Convegno Data Mining e metodologia della ricerca sociale: la creazione di valore aggiunto per l utente Data Mining e ricerca
DettagliSistema Informativo per Associazioni Agricole
Sistema Informativo per Associazioni Agricole Progetto realizzato da in collaborazione con COLLOCAZIONE STRATEGICA Sviluppare nuovi modelli di business Ottimizzare il modello di business attuale Ridurre
DettagliGuida al Programma. Politica del Web Signage Partner Program
Guida al Programma Politica del Web Signage Program Scopo Questo documento delinea le politiche attuali per l adesione al Program relativo alla commercializzazione e al supporto delle soluzioni Web Signage
DettagliNOTE OPERATIVE DI RELEASE. RELEASE Versione 2010.3.0 Applicativo: GECOM F24
NOTE OPERATIVE DI RELEASE Il presente documento costituisce un integrazione al manuale utente del prodotto ed evidenzia le variazioni apportate con la release. RELEASE Versione 2010.3.0 Applicativo: GECOM
DettagliProgettazione: Tecnologie e ambienti di sviluppo
Contratto per l acquisizione di servizi di Assistenza specialistica per la gestione e l evoluzione del patrimonio software della Regione Basilicata. Repertorio n. 11016 del 25/09/2009 Progettazione: Tecnologie
DettagliScritto da Scirpoli, Fava, Paolucci, Mazzeo Giovedì 19 Maggio 2011 09:09 - Ultimo aggiornamento Giovedì 19 Maggio 2011 09:41
Tesina informatica Corso di studi scienze della mente Database in access Lo scopo di Microsoft Access è mantenere e gestire dati attraverso un modello organizzato di realtà, il modello è raffinato in più
Dettagli6. Architetture Software
6. Architetture Software progettare la struttura Andrea Polini Ingegneria del Software Corso di Laurea in Informatica (Ingegneria del Software) 6. Architetture Software 1 / 20 Scopo della fase di design
DettagliCONSEGNA EFFICIENTE DEL SOFTWARE 6 PROBLEMI DEGLI STAKEHOLDER CHE SI POSSONO FACILMENTE RISOLVERE CON ATLAS
6 PROBLEMI DEGLI STAKEHOLDER CHE SI POSSONO FACILMENTE RISOLVERE CON ATLAS INTRODUZIONE: PROMUOVERE UNA COLLABORAZIONE EFFICACE TRA TUTTI GLI STAKEHOLDER Quando gli stakeholder sono distribuiti nell'intera
DettagliEuroware/Domino. Il prodotto
Euroware/Domino Il prodotto Euroware e uno strumento software sviluppato da TXT il cui obiettivo e sfruttare le potenzialita offerte da WWW, estendendole nella direzione di supportare, attraverso una architettura
DettagliSteel&Graphics srl Via Cà Nova Zampieri 4/E 37057 San Giovanni Lupatoto VR Tel. 045/8778577 Fax. 045/8778576 Email: info@steel-graphics.
Steel&Graphics srl Via Cà Nova Zampieri 4/E 37057 San Giovanni Lupatoto VR Tel. 045/8778577 Fax. 045/8778576 Email: info@steel-graphics.com TecnoMETAL BIM 2012 rappresenta la soluzione per la progettazione
DettagliCompito Sistemi Informativi LA. Tempo concesso : 90 minuti 28 Giugno 05 Nome: Cognome: Matricola: Esercizio 1
Compito Sistemi Informativi LA. Tempo concesso : 90 minuti 28 Giugno 05 Nome: Cognome: Matricola: Esercizio 1 Si considerino le seguenti specifiche relative alla realizzazione del sistema informativo di
DettagliL area pubblica è costituita da un portale informativo attraverso il quale è possibile effettuare la diffusione dell informazione.
Area web Pubblica L area pubblica è costituita da un portale informativo attraverso il quale è possibile effettuare la diffusione dell informazione. L informazione contenuta nel portale può essere di tipo
DettagliSOLUZIONE AL TEMA DI INFORMATICA (PROGETTO ABACUS)
Punto 1 SOLUZIONE AL TEMA DI INFORMATICA (PROGETTO ABACUS) Da una prima analisi del testo appare evidente che per la costruzione della base di dati si possono individuare le seguenti tre entità fondamentali:
DettagliReti di Calcolatori Servizi di Rete Laboratorio di Didattica in Rete
Reti di Calcolatori Servizi di Rete Laboratorio di Didattica in Rete Reti di calcolatori Protocolli di Trasmissione: Il modello ISO/OSI L architettura TCP/IP Protocolli di trasmissione Un protocollo di
DettagliACCESS. Database: archivio elettronico, dotato di un programma di interfaccia che facilita la registrazione e la ricerca dei dati.
ACCESS Database: archivio elettronico, dotato di un programma di interfaccia che facilita la registrazione e la ricerca dei dati. Database Relazionale: tipo di database attualmente più diffuso grazie alla
DettagliI MODULI SOFTWARE. Wireless Network. Internet
IL SOFTWARE Il sistema rappresenta una soluzione volta alla realizzazione di strumenti per la tracciabilità ed il monitoraggio dei dati relativi alle operazioni di carico e di scarico effettuate durante
DettagliIIS Via Silvestri ITIS Volta Programma svolto di Tecnologie Informatiche A.S. 2015/16 Classe 1 A
IIS Via Silvestri ITIS Volta Programma svolto di Tecnologie Informatiche A.S. 2015/16 Classe 1 A Modulo n 1 - Concetti informatici di base 1.1 Introduzione allo studio del computer 1.2 Rappresentazione
DettagliFoglio elettronico e Banche dati e per la Pubblica Amministrazione
Foglio elettronico e Banche dati e per la Pubblica Amministrazione MASTER UNIVERSITARIO DI II LIVELLO IN MANAGER NELLE AMMINISTRAZIONI PUBBLICHE A.A. 2013-2014 PROF.SSA BICE CAVALLO Introduzione La pubblica
DettagliGESTIONALE PER PUNTI VENDITA.
GESTIONALE PER PUNTI VENDITA. Il gestionale di magazzino TEMA, è adatto a qualsiasi tipologia di attività. Riesce a interfacciarsi con le più comuni casse e/o bilance, garantendo al cliente finale la massima
DettagliA cura di Valeria Valecchi. Libro di testo: «Cloud» Gallo e Sirsi
A cura di Valeria Valecchi Libro di testo: «Cloud» Gallo e Sirsi NET ECONOMY Negli ultimi anni il mercato è cambiato grazie a INTERNET L economia si basa sempre sugli stessi principi ma sono cambiati gli
DettagliCAPITOLO V. DATABASE: Il modello relazionale
CAPITOLO V DATABASE: Il modello relazionale Il modello relazionale offre una rappresentazione matematica dei dati basata sul concetto di relazione normalizzata. I principi del modello relazionale furono
DettagliSomma di numeri floating point. Algoritmi di moltiplicazione e divisione per numeri interi
Somma di numeri floating point Algoritmi di moltiplicazione e divisione per numeri interi Standard IEEE754 " Standard IEEE754: Singola precisione (32 bit) si riescono a rappresentare numeri 2.0 10 2-38
DettagliLF Italia s.r.l. LF Italia ritiene di importanza fondamentale:
LF Italia s.r.l. LF Italia opera nel settore dei servizi alle imprese su tutto il territorio nazionale e mette a disposizione delle aziende la propria esperienza e professionalità offrendo un efficace
DettagliPROGETTAZIONE / PROGRAMMAZIONE DIDATTICA INDICE. Revisioni
Pagina 1 di 8 INDICE 1.1 OBIETTIVO 1.2 APPLICAZIONE 1.3 RESPONSABILITÀ 1.4 FLOW ATTIVITÀ 1.5 PIANIFICAZIONE 1.6 VERIFICHE E PIANI DI RECUPERO 1.7 VALIDAZIONE E MODIFICHE AL PROGETTO 1.8 MODULISTICA Revisioni
DettagliIngegneria del Software
Ingegneria del Software Settore dell Informatica che si occupa di sistemi sw - di dimensioni e complessità elevate - realizzati da squadre - disponibili in più versioni - di lunga durata - destinati a
DettagliDematerializzare i documenti? Prima occorre dematerializzare (bene e a norma) il processo
Giovanni Michele Bianco Marco Trainotti Università di Verona Direzione Organizzazione del Sistema Informativo Dematerializzare i documenti? Prima occorre dematerializzare (bene e a norma) il processo Nessuno
DettagliE un trasduttore digitale in grado di fornire una indicazione binaria della. Non sfruttano alcun principio fisico. Nei trasduttori lineari a principio
TRASDUTTORI: ENCODER (detto anche CODIFICATORE OTTICO) E un trasduttore digitale in grado di fornire una indicazione binaria della grandezza fisica oggetto di misura ENCODER ASSOLUTO DI POSIZIONE Non sfruttano
DettagliUNIWEB- GUIDA STUDENTE INSERIMENTO PIANO DEGLI STUDI ON LINE
UNIWEB- GUIDA STUDENTE INSERIMENTO PIANO DEGLI STUDI ON LINE In queste pagine vengono illustrate le procedure da seguire per l inserimento del piano degli studi tramite Uniweb per quei corsi di laurea
DettagliSi considerino le seguenti specifiche per la realizzazione di un sito web per la gestione di abbonamenti a riviste di vario genere..
16 Luglio 2014 : Cognome: Matricola: Esercizio 1 Si considerino le seguenti specifiche per la realizzazione di un sito web per la gestione di abbonamenti a riviste di vario genere.. Si vuole realizzare
DettagliCorso di Laurea Triennale in Ingegneria Informatica Ingegneria del software. Processo software. Marina Mongiello. il processo
Corso di Laurea Triennale in Ingegneria Informatica Ingegneria del Processo Sommario 1. Prodotto e processo 2. Ciclo di vita del 3. Modelli del processo di sviluppo 1. Modelli a processo prescrittivo 2.
DettagliWeb marketing: come sfruttare la rete per promuovere la propria attività. A cura di Claudia Zarabara scrivi@claudiazarabara.
Web marketing: come sfruttare la rete per promuovere la propria attività A cura di Claudia Zarabara scrivi@claudiazarabara.it Ottobre 2015 NO PANIC! Internet NON è qualcosa per i tecnici Internet NON è
DettagliSchema della ricerca-azione
Schema della ricerca-azione Lo schema della ricerca-azione partecipativa, che fa seguito alla fase esplorativa del progetto IDE, prende le mosse dal modello procedurale di B. Cunningham (1976) per l identificazione
DettagliRILASCIO NOTE DI RILASCIO NOTE DI RILASCIO NOTE DI RILASCIO. Bilancio. Bilancio Ver. 15.10. Bilancio. Bilancio. Bilancio. Bilancio.
Avvertenze Prima di eseguire l'aggiornamento Archivi NOTE DI RILASCIO NOTE Ver. DI 15.10 RILASCIO NOTE DI RILASCIO NOTE Ver. DI 15.10 RILASCIO Eseguire il salvataggio degli archivi da Strumenti/Esportazione
DettagliLe transazioni. Dott. Doria Mauro doriamauro@gmail.com
Hibernate Le transazioni Dott. Doria Mauro doriamauro@gmail.com Introduzione La demarcazione delle transazioni può essere fatta: In maniera programmatica: demarcazione all interno del codice applicativo.
DettagliGestione Multilingua
Gestione Multilingua REDAZIONE Revisione Redatto da Funzione Data Approvato da Funzione Data 00 Silvia Governatori Analista funzionale junior 28/01/2011 REVISIONI Revisione 00 Prima emissione Descrizione
Dettagli