Architekturen von Web-Anwendungen, LMU, WS-01/02 Folie 1
Content ManagementContent Management
Architekturen von Web-Anwendungen, LMU, WS-01/02 Folie 2
ReferenzarchitekturReferenzarchitektur
Con
tent
Man
agem
ent
Con
tent
Man
agem
ent
Pro
zess
-Man
agem
ent
Pro
zess
-Man
agem
ent
FirewallHTTPLAN
Tra
nsak
tions
-Man
agem
ent
Tra
nsak
tions
-Man
agem
ent
Mes
sagi
ng S
ervi
ces
Mes
sagi
ng S
ervi
ces
Portal ServerPortal Server
Benutzer-SchnittstellenKomponenten
Benutzer-SchnittstellenKomponenten
BusinessKomponenten
BusinessKomponenten
Datenbank-ZugriffeDatenbank-Zugriffe
DatenbankenDatenbankenIn
tegr
atio
nsS
ervi
ces
Inte
grat
ions
Ser
vice
sV
erze
ichn
isS
chni
ttste
llen
Ver
zeic
hnis
Sch
nitts
telle
n
VerzeichnisServices
VerzeichnisServices
GeschäftsPartner
GeschäftsPartner
ERP SystemeERP Systeme
Alt-Anwend.Alt-Anwend.
DatenbankenDatenbanken
Sic
herh
eit
Sic
herh
eit
Architekturen von Web-Anwendungen, LMU, WS-01/02 Folie 3
Content ManagementContent Management
Managing pieces of electronic content
and delivering them to the Web
Content Management =
Document Management+
Web Content Management
Ovum: Content Management, 2000
Architekturen von Web-Anwendungen, LMU, WS-01/02 Folie 4
Content ManagementContent Management
3 Quellen - 3 Sichten
1 Dokumentenmanagement (DM)– Web löst traditionelle Q/S ab– DM muss im Web verfügbar sein– DM CM
2 Intranet (Internet-Auftritte)– 1. Generation: Statische HTML Seiten
– 2. Generation: Dynamisches Publizieren• Datenelemente werden gespeichert• Aus Datenelementen werden dynamisch Webseiten aufgebaut• Management der Datenelemente: Content Management
– 3. Generation: Portale• Integration von Anwendungen• Content: Alle Arten von Daten, einschl. Metadaten von DB´s und Anwendungen• Integration von Geschäftsprozessen• Managen von Beziehungen und Abhängigkeiten (Wissensmanagement)
Architekturen von Web-Anwendungen, LMU, WS-01/02 Folie 5
Content ManagementContent Management
• Hersteller von Web-Infrastruktur-Software – Web Server
– Application Server
– Frameworks (siehe Refenzarchitektur)
Architekturen von Web-Anwendungen, LMU, WS-01/02 Folie 6
Statische Web-SitesStatische Web-Sites
HTMLHTML
Web Browser
Web Server
FileSystem
FileSystem
Request Response
Architekturen von Web-Anwendungen, LMU, WS-01/02 Folie 7
Dynamisches PublizierenDynamisches Publizieren
HTMLHTML
ServletServlet
Web Browser
Web Server
ContentRepository
ContentRepository
HTMLHTMLRequest
JSPJSP
Zugriff aufContent
Architekturen von Web-Anwendungen, LMU, WS-01/02 Folie 8
PortalPortal
Enterprise JavaBeansEnterprise JavaBeans ApplicationServer
Pro
zess
Man
agem
ent
Per
sona
lisie
rung
Pro
zess
Man
agem
ent
Per
sona
lisie
rung
ContentRepository
ContentRepository
AnwendungsIntegration
AnwendungsIntegration
AppletsApplets ScriptsScripts HTMLHTML Web Browser
JSPJSP HTMLHTML
ServletsServlets
Web Server
Java ObjekteJava Objekte
Architekturen von Web-Anwendungen, LMU, WS-01/02 Folie 9
Speicherung von ContentSpeicherung von Content
• Neben Content-Elementen– Informationen über Contentelemente
• Attribute• Metadaten• Beispiel: Erstellungsdatum, Status
– Beziehungen• Beispiel: Autor eines Dokumentes
– Historie• Beispiel: Warenkatalog am 15.12.2000
– Mengenbildung• Beispiel: alle Elemente eines Internetauftritts
– Integration anderer Content-Quellen (transparent für Nutzer)• Beispiel: Preisliste
• Trennung von Inhalt und Darstellung
Architekturen von Web-Anwendungen, LMU, WS-01/02 Folie 10
ProjektProjektPP
ProjektProjektPP
enthält
enthält
AbteilungAbteilungAA
AbteilungAbteilungAA
Ist Mitglied von
ist Mitglied von
gehört zu
DokumentDokumentDD
DokumentDokumentDD
MitarbeiterMitarbeiterXX
MitarbeiterMitarbeiterXX
ist verantwortlich für
ist Mitglied von
arbeitet mit an
MitarbeiterMitarbeiterYY
MitarbeiterMitarbeiterYY
Name
Vorname
Kurzbeschreibung
Status
Projektplan
Content-Repräsentation: BeispielContent-Repräsentation: Beispiel
Architekturen von Web-Anwendungen, LMU, WS-01/02 Folie 11
Content Management ProdukteContent Management Produkte
• Traditionelle Produkte– Komplette Funktionalität zum Aufbau von Web-Auftritten und Intranets
• Content-Speicherung• Workflow• Portalsoftware• Personalisierung• Unterstützung für Autoren
– Gut geeignet für 2. Generation Intranets (dynamisches Publizieren)
– Weniger gut geeignet in Kombination mit J2EE Framework• Funktionale Überlappung mit Komponenten des Frameworks
• Content Repository – Konzentration auf Content Management
• Funktional reicher
– Keine Überlappung
– Siehe Beispiel Enabler von Softlab
Architekturen von Web-Anwendungen, LMU, WS-01/02 Folie 12
Beispiel - ProduktBeispiel - Produkt
Content- und Wissens-RepositoryContent- und Wissens-Repository
Enabler Enabler
von Softlab von Softlab
Architekturen von Web-Anwendungen, LMU, WS-01/02 Folie 13
Anwendungsbereiche von Enabler Anwendungsbereiche von Enabler
DocumentManagement
DocumentManagement
KnowledgeManagement
KnowledgeManagement
MetadataManagement
MetadataManagement
ConfigurationManagement
ConfigurationManagement
ComponentManagement
ComponentManagement
Legacy SystemsManagement
Legacy SystemsManagement
Web ContentManagement
Web ContentManagement
Enabler
Architekturen von Web-Anwendungen, LMU, WS-01/02 Folie 14
Logische Architektur von EnablerLogische Architektur von Enabler
Object and Relationship Management
ConfigurationManagement
Workspaceand ContextManagement
ProcessManagement
Tool and Application Layer
Repository Integration Layer
Repository Services Layer
VersionManagement
EnablerAdministration
C++Interface
XMLInterface
JavaInterface
ActiveXInterface
EnablerSDK
Third-partyTools
CustomerApplications
AccessControl
Management
VirtualFile System
FileManagement
Architekturen von Web-Anwendungen, LMU, WS-01/02 Folie 15
Physikalische Architektur von EnablerPhysikalische Architektur von Enabler
Datastore Datastore Datastore
Applications
Integration services
Integration services
Applicat ions
Enabler server
Repository services
Windows client
Integration services
Applicat ions
Web server
Integration services
Applicat ions
Application server
Enabler tools
LAN
Applicat ions
Web server
Web clientWeb client
Architekturen von Web-Anwendungen, LMU, WS-01/02 Folie 16
Enabler BasiskonzepteEnabler Basiskonzepte
Dokument
Person
Projekt
Informationselemente, ObjekteReviewkomm.
Erst.-Datum
Geb.-Datum
AdresseName
Aufwand
Anf.DatumTermin
Attribute / Eigenschaften (auch Dateien)
Beziehungen / Abhängigkeiten
ist enthalten in
hat Skill
hat erstellt
Architekturen von Web-Anwendungen, LMU, WS-01/02 Folie 17
Dynamische Änderung des DatenmodellsDynamische Änderung des Datenmodells
• Daten werden direkt entsprechend dem Modell gespeichert
• Beliebige Objekte können repräsentiert werden
• Dynamische Änderungen im laufenden Betrieb haben sofortige Wirkung
Activity
Dept.
Order Task
Process
Architekturen von Web-Anwendungen, LMU, WS-01/02 Folie 18
Historie und VariantenbildungHistorie und Variantenbildung
• Verwaltung historischer Versionen– nicht nur einzelner Objekte– auch gesamter Informationsgruppen
• Attribute und Beziehungen werden mit versioniert
• Parallel gültige Varianten
• Varianten können zusammengeführt werden
Beispiele:• Arbeitsversion eines Dokuments• Revisionsfähigkeit von
– Dokumenten – Web-Auftritten– Warenkatalogen
• Varianten von Web-Auftritten– freigegeben und sichtbar– in Überarbeitung
Architekturen von Web-Anwendungen, LMU, WS-01/02 Folie 19
Versions ModellVersions Modell
V1V1
VersionVersion
V3V3
VersionVersion
V2V2
VersionVersion
V4V4
VersionVersion
ObjektObjekt
VersionVersion
V5V5
Versions-SpezifischeVersions-SpezifischeAttributeAttribute
Attr. 1
Attr. 1
Attr. 1
Attr. 1 Attr. 1
Versions-UnabhängigeVersions-UnabhängigeAttributeAttribute
Attr. 2
Attr. 3
Attr. 4
Versions-SpezifischeVersions-SpezifischeBeziehungenBeziehungen
Versions-UnabhängigeVersions-UnabhängigeBeziehungenBeziehungen
Architekturen von Web-Anwendungen, LMU, WS-01/02 Folie 21
Bündelung von Daten, SichtenBündelung von Daten, Sichten
• Gruppieren von Objekten, Konfigurationen, Collections
• Objekte können in mehreren Gruppierungen vorkommen
• Attribute und Beziehungen sind Teil der Gruppierung
• Sichten (Kontexte) basieren auf Gruppierungen
Beispiele:• Alle zu einem Vorgang gehörenden Dokumente• Alle Dokumente und sonstigen Informationen, die zu einem Web-Auftritt gehören• Alle Exponate eines Warenkatalogs
Architekturen von Web-Anwendungen, LMU, WS-01/02 Folie 22
Workstation Workstation (Basisversion)(Basisversion)
Visual Basic Visual Basic (v5.0)(v5.0)
Symantec Café Pro Symantec Café Pro (v2.0)(v2.0)
56K Modem (v Jan 1998)56K Modem (v Jan 1998)
Dokument Dokument (v1.0)(v1.0)
Basis KontextBasis Kontext
Bündelung von Daten, SichtenBündelung von Daten, Sichten
Arbeits-KontextArbeits-Kontext
Workstation Workstation (Arbeitsversion)(Arbeitsversion)
Dokument Dokument (v2.0)(v2.0)
Architekturen von Web-Anwendungen, LMU, WS-01/02 Folie 23
V5V4
V3
V2V1
Program B
V5V4
V3
V2V1
Program A
Release
V5V4
V3
V2V1
Program C
V1
KonfigurationKonfiguration
Architekturen von Web-Anwendungen, LMU, WS-01/02 Folie 24
V5V4
V3
V2V1
Program B
V5V4
V3
V2V1
Program A
Release
V5V4
V3
V2V1
Program C
V1 V2
KonfigurationKonfiguration
Architekturen von Web-Anwendungen, LMU, WS-01/02 Folie 25
Lebenszyklus von Objekten (Prozesse)Lebenszyklus von Objekten (Prozesse)
KlasseKlasseKlasseKlasse
Process
init
ready_to_build
in_development
released
checked_out
TF 4
TF 3
TF 2
TF 1
TF 5
TF 6
TF 7
Architekturen von Web-Anwendungen, LMU, WS-01/02 Folie 26
Lebenszyklus von Objekten (Prozesse)Lebenszyklus von Objekten (Prozesse)
• Zustände und Übergänge zwischen Zuständen
• Aktionen bei Übergängen
• Nicht nur für elementare Objekte, auch für Informations- gruppen
• Versionsabhängig
Beispiele:• Status und Bearbeitungsaktionen für eine Sammlung von Dokumenten (Vorgang)• Kontrolle der Schritte zur Freigabe eines Web-Auftritts• Steuerung der Änderung eines Warensortiments
Architekturen von Web-Anwendungen, LMU, WS-01/02 Folie 27
ProzesseProzesse
• ZuständeZustände
AngelegtAngelegt
In ArbeitIn Arbeit
Im TestIm Test
FreigegebenFreigegeben
• ÜbergängeÜbergänge
• AktionenAktionen
Architekturen von Web-Anwendungen, LMU, WS-01/02 Folie 28
ÜbergangsfunktionenÜbergangsfunktionen
In In EntwicklungEntwicklung
InInTestTest
BenachrichtigungBenachrichtigungBerichteBerichteVerarbeitungVerarbeitungFreigabeFreigabe
KonsistenzKonsistenzVollständigkeitVollständigkeitQualitätQualität
XX
Architekturen von Web-Anwendungen, LMU, WS-01/02 Folie 29
Einbindung in Office UmgebungEinbindung in Office Umgebung
• Emulation eines normalen Windows Dateisystems
• Arbeit mit allen Office-Werkzeugen (Word, Excel, Powerpoint, …) direkt auf Dokumenten im Enabler
• Gesamte Funktionalität von Enabler zusätzlich verfügbar– Beziehungen– Versionen– Bündelung/Sichten – Bearbeitungsprozesse
Architekturen von Web-Anwendungen, LMU, WS-01/02 Folie 30
Einbindung in Office UmgebungEinbindung in Office Umgebung
File AccessFile AccessServiceService
Architekturen von Web-Anwendungen, LMU, WS-01/02 Folie 31
File Access ServiceFile Access Service
Architekturen von Web-Anwendungen, LMU, WS-01/02 Folie 32
22
AA
CC
DD
FFEE GG33 44 55
AA
CC
DD
33
22
44
55
File Access ServiceFile Access Service
Architekturen von Web-Anwendungen, LMU, WS-01/02 Folie 33
WorkspaceWorkspace promotepromote
demotedemote
Version,Version,Objekt,Objekt,
KonfigurationKonfiguration
stabil, globalstabil, global
locallocal
WorkspaceWorkspace WorkspaceWorkspaceWorkspaceWorkspace
WorkspaceWorkspaceWorkspaceWorkspace
Workspace HierarchieWorkspace Hierarchie
Workspace ModellWorkspace Modell
Architekturen von Web-Anwendungen, LMU, WS-01/02 Folie 34
O1 V1
V1V1O2 O3
O1 V1
V1V1O2 O3
O1 V1
V1V1O2 O3
O1 V1
V1V1O2 O3
Sichtbarkeit in WorkspacesSichtbarkeit in Workspaces
DatenstrukturenDatenstrukturen Sicht des BenutzersSicht des Benutzers
FreigegebenFreigegeben
ÜberprüfungÜberprüfung
BearbeitungBearbeitung
Architekturen von Web-Anwendungen, LMU, WS-01/02 Folie 35
DatenstrukturenDatenstrukturen
FreigegebenFreigegeben O1 V1
V1V1O2 O3
ÜberprüfungÜberprüfung
BearbeitungBearbeitung
V2O2O4 V1
Sicht des BenutzersSicht des Benutzers
O1 V1
V1V1O2 O3
O1 V1
V1V1O2 O3
O1 V1
V1V2O2 O3O4 V1
Sichtbarkeit in WorkspacesSichtbarkeit in Workspaces
Architekturen von Web-Anwendungen, LMU, WS-01/02 Folie 36
WorkspaceIntegration
WorkspaceTest Projekt A
WorkspaceBearbeitungProject A
V1
V1SC1
O2
V1
V1
V1
C1
O1
C1
C2O3
V1SC2
ContextContext
Architekturen von Web-Anwendungen, LMU, WS-01/02 Folie 37
Beispiel: IIPBeispiel: IIP
International Information PlatformInternational Information Platform
Enterprise Information PortalEnterprise Information Portal
von Softlabvon Softlab
Architekturen von Web-Anwendungen, LMU, WS-01/02 Folie 38
IIP - IIP - ÜberblickÜberblick
Process SupportProcess Support
Information PlatformNews
Information PlatformNews
Collaboration/Community Support
Collaboration/Community Support
Personalisation/PortalPersonalisation/Portal
Knowledge ManagementKnowledge Management
Application IntegrationApplication Integration
InternationalInformation
Platform
InternationalInformation
Platform
Architekturen von Web-Anwendungen, LMU, WS-01/02 Folie 39
Prozess UnterstützungProzess Unterstützung
• Supported Business Processes
– Tender process
– Publishing
– New employees
– More later
• Guidance instead of supervision
• Workflow support
• Application integration
• Quality assurance
Architekturen von Web-Anwendungen, LMU, WS-01/02 Folie 40
Unterstützung für KooperationUnterstützung für Kooperation
• News, message board
• Forums
• Chat rooms
• Communities
– Of interest
– Of practice
– User groups
• FAQ´s
Architekturen von Web-Anwendungen, LMU, WS-01/02 Folie 41
Knowledge ManagementKnowledge Management
• All areas of IIP involved
• Managing knowledge relationships
• Managing meta data
• Support for transformation of implicit to explicit knowledge
• Knowledge evaluation
Architekturen von Web-Anwendungen, LMU, WS-01/02 Folie 42
IIP ContentIIP Content
Employee
Smith.html
Single HTML page
Employees
Employees (dir)
Structure
8kjjjjLjljljjlljkljkl
8kjjjjLjljljjlljkljkl
8kjjjjLjljljjlljkljkl
8kjjjjLjljljjlljkljkl
Images (dir)
Smith.gifMiller.gif
Miller.htmlSmith.html
8kjjjjLjljljjlljkljkl
Content UnitTopic
Architekturen von Web-Anwendungen, LMU, WS-01/02 Folie 43
IIP ContentIIP Content;; References References
Department (Topic)
Employees (dir)
8kjjjjLjljljjlljkljkl
8kjjjjLjljljjlljkljkl
Miller.htmlSmith.html
Department
Miller
Projects(dir)
8kjjjjLjljljjlljkljkl
8kjjjjLjljljjlljkljkl
IIP.html
Aqua.html
8kjjjjLjljljjlljkljkl
Index.html
Smith
Projects
LZBB aquaIIP
Content Unit
Architekturen von Web-Anwendungen, LMU, WS-01/02 Folie 44
Topic StruTopic Strukktur & Navigationtur & Navigation
sfdfh
fsda
sfdfh
fsda
sfdfh
fsda
ProjectOffice
TenderProcess
Org.Units
Root
Processes
sfdfh
fsda
sfdfh
fsda
Entry
ProjectsQMS
sfdfh
fsda
Info
Services
ProcessOverview
...
...
Architekturen von Web-Anwendungen, LMU, WS-01/02 Folie 45
IIP – PublishingIIP – Publishing
RelationshipsPropertiesTree
sfdfh
fsda
sfdfh
fsda
sfdfh
fsda
MarCom
Services
RootUser
sfdfh
ISA
sfdfh
fsda
Priv.Workbench
1. Creating new version in private workbench
2. Download to Client
3. Upload to IIP, Test in private environment
4. Review + Publish new version
Architekturen von Web-Anwendungen, LMU, WS-01/02 Folie 46
IIP – IIP – Layout DesignLayout Design
Header
ContentPropertiesMenusLinks
Top
Header(Toggle betweendesign and presentation view)
Menus
Content(information, upload, ...)
.....
RelationshipsPropertiesTree
sfdfh
fsda
sfdfh
fsda
sfdfh
fsda
MarCom
Services
Root
Processes
sfdfhsfdfh
fsda
ISA
Architekturen von Web-Anwendungen, LMU, WS-01/02 Folie 47
Grob-ArchitekturGrob-Architektur
Web Client: Browser & Java ScriptWeb Client: Browser & Java Script
I n t r a n e t
JSPJSP HTMLHTML
ServletsServlets
Enterprise JavaBeansEnterprise JavaBeans ApplicationServer
Web Server
Por
tal S
erve
r &
Per
sona
lizat
ion
Por
tal S
erve
r &
Per
sona
lizat
ion
Pro
cess
Man
agem
ent
Pro
cess
Man
agem
ent
Content RepositoryEnabler
Content RepositoryEnabler
NamingServicesNamingServices
ApplicationIntegrationApplicationIntegration
JavaBeansJavaBeans
Architekturen von Web-Anwendungen, LMU, WS-01/02 Folie 48
Detail-Architektur für ContentDetail-Architektur für Content
Web Client: Browser & Java Script
Frame Support Servlets
Dispatcher (Controller)
ContentController
Content RepositoryEnabler
Content RepositoryEnabler
LDAPLDAP
Enabler Connection PoolEnabler Connection Pool
create update delete view
Menu.jsp Tasks.jsp Struct.jsp User.jsp Process.jsp...ContentViewer
Session EJB
ValueObjects
ActionObjects
...Menu Topic Structure User Process
Data Access Objects
Other IIPComponents
Web Server
Application Server IIP Content
EntityEJB
Forms