Julian Lebherz Betreuer: Thomas Büchner Christian Neubert Analyse der Verwendung des Eventlistener-Konzepts einer objektrelationalen Persistenzschicht Julian Lebherz Betreuer: Thomas Büchner Christian Neubert 0,5
Agenda Zielvorstellung Vergleich von Eventlistener-Systemen Tricia: Komplexität CLLogger Tool Demo Ausblick 1,5 15.11.2018 Vergleich Tricia CLLogger
Zielvorstellung Analyse des Eventlistener-Konzepts Hibernate Java Content Repository Tricia Fokus auf Tricia Entwicklung eines Monitoring-Tools Reduzierung der Komplexität 1,0 Anspruch der Arbeit: Was soll die Analyse Analyse verschiedener Implementierungen des Eventlistener-Konzept Was soll das Tool können Das Monitoring Tool soll die Komplexität der ChangeListener in Tricia reduzieren, indem es eine Möglichkeit bietet, die Abfolge der ChangeListener, in der sie angestoßen werden, aufzuzeigen. 15.11.2018 Vergleich Tricia CLLogger
Eventlistener Objekte die Sourcecode enthalten Aktivierung durch Events Persistenzschicht: Event ≙ persistente Modifikationen Ausführung ereignisspezifischer Operationen Implizites Triggern weiterer Listener 2,0 Was sind Eventlistener Persistente Modifikationen Speichern, Löschen, Verändern sind Objekte die Sourcecode enthalten werden durch Events angestoßen Im Kontext der Persistenzschicht: persistente Modifikationen führen ereignisspezifische Operationen aus können potenziell selbst wieder Events auslösen 15.11.2018 Vergleich Tricia CLLogger
Vergleich von Eventlistener-Systemen Hibernate JCR Tricia Registrierung der Listener zentral entfällt durch introspektive Aktivierung Filter nach Ereignistyp via Interfaces korrespondierend zu den Ereignistypen Mehrfachselektion als Bitmaske bei der Registrierung Mehrfachselektion implizit durch Definition inner-halb des Objektes oder der Methode keine Mehrfachselektion Filter nach Ereignisquelle --- Pfad- / ID-Angabe bei der Registrierung implizit 5 Vergleich von JCR / Hibernate / Tricia Hibernate: sehr fein ausdifferenzierte Ereignistypen mit Pre Post und normalen 15.11.2018 Vergleich Tricia CLLogger
Tricia: Komplexität Komplexität durch Vielfalt Komplexität durch Umfang Komplexität durch Abhängigkeit 0,5 Aufzählung der Komplexitäts-Quellen 15.11.2018 Vergleich Tricia CLLogger
Komplexität durch Vielfalt (1) 1,0 Arten von changelistenern persistent events 15.11.2018 Vergleich Tricia CLLogger
Komplexität durch Vielfalt (2) 2,0 Dokumentation Nutzungsanalyse Maßnahmen: 15.11.2018 Vergleich Tricia CLLogger
Komplexität durch Umfang im Persistierungsprozess Maßnahmen: kompakte Dokumentation Verschlankung Restrukturierung 1,0 Komplexität aufgrund des Persistierungsprozesses 15.11.2018 Vergleich Tricia CLLogger
Komplexität durch Abhängigkeit (1) ChangeListener können weitere Listener triggern Beispiel: 0,5 Komplexität aufgrund der verschachtelten Ausführung Wir wollen uns anschauen was passiert wenn ein Wiki eine einzige WikiPage hat und diese ein Attachment Veränderung der URL des Wikis (durch die interne Struktur muss diese Änderung an alle abhängigen Strukturen propagiert werden. 15.11.2018 Vergleich Tricia CLLogger
Komplexität durch Abhängigkeit (2) 22 InstantChangeListener 19 DeferredChangeListener 10 AfterPersistEvents 2 PersistentNewEvents 1,0 Komplexität aufgrund der verschachtelten Ausführung > Beispiel WIKI… 15.11.2018 Vergleich Tricia CLLogger
Tricia: Komplexität Komplexität durch Vielfalt Komplexität durch Umfang Komplexität durch Abhängigkeit 0,5 Aufzählung der Komplexitäts-Quellen 15.11.2018 Vergleich Tricia CLLogger
CLLogger Tool Protokollierung Baumdarstellung Filterfunktion Reihenfolge Hierarchie Kerndaten Baumdarstellung Filterfunktion Live Monitoring 1,0 Tool grob erklären 15.11.2018 Vergleich Tricia CLLogger
Demo Vergleich Tricia CLLogger 4,0 Noch einmal rückgreifend das Beispiel erläutern 15.11.2018 Vergleich Tricia CLLogger
Tricia: Komplexität Komplexität durch Vielfalt Komplexität durch Umfang Komplexität durch Abhängigkeit 0,5 Aufzählung der Komplexitäts-Quellen 15.11.2018 Vergleich Tricia CLLogger
Ausblick Integration Erweiterung in die alltägliche Entwicklung in das Schulungsmaterial des Feedbacks in das Plugin Erweiterung interaktive Kerndaten nebenläufige Anfragen 2,0 Übergang zum Ausblick 15.11.2018 Vergleich Tricia CLLogger
Backup 15.11.2018
Backup – JCR Verfügbare Implementierungen: Content Repository Extreme (CRX) ist JCR 2.0 konform von Day Software AG (gehört zu Adobe) Jackrabbit ist JCR 2.0 konform von Apache Software Foundation Workplace Web Content Management 6.0 von IBM … 15.11.2018