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