Incom Addon ó WorkSpaceTime
Incom Addon zur alternativen Ansicht von Workspace-Aktivitäten und Inhalten
1.1 Projektbeschreibung
Die vorliegende WorkSpaceTime Applikation ist als ein ergänzendes Modul für die Kommunikationsplattform Incom konzipiert.
Sie soll dem Benutzer eines Workspaces die im Laufe der Zeit angefallenen Beiträge alternativ zur tabellarischen html-Ansicht darreichen.
Dabei wurde der Versuch unternommen eine synchronistische Ansicht der im wesentlichen asynchron genutzten Workspaces herzustellen und so auch die zeitliche Dimension der Aktivitäten erfahrbar zu machen.
Anders als bei Incom werden sowohl eingehende Beiträge, als auch nebenläufige Diskussionen ihrer zeitlichen Abfolge nach organisiert und in einem einheitlichen, zeitlichen Raster verortet.
Dieser Nachrichtenverlauf wird baumartig aufgebaut, wobei gewöhnliche, konsekutive Beiträge den Hauptstrang und Kommentare die Nebenzweige ausbilden.
Weil sich Aktivitäten naturgemäß nicht gleichmäßig auf einen Zeitraum verteilen, können zwischen diesen einige Tage, mitunter aber auch nur wenige Minuten vergehen.
Da sich solches in einem einheitlichen Raster auf begrenzter Fläche nur unzureichend darstellen lässt, kann in WorkSpaceTime die Zeit an beliebigen Punkten dynamisch aufgerastert werden.
So lassen sich die Aktivitäten sowohl über den gesamten Zeitverlauf beobachten, als auch ausschnittsweise bis hin zu einer stündlichen Ansicht auflösen.
Beiträge können ausserdem innerhalb der Applikation eingesehen werden, wobei unmittelbar auf zeitlich und/oder kontextuell vor- oder nachlaufende Beiträge gesprungen werden kann.
2.1 Technische Umsetzung
Die gesamte Applikationslogik basiert auf einem zentralen Zeit-Objekt, das einen ganz bestimmten Punkt im Zeitverlauf beschreibt und für die Applikation den gegenwärtigen Zeitpunkt darstellt. Neben der Information über das Jahr, den Monat, die Stunde und die Minute, reicht die Auflösung dieser Informationen bis in den Sekundenbereich.
Alleinig eine Manipulation dieser Zeitangabe bewirkt im Zusammenspiel mit einigen anderen Faktoren das Aussehen des Flash-Canvas.
Als eine besondere Herausforderung gestalteten sich zunächst die umfangreichen Datumsberechungen und der dynamisch anpassbare, darzustellende Zeitausschnitt.
Da die Berechnung des Verhältnis' eines jeden zu diesem zeitlichen Bezugspunkt in Korrelation stehenden Objekts nicht in Echtzeit (gemeint sind hier 16Fps) bewältigt werden konnte, wurde jede Zeitinformation in einem Timecode codiert.
Mit Hilfe dieses Timecodes konnten Verhältnisse sehr schnell berechnet werden und die (verhältnismäßig wenigen) zum gegenwärtigen Zeitpunkt zu leistenden Berechnungen herausgefiltert werden (mehrstufiges Execution-Culling).
Der Aufbau der Applikation gestaltet sich nach dem klassischen MVC-Entwurfsmuster.
Zentrale Bestandteile dieser Struktur, herauszustellen wäre hier das GUI-Feedback, kommunizieren exklusiv über eine Eventarchitektur, die mittels der mx.events.EventDispatcher-Klasse aufgebaut wurde.
1.2 Projektstand
Der vorliegende Zwischenstand repräsentiert zum gegenwärtigen Zeitpunkt einen Funktionsprototypen.
Die Entwicklung eines (ausreichend funktionierenden) technischen Unterbaus nahm die gesamte Zeit in Anspruch, so dass bei der Entwicklung des Benutzerinterfaces nur wenige grundsätzliche Szenarien durchgespielt werden konnten. Hier verbleibt noch erheblicher Raum für Verbesserungen, zumal bei der vorliegenden Version längst nicht alle Funktionalitäten zugänglich sind.
Ein wichtiger noch ungelöster Bereich ist beispielsweise die Vermeidung von Text-Überlappungen der Nodes/Nachrichten. Diese sollten zukünftig mit einer einfachen Variante eines Spring-Embedder Algorithmus auflösbar sein.
Die Datenanbindung wird exemplarisch anhand des Incom Addons - Workspaces illustriert. Dabei ist die Verarbeitung beliebiger Live-Daten zwar bereits grundsätzlich möglich, jedoch fehlt applikations- und serverseitig noch die (asynchrone) Logik zur Unterteilung des Client-Server-Datenverkehrs in insbesondere auch für wenig leistungsfähige Internet-Anbindungen geeignete Größen.
So konstituiert die von der PHP-Schnittstelle bereitgestellte xml-Datei einen vorläufigen, sicherlich jedoch noch nicht vollständigen, Überblick über das gesamte zu transferierende Datenaufkommen. Die Informationsbestandteile dieser xml-Datei werden zwar vollständig zum Aufbau des Datenmodells herangezogen, jedoch unter Umständen noch nicht dargestellt.
Dieses gilt beispielsweise für die textuelle Information der Posts/Nachrichten, die in der internen Datenstruktur aufgenommen, jedoch zum jetzigen Zeitpunkt noch nicht angezeigt werden.
Unter anderem durch das in Teilen noch unvollständige Datenmodell sind bestimmte angedachte Funktionalitäten nicht sichtbar bzw. nicht implementiert. Das gilt zum einen für die Darstellung von abgelegten Materialien, für verschiedentlich gefilterte Ansichten, oder aber auch für die gleichzeitige Betrachtung von verschiedenen Workspaces.
Inhaltsübersicht
1.1 Projektbeschreibung
1.2 Projektstand
1.3 Bildschirmfotos
2.1 Technische Umsetzung
2.2 Verwendete Software
credits
2.2 Verwendete Software
Entwicklung: SE|PY 1.0.6.1 & Macromedia Flash MX 2004 Pro,
Versionierung: SVN 1.2.1
Modellierung & XML: Eclipse 3.0.2 & Bocaloco XMLBuddy 2.0.22,
Gentleware Poseidon 3.0 CE
Grafik: Macromedia Freehand 10 & Adobe Photoshop 7
Soundcredits (in Zwischenversion): Danzen Jetzt (Klangkrieg)
Vielen Dank an Tina für die tatkräftige PHP Unterstützung!
1.3 Bildschirmfotos
coming soon

