Drupal per la ricerca

33
Drupal per la Ricerca - il Caso EAI Matteo Cevese [EAI] - Eugenio Minardi [Wellnet] martedì 6 dicembre 11

description

Un caso di studio dell'uso di Drupal per la costruzione di una community con scopo principale la ricerca e lo sviluppo.

Transcript of Drupal per la ricerca

Drupal per la Ricerca - il Caso EAI

Matteo Cevese [EAI] - Eugenio Minardi [Wellnet]

martedì 6 dicembre 11

Empowering the Innovation Community

Un movimento che unisce diverse comunità per promuovere l’innovazione in diversi settori che fanno uso dell’ICT

Tutte le organizzazioni che hanno a che fare con l’innovazione: pubbliche amministrazioni, industria, enti di ricerca e chi ha interesse nell’innovazione

Cosa

Come

Chi

Perché

Fornendo alla comunità occasioni di incontro e scambio di idee sia virtualmente con il portale e gli strumenti online EAI sia fisicamente attraverso Summits, conferenze ed eventi di networking

Riformare le politiche europee e l’evoluzione sociale attraverso l’innovazione

martedì 6 dicembre 11

Che cosa avevamo?

1/3 Sito istituzionale in Wordpress

• Circa 350 posts

• Circa 50 pagine• Nessuna gerarchia tra i contenuti

• Nessun workflow e ruoli personalizzati con permessi• Template “hardcoded”

• Una sidebar• Nessun tipo di “vista”

• Puro HTML ovunque per ogni cosa

martedì 6 dicembre 11

Cosa abbiamo fatto?

Da Wordpress...

• Facile e immediato

• Semplice• Chiavi in mano

• Limitato

martedì 6 dicembre 11

Cosa abbiamo fatto?

A Drupal

• Complesso

• Estendibile• Flessibile

• “Illimitato”

martedì 6 dicembre 11

Che cosa avevamo?

2/3 Sito Community in Drupal - open atrium

• Struttura ad “intranet”

• Grafica differente dal sito istituzionale• Nessuna funzionalità “social”

• Fortemente orientato alla collaborazione (come da “natura” di OA)• Più semplicemente: non faceva quello che noi volevamo

martedì 6 dicembre 11

Che cosa avevamo?

3/3 Sito Summits in Drupal COD (Conference Organiser)

• Sito per conferenze

• Grafica differente• Nessuna funzionalità “social” e nessuna integrazione con community

• “Stand-alone” - installazione da replicare per ogni summit• Più semplicemente: non faceva quello che noi volevamo

martedì 6 dicembre 11

Cosa abbiamo fatto?

Sito istituzionaleCommunity

Summits

martedì 6 dicembre 11

Cosa abbiamo fatto?

Sito istituzionale

CommunitySummits

martedì 6 dicembre 11

Cosa abbiamo fatto?

Sito istituzionale Community

Summits

martedì 6 dicembre 11

Cosa abbiamo fatto?

Sito istituzionale Community Summits

martedì 6 dicembre 11

Cosa abbiamo fatto?

Sito istituzionale Community Summits

martedì 6 dicembre 11

Cosa abbiamo fatto?

Sito istituzionale Community Summits

martedì 6 dicembre 11

Cosa abbiamo fatto?

Sito istituzionale Community Summits

EAI Portal

martedì 6 dicembre 11

Cosa abbiamo fatto?

Sito istituzionale Community Summits

eai.eu

EAI Portal

martedì 6 dicembre 11

Perchè lo abbiamo fatto? Perché con Drupal?

1. Open Source: sappiamo cosa “compriamo”, ed è anche a costo inferiore!2. Aggiornamenti continui del core e dei moduli (relativi a sicurezza ed a nuove funzionalità)3. Moduli già disponibili gratuitamente per fare praticamente tutto e...4. ...se non esistono li creiamo noi!5. Community! Se non sappiamo fare qualcosa, sicuramente c’è qualcuno che lo sa fare, o molto probabilmente ha già scritto come farlo!

martedì 6 dicembre 11

Perchè lo abbiamo fatto? Perchè con Drupal?

6. Minori vincoli con le Web Agency: si può sviluppare in parallelo. Se si hanno le competenze si può fare quel che si vuole, quando si vuole e come si vuole7. È una garanzia: aziende, sviluppatori e semplici appassionati hanno investito in Drupal in ogni parte del mondo e... 8. ... siamo in buona compagnia! La Casa Bianca, Symantec, Telecom Italia, The Economist, Euractiv, alcuni siti del Governo Italiano e della Commissione Europea

martedì 6 dicembre 11

Drupal sempre e comunque?

Drupal è un fantastico Content Management System (CMS) e Content Management

Framework (CMF), ma bisogna saper scegliere lo strumento adatto a ciò che serve

Quando è importante pensarci?

Alcuni esempi:

martedì 6 dicembre 11

Drupal sempre e comunque?

• Se ci serve solo un blog o un mini-sito, perché non Wordpress o Joomla! ?

• Se ci serve un sito medio / molto complesso ma non abbiamo competenze,

budget o risorse IT per sviluppare moduli e customizzare come vorremmo

• Se vogliamo scegliere tra centinaia di templates a 40$ “out of the box” e

vogliamo avere un sito fantastico in 30 minuti

• Se odiamo il PHP più di ogni altra cosa al mondo!

Drupal è un fantastico Content Management System (CMS) e Content Management

Framework (CMF), ma bisogna saper scegliere lo strumento adatto a ciò che serve

Quando è importante pensarci?

Alcuni esempi:

martedì 6 dicembre 11

Per tutto il resto c’è Drupal

martedì 6 dicembre 11

Problemi di integrazione

Mantenere un’applicazione unica è più efficiente

n siti satelliti sparsi portano a:

• grafica non omogenea• Nessuna funzionalità social

• Difficile personalizzazione• Difficoltà nella manutenzione e tecnologie sparse

Centralizzando l’applicazione

• grafica omogenea• Contenuti facilmente relazionabili

• Personalizzazione libera• Un “blocco” unico da gestire con la stessa complessità e tecnologia

martedì 6 dicembre 11

Dalla progettazione ad EAI

• Il cliente è esigente e molto competente a livello tecnologico

• Parte delle tecnologie sono proprietarie e sviluppate internamente• Si usano linguaggi menu utilizzati nella norma (LISP)

• Si ha uno sviluppo graduale del progetto con obiettivi predeterminati

Cosa ci troviamo di fronte:

martedì 6 dicembre 11

Dalla progettazione ad EAI

Il nostro flusso di lavoro è stato:

• Dialogo con EAI

• Comprensione dei bisogni• Analisi fianco a fianco con EAI

• Progettazione di User Experience, Wireframe e struttura dell’informazione fatti su misura per Drupal

• Selezione degli strumenti più efficaci da utilizzare• Implementazione con forte propensione al team working

martedì 6 dicembre 11

Le sfide incontrate e risolte

• Software proprietario sviluppato internamente in LISP

• Tecnologia non comune nella community Drupal• Gestione degli utenti e dei contenuti centralizzata

• Utilizzo di PostgreSQL lato Drupal• Sistema di SSO sul network

Integrazione con Lisperator e PostgreSQL:

martedì 6 dicembre 11

Sviluppo e Rilascio a Fasi Indipendenti

Il progetto non è stata pensato monolitico ma suddiviso in 3

fasi distinte

martedì 6 dicembre 11

FASE 1: Portale istituzionale EAI

martedì 6 dicembre 11

FASE 2: Community / Social Network

martedì 6 dicembre 11

FASE 3: Mini-siti per i Summit

martedì 6 dicembre 11

Come è stato possibile un rilascio a fasi?

1. Per poter lavorare in un team di lavoro distribuito e per fare in modo che anche il cliente abbia accesso diretto al codice è stato introdotto l’uso del software di versionamento GIT

2. Features è uno strumento (sotto forma di modulo) che ci permette di di isolare dei gruppi di entità appartenenti alla struttura di Drupal e raccoglierli in un pacchetto che può essere replicato ed installato su diverse istanze di Drupal.

Sono stati utilizzati due strumenti principali:

martedì 6 dicembre 11

Come è stato possibile un rilascio a fasi?

• Modifiche atomiche e sempre allineate

• Differenziare i compiti di ogni features• Lavorare in team su parti specifiche dell’applicazione senza influenzare le altre parti e quindi gli altri sviluppatori• Sito sempre online anche durante le modifiche (con alcune piccole eccezioni)

L’uso di Features e GIT ci ha permesso:

martedì 6 dicembre 11

martedì 6 dicembre 11