Programmazione Java Avanzata

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "Programmazione Java Avanzata"

Transcript

1 Programmazione Java Avanzata Librerie fondamentali Ing. Giuseppe D'Aquì

2 Testi Consigliati Eclipse in Action (David Gallardo, Ed Burnette and Robert McGovern), Manning (2003) JUnit Cookbook [http://junit.sourceforge.net/doc/cookbook/cookbook.htm] Log4J Manual [http://logging.apache.org/log4j/1.2/manual.html] Ant manual [http://ant.apache.org/manual/index.html]

3 Unit Testing Unit Testing è un metodo con cui vengono verificate singole parti di un software Si testano, in modo automatico, parti molto piccole (singole classi o singoli metodi) Si controlla che la classe e i suoi metodi si comportino nel modo corretto I test vengono scritti ed eseguiti in fase di sviluppo, non sono presenti nel software finale

4 Esempio di Unit Test Esame e = new Esame(); [ ] e.setvoto(40); if(e.getvoto() >30) println( Errore, il voto non può essere maggiore di 30 );

5 Unit Testing (2) Serve a verificare che le singole parti funzionino perfettamente Ogni test deve essere indipendente dagli altri Non si testa l'interazione tra gli oggetti Ogni test rappresenta un contratto sul comportamento di un singolo oggetto o funzione

6 Unit Testing (3) I test sono scritti in modo da verificare il comportamento di un oggetto in condizioni estreme (es. input non valido) Spesso sono scritti prima del relativo codice che testano (Test Driven Development, TDD) E' come per le interface: definiamo qual è il risultato che vogliamo ottenere, postponendo i dettagli implementativi I test, infine, sono una sorta di documentazione: sono esempi di come un oggetto si comporta

7 Unit Testing: Pro Forzano il disaccoppiamento tra le singole unità: se ogni parte deve essere testata indipendentemente, siamo obbligati a progettarle in modo indipendente Prevengono un buon numero di errori ancora prima che il software venga eseguito Sorreggono le modifiche : cambiando il codice di un oggetto rischiamo di danneggiarne il funzionamento; con i test veniamo subito a conoscenza di questi errori Facilitano il debug

8 Unit Testing: Contro Se i test sono scritti male, potremmo avere dubbi sul funzionamento reale del software I test sono altro codice da scrivere Se un test improvvisamente fallisce, bisogna subito indagare per capire perché È impossibile testare tutte le ramificazioni e le condizioni possibili Se le singole unità funzionano, non è detto che l'insieme funzioni ancora (vedi Integration Testing)

9 JUnit È un framework per Unit Testing in Java È open source È ben integrato con gli IDE Ogni test prende il nome di test case Insiemi di test case compongono una test suite Gli oggetti preparati prima del test (riutilizzabili in più test) prendono il nome di fixture

10 JUnit Ogni test prende il nome di test case Insiemi di test case compongono una test suite Gli oggetti preparati prima del test (riutilizzabili in più test) prendono il nome di fixture Mock object sono oggetti finti, utilizzati per testare in modo indipendente le singole parti

11 JUnit: fixture Spesso il comportamento di un oggetto dipende da come è inizializzato, oppure dall'insieme di dati che gli vengono forniti Es. Classe Studente probabilmente viene inizializzata con una matricola, oppure legge i dati da un DBMS Quindi le fixture servono ad inizializzare oggetti, o riempire database con dati di prova Soto tutti dati che verranno scartati a test finito In JUnit: metodi setup() e teardown()

12 JUnit: Mock Object Se ogni oggetto deve essere testato indipendentemente dagli altri, come testare quelli che sono intimamente legati tra loro? Es. Se la classe Studente funziona solo quando riceve dati da un DBMS, come possiamo testarla senza testare anche il DBMS? La soluzione è creare un oggetto fittizio (Mock), che sembra un oggetto reale ma in realtà è vuoto e non fa computazioni Restituisce solo quello che ci interessa

13 JUnit: Mock Object (2) Esempio: Studente preleva i dati da un DBMS Il DBMS è un oggetto che fa le query e restituisce un ArrayList (metodo query() ) Creiamo una classe MockDBMS, che deriva da DMBS, riscrivendo il metodo query() in modo che restituisca sempre lo stesso ArrayList Librerie come EasyMock creano in automatico i Mock Object senza bisogno di scriverli a mano

14 Software Building Alla fine dello sviluppo, il codice non è tutto quello che va consegnato : Dati inclusi (DBMS, file di configurazione) Documentazione Programma di installazione o pacchetto Sono tutte operazioni: Necessarie Importanti Ripetitive Manualmente, si rischia di fare errori gravi

15 Software Building (2) Un processo di build è in genere composto da una sequenza di comandi, esempio: compila il file X producendo il file Y comprimi il file Y insieme ai due file W e Z invia quello che ottieni sul server remoto Il nostro lavoro può essere semplificato automatizzando il processo di build

16 Software Building (3) L'automatizzazione può avvenire all'interno del proprio IDE, ma ci sono alcuni problemi Altri sviluppatori potrebbero avere un IDE diverso Il processo potrebbe dover avvenire quando noi non siamo presenti Il processo potrebbe dover partire da un server remoto È difficile portare il processo su un altro IDE se dovessimo cambiarlo È difficile scambiarsi la definizione del processo

17 Software Building (4) Per questi motivi l'industria del software usa (da sempre) software specifici per il build Uno dei più famosi è Make, che ha implementazioni su vari sistemi (GNU Make, Microsoft Nmake) In genere si utilizza un linguaggio dichiarativo, il più possibile indipendente dal sistema

18 Ant Apache Ant è uno dei più famosi software per il build automation in Java Ha un linguaggio dichiarativo basato su XML È multipiattaforma Ha un insieme di task per compiere qualunque operazione

19 Ant (2) Il file di configurazione (build.xml) si basa su tre concetti: Progetto (project) Obiettivo (target) Operazione (task) Un task è una singola operazione (es. copia file, compila ) Un target è una sequenza di task pensata per raggiungere un certo obiettivo; un target può essere dipendente da un altro

20 Ant: esempio di build.xml

21 Maven È un sistema di build automation molto simile ad Ant È maggiormente orientato alla gestione completa di un progetto, mentre Ant si focalizza di più sulle operazioni Si basa sulla convention over configuration, per cui progetti diversi che usano Maven tenderanno ad avere una struttura simile con le stesse convenzioni

22 Continuous Integration È un insieme di tecniche, che combinano la Build Automation e lo Unit Testing, per avere report continui su: Lo stato di avanzamento dei lavori di sviluppo Lo stato di salute dell'integrazione

23 Logging In progetti non amatoriali è bene avere un sistema che tenga traccia dell'esecuzione di un software Trovare la parte malfunzionante può essere molto lungo, perché dobbiamo provare sezioni di codice una alla volta Procedere con un debug via breakpoint può essere: Lungo, se il progetto è grande Impossibile, se il software non gira sulla nostra macchina

24 Logging Spesso si usa, per avere un'idea di quello che sta succedendo, l'output su console: System.out.println() Non è una soluzione ideale: La console deve essere tenuta sotto controllo da una persona competente Per salvare l'output dobbiamo realizzare script al di fuori del nostro programma Tutto l'output viene inviato nello stesso luogo: non c'è modo di separare per priorità o per sottosistema

25 Logging Un Log è un file di testo che raccoglie l'output da un programma È usato normalmente per segnalazione e per debug È fondamentale quando: Il software è eseguito in modalità non-interattiva (es. server) Si vogliono raccogliere dati sull'uso e i comportamento di determinati oggetti Si vuole avere un resoconto delle funzioni eseguite

26 Apache Log4J È una libreria usata nei progetti Java È ormai uno standard de facto per il logging Definisce dei livelli di log, a seconda della gravità: FATAL ERROR WARN INFO DEBUG TRACE

27 Apache Log4J: uso La configurazione ci permette di scegliere la destinazione (appender) dei nostri log Una volta configurato si può usare in modo immediato: log.info( inizio copia file... ); log.warn( Il file non esiste, riprovo ); Si possono creare log che traccino solo un sottoinsieme del sistema: Logger log = Logger.getLogger( it.unirc.pja );

Test e collaudo del software Continuous Integration and Testing

Test e collaudo del software Continuous Integration and Testing Test e collaudo del software Continuous Integration and Testing Relatore Felice Del Mauro Roma, Cosa è la Continuous Integration A software development practice where members of a team integrate their

Dettagli

Eclipse e Subversion

Eclipse e Subversion Eclipse e Subversion Prerequisito: creare un repository gratuito su http://www.assembla.com Svn: condivisione progetto Svn: condivisione progetto Svn: condivisione progetto Svn: condivisione progetto Svn:

Dettagli

Manuale d uso della libreria Volta Log

Manuale d uso della libreria Volta Log Manuale d uso della libreria Volta Log www.satellitevolta.com 1 www.satellitevolta.com 2 [Rif.01] Pacchetto di distribuzione di Volta Log (volta-log-x.y.z.* scaricabile da http://sourceforge.net/projects/voltalog/files/?source=navbar)

Dettagli

Programmazione Java Avanzata

Programmazione Java Avanzata Programmazione Java Avanzata Introduzione a Servlet e Struts 2 Ing. Giuseppe D'Aquì 1 Testi Consigliati Java Enterprise in a nutshell, 3 rd edition (O'Reilly) Struts 2 in Action Brown, Davis, Stanlick

Dettagli

Software testing. Lezione 7 Test Automation Federica Spiga federica_spiga@yahoo.it. A.A. 2010-2011 Autori: F.Spiga

Software testing. Lezione 7 Test Automation Federica Spiga federica_spiga@yahoo.it. A.A. 2010-2011 Autori: F.Spiga 1 Software testing Lezione 7 Test Automation Federica Spiga federica_spiga@yahoo.it A.A. 2010-2011 Autori: F.Spiga 2 "La prima regola di ogni tecnologia è che l'automazione applicata ad un'operazione efficiente

Dettagli

Programmazione Java Avanzata

Programmazione Java Avanzata Programmazione Java Avanzata Accesso ai Dati Ing. Giuseppe D'Aquì Testi Consigliati Eclipse In Action Core J2EE Patterns - DAO [http://java.sun.com/blueprints/corej2eepatterns/patterns/dataaccessobject.html]

Dettagli

Programmazione Java Avanzata Spring - JDBC

Programmazione 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

Dettagli

Professional PHP Refactoring

Professional PHP Refactoring Professional PHP Refactoring by Francesco Trucchia (Ideato srl), Enrico Zimuel (Zend Technologies srl) Ci presentiamo... ft@ideato.it Francesco Trucchia, CTO di Ideato srl Fondatore di Ideato srl, esperto

Dettagli

Un sistema di sviluppo aziendale

Un sistema di sviluppo aziendale Un sistema di sviluppo aziendale Ing. Davide Bolcioni Amministratore di Sistema 3D Informatica Srl Scalare il processo di sviluppo Scalare in quantità Aumentano gli sviluppatori Rif. The Mythical Man-Month.

Dettagli

Paghe Open. software per l'elaborazione delle paghe

Paghe Open. software per l'elaborazione delle paghe Paghe Open software per l'elaborazione delle paghe Premessa I lavoratori in Italia sono circa 21 milioni, di cui 15 milioni sono dipendenti che ricevono una busta paga. Il Consulente del Lavoro è un libero

Dettagli

Cos'é Code::Blocks? Come Creare un progetto Come eseguire un programma Risoluzione problemi istallazione Code::Blocks Che cos è il Debug e come si usa

Cos'é Code::Blocks? Come Creare un progetto Come eseguire un programma Risoluzione problemi istallazione Code::Blocks Che cos è il Debug e come si usa di Ilaria Lorenzo e Alessandra Palma Cos'é Code::Blocks? Come Creare un progetto Come eseguire un programma Risoluzione problemi istallazione Code::Blocks Che cos è il Debug e come si usa Code::Blocks

Dettagli

Test di unità con JUnit4

Test di unità con JUnit4 Test di unità con JUnit4 Richiamo sul test di unità Il test d unità è una metodologia che permette di verificare il corretto funzionamento di singole unità di codice in determinate condizioni. Nel caso

Dettagli

Sviluppo software guidato dal testing. metodologie e strumenti

Sviluppo software guidato dal testing. metodologie e strumenti Sviluppo software guidato dal testing metodologie e strumenti Sommario Testing, software a oggetti Metodologie di sviluppo Test-Driven Development Customer Test-Driven Development Strumenti Open-Source:

Dettagli

Sviluppo di applicazioni web con il pattern Model-View-Controller. Gabriele Pellegrinetti

Sviluppo di applicazioni web con il pattern Model-View-Controller. Gabriele Pellegrinetti Sviluppo di applicazioni web con il pattern Model-View-Controller Gabriele Pellegrinetti 2 MVC: come funziona e quali sono vantaggi che derivano dal suo utilizzo? La grande diffusione della tecnologia

Dettagli

Navigazione automatica e rilevazione di errori in applicazioni web

Navigazione automatica e rilevazione di errori in applicazioni web Politecnico di Milano Navigazione automatica e rilevazione di errori in applicazioni web Relatore: Prof. Stefano Zanero Fabio Quarti F e d e r i c o V i l l a A.A. 2006/2007 Sommario Obiettivo: Illustrare

Dettagli

APPENDICE 5 AL CAPITOLATO TECNICO

APPENDICE 5 AL CAPITOLATO TECNICO APPENDICE 5 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

Dettagli

Corso Online. We Train Italy info@wetrainitaly.it

Corso Online. We Train Italy info@wetrainitaly.it Corso Online Programmatore Java New Edition We Train Italy info@wetrainitaly.it Programma Generale del Corso Programmatore Java New Edition 1. Introduzione al corso Java da 0 al web Presentazione del corso

Dettagli

Enterprise @pplication Integration Software S.r.l.

Enterprise @pplication Integration Software S.r.l. SAP rel.1.0 : SAP State: Final Date: 03-27-200 Enterprise @pplication Integration Software S.r.l. Sede legale: Via Cola di Rienzo 212-00192 Rome - Italy Tel. +39.06.6864226 Sede operativa: viale Regina

Dettagli

03/11/2009. Circa equivalente al test di chip hardware. Il testing è effettuato, per ogni modulo, in modo isolato per verificarne il comportamento

03/11/2009. Circa equivalente al test di chip hardware. Il testing è effettuato, per ogni modulo, in modo isolato per verificarne il comportamento Introduzione al Testing Unit Testing Ingegneria del Software L-A Glossario Reliability / Affidabilità: la misura del successo con cui il comportamento osservato di un sistema si correla con le specifiche

Dettagli

Tecnologie di Sviluppo per il Web

Tecnologie di Sviluppo per il Web Tecnologie di Sviluppo per il Web Applicazioni Web J2EE Framework per il Modello 2 it.unibas.pinco versione 3.2 Questo lavoro è concesso in uso secondo i termini di una licenza Creative Commons (vedi ultima

Dettagli

Candidato: Luca Russo Docente: Prof. Raffaele Montella. 27 Marzo 2013

Candidato: Luca Russo Docente: Prof. Raffaele Montella. 27 Marzo 2013 e di e di Candidato: Luca Russo Docente: Corso di laurea in Informatica Applicata Facoltá di Scienze e Tecnologie Programmazione su Reti 27 Marzo 2013 Traccia d esame Sviluppare multitier con disaccoppiamento

Dettagli

Relazione di Tirocinio presso STMicroelectronics

Relazione di Tirocinio presso STMicroelectronics Relazione di Tirocinio presso STMicroelectronics Tirocinante Rosolino Finazzo Tutor Aziendale Dott. Giuseppe Montalto 28 agosto 2008 Indice 1 Presentazione 2 1.1 Doucumentazione.........................

Dettagli

Ottimizzazione dello sviluppo software con Microsoft Visual Studio 2008

Ottimizzazione dello sviluppo software con Microsoft Visual Studio 2008 Ottimizzazione dello sviluppo software con Microsoft Visual Studio 2008 White paper Novembre 2007 Per informazioni aggiornate, visitare l indirizzo www.microsoft.com/italy/vstudio È possibile che a questo

Dettagli

La strada per sviluppare più rapidamente: Unit Test & Continuous Integration

La strada per sviluppare più rapidamente: Unit Test & Continuous Integration La strada per sviluppare più rapidamente: Unit Test & Continuous Integration by Enrico Zimuel Senior Consultant & Architect Zend Technologies Email: enrico.z@zend.com Blog: http://www.zimuel.it/blog Copyright

Dettagli

Progetto per un Sistema di Video/Audio Sorveglianza Remota RemoteGuard

Progetto per un Sistema di Video/Audio Sorveglianza Remota RemoteGuard La Sapienza Università di Roma Facoltà di Ingegneria Corso di Laurea in Ingegneria Informatica Anno Accedemico 2008-2009 Corso di Progetto di Reti di Calcolatori e Sistemi Informatici Prof. Stefano Millozzi

Dettagli

Fondamenti di Informatica T-1 CdS Ingegneria Informatica a.a. 2011/2012. Introduzione a Visual Studio 2005/2008/2010

Fondamenti di Informatica T-1 CdS Ingegneria Informatica a.a. 2011/2012. Introduzione a Visual Studio 2005/2008/2010 Fondamenti di Informatica T-1 CdS Ingegneria Informatica a.a. 2011/2012 Introduzione a Visual Studio 2005/2008/2010 1 Outline Solution e Project Visual Studio e linguaggio C Visual Studio schermata principale

Dettagli

Syncope OpenSource IdM

Syncope OpenSource IdM Syncope OpenSource IdM Gestione delle identità in contesti aziendali Versione 1.2 / 2011-12-16 Syncope OpenSource IdM, da http://syncope.googlecode.comi, è distribuito con licenza Creative Commons Attribution

Dettagli

Sviluppata da: Lo Russo - Porcelli Pag. 1 di 6 6FRSR utilizzare il DBMS Postgresql per imparare il linguaggio SQL.

Sviluppata da: Lo Russo - Porcelli Pag. 1 di 6 6FRSR utilizzare il DBMS Postgresql per imparare il linguaggio SQL. Pag. 1 di 6 6FRSR utilizzare il DBMS Postgresql per imparare il linguaggio SQL. 2ELHWWLYL GD UDJJLXQJHUH SHU JOL VWXGHQWL alla fine dell esercitazione gli studenti dovranno essere in grado di: 1. utilizzare

Dettagli

DRUPAL CONTINUOUS INTEGRATION. Parte I - Introduzione

DRUPAL CONTINUOUS INTEGRATION. Parte I - Introduzione DRUPAL CONTINUOUS INTEGRATION Parte I - Introduzione La Continuous Integration è una pratica di sviluppo software nella quale i membri di un team integrano il proprio lavoro di frequente, spesso con cadenza

Dettagli

Architettura e tecnologie per lo sviluppo del Setup-Dashboard. Setup Srl Information Technologies

Architettura e tecnologie per lo sviluppo del Setup-Dashboard. Setup Srl Information Technologies Architettura e tecnologie per lo sviluppo del Setup-Dashboard Setup Srl Information Technologies 1 Introduzione INTRODUZIONE In seguito a diverse richieste, Setup ha deciso di sviluppare un modulo denominato

Dettagli

JSIS JSIS L architettura JSIS

JSIS JSIS L architettura JSIS JSIS JSIS L architettura JSIS La piattaforma JSIS Java Solution Integrated Suites, interamente realizzata dai nostri laboratori di sviluppo software, è una soluzione che integra la gestione di diverse

Dettagli

Logbus-ng: a software logging bus for Field Failure Data Analysis in distributed systems Anno Accademico 2009-2010

Logbus-ng: a software logging bus for Field Failure Data Analysis in distributed systems Anno Accademico 2009-2010 tesi di laurea Logbus-ng: a software logging bus for Field Failure Data Analysis in Anno Accademico 2009-2010 relatore Ch.mo prof. Domenico Cotroneo Ch.mo prof. Marcello Cinque correlatore Ch.mo Ing. Antonio

Dettagli

Corso analista programmatore Java. Corso analista programmatore Java Programma

Corso analista programmatore Java. Corso analista programmatore Java Programma Corso analista programmatore Java Programma 1.1 Obiettivo e modalità di fruizione L obiettivo del corso è di fornire le conoscenze tecniche e metodologiche per svolgere la professione di Programmatore

Dettagli

Progetto di Informatica III. Introduzione al corso

Progetto di Informatica III. Introduzione al corso Progetto di Informatica III Introduzione al corso Patrizia Scandurra Università degli Studi di Bergamo a.a. 2008-09 Sommario Contatti Obiettivo Natura Argomenti Organizzazione Materiale didattico Modalità

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

18. TECNICHE DI ACCESSO AI DATABASE IN AMBIENTE INTERNET

18. TECNICHE DI ACCESSO AI DATABASE IN AMBIENTE INTERNET 18. TECNICHE DI ACCESSO AI DATABASE IN AMBIENTE INTERNET Ipotesi di partenza: concetti di base del networking Le ipotesi di partenza indispensabili per poter parlare di tecniche di accesso ai database

Dettagli

DUCKMA SRL BACKEND DEVELOPER

DUCKMA SRL BACKEND DEVELOPER BACKEND DEVELOPER applicazioni Mobile. nostri valori e la nostra visione del business. Persone con iniziativa, creatività, curiosità ed entusiasmo, uniti ad ottime capacità relazionali e un forte spirito

Dettagli

Configurazione di base. Dott. Doria Mauro doriamauro@gmail.com

Configurazione di base. Dott. Doria Mauro doriamauro@gmail.com Hibernate Configurazione di base Dott. Doria Mauro doriamauro@gmail.com I file di configurazione Hibernate prevede l uso dei file di configurazione formato XML. I principali file sono: Un file di configurazione

Dettagli

Fase 1 Documento di Analisi

Fase 1 Documento di Analisi Fase 1 Documento di Analisi Nell ambito del progetto, che prevede lo studio sperimentale dei problemi di automazione dei processi di test e analisi, questa prima fase ha come obiettivo l identificazione

Dettagli

INFORMATICA. Applicazioni WEB a tre livelli con approfondimento della loro manutenzione e memorizzazione dati e del DATABASE.

INFORMATICA. Applicazioni WEB a tre livelli con approfondimento della loro manutenzione e memorizzazione dati e del DATABASE. INFORMATICA Applicazioni WEB a tre livelli con approfondimento della loro manutenzione e memorizzazione dati e del DATABASE. APPLICAZIONI WEB L architettura di riferimento è quella ampiamente diffusa ed

Dettagli

Corso Analista Programmatore Java Corso Online Analista Programmatore Java

Corso Analista Programmatore Java Corso Online Analista Programmatore Java Corso Analista Programmatore Java Corso Online Analista Programmatore Java Accademia Futuro info@accademiafuturo.it Programma Generale del Corso Analista Programmatore Java Tematiche Trattate Modulo Uno

Dettagli

Appunti della lezione del 8/10/2008 del corso di Basi di dati I - Università del Salento

Appunti della lezione del 8/10/2008 del corso di Basi di dati I - Università del Salento Appunti della lezione del 8/10/2008 del corso di Basi di dati I - Università del Salento Tecnologie per lo sviluppo di applicazioni La tendenza attuale dell'ingegneria è quella dell'integrazione di componenti

Dettagli

PHP ), con l'introduzione di un middleware quale Zend Framework a

PHP ), con l'introduzione di un middleware quale Zend Framework a Quella che segue è la rappresentazione ad alto livello dell'architettura proposta per il sistema in corso di realizzazione. In questa fase non vengono ancora affrontate le tematiche di sicurezza, load

Dettagli

Unit Testing. Giovanni Lagorio lagorio@disi.unige.it

Unit Testing. Giovanni Lagorio lagorio@disi.unige.it Unit Testing Giovanni Lagorio lagorio@disi.unige.it Licenza Questi lucidi sono rilasciati sotto la licenza Creative Commons Attribuzione-Non commerciale-non opere derivate 3.0 Unported. Per leggere una

Dettagli

Introduzione ad Eclipse

Introduzione ad Eclipse Introduzione ad Eclipse Corso di Metodi Avanzati di Programmazione 2014-2015 Docente: Dr. Annalisa Appice Tutor di Laboratorio: dott. Roberto Corizzo Ambiente Eclipse Sommario Java: ambiente Eclipse L

Dettagli

CLASSROOM 3.0 : Mondi reali e virtuali si incontrano mediante ambient sensing per il settore smart education

CLASSROOM 3.0 : Mondi reali e virtuali si incontrano mediante ambient sensing per il settore smart education CLASSROOM 3.0 : Mondi reali e virtuali si incontrano mediante ambient sensing per il settore smart education Alessandro Fiore, Luca Mainetti, Roberto Vergallo Università del Salento roberto.vergallo@unisalento.it

Dettagli

Aspetti applicativi e tecnologia

Aspetti applicativi e tecnologia Aspetti applicativi e tecnologia Premessa Architetture usate per i database Le prime applicazioni erano definite monolitiche, cioè un unico computer (mainframe) gestiva sia le applicazioni che i dati,

Dettagli

Stato di avanzamento dei lavori e roadmap del progetto

Stato di avanzamento dei lavori e roadmap del progetto Stato di avanzamento dei lavori e roadmap del progetto Paolo Ambrosio p.ambrosio@tecnoteca.it 14/04/10 1 Architettura Funzionalità Qualità 14/04/10 2 Architettura Funzionalità Qualità 14/04/10 3 Architettura

Dettagli

Introduzione Il programma di formazione base di Movicon prevede la disponibilità di nr. 10 moduli, così suddivisibili:

Introduzione Il programma di formazione base di Movicon prevede la disponibilità di nr. 10 moduli, così suddivisibili: Introduzione Il programma di formazione base di Movicon prevede la disponibilità di nr. 10 moduli, così suddivisibili: Corso base 1 = nr. 5 moduli, 1 gg. presso sede Progea o centro autorizzato Corso base

Dettagli

Programmazione Fondi Strutturali 2007/2013 P.O.N. FSE A.S. 2013/2014 SCHEDA PROGETTUALE MODULO. Obiettivo: C Azione: 1 Riferimento interno:

Programmazione Fondi Strutturali 2007/2013 P.O.N. FSE A.S. 2013/2014 SCHEDA PROGETTUALE MODULO. Obiettivo: C Azione: 1 Riferimento interno: ISTITUTO ISTRUZIONE SECONDARIA SUPERIORE GUGLIELMO MARCONI Piazza Poerio 2, 70126 Bari - Tel.080-5534450 Fax.080-5559037 - www.marconibari.it - info@marconibari.it Programmazione Fondi Strutturali 2007/2013

Dettagli

Server web e protocollo HTTP

Server web e protocollo HTTP Server web e protocollo HTTP Dott. Emiliano Bruni (info@ebruni.it) Argomenti del corso Cenni generali sul web IIS e Apache Il server web Micsosoft Internet Information Server 5.0 Il server web Apache 2.0

Dettagli

Report on Demand : Libreria Java open-source per offrire servizi di reportistica all interno delle applicazioni web sviluppate dall I.Z.S. A. e M.

Report on Demand : Libreria Java open-source per offrire servizi di reportistica all interno delle applicazioni web sviluppate dall I.Z.S. A. e M. Report on Demand : Libreria Java open-source per offrire servizi di reportistica all interno delle applicazioni web sviluppate dall I.Z.S. A. e M. di Luigi Possenti, Elio Malizia, Daniele Zippo, Patrizia

Dettagli

ProgettAzione V anno Unità 3 - Architetture per applicazioni web Lezione: Esempio sviluppo applicazioni

ProgettAzione V anno Unità 3 - Architetture per applicazioni web Lezione: Esempio sviluppo applicazioni Unità 3 - Architetture per applicazioni web Lezione: Esempio sviluppo applicazioni Web service Hello world con Visual Studio 2012 Si tratta di un semplice esempio di web service, infatti come tutti I programmi

Dettagli

Il monitoraggio remoto del radon: architettura software

Il monitoraggio remoto del radon: architettura software Il monitoraggio remoto del radon: architettura software Massimo Faure Ragani Sezione Agenti Fisici - Area Operativa Radioattività Ambientale Agenzia Regionale per la Protezione dell'ambiente della Valle

Dettagli

JUG Ancona Italy Spring Framework

JUG Ancona Italy Spring Framework JUG Ancona Italy Spring Framework Andrea Del Bene Jug Marche Spring: perché e nato e perché lo voglio imparare? Quando si decide di investire in un nuova tecnologia è indispensabile capire il valore aggiunto

Dettagli

Università degli Studi di Modena e Reggio Emilia. Paolo Piccinini WASCANA ECLIPSE MANUALE UTENTE

Università degli Studi di Modena e Reggio Emilia. Paolo Piccinini WASCANA ECLIPSE MANUALE UTENTE Università degli Studi di Modena e Reggio Emilia Paolo Piccinini WASCANA ECLIPSE MANUALE UTENTE Corso di Fondamenti di Informatica 2010-2011 Sommario Introduzione... 3 Installazione di Wascana Eclipse

Dettagli

Processo di sviluppo in SECSERVIZI: la metodologia JMC. Versione 1.0 Eclipse-IT 2010 Savona, 30/9/2010

Processo di sviluppo in SECSERVIZI: la metodologia JMC. Versione 1.0 Eclipse-IT 2010 Savona, 30/9/2010 o di sviluppo in SECSERVIZI: la metodologia JMC Versione 1.0 Eclipse-IT 2010 Savona, 30/9/2010 Agenda Premessa ed obiettivi Che cos è JMC Architettura e Tools JMC Il Desktop di Filiale -2- Premessa ed

Dettagli

Novità di Visual Studio 2008

Novità di Visual Studio 2008 Guida al prodotto Novità di Visual Studio 2008 Introduzione al sistema di sviluppo di Visual Studio Visual Studio Team System 2008 Visual Studio Team System 2008 Team Foundation Server Visual Studio Team

Dettagli

Integrazione della piattaforma Ajax in un sistema web multi-agente realizzato col framework applicativo Spring

Integrazione della piattaforma Ajax in un sistema web multi-agente realizzato col framework applicativo Spring dott. Longari Michele Matricola: 180852 Ingegneria informatica spec. E-mail: longari@ce.unipr.it Integrazione della piattaforma Ajax in un sistema web multi-agente realizzato col framework applicativo

Dettagli

Ministero dell Istruzione dell Università e della Ricerca M070 ESAME DI STATO DI ISTITUTO TECNICO INDUSTRIALE

Ministero dell Istruzione dell Università e della Ricerca M070 ESAME DI STATO DI ISTITUTO TECNICO INDUSTRIALE Pag. 1/1 Sessione ordinaria 2010 Seconda prova scritta Ministero dell Istruzione dell Università e della Ricerca M070 ESAME DI STATO DI ISTITUTO TECNICO INDUSTRIALE CORSO DI ORDINAMENTO Indirizzo: INFORMATICA

Dettagli

Strumenti di gestione del ciclo di vita del software

Strumenti di gestione del ciclo di vita del software Strumenti di gestione del ciclo di vita del software Università degli studi di Padova a.a. 2008/09 Laurea in Informatica Corso di Ingegneria del Software mod. A. presenta Nicola Bertazzo nicola.bertazzo@gmail.com

Dettagli

Realizzazione di uno strumento web-based per la simulazione remota di reti di sensori senza filo

Realizzazione di uno strumento web-based per la simulazione remota di reti di sensori senza filo tesi di laurea Realizzazione di uno strumento web-based per la simulazione remota di reti di sensori senza filo Anno Accademico 2009/2010 relatore Ch.mo prof. Marcello Cinque correlatore Ing. Catello di

Dettagli

DEL SENDER GUIDA INTEGRATIVA ALL INSTALLAZIONE. Versione N.1.0. Data 11/05/2009. Sender - Guida integrativa alla installazione

DEL SENDER GUIDA INTEGRATIVA ALL INSTALLAZIONE. Versione N.1.0. Data 11/05/2009. Sender - Guida integrativa alla installazione GUIDA INTEGRATIVA ALL INSTALLAZIONE DEL SENDER Versione N.1.0 Data 11/05/2009 Versione 1.0, Data emissione 11/05/2009 Pag. 1 di 15 Revisione Capitolo Modifica Data 1.0 Prima Emissione 11/05/2009 Versione

Dettagli

Prof. Pagani Corrado INGEGNERIA DEL SOFTWARE

Prof. Pagani Corrado INGEGNERIA DEL SOFTWARE Prof. Pagani Corrado INGEGNERIA DEL SOFTWARE INTRODUZIONE L ingegneria del software è la disciplina tecnologica e gestionalerelativa alla realizzazione sistematica e alla manutenzione di un software rispettando

Dettagli

Piattaforma tecnologica e strumenti di sviluppo

Piattaforma tecnologica e strumenti di sviluppo Piattaforma tecnologica e strumenti di sviluppo La tecnologia informatica e i nuovi paradigmi applicativi sono in continua evoluzione per dare risposta alle crescenti necessità del mercato con strumenti

Dettagli

Indice. Indice... 2 1. Premessa e scopo del documento... 3 2. Ambiente operativo... 4 3. Architettura di sistema... 5

Indice. Indice... 2 1. Premessa e scopo del documento... 3 2. Ambiente operativo... 4 3. Architettura di sistema... 5 Realizzazione di un sistema informatico on-line bilingue di gestione, monitoraggio, rendicontazione e controllo del Programma di Cooperazione Transfrontaliera Italia - Francia Marittimo finanziato dal

Dettagli

UNIVERSITÀ DEGLI STUDI DI FIRENZE FACOLTA DI INGEGNERIA DIPARTIMENTO DI SISTEMI E INFORMATICA. Elaborato di Tecnologie del Software per Internet

UNIVERSITÀ DEGLI STUDI DI FIRENZE FACOLTA DI INGEGNERIA DIPARTIMENTO DI SISTEMI E INFORMATICA. Elaborato di Tecnologie del Software per Internet UNIVERSITÀ DEGLI STUDI DI FIRENZE FACOLTA DI INGEGNERIA DIPARTIMENTO DI SISTEMI E INFORMATICA Elaborato di Tecnologie del Software per Internet JMSWEB 2 SISTEMA PER LO SCAMBIO DI MESSAGGI TRA APPLICAZIONI

Dettagli

In legenda sono riportate le fasi R, P, C/T e I/SA come specificato nella norma ISO/IEC 12207.

In legenda sono riportate le fasi R, P, C/T e I/SA come specificato nella norma ISO/IEC 12207. Durante le attività di sviluppo del software applicativo è spesso utilizzato un ciclo di vita incrementale il cui schema di processo è sintetizzato nella figura seguente. In legenda sono riportate le fasi

Dettagli

Creative Commons Attribution-NonCommercial-ShareAlike 2.5 License. Sviluppo Rapido di Applicazioni con Grails

Creative Commons Attribution-NonCommercial-ShareAlike 2.5 License. Sviluppo Rapido di Applicazioni con Grails Sviluppo Rapido di Applicazioni con Grails Presentazioni About Mokabyte: La prima rivista Web dedicata a java Circa 30 corsi di formazione On line da più di 10 anni About Gruppo Imola: Consulenze di alto

Dettagli

catalogo corsi di formazione 2015/2016

catalogo corsi di formazione 2015/2016 L offerta formativa inserita in questo catalogo è stata suddivisa in quattro sezioni tematiche che raggruppano i corsi di formazione sulla base degli argomenti trattati. Organizzazione, progettazione e

Dettagli

Estensioni e modelli. Ancora poco conosciuti, consentono di estendere la suite per l ufficio. Ecco come servirsene

Estensioni e modelli. Ancora poco conosciuti, consentono di estendere la suite per l ufficio. Ecco come servirsene Estensioni e modelli. Ancora poco conosciuti, consentono di estendere la suite per l ufficio. Ecco come servirsene Sotto il nome OpenOffice.org si nasconde un insieme di programmi per l ufficio potenti

Dettagli

Corso di Web programming Modulo T3 A2 - Web server

Corso di Web programming Modulo T3 A2 - Web server Corso di Web programming Modulo T3 A2 - Web server 1 Prerequisiti Pagine statiche e dinamiche Pagine HTML Server e client Cenni ai database e all SQL 2 1 Introduzione In questa Unità si illustra il concetto

Dettagli

BIMPublisher Manuale Tecnico

BIMPublisher Manuale Tecnico Manuale Tecnico Sommario 1 Cos è BIMPublisher...3 2 BIM Services Console...4 3 Installazione e prima configurazione...5 3.1 Configurazione...5 3.2 File di amministrazione...7 3.3 Database...7 3.4 Altre

Dettagli

JDBC versione base. Le classi/interfacce principali di JDBC

JDBC versione base. Le classi/interfacce principali di JDBC JDBC versione base Java Database Connectivity è il package Java per l accesso a database relazionali il package contiene interfacce e classi astratte uno dei pregi è la completa indipendenza del codice

Dettagli

Informazioni corso AMMINISTRATORE. BO XI - Introduzione. abaroni@yahoo.com. adolfo.baroni@silnet.it Argomenti

Informazioni corso AMMINISTRATORE. BO XI - Introduzione. abaroni@yahoo.com. adolfo.baroni@silnet.it Argomenti abaroni@yahoo.com Informazioni corso AMMINISTRATORE Argomenti h Capitolo 1 Introduzione h Capitolo 2 Architettura di BusinessObjects Enterprise h Capitolo 3 Nozioni di base di Central Management Console

Dettagli

Poca documentazione: uso di Story Card e CRC (Class Responsibility Collabor) Collaborazione con il cliente rispetto alla negoziazione dei contratti

Poca documentazione: uso di Story Card e CRC (Class Responsibility Collabor) Collaborazione con il cliente rispetto alla negoziazione dei contratti Sviluppo Agile [Cockburn 2002] Extreme Programming (XP) [Beck 2000] Sono più importanti auto-organizzazione, collaborazione, comunicazione tra membri del team e adattabilità del prodotto rispetto ad ordine

Dettagli

Intalio. Leader nei Sistemi Open Source per il Business Process Management. Andrea Calcagno Amministratore Delegato

Intalio. Leader nei Sistemi Open Source per il Business Process Management. Andrea Calcagno Amministratore Delegato Intalio Convegno Open Source per la Pubblica Amministrazione Leader nei Sistemi Open Source per il Business Process Management Navacchio 4 Dicembre 2008 Andrea Calcagno Amministratore Delegato 20081129-1

Dettagli

Cocoon. Una introduzione

Cocoon. Una introduzione Cocoon Una introduzione Programma Descrizione per l' utente Funzionamento interno Parte Prima Dal punto di vista dell'utente Che cosa è? Cocoon è una piattaforma di pubblicazione di dati XML. Con esso

Dettagli

Corso di Informatica. Prerequisiti. Modulo T3 B3 Programmazione lato server. Architettura client/server Conoscenze generali sui database

Corso di Informatica. Prerequisiti. Modulo T3 B3 Programmazione lato server. Architettura client/server Conoscenze generali sui database Corso di Informatica Modulo T3 B3 Programmazione lato server 1 Prerequisiti Architettura client/server Conoscenze generali sui database 2 1 Introduzione Lo scopo di questa Unità è descrivere gli strumenti

Dettagli

Applicazioni web. Sommario. Parte 6 Servlet Java. Applicazioni web - Servlet. Alberto Ferrari 1. Servlet Introduzione alle API ed esempi

Applicazioni web. Sommario. Parte 6 Servlet Java. Applicazioni web - Servlet. Alberto Ferrari 1. Servlet Introduzione alle API ed esempi Applicazioni web Parte 6 Java Alberto Ferrari 1 Sommario Introduzione alle API ed esempi Tomcat Server per applicazioni web Alberto Ferrari 2 Alberto Ferrari 1 Java: da applet a servlet In origine Java

Dettagli

Il Pattern MVC nei Framework di sviluppo per applicazioni Web. Analisi e comparazione di SPRING MVC Framework e ASP.NET MVC Framework.

Il Pattern MVC nei Framework di sviluppo per applicazioni Web. Analisi e comparazione di SPRING MVC Framework e ASP.NET MVC Framework. tesi di laurea Il Pattern MVC nei Framework di sviluppo per applicazioni Web. Analisi e comparazione di SPRING MVC Framework e ASP.NET MVC Framework. Anno Accademico 2008/2009 relatore Ch.mo prof. Porfirio

Dettagli

PIANIFICAZIONE E REALIZZAZIONE DI UN SISTEMA INFORMATIVO 147 6/001.0

PIANIFICAZIONE E REALIZZAZIONE DI UN SISTEMA INFORMATIVO 147 6/001.0 PIANIFICAZIONE E REALIZZAZIONE DI UN SISTEMA INFORMATIVO 147 6/001.0 PIANIFICAZIONE E REALIZZAZIONE DI UN SISTEMA INFORMATIVO ELEMENTI FONDAMENTALI PER LO SVILUPPO DI SISTEMI INFORMATIVI ELABORAZIONE DI

Dettagli

MDAC. Attualmente la versione disponibile di MDAC è la 2.8 ma faremo riferimento alla 2.6. ADO Active Data Objects ADO OLE DB ODBC

MDAC. Attualmente la versione disponibile di MDAC è la 2.8 ma faremo riferimento alla 2.6. ADO Active Data Objects ADO OLE DB ODBC MDAC MDAC è l acronimo di Microsoft Data Access Component e fa parte della tecnologia Microsoft denominata Universal Data Access (UDA). Mette a disposizione una serie di componenti per l accesso a svariate

Dettagli

Istituto Angioy Informatica BASI DI DATI. Prof. Ciaschetti

Istituto Angioy Informatica BASI DI DATI. Prof. Ciaschetti Istituto Angioy Informatica BASI DI DATI Prof. Ciaschetti Introduzione e prime definizioni Una Base di dati o Database è un archivio elettronico opportunamente organizzato per reperire in modo efficiente

Dettagli

Thea PDM. Cos è Thea PDM? Il PDM (Product Data Management)

Thea PDM. Cos è Thea PDM? Il PDM (Product Data Management) Thea PDM Il PDM (Product Data Management) Nell'industria manifatturiera il PDM è un software per la raccolta ed organizzazione dei file nelle divere fasi di ideazione, progettazione, produzione ed obsolescenza

Dettagli

Appunti di Excel Macro Convalida Filtri Cerca.vert ---------------------------- Giuseppe Quaggiotto. Macro con Excel

Appunti di Excel Macro Convalida Filtri Cerca.vert ---------------------------- Giuseppe Quaggiotto. Macro con Excel Macro con Excel Le macro sono un insieme di comandi (istruzioni) per eseguire semplici e ripetitivie sequenze di operazioni. Le macro sono costruite con un linguaggio di programmazione detto Visual Basic

Dettagli

Logic Lab. un progetto italiano. www.axelsw.it. soluzioni SOFTWARE PER L'AUTOMAZIONE INDUSTRIALE

Logic Lab. un progetto italiano. www.axelsw.it. soluzioni SOFTWARE PER L'AUTOMAZIONE INDUSTRIALE Logic Lab soluzioni SOFTWARE PER L'AUTOMAZIONE INDUSTRIALE un progetto italiano www.axelsw.it Logic Lab La garanzia e l economia degli standard più diffusi sul mercato LogicLab è un ambiente di sviluppo

Dettagli

Arduino: domotica open source

Arduino: domotica open source Arduino: domotica open source Emanuele Palazzetti Feedback: http://tinyurl.com/arduinold2011 1 Physical Computing Costruire dei sistemi fisici interattivi tramite l'uso di software e di hardware in grado

Dettagli

Presidente del SC27 italiano e membro del direttivo di UNINFO. Capo delegazione italiana per il JTC1/SC27 ISO/IEC

Presidente del SC27 italiano e membro del direttivo di UNINFO. Capo delegazione italiana per il JTC1/SC27 ISO/IEC Speaker Fabio Guasconi Presidente del SC27 italiano e membro del direttivo di UNINFO Capo delegazione italiana per il JTC1/SC27 ISO/IEC ISECOM Vice Direttore delle Comunicazioni Membro di CLUSIT, ITSMF,

Dettagli

Software Testing. Lezione 2 Livelli di test. Federica Spiga. federica_spiga@yahoo.it. A.A. 2010-2011 Autori: F.Rabini/F.Spiga

Software Testing. Lezione 2 Livelli di test. Federica Spiga. federica_spiga@yahoo.it. A.A. 2010-2011 Autori: F.Rabini/F.Spiga Software Testing Lezione 2 Livelli di test Federica Spiga federica_spiga@yahoo.it A.A. 2010-2011 Autori: F.Rabini/F.Spiga 1 2 Livelli di test Unit Testing Integration Testing System Testing Unit Testing

Dettagli

Realizzazione di un sistema di logging prototipale per la piattaforma

Realizzazione di un sistema di logging prototipale per la piattaforma tesi di laurea Realizzazione di un sistema di logging prototipale per la piattaforma Android Anno Accademico 2011 / 2012 relatore Ch.mo prof. Marcello Cinque candidato Dario De Meis Matr. 528 / 741 Smartphone

Dettagli

Curriculum Vitae Europass

Curriculum Vitae Europass Curriculum Vitae Europass Informazioni personali Nome(i) / Cognome(i) Indirizzo(i) Francesco Scalzo Viale IV Novembre, 323 88045 Gimigliano (CZ) ITALIA Telefono(i) 0961-995328 Cellulare: (+39) 320-2524471

Dettagli

Lezione 9. Applicazioni tradizionali

Lezione 9. Applicazioni tradizionali Lezione 9 Applicazioni tradizionali Pag.1 Sommario Concetti trattati in questa lezione: SQL nel codice applicativo Cursori API native ODBC Pag.2 SQL nel codice applicativo I comandi SQL possono essere

Dettagli

1. Hard Real Time Linux (Laurea VO o specialistica)

1. Hard Real Time Linux (Laurea VO o specialistica) 20/9/06 Elenco Tesi Disponibili Applied Research & Technology Dept. La Società MBDA La MBDA Italia è un azienda leader nella realizzazione di sistemi di difesa che con i suoi prodotti è in grado di soddisfare

Dettagli

Corso di Laurea Magistrale in Ingegneria Informatica. Ingegneria del Software II (IS2)

Corso di Laurea Magistrale in Ingegneria Informatica. Ingegneria del Software II (IS2) Corso di Laurea Magistrale in Ingegneria Informatica Ingegneria del Software II (IS2) a.a. 2010/12 Ingegneria del Software 2 - Introduzione 1 Docente Prof.ssa Anna Rita Fasolino Dipartimento di Informatica

Dettagli

Esercitazioni di Programmazione I canale A-D. Alessio Malizia malizia@di.uniroma1.it

Esercitazioni di Programmazione I canale A-D. Alessio Malizia malizia@di.uniroma1.it Esercitazioni di Programmazione I canale A-D Alessio Malizia malizia@di.uniroma1.it I docenti Docente: T. Calamoneri Esercitatore: A. Malizia calamo@di.uniroma1.it Ricevimento: lun. 14.00-15.30 (mandando

Dettagli

Implementazione di MVC. Gabriele Pellegrinetti

Implementazione di MVC. Gabriele Pellegrinetti Implementazione di MVC Gabriele Pellegrinetti 2 Come implementare il pattern Model View Controller con le tecnologie JSP, ASP e XML Implementazione del pattern MVC in Java (JSP Model 2) SUN è stato il

Dettagli

Presentazione della tesi di laurea di Flavio Casadei Della Chiesa. Newsletter: un framework per una redazione web

Presentazione della tesi di laurea di Flavio Casadei Della Chiesa. Newsletter: un framework per una redazione web Presentazione della tesi di laurea di Flavio Casadei Della Chiesa Newsletter: un framework per una redazione web Argomenti trattati nella presentazione Internet, problematiche e soluzioni Contesto nel

Dettagli