Managementsummary

Videoüberwachungen werden durch gesunkene Hardwarepreise sowie ein gestiegenes Sicherheitsbedürfnis der Bevölkerung immer beliebter. Nur sind lokale Lösungen teuer oder aufwändig zu installieren. Einen Videoüberwachungsdienst in der Cloud, zusätzliche Unabhängigkeit von Kameraherstellern und die Anforderung, Netzwerke hinter NATs und Firewalls einzubeziehen waren die grossen Herausforderungen in diesem Projekt. Durch den Einsatz von offenen Standards und modernen Netzwerktechniken konnten die Hürden erfolgreich überwunden werden. Das entstandene Produkt lässt sich intuitiv bedienen und einfach installieren, trotz seines verteilten Charakters.

Projektbeschreibung

Das Ziel des Projektes war es, einen Videoüberwachungsdienst als Service bereitzustellen (VSaaS). Kunden sollten damit mit geringem Installationsaufwand in der Lage sein, mit Netzwerkkameras Videoüberwachungen durchführen zu können. Einerseits sollten damit Liveübertragungen sowie auch Aufzeichnungen auf dem Server vorgenommen werden können. Ebenfalls eine wichtige Anforderung waren die Aufzeichnungen, die durch ein bestimmtes Ereignis ausgelöst wurden, z.B. Bewegungsmeldung. Die Aufzeichnungen sollten dann entweder direkt im Browser angesehen oder heruntergeladen werden können.

Zu Beginn wurde zu einem grossen Teil ein Drittprodukt verwendet, unter anderem als Medien- und Eventserver. yourVcam griff auf die Schnittstellen dieses Produkts zu, und fügte zusätzliche Businesslogik und ein eigenes GUI hinzu.

Später wurde das Drittprodukt vollständig abgelöst, da dieses auf einen einzelnen Kamerahersteller beschränkt war. Das Ziel war nun, jegliche Hersteller zu unterstützen, und dabei den offenen Sicherheitsstandard ONVIF zu benutzen. Dies bedingte eine völlig neue Architektur mit einer zusätzlichen Client-Software, die auf kleinen, mobilen Geräten läuft, und als Bindeglied zwischen Kamera und Server dienen sollte.
Nach und nach kamen weitere Requirements hinzu, so z. B. die Speicherung von Aufzeichnungen lokal bei den Kunden oder die Verwaltung von Kunden und deren Abonnements. Ebenfalls wurden immer wieder ausgeklügelte Techniken entwickelt, den Server durch Direktzugriffe zu umgehen, wenn sich Browser und Kamera im selben Netzwerk befanden.

Technologien:
Verteiltes System implementiert mit Java und Javascript, unter Verwendung von Eclipse, Maven, MySQL, Linux, Raspberry Pi

Erfolgsfaktoren / Nutzen

Die Kommunikation zwischen den mobilen Geräten und dem Server war so flexibel gestaltet, dass auch Geräte mit älterer Software problemlos mit dem Server funktionierten. Auch wurde so weit wie möglich auf offene Standards gesetzt (ONVIF, HTML5 Videoplayer), was die Integration von zusätzlichen Kameraherstellern und die Browserneutralität unterstützt.

Für die Kunden sind teure Installationen von Servern hinfällig, und die mobilen Geräte sind sehr einfach in Betrieb zu nehmen.

Projektmanagement

Das Projekt wurde mit einem agilen Ansatz entwickelt. Die strikten Terminvorgaben konnten dadurch eingehalten und auf zusätzliche Requirements schnell eingegangen werden. Zusammen mit dem Continuous-Integration-Ansatz waren so auch kurze Releasezyklen  möglich.