Technik

Systemarchitektur

Im Zuge des Projektverlaufes hat sich herausgestellt, dass die ursprüngliche Zielsetzung, zwei separate AAL-Plattformen (HomeButler und SLiM) zu einer Software zu verschmelzen, nicht in der geplanten Art und Weise umgesetzt werden kann. Hierfür sind verschiedene Gründe verantwortlich. Zum einen ist die HomeButler GmbH nie gegründet worden, was zur Folge hat, dass eine der beiden Ausgangsplattformen nicht mehr existiert. Zum anderen haben sich die äußeren Bedingungen derartig geändert, dass es weder möglich noch notwendig ist, eine komplette Neuentwicklung durchzuführen.

Aus dieser Situation heraus hat das Projektteam die Zielsetzung technisch angepasst und sich neu definiert. Bis Projektende wird das AmCo-Cockpit als eine Anwendung erstellt, die es ermöglicht, verschiedene AAL-Komponenten, wie die Steuerung von Domotik, die Buchung und die Abwicklung von Dienstleistungen und Angebote von Community-Diensten komfortabel aus einer Anwendung heraus zu bedienen.

Screenshot of AmCo-Cockpit

Komponenten und Module

Ausgehend von der aktuellen AmCo‑Pilotplattform, die seit Dezember 2012 im Wohnquartier »Limbourgs Garten« Der FACO betrieben wird, wird AmCo 2.0 ein Gesamtsystem als Kopplung von drei separaten Systemen (TaHomA, Amiona und SmartLiving) die als solche autark arbeiten und mit Hilfe des AmCo-Cockpits zentral angesteuert werden.

Das Erscheinungsbild des AmCo-Cockpit wird eine Kapselung verschiedener Module darstellen. Jedes der drei einzelnen Systeme wird in diesem Kontext als »Modul« bezeichnet. Hierbei wird keine vollständige Integration der einzelnen Softwarebestandteile erfolgen. Dies begründet sich zum einen mit dem Ziel eines modularen Aufbaus und späterer Transferierbarkeit als auch damit, dass nicht zu erwarten ist, dass spätere Anbieter, deren Funktionalität in AmCo eingebunden werden soll, die Quellen Ihrer Umsetzungen zur Verfügungen stellen werden.

Aus diesem Grund stellt das AmCo-Cockpit den Zugang zunächst zu folgenden drei Modulen zur Verfügung:

  1. Somfy TaHomA
    TaHomA stellt die Somfy Umsetzung zur Verwaltung und Steuerung von Domotik-Komponenten dar. Die Umsetzung ist sowohl in Form einer dedizierten App als auch in Form eines Webportals zugänglich. Aufgrund der Konsistenz innerhalb des AmCo-Cockpits wird an dieser Stelle nur das TaHomA-Webportal in das AmCo-Cockpit integriert.

  2. Amiona
    Das vom CCIL entwickelte Amiona stellt eine Plattform zur Erfassung, Buchung und Abwicklung von Dienstleistungen dar. Zur Abwicklung der Dienstleistungen umfasst Amiona eine Komponente zur Abstimmung von Terminen, um festzulegen, zu welchem Zeitpunkt die gebuchte Dienstleistung erbracht werden soll.

  3. SmartLiving
    Die Community-Dienstleistungen die in der ersten Testphase bereits durch den SmartLiving Manager abgebildet wurden, bleiben auch in der zweiten Phase und damit im AmCo-Cockpit erhalten. Die über das SmartLiving System der ersten Pilotphase angebotenen Dienstleistungen werden in der zweiten Phase zu Amiona verschoben.

Die zugrundeliegende Architektur sieht vor, dass die Abrechnung von allen Dienstleistungen über die Amiona-Plattform abgewickelt wird. Hierzu findet eine Rückkopplung der anderen beiden Module zu Amiona statt (vgl. Abbildung 1).

Um für alle über das AmCo-Cockpit angebotenen Dienstleistungen eine Terminvereinbarung umsetzen  zu können, werden alle Bestellungen aus den Modulen an Amiona weitergeleitet. Um die Komplexität der Umsetzung der Pilotanwendung zu minimieren, werden die Strukturen dahingehend disjunkt dargestellt, dass die Buchung von Dienstleistungen zunächst nur aus dem Amiona-Modul heraus möglich ist. 

Single-Sign-On!

Um den Benutzern einen möglichst hohen Komfort anbieten zu können und trotz dessen einen möglichst hohen Grad an Zugriffssicherheit gewährleisten zu können, müssen sich Benutzer vor der Nutzung der Plattform mit Hilfe ihres Benutzernamens und ihres Passwortes anmelden. 

Auf Wunsch bleibt diese Anmeldung ohne zeitliche Begrenzung aktiv. Abgesehen davon verfahren die verwendeten Module von Somfy, Amiona und SmartLiving nach ähnlichen Prinzipien. Aus diesem Grunde wurde eine einmalige Anmeldung konzipiert, ein so genanntes Single-Sign-On (SSO). Hierbei werden die Zugangsdaten aller Systeme einmalig in der AmCo-Plattform eingetragen und von dort an sind alle Systeme - nach der Anmeldung an der AmCo-Plattform nutzbar, ohne ein weiteres Mal Nutzerdaten (so genannte Credentials) angeben zu müssen. 

An dieser Stelle wurde OpenAuth 2.0 (OAuth) implementiert, ein Kommunikationsprotokoll das heute viele Internetdienste nutzen, um sich (kryptographisch sicher) untereinander zu authentifizieren, ohne dass bei jedem Vorgang Benutzername und Passwort ausgetauscht werden müssen. Die folgende Abbildung zeigt die Umsetzung von OAuth im Kontext von AmCo:

Implementation of OAuth in the AmCo System

In diesem Szenario soll mit Hilfe der AmCo Plattform eine Funktion eines der Sub-Module genutzt werden, z.B. soll eine Dienstleistung aus Amiona gebucht werden. Hierzu muss keine Übermittlung der Benutzerinformationen von der AmCo-Plattform am Amiona erfolgen, vielmehr wird eine Anfrage mit einem bestimmten Zufallswert (Token) vom Benutzer an die AmCo-Plattform gesendet (Schritt 1). Der AmCo-Server leitet die Anfrage, inkl. des Tokens an den Amiona-Server weiter (Schritt 2). Dieser prüft ob der Nutzer berechtigt ist und überprüft die (hinterlegten) Benutzerinformationen (Schritte 3 und 4). Sind diese gültig, wird die Anfrage des AmCo-Servers aus Schritt 2 beantwortet (Schritt 5) und die gewünschte Funktion schließlich für den AmCo-Nutzer bereitgestellt (Schritt 6). Hierbei wird erneut ein Prüftoken übermittelt.