Content Management System (CMS) / Zope / Plone
Sin Mei Mak Sebastian Plitt Gliederung I
| Motivation | Definition | Was ist ein Content-Management-System (CMS)? | Warum CMS? | Content Life Cycle | Effiziente Webpublishing | Wann ist ein CMS sinnvoll? | Content Management Systeme
2 Gliederung II
| Was ist Zope? | Zope Architektur | Zope Bausteine | Plone | Plone Infrastruktur | Entstehungsgeschichte | Zope & Plone Vor- und Nachteile
3 Motivation
»The Web is an writing environment.« — Dave Winer
4 Definition (CMS)
Content Management Systeme im übergreifenden Sinn unterstützen: | die Erstellung von Content (direkt oder durch Anbindung weiterer Programme), | die Verwaltung von Content (Content Management im engeren Sinn), | die Bereitstellung von Content (Präsentation, Distribution), | die Kontrolle von Content (Rechte, Versionierung) und | die Individualisierung von Content (Personalisierung, Sichten).
5 Was ist ein Content- Management-System (CMS)?
6 Warum CMS?
7 Content Life Cycle
Content Life Cycle: Lebenszyklus der Inhalteselemente
8 Effiziente Webpublishing
9 Wann ist ein CMS sinnvoll? I
Prinzipiell ist die Anschaffung dann sinnvoll, wenn: | auf große Datenmengen/Datenbankbestände zurückgegriffen wird, | auf viele Informationen zurückgegriffen wird, | Informationsbestände ständig aktualisiert werden, | viele Autoren publizieren oder | viele Ausgabeoptionen (Druck, Internet, CD-ROM) existieren. Fazit: So gesehen rechnet sich ein High-End-System angesichts der Kosten von über 200.000 DM nur für sehr große Websites mit mehr als 4-5 verteilten Redakteuren und über 2000 Seiten.
10 Wann ist ein CMS sinnvoll? II
Ohne CMS Mit CMS (in 1000 US-Dollar) (in 1000 US-Dollar) 1. Jahr 2.Jahr gesamt 1.Jahr 2.Jahr gesamt Entwicklung CMS ------200 --- 200 Upgrades CMS ------30 30 CMS gesamt 230 Satz 40 40 80 14 14 28 CD-ROM Entwicklung 85 70 155 40 20 60 Web-Output 25 25 50 5 5 10 Summe 150 135 285 259 69 325
Kostenvergleich herkömmliches Web-Publishing und Content Management System (Quelle: Chris Kartchner, 1998) Content Management Systeme
Es gibt viele CM-Systeme, hier die bekanntesten: | Typo3 | PhpNuke | postNuke | Mambo | phpCMS | OASIS | Und viele mehr (weitere siehe z. B. www.contentmanager.de)
12 Was ist Zope?
⇒ Abkürung für Z Object Publishing Environment
| Führender Open-Source Applikationsserver | Framework für dynamische Websites | Implementiert in Python und C++ | Erweiterungen: z CMF (Content-Management-Framework) z Plone (CMS) z ZMS (CMS)
13 Zope (allgemeine Architektur)
14 Zope (detaillierte Architektur)
15 Zope – Produkte (Wie bekommt man sie?)
| www.zope.org (englisch) | www.dzug.org (Deutschsprachige Zope User Group) | www.zope.de (deutsch)
16 ZServer
| integrierter Web-Server, stellt flexible Internetverbindungen bereit und liefert dem Entwickler und den Benutzern Inhalt | erweiterte Version des Python-Servers Medusa | unterstützt viele Netzwerkprotokolle wie HTTP, FTP, WebDAV, XML-RPC, FastCGI, and PCGI | kann mit bestehenden Web-Servern zusammenarbeiten (z.B. Apache, MS IIS und anderen, die CGI unterstützen)
17 Zope-Kern
| Umfasst ein Web-ORB (Objekt Request Broker) z Kommunikations-Medium zwischen Client und Server z Ist für die Übertragung der Daten zum Zielrechner und für die Zustellung des Requests an die Objekt-Implementation verantwortlich z Verwenden Sender und Empfänger verschiedene lokale Darstellungen von Daten, so übernimmt der ORB die Konvertierung
18 Objektdatenbank (ZODB)
| bei der Nutzung von Zope wird hauptsächlich mit Objekten gearbeitet, die in der ZODB gespeichert sind | objektorientierte DB, mit der Objekte und ihre Zustandsvariablen einfach serialisiert und abgespeichert werden können | unterstützt Transaktionen, undo, private Versionen (Versionsobjekte)
19 RDMBS - Integration
| Verbindungen zu führenden relationalen Datenbankmanagementsystemen (RDBMS) wie Oracle, PostgreSQL, Sybase, MySQL u.a. | Bereitstellung von ODBC-Treibern
20 Zope-Produkte
| Neben den integrierten Zope - Objekten können auch Zope - Objekte von Drittherstellern installiert werden, um Zopes Leistungsspektrum zu erweitern | erweitern den Zope - Kern durch Hinzufügen neuer Objekttypen und Funktionalitäten (geschrieben in Python).
21 ZClasses
| Z Klassen sind Erweiterungen des Grundsystems. Sie werden ausschließlich mit dem integrierten Web-basierten Management- Interface erzeugt. Ein Entwickler kann damit schnell seine angepassten Objekte erstellen. Die eingesetzte Sprache hierbei ist DTML, ein erweiterter HTML-Dialekt.
22 Web-Beispiele für Zope- Benutzer
| www.linux-magazin.de | www.redhat.de | www.nasa.gov | Die US-Navy | http://www.auswaertiges-amt.de | http://www.behindertenbeauftragter.de | usw.
23 CMS unter Zope
| Plone: - am weitesten verbreitetes CMS unter Zope | ZMS: - Speziell für den medizinisch- wissenschaftlichen Bereich | Silvia: - Schwerpunkt im Dokumenten- Management
24 Plone
| Open-Source | Workflow - basiert | Standard-konform | Barrierefrei | mehrsprachig | Behindertengerecht | einfach erweiterbar | volltext-indiziert | objektorientiert
25 Plone Infastruktur
26 Entstehungsgeschichte
| Existiert seit mehr als zwei Jahren | Größtes und erfolgreichstes Projekt in der Geschichte von Zope | Einst ein 2-Mann Projekt | Heute: mehr als 30 Kernentwickler, mehr als 100 mitwirkende Entwickler
27 Referenzen
| Bertelsmann | Lufthansa | NASA | …
28 Zope & Plone Vor- und Nachteile Pro Contra
Open Source (Noch) kaum Dokumentation Keine Trennung zwischen Einfache Installation Redaktions- und Livesystem Datenbasis ist nicht »native« XML Plattformunabhängig/Barrierefrei (Abhilfe: XML.Template) Für einfache Anwendungen ein Benötigt Zope auf dem Server fertiges CMS out of the box (nicht bei jedem Provider möglich) Skalierbar Einfache Bedienung, XHTML + CSS
29 Vielen Dank für ihre Aufmerksamkeit
30