Circuit 2017-08-08T17:15:16+00:00

Circuit

Das unter dem Namen Ansible des Unternehmens Unify bekannt gewordene Circuit stellt eine Kommunikationsplattform für Enterprise-Kommunikation dar. Sie bietet die Möglichkeit, für Benutzer und Gruppen über Chats (Text, Audio sowie Video), Screensharing sowie Dateifreigaben untereinander zu kommunizieren. Die Plattform bietet einen Webclient und native Clients für iOS und Android. Zur Kommunikation setzt die Plattform auf die W3C Standards WebSocket (Übertragung von Nachrichten) und WebRTC (Übertragung von Streams). Die Clients teilen untereinander eine Kommunikationsschicht, 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 mit Hilfe von JNI. Die Anwendungslogik und Benutzeroberfläche sowie 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 mit Hilfe des Buildsystems Gradle gebaut. Zur Qualitätssicherung sind Tools wie Jenkins CI und Gerrit im Einsatz.
Dieses Projekt wurde mit einem gemischten Projektteam durchgeführt. Dabei bestand das Team aus Mitarbeitern des Auftraggebers, Mitarbeitern des Instituts für Angewandte Informatik, weiteren Dienstleistern und Mitarbeitern des Kunden des Auftraggebers. Das Team war darüber hinaus verteilt, so dass die Projektsprache Englisch war und Abstimmungen entsprechend über Kollaborationsplattformen organisiert werden mussten. Da Unify einen weltweiten Rollout des Produkts plante, spielte die effiziente Internationalisierung eine wichtige Rolle. So musste die Oberfläche nicht nur in verschiedene Sprachen angezeigt werden können, sondern auch Sprachen mit der Schriftrichtung rechts-nach-links und einem anderen Zeichensatz unterstützen.
Martin Röbert
Martin Röbert

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