Nell’introduzione a un recente convegno dedicato all’open source e ai modelli di business relativi al mondo dell’offerta, nonché ai diversi criteri di adozione presso i differenti segmenti di mercato, tenutosi presso il Politecnico di Milano, Carlo Ghezzi, docente di Ingegneria del Software, ha illustrato come l’open source (Os) rappresenti un punto di contatto molto forte tra mondo accademico e mondo professionale. “Durante l’insegnamento è molto difficile trovare esempi “viventi” di software da mostrare agli studenti (a differenza di quanto avviene in altre discipline scientifiche). I software usati in ambito di produzione, oltre a essere troppo costosi per un ente di ricerca, sono sempre delle scatole chiuse, non sezionabili e analizzabili. Il software aperto fornisce invece esempi visibili e studiabili. E spesso si tratta di ottimi esempi in quanto condensano molto spesso buone pratiche e standardizzazioni”, dice Ghezzi.
Il software è come un sistema evolutivo: “non è mai stabile ma evolve sempre nel tempo; quindi non è importante studiare il singolo esemplare, quanto la storia della sua evoluzione, cosa che è disponibile tramite le librerie e i repository. Per la prima volta esiste un laboratorio universale di studio”, ha precisato Ghezzi. “Per quanto riguarda la ricerca, l’indisponibilità fino a pochi anni fa di oggetti di studio (software sorgente) su sistemi reali ha sempre rappresentato un problema. Era necessario ricorrere a piccoli studi in vitro che avevano scarso significato per la limitatezza degli oggetti. Oggi il problema è stato superato grazie alla disponibilità di dati reali. È ora possibile verificare e misurare oggetti e dati effettivi”.
Il ruolo della ricerca applicata è quello di comprendere tutti i modelli esistenti, distinguere il valore di business, valutare costi e benefici. Punto importante in questo approccio è quello di mantenersi lontani da “guerre di religione”, che purtroppo hanno in passato infiammato la discussione riguardo al software open source. Ciascun approccio al software deve essere analizzato per i suoi vantaggi e svantaggi e come tale è sempre rispettabile in linea di principio.
Definire l’Open Source
Anthony Wasserman, executive director Center for Open Source Investigation, Carnagie Mellon West, fornisce una triplice definizione di open source: software che rende disponibile a tutti il codice sorgente completo dei programmi eseguibili; software fornito insieme a una licenza che illustra le diverse modalità per il corretto uso e redistribuzione; software supportato da una comunità di persone che vi contribuiscono.
Tutti usiamo software open source, spesso anche senza saperlo. Yahoo funziona su BSD (Berkeley Software Distribution; l’acronimo si riferisce alle distribuzioni di codice sorgente dell’Università della California, Berkeley); Google su Apache (una delle piattaforme server web open source più diffuse in grado di operare da sistemi operativi Unix-Linux e Microsoft), e Firefox è il secondo browser più utilizzato.
Per quanto riguarda l’infrastruttura It (web server, database, sistemi di content management, email server, strumenti di collaborazione) il software Os è già estremamente diffuso. Allo stesso modo è ampiamente utilizzato nello sviluppo (compilatori, ambienti di sviluppo e testing, debugging, controllo delle versioni e così via). Lo stadio successivo è una maggiore diffusone nel mondo delle applicazioni (Crm, applicativi finanziari, gestionali, applicativi verticali, gestione delle immagini, prodotti di elaborazione audio/video).
A seconda del tipo di licenza associata al prodotto, alla disponibilità più o meno completa del codice sorgente e al tipo di comunità che ne sostiene lo sviluppo, il software può essere più o meno “aperto”. Non esiste infatti soluzione di continuità tra prodotti tipicamente considerati open source come Apache e software proprietario in senso stretto come Microsoft Office. Questa precisazione è importante nella valutazione di qualità, costi e vantaggi dei prodotti software.
Quali modelli di business sono applicabili?
Secondo Wasserman i modelli di business legati alla produzione e distribuzione di software open source sono molteplici, in particolare se ne possono identificare almeno nove. Il primo, Subscription, è un modello secondo il quale gli utenti possono ricevere aggiornamenti e assistenza sul software open source mediante l’iscrizione a un servizio in abbonamento. Esempi tipici di modelli a sottoscrizione sono i servizi di RedHat e Novell. Il secondo modello è quello del Training. La formazione comprende libri, riviste, corsi, eventi e tutto l’indotto che un nuovo prodotto (spesso abbastanza complicato da utilizzare) richiede. O’Reilly negli Stati Uniti o Apogeo in Italia sono solo alcuni esempi. C’è poi il modello Packaging secondo il quale è possibile usare prodotti open source all’interno di prodotti commerciali (ovviamente nel rispetto delle clausole di licenza). SugarCRM è un esempio di applicativo di customer relationship management basato su un “core” open source. Hosting è il modello in cui il software open source è spesso la base su cui vengono realizzati e forniti servizi in hosting o in ASP (per esempio database hosting). Lo stesso business di Google e Yahoo è in hosting su software open source.
Un altro esempio di distribuzione viene dal Dual license, secondo questo modello viene resa disponibile sia una versione gratuita (libera) sia una versione a pagamento. Quest’ultima serve per chi usa il software per attività commerciali (soluzione adottata per esempio da MySQL). Ma i modelli di distribuzione possono anche prevedere lo sviluppo di standard aperti e di altre attività di azienda, come nel caso di Ibm o sviluppo di prodotti commerciali che migliorano e completano prodotti open source (per esempio Oracle).
Gli ostacoli in azienda
I timori delle aziende sono diversi, anche se oggi sono minori rispetto al passato, e riguardano soprattutto le funzionalità (che si teme possano essere inferiori rispetto ai prodotti commerciali) l’affidabilità e la disponibilità di supporto. Tipicamente i reparti IT desiderano una infrastruttura uniforme e un completo controllo dei pc in azienda per una maggiore semplicità di gestione. Ci sono poi ragioni di ordine economico: l’adozione di prodotti diversi richiede formazione sia per i dipendenti sia per gli amministratori di sistema. Alcune aziende hanno una policy: non usano software privi di supporto commerciale. Infine ci sono i dubbi legati alle modalità di licenza e la corretta adozione in azienda.
Qualità e costi del software open source
È convinzione comune che il software open source abbia una qualità maggiore e costi ridotti. La qualità maggiore, secondo l’opinione diffusa, deriverebbe dal fatto che la comunità di sviluppo, libera da vincoli e scadenze commerciali, sarebbe più orientata alla realizzazione di un prodotto migliore che non a soddisfare una esigenza di mercato. I costi di sviluppo, d’altra parte, essendo assorbiti dal lavoro della comunità non verrebbero scaricati sugli utenti. Secondo Alfonso Fuggetta, amministratore delegato di Cefriel, questa convinzione comune è fuorviante e potenzialmente pericolosa. “Oggi il software è considerato una commodity quasi gratuita (secondo lo slogan: It doesn’t matter). Il punto di partenza su cui bisogna ragionare, invece, è che il software non è gratuito. Anzi, più è di qualità, più costa”. Il software è un’opera d’autore: il lavoro è svolto da persone e come tale ha un valore e un costo. Quando il vero valore del software viene nascosto perché i costi sono assorbiti dalla comunità, il mercato stesso ne risente e le aziende si ritrovano a competere sul prezzo e non sulla qualità.
Andando a esaminare più nel dettaglio come effettivamente si svolgono le pratiche di sviluppo, si scopre che molti sviluppatori open source sono pagati da aziende per svolgere il loro lavoro. Inoltre il coordinamento distribuito tende a essere più difficile e oneroso rispetto a modelli organizzativi strutturati. Gli stessi meccanismi di governance meno formali potrebbero inoltre portare a rinunciare a controlli di qualità di un certo livello.
Secondo una ricerca svolta dal Politecnico di Milano, i costi effettivi dello sviluppo open source (misurati con il numero di programmatori impiegati per una determinata quantità di tempo e un numero identificato di nuove funzionalità realizzate) sono in media più alti rispetto al software proprietario. Analizzando progetti software diversi, che hanno modelli di sviluppo, di governance e di contribuzione diversi, si vede che la distizione tra software aperto e chiuso non è più così netta: l’intervento delle aziende che sponsorizzano i progetti e l’adozione di pratiche di leadership più o meno strutturate sono fattori che influenzano qualità e costi: maggiormente un progetto adotta pratiche open source, più si alza la qualità ma si alzano anche i costi. Un aspetto importante da rilevare è che nell’open source ogni versione ha una qualità maggiore della precedente. Il susseguirsi di nuove release in tempi ravvicinati (senza vincoli commerciali e distributivi) consente agli sviluppatori di correggere e migliorare ogni volta il codice. Il software proprietario è invece dipendente da bug fixes, mentre la qualità aumenta solo quando c’è una vera e propria reingegnerizzazione.
Perché adottare software open source?
Dal punto di vista di una software house la qualità migliore è visibile a una comunità più ampia, risultando in un’azione di marketing virale. Inoltre la comunità è molto più veloce ed efficiente a fornire feedback. È una fonte di informazione che aiuta a far evolvere il software. Questo velocizza e facilita l’internazionalizzazione dei progetti software.
Dal punto di vista di un’azienda, invece, la maggiore qualità di progettazione rappresenta un primo vantaggio: la comunità stessa fa emergere il software di migliore qualità, secondo una selezione naturale, e supporta l’azienda che vuole adottarlo grazie a forum e mailing lists. Infine, a seconda del modello di governance utilizzato, il costo totale di acquisizione (Tco) potrebbe essere più basso.
Secondo Robert Alexander (nella foto), executive It architect di Ibm, “lo sviluppo open source è un’istanza speciale di un approccio più ampio che è quello sviluppo in comunità (come la comunità scientifica). Il valore di questa forma di sviluppo rispetto a quello diretto da un’entità centrale, risiede nella tendenza a far emergere più rapidamente i requisiti degli utenti. Nell’industria automobilistica – prosegue Alexander – alcune innovazioni come il riscaldamento, l’avviamento elettrico e il bagagliaio sono stati ideati dagli utenti, non dagli ingegneri delle case automobilistiche”. In questa direzione l’interesse di Ibm è estremamente chiaro: far emergere l’innovazione da parte degli utenti. I driver economici che muovono Ibm nel sostenere oltre 150 progetti open source sono tre: cost reduction (l’Os consente di ridurre i costi), direct revenue (modelli di subscription e consulenza producono revenue dirette), influenced revenue (Linux permette di vendere una certa categoria di hardware).
Come integrare l’open source in una strategia It
Paolo De Nardi (nella foto a destra), direttore del Dipartimento di Information and Clinical
Technology dell’Azienda Ospedaliera di Padova, spiega come l’adozione di software open source in una struttura estremamente articolata e complessa come l’Azienda abbia rappresentato un successo. Una struttura comprendente novemila dipendenti, 3500 Pc, 120 server, un totale di 20 terabyte di immagini radiologiche e cento applicativi verticali di fornitori diversi interconnessi tra loro è certamente sfidante. “La scelta di un sistema open source per la gestione delle immagini è stata influenzata da quattro motivazioni principali”, dice De Nardi. “In primo luogo, trattandosi di una soluzione gratuita, la pubblica amministrazione può utilizzate procedure semplificate per l’acquisizione. Questo ha reso agile e velocizzato enormemente il processo. Secondo, il software open source ha come caratteristica distintiva quello di adottare standard riconosciuti, con il conseguente obbligo verso tutti gli altri fornitori di seguire gli stessi standard. Terzo, una volta obbligati tutti i fornitori a lavorare con standard riconosciuti, è possibile sostituire ogni singolo componente con uno equivalente (sia esso open source o proprietario). Liberati quindi dal “ricatto del pacco unico” si è liberi di scegliere le soluzioni più efficienti e affidabili per ciascun ambito. Infine, avendo a disposizione più fornitori tra cui scegliere (e non solo il proprietario del software), il livello di qualità e assistenza ne risente positivamente”.
L’adozione di standard aperti è uno punti chiave anche secondo Ibm. “L’azienda deve essere libera di valutare le opzioni migliori tra software aperto e proprietario, garantendo flessibilità, interoperabilità e facilità di migrazione. La scelta di un prodotto open source deve comunque essere fatta tenendo in considerazione il livello di maturità della comunità che lo sostiene, in quanto sarà la stessa comunità a fornire informazioni, supporto, aggiornamenti”, dice Alexander. L’esistenza di un ecosistema di ISV (independent software vendor) e business partner deve essere valutata attentamente in modo da garantire una continuità di servizio e di supporto. È importante poi conoscere approfonditamente le opzioni di licenza del prodotto software scelto, in modo da adattare le policy aziendali al rispetto di tali termini. Prima di adottare software open source in produzione è opportuno utilizzare ambienti di test e progetti pilota. I risultati di questi test, insieme a fattori tecnici e di business orienteranno poi la scelta finale.
SUN compra mysql, il database open source più usato al mondo
Che Sun MicroSystems sia ormai da tempo impegnata in ambito open source su più fronti (anche con l’intento di generare nuovo business e fatturato) è cosa nota. Così l’annuncio dello scorso 16 gennaio, per i più attenti, non è stato poi così clamoroso. Sun, infatti, ha concluso l’accordo di acqusizione di MySQL AB, la società che detiene i diritti legati al codice di uno dei più noti database mondiali (MySQL, appunto, che conta, secondo la società, oltre 11 milioni di installazioni) distribuito sotto forma di Licenza GNU, utilizzato, soprattutto, per la costruzuione di siti web dinamici. L’operazione ha un valore complessivo di un miliardo di dollari (che Sun esborserà in 800 milioni cash e 200 a copertura dei debiti) e sancisce l’impegno del colosso statunitense a voler diventare sempre più un vendor in ambito open source ma, soprattutto, a voler entrare pesantemente in un mercato, quello del database enterprise, che secondo gli analsiti di settore registra volumi d’affari intorno ai 15 miliardi di dollari l’anno. Il Ceo di MySql, Marten Mickos, entrerà nel gruppo Sun a transazione conclusa (entro la fine del 2008) ma Sun annuncia che l’offerta di servizi ai clienti MySql inizierà prima della conclusione dell’operazione (che vedranno l’integrazione del database open source all’interno del sistema operativo Solaris e sui server Sun). (N.B.)
Virtualizzare in open source
Lo scorso dicembre Sun MicroSystems ha reso disponibile Sun xVM Ops Center. Si tratta di una soluzione per l’automazione e la gestione dei data center che rappresenta un componente fondamentale dell’offerta Sun per la server virtualization e, come ha dichiarato Franco Roman, direttore marketing di Sun Microsystems Italia, “è il primo framework di virtualizzazione e di management Open Source, una proposta coerente al nostro obiettivo di far in modo che ciò che realizziamo sia adottato dalla più vasta comunità possibile di sviluppatori”. Sun pertanto rilascerà il codice sorgente di xVM Ops Center alla comunità OpenxVM.org nei termini della GNU General Public License v3, senza ovviamente rinunciare ad una distribuzione, per così dire, proprietaria, rivolta agli utenti di classe enterprise e garantita nel supporto e negli aggiornamenti dalla sua struttura. In tema di virtualizzazione, Sun ha una solida esperienza e con xVM Server già offre un hypervisor in grado di virtualizzare ambienti Solaris, Linux e (prossimamente) Windows. La nuova soluzione aggiunge alle funzioni di virtualizzazione funzioni di lifecycle management quali il rilevamento delle risorse elaborative e storage, il monitoraggio delle prestazioni, il provisioning del sistema operativo, la gestione delle patch e del firmware e altro ancora. (G.C.B.)
La ricetta DI TechEdge: approccio OS su software proprietario, in ottica Web 2.0
La diatriba sulla scelta fra software proprietario e open source è da anni affrontata in modo sempre piuttosto vivace e i sostenitori di entrambe le linee propongono sempre buoni argomenti a sostegno dell’una o dell’altra soluzione. Esiste però un’area di collaborazione poco studiata, che riguarda i passi compiuti dai grandi produttori verso la creazione di community a “contorno” del software proprietario. È il caso della communty SDN (SAP Developer Network), creata dal gigante tedesco come web backbone della sua comunità tecnologica. È un caso paradigmatico, in quanto probabilmente nessun software è meno soggetto all’attacco dei paladini dell’open source quanto un grande ERP, dove l’integrazione e la complessità rendono veramente complicato un approccio open source. La community SDN è invece costruita “a supporto”, e raccoglie suggerimenti e iniziative attraverso blog, wiki e tutti gli altri strumenti tipici del web 2.0, fino ad arrivare ai primi approcci di sviluppo condiviso (per esempio di utilità riusabili in vari contesti).
Pioniere di questo approccio è l’italiana TechEdge, che ha costruito una utility mettendo a disposizione della comunità il framework di sviluppo, ponendosi così come uno dei principali contributor europei della SDN (rete che ormai ha superato gli 800 mila utilizzatori). “Tale applicazione, chiamata SAP Elegant Finder (nata il 31 agosto 2007 e visitabile al link: http://code.google.com/p/sapelegantfinder), perfeziona la ricerca di dati all’interno degli applicativi SAP (per gli addetti ai lavori sono i cosiddetti “match code”), migliorando notevolmente la user experience”, spiega Enrico Negroni, presidente della società italiana. “L’utente si trova infatti di fronte funzionalità simili a quelle di ricerca con motori quali Google, che facilitano il suo modo di operare”.
Thomas Jung, Netweaver Product Manager dei SAP Labs di Chicago, in un video pubblicato all’interno della community sottolinea come “Al di là dell’applicazione “davvero elegante”, è l’approccio open source che rende interessante questo progetto. E, in questo contesto, quel che differenzia l’approccio TechEdge è che viene messo a disposizione della comunità un framework di sviluppo, e non una semplice applicazione”. TechEdge, infatti, si è limitata a scrivere il SAP Elegant Finder per la ricerca di “nazioni, lingue e valute”, lasciando alla comunità i tools per sviluppare allo stesso modo qualsiasi ricerca su altri codici (fornitori, clienti, materiali, ecc.). “Da un punto di vista squisitamente italiano-centrico, va osservato come TechEdge sia l’unico partner SAP nazionale ad avere partecipato seriamente a questa community, senza dietrologie o paure di condividere il sapere. E siamo convinti che questo approccio paghi sia in termini di competenze, mutuamente arricchite da tutti i partecipanti mondiali, sia in termini di immagine verso il mercato: niente uso di rendite di posizione, approccio basato sulla fiducia nella propria superiore competenza e su standard confrontati a livello internazionale”, conclude Negroni.
Al SAP Elegant Finder si è poi aggiunto SAP MP3, un altro progetto open source che innova i sistemi SAP introducendo l’esportazione di dati di Business (per esempio il catalogo prodotti o l’anagrafica dei dipendenti) in forma di librerie MP3 scaricabili addirittura su iPod ). (N.B.)
Il Demo film che mostra il funzionamento di SAP Elegant Finder è visibile nella SDN community al seguente link: