AVVISO DI RICERCA n. 8/2013 PER IL CONFERIMENTO DI UN INCARICO PER PRESTAZIONE PROFESSIONALE PRESSO IL CENTRO DI RICERCA PER LE COLTURE INDUSTRIALI DI BOLOGNA Il CRA-CIN Centro di Ricerca per le Colture Industriali, di via di Corticella 133, cap. 40128 Bologna, intende avvalersi della collaborazione di n. 1 esperto di elevata professionalità cui affidare un incarico di collaborazione per prestazione professionale con il seguente obiettivo: Installazione database dati meteo e sviluppo di webservices con API pubblica per accesso a dati meteorologici per terze parti, secondo quanto specificato nell’allegato tecnico. Titolo di studio richiesto: Laurea in Ingegneria. Titoli professionali richiesti: Esperienza di programmazioni in ambiente Microsoft Windows / .NET L’ incarico è conferito sotto forma di prestazione professionale, mediante stipulazione di apposito contratto la cui efficacia e la cui esecuzione sono subordinate all’esito del controllo preventivo di legittimità della Corte dei conti, ai sensi dell’articolo 3, comma 1, lettera f bis), della legge 14 gennaio 1994, n. 20. La durata dell’incarico è prevista per un periodo di 60 giorni con decorrenza che verrà stabilita successivamente alla registrazione del suddetto contratto da parte della Corte dei Conti, ovvero trascorsi inutilmente i termini di cui all’articolo 3, comma 2, della citata legge del 14/01/1994, n. 20. La collaborazione sarà svolta presso il CRA-CIN Centro di Ricerca per le Colture Industriali, di via Corticella 133 Bologna, secondo le modalità che verranno concordate con il CRA CIN nel rispetto della normativa vigente. Il compenso totale previsto per lo svolgimento dell’attività inerente l’incarico è determinato in complessivi € 5.500,00 + IVA a norma di legge se dovuta. Le domande corredate di curriculum vitae dovranno essere inviate tramite raccomandata A/R al seguente indirizzo: Centro di ricerca per le colture industriali – via di Corticella, 133 CAP 40128 - Bologna, entro 15 giorni dalla data di pubblicazione del presente avviso sul sito istituzionale dell’Ente “www.entecra.it - Lavoro/Formazione”. Il computo dei quindici giorni inizia dal giorno successivo a quello di pubblicazione dell’Avviso della presente ricerca nel sito ufficiale del CRA. Qual’ora il termine di scadenza cada in giorno festivo, la scadenza è prorogata al primo giorno feriale utile successivo. A tale fine fa fede il timbro a data dell’ufficio postale accettante. Sulla busta contenente la domanda dovrà essere apposta la dicitura “domanda di partecipazione alla valutazione comparativa per incarico di collaborazione per prestazione professionale – Avviso n. 8/2013 dell’11 ottobre 2013” L’amministrazione non assume alcuna responsabilità per la mancata ricezione delle domande, né per la mancata restituzione dell’avviso di ricevimento, dovute a disguidi postali e telegrafici o comunque imputabili a fatti di terzi, a caso fortuito o di forza maggiore né per la dispersione di comunicazioni dipendenti da inesatta o incompleta indicazione del recapito da parte del candidato. Ai fini del rispetto dei termini di presentazione della domanda di partecipazione farà fede il timbro dell’ufficio postale accettante. Non saranno prese in considerazione le domande che dovessero essere spedite oltre il termine sopraindicato nonché quelle che perverranno dopo il 04/11/2013. Nella domanda di partecipazione dovranno risultare le seguenti situazioni: a) essere in possesso della cittadinanza italiana o di uno degli Stati membri dell'Unione europea; b) godere dei diritti civili e politici; c) non aver riportato condanne penali e non essere destinatario di provvedimenti che riguardano l'applicazione di misure di prevenzione, di decisioni civili e di provvedimenti amministrativi iscritti nel casellario giudiziale; d) essere a conoscenza di non essere sottoposto a procedimenti penali; e) essere in possesso dei requisiti sopra descritti. All'affidamento dell'incarico si procederà a seguito di procedura comparativa, effettuata da apposita Commissione, finalizzata ad accertare la professionalità richiesta. Ai fine della valutazione, la Commissione disporrà del punteggio complessivo di 30 punti da attribuire al curriculum vitae in relazione ai seguenti elementi: - Qualifica professionale..................................................................... max 10 punti - Esperienza nei settori si sviluppo software richiesti ......................... max 10 punti - Esperienza di sviluppo su framework BioMA ................................... max. 10 punti Il responsabile del procedimento è il dr. Marcello Donatelli. Bologna, 10 ottobre 2013 Il Direttore Dr. Marcello Donatelli TERMINI DI RIFERIMENTO PER PRESTAZIONE PROFESSIONALE 26/09/2013 L’azione richiesta si può suddividere in tre fasi: 1. Definizione del sistema sul server, installazione database, import dei dati; 2. Sviluppo dei webservices. 3. Sviluppo di semplici client come applicazione console per accesso esemplificativo ai dati (C# e Java) FASE1 - Sviluppo del sistema su server 1. Acquisizione di licenza VWWARE WORKSTATION 9 per Windows Server 2008 R2 64 bit; 2. Creazione, installazione e configurazione di una macchina virtuale VMWARE; (BIOMA_INPUT) ospitata su server BioMA a cui l'hypervisor VMWARE renderà disponibili almeno due core, 10GB di ram ed un disco virtuale di minimo 60GB; 3. Clonazione della macchine virtuale VMWARE (BIOMA_INPUT) con il nome di (BIOMA_OUTPUT) ospitata su server BioMA a cui l'hypervisor VMWARE rendera' disponibili almeno due core, 10GB di ram ed un disco virtuale di minimo 300GB; 4. Le macchine virtuali verranno equipaggiate con un sistema operativo guest open source di tipo Linux; 5. La distribuzione prescelta, (Oracle Linux 6.4, RedHat 6.4 con kernel ottimizzato da Oracle) è freeware ed offre le migliori performance disponibili per gestire in maniera efficiente sistemi di basi di dati relazionali; 6. Installazione e configurazione per ogni sistema guest di un'istanza del database relazionale opensource Postgresql 9.2 comprensiva di estensione geografica e statistica, (POSTGIS+R); 7. Creazione e configurazione di regole per il backup delle macchine virtuali e per l'accesso remoto; 8. Creazione degli utenti, schemi, tabelle, viste, permessi e procedure per l'istanza Postgresql sotto la macchina BIOMA_INPUT come da disegno logico della base di dati da importare; 9. Creazione degli utenti,schemi,tabelle,viste,permessi e procedure per l'istanza Postgresql sotto la macchina BIOMA_OUTPUT come da disegno logico della base di dati che verra' popolata dalle simulazioni numeriche tramite applicativo BIOMA; 10.Import dei dati di input "CLIMGEN" su BIOMA_INPUT resi disponibili dal JRC al CRA-CIN; 11.Ottimizzazione delle configurazione e delle performance in fase di test del sistema. FASE 2 – Web services Specifiche di sistema I Web Services saranno gestiti da un Web Server Microsoft IIS, installato su un server Windows 2008. Il codice serverside dei webservices si collegherà al database PostgreSQL 9.2 installato su una macchina virtuale Linux (partizione Linux dello stesso server). Le porte di comunicazione fra Windows server e macchina Linux saranno aperte per permettere lo scambio di dati sulla porta di comunicazione abitualmente usata da PostgreSQL. Il codice server-side dei webservices avrà permessi di scrittura su una porzione dell'hard-disk del Windows server per permettere di scrivere logs e altri files necessari alla configurazione. Specifiche software I webservices di cui è richiesto lo sviluppo dovranno permettere il download autenticato di dati meteo immagazzinati nel database PostgreSQLl. I web services saranno implementati come soluzioni Microsoft .NET 4 o superiore. Lo sviluppo dei webservices avverrà come soluzioni Microsoft Visual Studio. Nel dettaglio questi saranno i webservices implementati: 1. Ritorno dati meteo: questo webservice ritorna (per ogni location, intervallo temporale, scenario specificato) le seguente variabili meteorologiche: temperatura aria max e min, pioggia, radiazione solare, vento, umidità relativa max e min, pressione di vapore, evapotraspirazione. L'implementazione del webservices client sarà basata sull'interfaccia IWeatherProvider del framework BioMA (http://bioma.jrc.ec.europa.eu/bioma/help). Una call del metodo relativo incrementerà il contatore del profilo utente (si veda oltre gestione del profilo utente). 2. Ritorno dei metadati per i dati meteo: questo webservice ritorna, per ogni variabile meteo, i relativi metadati, tramite un oggetto di tipo VarInfo appartentente al Model Layer del framework BioMA. 3. Ritorno dell'elenco degli scenari meteorologici disponibili: questo webservice ritorna l'elenco degli scenari meteorologici disponibili con una descrizione. 4. Ritorno dell'elenco degli anni/locations disponibili: questo webservice ritorna l'elenco degli anni e delle locations disponibili per un dato scenario. 5. Ritorno dei files di supporto per applicazioni GIS (shape file, tabella attributi). Il collegamento al database per l'esecuzione delle query sarà gestito dal modulo chiamato "DataLayer" del framework Bioma, opportunamente ottimizzato per il dialogo con il database PostgreSQL. I dati di connessione al database non saranno esposti agli utenti ma saranno gestiti internamente nell'applicazione server-side. Gestione dell'autenticazione utente L'utente si collegherà al webservices utilizzando una coppia user/password che verrà fornita da CRA previa esplicita richiesta. Inoltre ad ogni utente saranno associati uno o più indirizzi IP (oppure una IP mask) utilizzabili da cui effettuare la connessione. Ad ogni invocazione dei web services saranno controllati user/password e l'indirizzo IP del client: se non dovesse essere fra gli indirizzi associati all'utente verrà rifiutata la connessione. L'elenco di users e passwords e degli indirizzi IP verrà gestito tramite file di configurazione XML. Ogni invocazione dei webservices verrà tracciata in un file di log. Verranno memorizzate le richieste di dati in modo da potere controllare quanti dati sono scaricati da ogni utente. Sicurezza: autenticazione a livello di protocollo di trasporto Oltre all'autenticazione applicativa descritta nel paragrafo precedente, sarà implementato un layer di sicurezza basato sul protocollo di trasporto specifico dei Web Services. Questo livello di sicurezza consiste nel crittografare i messaggi inviati tramite una chiave che solo i client autorizzati conoscono. Nel caso un client sprovvisto della chiave provi ad invocare i Web Services la sua richiesta verrà rifiutata direttamente nel layer di trasporto. La scelta migliore per implementare questa funzionalità in ambiente .NET è l'utilizzo della libreria Web Services Enhancements (WSE) sviluppata da Microsoft per potenziare la gestione dell'autenticazione dei Web Services (http://msdn.microsoft.com/en-us/library/dd560530.aspx). Librerie e dati Le librerie di riferimento, i dati meteo, i files di supporto GIS saranno forniti dal CRA. FASE 3 – Sample clients Due applicazioni console (C# e Java) messe a disposizione come source code come prova di sviluppo di clients per consumare i web services sviluppati.