Circuit

Projektbeschreibung

Circuit ist eine Kommunikationsplattform, die Benutzern und Benutzerinnen über Chat, Audio-, Video-, Screen-Sharing und Dateifreigaben in nur einer App eine effektive Teamarbeit ermöglicht. Bekannt wurde Circuit unter dem Namen Ansible des Unternehmens Unify. Die Plattform bezeichnet sich durch ihre einfache Handhabung. Über einen Thread können Inhalte in der Kollegschaft bzw. mit beliebigen Personen im Unternehmen geteilt werden. Circuit ist auf PC, Tablet und Smartphone verfügbar und realisiert so auch den Anspruch an mobiler Arbeit.

Die Plattform bietet einen Webclient und native Clients für iOS und Android. Zur Kommunikation setzt Circuit auf die W3C Standards WebSocket (Übertragung von Nachrichten) und WebRTC (Übertragung von Streams). Die Nutzenden teilen eine Kommunikationsschicht untereinander, die in JavaScript implementiert ist. Die Darstellung von Inhalten und die Bereitstellung plattformspezifischer Funktionen erfolgt getrennt für die jeweils einzelnen Plattformen. Die übertragenen Nachrichten werden mithilfe von Googles Protocol Buffers (protobuf) serialisiert.

Als Laufzeitumgebung für die gemeinsame Kommunikationsschicht wird bei Android auf Googles V8 JavaScript Engine zurückgegriffen, welche in C++ implementiert ist. Die Anbindung an die native Benutzeroberfläche Androids geschieht mithilfe von JNI. Die Anwendungslogik und Benutzeroberfläche sowie die Anbindung anderer plattformspezifischer Funktionen wie etwa Kamera oder SQLite Datenbanken erfolgt in Java und wird ggf. über JNI an die Kommunikationsschicht weitergeleitet. Der Android-Client wurde mithilfe des Gradle Build Systems gebaut. Zur Qualitätssicherung sind Tools wie Jenkins CI und Gerrit im Einsatz.

Das Projekt wurde mit einem internationalen Team realisiert. Das Team bestand aus Mitarbeitenden des Auftraggebers, des Instituts für Angewandte Informatik (InfAI), des Kunden des Auftraggebers und weiteren Dienstleistenden. Die Projektsprache war Englisch. Abstimmungen mussten entsprechend über Kollaborationsplattformen organisiert werden.

Eine effiziente Internationalisierung im Projektteam spielte eine wichtige Rolle, da Unify eine weltweite Markteinführung von Circuit plante. Somit musste die Oberfläche der Plattform in verschiedenen Sprachen, u.a. auch mit der Schriftrichtung rechts-nach-links und einem anderen Zeichensatz, angezeigt und unterstützt werden können.

Projektwebseite

Kontakt am InfAI

Martin Röbert
Martin Röbert

Tel.: +49 341 229037 26
Mail: roebert@infai.org