Content Management System (CMS) / / 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 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