PloneLoops

  • Send this page to somebody
  • Print this page
Ein allgemeines Task- und Ressourcen-Management-Framework und seine Anwendungsmöglichkeiten

Helmut Merz, cyberconcepts IT-Consulting,

In diversen Projekten aus den Bereichen Content-Management, Collaboration und E-Learning tauchen immer wieder gemeinsame Anforderungen auf, die im weitesten Sinn mit Arbeitsabläufen, Arbeitsgruppen, Projekten, Aufgaben und Ressourcen zu tun haben, die aber von der Standard-CMS-Funktionalität z.B. von Plone nicht oder unzureichend abgedeckt sind.

Mit dem LOOPS Ansatz (Linked Objects for Organizational Process Services) wird versucht, diese divergierenden Anforderungen auf eine gemeinsame Basis zurückzuführen und so ein Framework zu schaffen, mit dem sich auf einfache Weise auch komplexe Lösungen für eine ganze Palette von Aufgabenstellungen schaffen lassen. Die erste einsatzfähige Implementierung wird unter dem Namen PloneLoops derzeit für Plone realisiert, einzelne Elemente sind bereits im Praxiseinsatz; parallel dazu wird eine Version für Zope 3 entwickelt.

Das LOOPS-Framework besteht im wesentlichen aus folgenden Klassen:

(1) Task - z.B. Aufgabe, Auftrag, Projekt, Veranstaltung, Kurs, Organisationseinheit; Tasks können Subtasks enthalten, so dass beliebig komplex verschachtelte Strukturen abgebildet werden können. Ein Task kann auch als Content Space für zugehörige Dokumente dienen.

(2) Resource - z.B. Equipment, Raum, Person; kann einem oder mehreren Tasks zugeordnet werden (resource allocation). Bei der Zuordnung können beim Task hinterlegte Bedingungen (resource constraints) geprüft werden, z.B. ob die Ressource für den zu buchenden Zeitraum verfügbar ist oder ob ein Supporter die benötigten Kenntnisse zur Lösung des Problems besitzt.

(3) Person - Unterklasse von Resource, kann eine User-ID beinhalten und damit automatisch einem registrierten (eingeloggten) User zugeordnet sein; z.B. Supporter, Projektmitarbeiter, Trainer, Kursteilnehmer. Je nach Art der Zuordnung zu einem Task (allocation type) werden automatisch passende Zugriffsrechte vergeben.

Beispiel Seminar-/Lehrgangsverwaltung:

  • Beliebig komplexe Kursstrukturen können über Subtask-Relationen abgebildet werden.
  • Teilnehmer wie auch Trainer und Tutoren werden den jeweiligen Kursmodulen zugeordnet; in den entsprechenden Content-Bereichen erhalten sie dadurch automatisch die passenden Zugriffsrechte. Relevante Kursmodule erscheinen im "My Tasks" Portlet des Benutzers; Termine können auch im Kalender angezeigt werden.
  • Zusätzlich können auch Räume und Equipment (z.B. Beamer) für Seminare gebucht werden.

Schon während der Entwicklung ergaben sich aus diesem Ansatz auch ursprünglich gar nicht geplante Lösungsmöglichkeiten für andere Anwendungsgebiete, z.B. für eine Adressverwaltung und einen PC-Konfigurator für einen Online-Shop.

Die aktuelle PloneLoops-Version ist über Subversion zugänglich: svn.cy55.de/viewcvs/PloneLoops/trunk.

Created by helmutm
Last modified 24.09.2004 16:30