/* Das ist der Code, damit das Akkordeon geschlossen angezeigt wird. */ /* Das ist der Code, um offene Akkordeons wieder schließen zu können */

A Framework to Support Users with Real Time Collaboration

Januar 2015

FA-HN Abgabe

Endlich ist die Arbeit abgegeben! Das Abstract ist hier einzusehen.


Oktober-November 2014

Connected CollaboratorsIch habe die Mitarbeiter anzeige nun fertig gestellt, und sie dahingehend erweitert alle Änderungen der ausgewählten oder aller Personen anzuzeigen. Außerdem gibt es nun die Option über jede Änderung durch eine Benachrichtigung in Form eines Banners informiert zu werden. Dieses Feature kann die Kollaboration in einer tatsächlichen Anwendung enorm verbessern, da die User so stets wissen was andere Mitarbeiter an einem Projekt geändert haben. Nebenbei konzentriere ich mich nun immer mehr auf meine schriftliche Ausarbeitung und programmiere daher weniger.


 

September 2014

Diesen Monat entwickle ich zum ersten Mal eine Komponente direkt für das Framework. Es handelt sich dabei um eine fertige Anzeige aller aktuell erreichbaren Personen mit denen man an einem Projekt arbeitet. Jeder Entwickler, der das Framework in einer iPhone oder iPad App verwendet kann diese Anzeige ohne weitere Arbeit verwenden.


 

Juni-August 2014

In der Zeit vor- und nach dem Auslandspraktikum habe ich einige Testfälle mit XCTest geschrieben. Diese überprüfen korrekte die Erzeugung der sog. „Operations“, Objekte die jeweils eine Änderung im Objektgraphen exakt beschreiben, um sie auf allen verbundenen Instanzen gleichermaßen auszuführen. Zum Versand an die anderen Instanzen werden diese Operations in das XML Format konvertiert, und beim Empfang wieder zurück in ein Objekt. Auch diese Konvertierung wird getestet, in dem eine Operation erzeugt, einmal in XML und zurück konvertiert, und anschließend mit dem Original vergleichen wird.


 

Mai 2014

Um mehr mögliche Szenarien zu erzeugen, die die Synchronisation von alle möglichen Beziehungen zwischen Objekten (einseitig/zweiseitig, 1 zu 1, 1 zu n, n zu m) testen, wurde das Objektmodell des „Library“-Beispiels erweitert. Die Bibliothek beinhaltet jetzt neben Büchern und Autoren auch Mitglieder, Ausleihen und Personal, welche untereinander verbunden sind. Ich habe das User-Interface der Mac OS Anwendung darauf angepasst, sodass die neuen Objekte dargestellt werden können, und arbeite jetzt an dem Pendant der Anwendung für das iPhone, und pflege die erweiterte Funktionalität durch neue Ansichten auch hier ein.

Außerdem habe ich durch meinen Betreuer eine Einführung in das Testen von Anwendungskomponenten durch das XCode Testframework in Verbindung mit sog. Mocks erhalten, mit dem man automatisierte Tests erstellen kann.


April 2014

Forschungsarbeit_HNoeller_MacGui_1Nach einer Einarbeitung in das Framework und die verschiedenen Kommunikatios- und Datenaustauschtools, die am Lehrstuhl verwendet werden habe ich die Aufgabe erhalten, die „Library“-Beispielanwendung für den Mac zu erweitern. Diese Beispielanwendung simuliert Bibliotheken, die aus Autoren und Büchern bestehen, die jeweils mehrere Attribute haben. Durch Verwendung das Frameworks können Bibliotheken auf mehreren Geräten angezeigt und bearbeitet werden, wobei jede Änderung in Echtzeit auf allen anderen Geräten erscheint. Im ursprünglichen Zustand konnte die Applikation nur Bibliotheken auf anderen Geräten finden. Ich habe das Interface erweitert, sodass alle Objekte in einer ausklappbaren Baumstruktur angezeigt werden, und daneben das ausgewählte Objekt bearbeitet werden kann. Außerdem können Objekte hinzugefügt und entfernt werden.


 

März 2014

Seit Mitte März arbeite ich am Lehrstuhl für angewandte Softwaretechnik bei meinem Betreuer Stephan Krusche an einem Projekt für kollaborative Echtzeitanwendungen mit. Ziel ist die Entwicklung eines Frameworks zur Synchronisierung von Objektgraphen auf mehreren Geräten. Dies wurde bereits durch mehrere Bachelor- und Master-Studenten bearbeitet, sodass bereits eine Synchronisierung über einer Webserver oder über lokale WLAN/Bluetoothverbindungen möglich ist. Das Framework wird in Objective-C entwickelt, und läuft auf iOS und Mac OS X.