1. ZOPE: la storia - da software proprietario a free softwa
Transcript
1. ZOPE: la storia - da software proprietario a free softwa
ZOPE applicazioni web evolute con strumenti open source Convegno "Open source: il software libero favorisce lo sviluppo" Parma, 15 aprile 2003 Fabio Bottega ([email protected]) 1. ZOPE Zope consente di realizzare applicazioni web complesse, sicure e dinamiche per le aziende che desiderano sviluppare il proprio business in Internet. E-commerce, web publishing, e-learning, comunità, intranet e molto altro © Tecnoteca srl 2003 2. ZOPE: cos’è Zope è: un ambiente di sviluppo un ambiente di esercizio un application server un web server una piattaforma di web publishing un database ad oggetti un sistema operativo di rete © Tecnoteca srl 2003 3. ZOPE: nel dettaglio ZOPE (Z Objects Publishing Enviroment) è una applicazione open source interpiattaforma. E’ uno strumento maturo, testato per la costruzione di applicazioni Web potenti, modulari, dinamiche, a carico intenso. Zope ha una struttura ad oggetti che permette la gestione separata degli elementi che compongono le pagine web (dati, logica, presentazione). Ha un database ad oggetti nativo - Zodb - e si interfaccia con tutti i principali database relazionali (MySQL, Postres, Oracle) Il prodotto si amministra e si utilizza da un browser Web, attraverso una interfaccia intuitiva. Zope viene distribuito con licenza ZPL © Tecnoteca srl 2003 4. ZOPE: come nasce Nel 1996 l’azienda americana Digital Creation realizza uno strumento di sviluppo per il web chiamato Bobo che distribuisce come prodotto open source. Nel 1997 realizza Principia, una potente e stabile piattaforma di sviluppo per applicazioni web, basata su Bobo, e la distribuisce come prodotto proprietario. Nonostante l’alta qualità, Principia non riesce a trovare una giusta collocazione nel mercato già saturo degli Application Server. Nel 1998 la Digital Creation decide di cercare capitale di rischio e l’esperto convocato consiglia la svolta strategica: riunire Bobo, Principia e i moduli del database in un unico prodotto da distribuire con codice aperto. Nasce ZOPE che è l’acronimo di Z Object Publishing Environment. A 5 anni di distanza si può giudicare vincente la scelta della Digital Creation. © Tecnoteca srl 2003 5. ZOPE: distribuzione open source - una scelta vincente per la Zope Corporation notevole crescita del numero degli utilizzatori del software con aumento del brand nascita di una estesa comunità di sviluppatori che risulta essere un potente strumento di marketing virale garanzia di continuità di sviluppo del software, di mantenimento e di correzione degli errori a costo zero aumento del know how dell’azienda commercializzazione di applicazioni evolute che consentono un alto ritorno economico © Tecnoteca srl 2003 6. ZOPE: l’apporto degli sviluppatori Gli sviluppatori che contribuiscono all’evoluzione del software di Zope sono oltre 20.000 sparsi in tutto il mondo. Gli sviluppatori contribuiscono alla crescita di Zope sia attraverso l’implementazione di nuovi prodotti, sia attraverso l’individuazione e la correzione di errori del codice. La comunità internazionale degli sviluppatori è attiva sul sito www.zope.org La comunità italiana si incontra sul sito www.zope.it © Tecnoteca srl 2003 7. ZOPE: il mercato Zope è l’ Application Server Open Source più diffuso. Si posiziona nella fascia “enterprise”. I principali competitors di Zope sono Vignette, Documentum, divine e Interwoven, ma non esiste un’altra applicazione open source con le caratteristiche avanzate di Zope. E’ utilizzato da grandi organizzazioni commerciali ed editoriali nonché dagli ambienti istituzionali e governativi, anche europei, per la sue alte prestazioni e per le sue caratteristiche tecnologiche. La garanzia di trasparenza data dalla distribuzione con codice aperto costituisce un ulteriore punto a favore di Zope. © Tecnoteca srl 2003 8. ZOPE: i riconoscimenti © Tecnoteca srl 2003 9. ZOPE: vantaggi per gli utilizzatori I principali vantaggi nell’utilizzo di Zope 1. Gestione contenuti dinamici: ● ● ● ● ● ● aggiornamento autonomo contenuti editor visuale integrazione delle informazioni contenute in database esterni funzioni di ricerca avanzate integrazione contenuti di natura differente workflow 3. Scalabilità: ● ● 4. Servizi di rete: ● ● ● gestione accessi e permessi utenti regole di sicurezza flessibili supporto standard web (XML, Soap, RDS, ecc.) 5. Facilità di gestione: ● ● 2. Sicurezza: estensione delle applicazioni facilità di upgrade piattaforme software e hardware ● ● ● ● editing remoto via browser ambiente unico integrato localizzazione riutilizzo del codice versioning export e back-up © Tecnoteca srl 2003 10. ZOPE: caratteristiche tecniche Le principali caratteristiche di ZOPE comprendono: possibilità di utilizzo su piattaforme diverse: Windows, Linux, Solaris, Hpux, organizzazione in gerarchie di oggetti, con elementi nativi di tipo folder, documents, images, mailhost, etc, sofisticata gestione interna delle problematiche di sicurezza, operatività completa attraverso un qualsiasi browser, linguaggi DHTML e TAL per la costruzione dinamica delle pagine Web, linguaggio Python per la implementazione delle classi di base dell'applicazione, supporto di XML e DOM interfaccia GUI ed estetica omogenea, database object oriented interno (ZODB), connettività con i principali database relazionali (MySQL, Postgres, Oracle SQLServer, Informix, DB2, SAP DB, Sybase, ODBC) Web server interno e supporto dei principali WebServer presenti sul mercato, supporto nativo protocollo SSL (Secure Sockets Layer), alte prestazioni in configurazione base e disponibilità del modulo Zope Enterprise Option per siti ad altissima intensità di traffico sistemi di autenticazione ZODB, RDB Table, LDAP, IMAP, SMB, / etc/passwd protocolli di rete HTTP(S), FTP, WebDAV, SMTP, IMAP, POP, XMLRPC, SOAP © Tecnoteca srl 2003 11. ZOPE: il linguaggio di sviluppo Python Python, il linguaggio di sviluppo normalmente utilizzato con ZOPE, è un linguaggio di scripting orientato agli oggetti, che somma la flessibilità e la semplicità dei linguaggi di scripting con la potenza di elaborazione e la ricchezza di funzioni dei più tradizionali linguaggi di programmazione di sistema. Python è un linguaggio di sviluppo Open Source, portabile (è scritto in “C”), veloce, efficiente, dotato di un proprio gestore della memoria (garbage collector), con una sintassi chiara e con disponibilità di un gran numero di librerie standard e di terze parti. Grazie a queste caratteristiche molti grandi attori del mercato informatico hanno scelto di utilizzare Python nei più svariati campi di applicazione © Tecnoteca srl 2003 12. ZOPE: i prodotti Nell’ambiente di sviluppo Zope sono disponibili numerosi moduli chiamati “prodotti” che possono essere aggiunti al database ad oggetti di Zope e offrire nuove funzionalità. I prodotti sono realizzati da una attiva comunità costituita da migliaia di sviluppatori in tutto il mondo. I prodotti, di fatto, sono degli applicativi che vengono integrati all’ambiente base di Zope estendendone le prestazioni e aggiungendo nuove funzionalità al nucleo di base. © Tecnoteca srl 2003 13. ZOPE: i prodotti – alcuni esempi Squishdot per la pubblicazione news, gestione di forum e weblog FlexFAQ, per la creazione e gestione di FAQ QSurvey, XQuizz, ZPesquisa per la gestione di sondaggi Issue Tracker Product per la gestione del bug tracking Localizer, Home Translator per la gestione multilingua Formulator, Gfoler per la creazione di form e moduli on line Parsed XML per l’integrazione e gestione di file XML Event Calendar per la gestione di eventi e visualizzazione calendario RDFSummary per il prelevamento e visualizzazione di contenuti di altri siti disponibili nel formato RSS Yomari Works, proiektor per il workgroup Fle3 per l’e-learning © Tecnoteca srl 2003 14. ZOPE: Plone Fra tutti i prodotti di Zope, sicuramente il numero uno. Plone è E’ un Content Management System completo. E' ideale come server intranet, come sistema di publishing e come strumento di groupware per collaborazioni remote. E' un CMS versatile che può essere utilizzato in diverse situazioni permettendo la creazione veloce ed organica di siti e portali dinamici ed evoluti. Possiede in modo nativo un motore di workflow, la gestione della sicurezza e degli utenti, una serie di oggetti per la gestione di contenuti già configurati (notizie, documenti, eventi, ecc.) e il supporto multilingua. © Tecnoteca srl 2003 15. ZOPE: caratteristiche di Plone Gestione contenuti dinamici Editing remoto Elevata personalizzazione Funzionalità per la collaborazione Facilità di configurazione e amministrazione Gestione utenti Workflow www.plone.org Riutilizzo del codice, oggetti modulari Indicizzazione contenuti e funzioni di ricerca Supporto database relazionali esterni © Tecnoteca srl 2003 16. ZOPE: applicazioni business – intranet, extranet e portali aziendali Diffondere informazioni, comunicare, condividere applicazioni è una esigenza sempre più diffusa nelle aziende. Zope consente di sviluppare portali aziendali personalizzati in base alle diverse esigenze aziendali per organizzare le informazioni e i dati disponibili e integrare le diverse applicazioni. Tramite il portale aziendale sarà possibile: ● ● ● ● ● ● rendere disponibili servizi di navigazione per raggiungere informazioni avviare applicazioni interagire con dati aziendali identificare collaboratori condividere dati espletare processi decisionali © Tecnoteca srl 2003 17. ZOPE: applicazioni business – gestione documentale e knowledge management La gestione della conoscenza aziendale in un mercato ricco di dati e informazioni e con complesse relazioni intra ed extra aziendali impone alle aziende l’utilizzo di strumenti tecnologici avanzati con caratteristiche di sicurezza, potenza e flessibilità. Zope è la soluzione ideale per realizzare sistemi per la gestione documentale e knowledge management. Zope mette a disposizione strumenti per l’acquisizione, la codifica, l’archiviazione, l’indicizzazione, la gestione, la condivisione, la distribuzione di informazioni. Sistemi integrati di workflow e di collaborazione completano l’offerta per una “gestione della conoscenza” organica e funzionale. © Tecnoteca srl 2003 18. ZOPE: applicazioni business - la soluzione per la gestione dei contenuti Zope è un CMS potente e versatile. Un CMS – Content Management System - è un insieme di strumenti per amministrare e gestire i contenuti del sito web in modo semplice e veloce e, soprattutto, in modo autonomo, cioè senza l'ausilio di personale tecnico. Attraverso un browser, Zope consente a chiunque sia autorizzato, indipendentemente dalla sua posizione geografica, dall'esperienza e dalle sue conoscenze informatiche, di contribuire personalmente alla definizione e alla pubblicazione dei contenuti del sito. L’aggiornamento dei contenuti può avvenire tramite degli editor visuali per aree del sito che richiedono più “libertà di azione”, o attraverso l’utilizzo di template, per la gestione guidata delle aree che devono rispettare vincoli grafici e aderenza a standard comuni. © Tecnoteca srl 2003 19. ZOPE: applicazioni business - il motore di workflow La gestione dei contenuti si compone di attività sequenziali, correlate da precise relazioni e funzionalità. Zope ha incorportato un motore di workflow per la definizione dei processi, l’attribuzione di ruoli e responsabilità e la gestione del flusso delle attività. Documenti, informazioni e attività passano da un utente all'altro in base a regole più o meno strutturate, gestiti e governati da un sistema interno. Questo consente ad operatori che lavorano in luoghi diversi e con ruoli diversi di partecipare e contribuire allo stesso progetto. © Tecnoteca srl 2003 20. ZOPE: applicazioni business – commercio elettronico Zope permette di realizzare sistemi di ecommerce con funzionalità avanzate. Il framework di Zope consente di sviluppare applicazioni per la presentazione e gestione di prodotti, le transazioni commerciali, l’assistenza al cliente. ● ● ● ● ● ● ● ● ● gestione cataloghi multipli integrazione database esterni funzioni di ricerca avanzate profilazioni utenti gestione della sicurezza gestione ordini on line interfacciamento magazzino e applicazioni gestionali statistiche comportamento clienti help desk e post vendita © Tecnoteca srl 2003 21. ZOPE: applicazioni verticali La potenza e la versatilità di Zope consentono la realizzazione di applicazioni web verticalizzate per determinati settori di attività: Gestione cataloghi on line Reportistica Applicazioni PDA Corsi on line Strumenti di fidelizzazione clienti Applicazioni per la sanità Applicazioni per la ricerca universitaria © Tecnoteca srl 2003 22. ZOPE: esempi di realizzazioni Il portale del governo autriaco Portale dedicato allo shopping Ministero degli Interni francese http://www.oesterreich.at http://www. ishophere.com http://www.interieur.gouv.fr The European Free Trade Association LION Life Science Informatics VistaSource company http://secretariat.efta.int http://www.lionbioscience.com http://www.vistasource.com © Tecnoteca srl 2003 23. ZOPE: bibliografia ZOPE Pelletier Michel; Latteier Amos - McGraw-Hill Libri Italia, 2002 Zope Developer's Handbook John D. Rowell - Sams 2002 Zope Bible Scott Robertson, Michael Bernstein - John Wiley e Sons 2002 Zope: Web Application Development and Content Management Steve Spicklemire, Kevin Friedly, Jerry Spicklemire, Kim Brand - New Riders Publishing 2001 The Book of Zope Beehive - No Starch Press 2001 Zope Web Application Construction Kit Martina Brockmann, Sebastian Luhnsdorf, mar Pratt, Mark Pratt, Katrin Kirchner - Sams 2001 The Zope Book Amos Latteier, Michel Pelletier - New Riders Publishing 2001 © Tecnoteca srl 2003 24. ZOPE – Case Study – portale turistico Realizzazione di un portale turistico per la Provincia di Padova: Enti pubblici Gestione dinamica dei contenuti Sistema di workflow per pubblicazione notizie, eventi e redazionali Booking on line Gestione degli accessi differenziata per tipologia di utente Servizi per la comunity (newsletter, forum, sondaggi, chat) Il sito è realizzato con Plone © Tecnoteca srl 2003 25. ZOPE – Case Study – sito società di consulenza aziendale Realizzazione del sito della società di consulenza aziendale Alta Direzione srl di Milano: Servizi Database on line libri e pubblicazioni di settore Corsi on line Intregrazione elementi multimediali (avatar) Transazione on line Gestione dinamica contenuti Newsletter con gestione database iscritti © Tecnoteca srl 2003 26. ZOPE – Case Study – applicazione web per Moroso Spa Realizzazione di una applicazione extraner per la società Moroso Spa di Udine: Produzione Extranet Reportistica ordinato, fatturato, pagamenti Gestione utenti © Tecnoteca srl 2003 27. ZOPE – Case Study – sito locazione finanziaria Realizzazione di un sito per la locazione finanziaria prodotti e servizi tecnologici per Varesecom di Varese Commercio Catalogo on line Carrello elettronico Calcolo rate on line Compilazione documenti on line Gestione dinamica dei contenuti © Tecnoteca srl 2003 28. ZOPE – Case Study – portale verticale Realizzazione di un portale verticale dedicato alle nuove tecnologie informatiche: www.tecnoteca.it Editoria Marketplace Database on line libri informatica Museo on line Integrazione contenuti di terzi con utilizzo di standard RSS Servizi per la comunità (forum, newsletter, webmail, e-mail) Pubblicazione dinamica notizie e contenuti © Tecnoteca srl 2003 Si ringrazia per l’attenzione www.tecnoteca.com