Home

Volltext - oops/ - Oldenburger Online-Publikations

image

Contents

1. Spatial Model Localization Service In der OGIS Simple Children IsOutsideof HasDistance i IndoorLocalizationService Feature Specification 1 uses via Subclasses lial identification 0 1 Sinne im Backend epes ee Location Space AR 1 R durch PostGIS realisiert Ge value Object o 1 has 1 1 parent Space V origin Space Po name string SpatialRelation is_symbolic Boolean 1 includes _0 reference_point Space A 1 is_ geometric Boolean value Object Indoorl ocalizationMethod QRCodeBasedLocalizationMethod 7 Geometry u A ExternalSpace defined by SE IsAdjacentTo WiFiBasedindoorLocalizationMethod_ NFCBasedLocalizationMethod Abbildung 6 7 Teil des Kontext Modells Das r umliche Modell engl Spatial Model Als erster Bestandteil des Kontext Modells wird das r umliche Modell betrachtet Es handelt sich um ein hybrides Modell vgl BDO5 welches symbolische sowie geometrische Daten repr sentie ren kann Weiterhin lassen sich verschiedene Typen von Beziehungen zwischen den einzelnen r um lich begrenzten Objekten z B innerhalb der Home Sharing Dom ne werden R ume und ein zelne Gegenst nde verortet erfassen wie z B Distanz Beziehungen oder die Repr sentation einer Adjazenz Beziehung Die M glichkeit eine implizite Hierarchie zwischen den Objekten zu definie ren wurde im Modell auch dargestellt ein
2. CARL VON OSSIETZKY universitat OLDENBURG Fakult t II Informatik Wirtschafts und Rechtswissenschaften Department fur Informatik Masterstudiengang Informatik Masterarbeit Mobile und Echizeit fahige Kontext Modellierung Erfassung und Verwaltung in der Domane des Smart Home Sharings vorgelegt von Cosmin Pitu Gutachter Jun Prof Dr Daniela Nicklas Prof Dr Susanne Boll Oldenburg 19 Oktober 2012 Im Laufe dieser Arbeit wird ein Konzept vorgestellt welches als Erweiterung der Home Sharing Dom ne die eigene Wohnung zur Verf gung zu stellen angesehen wird Eine Analyse der aktuellen Anbieter von Home Sharing L sungen zeigte dass die Betrachtung der Dom ne aus technologi scher Sicht schon bei der Vermittlung der Buchung zwischen Wohnungseigent mer und Wohnungs mieter aufh rt Es ist der Denkansatz dieser Arbeit dass das Nutzungserlebnis von Home Sharing von einer technologischen Erweiterung profitieren K nnte Zu diesem Zweck wurde eine Forschungsfrage ab geleitet die die definierten Konzepte der L sung zusammenfasst Die Forschungsfrage begleitete damit die Entwicklung der Arbeit und lautete folgenderma en Wie muss ein Kontext Modell gestaltet sein dass es Erweiterungen und einen Umgang mit Echtzeit Daten erlaubt unter Beibehaltung gewisser Eigenschaften wie die Allgemeinheit Flexibilit t oder ein erh htes Sicherheitsgrad Zwecks die Beantwortung der F
3. m Aktivit tsgrad Raum Element hinzuf gen Map Location x 22 Tage bis n Gast ZUR CK Wohnung bersicht Abbildung 5 10 GUI Mockup Wohnungs bersicht Formular Neuer Raum hinzuf gen Als letztes werden weitere m gliche Ansichten vorgestellt die die Verwendung des Kommunika tionskanals sowie eine m gliche Darstellung der aktuellen Buchungen eines Wohnungseigent mers illustrieren Schlie lich zeigt der linke Bereich der Abbildung 5 11 eine m gliche Gestaltung eines Inbox Konzeptes f r den Kommunikationskanal wo die einzelne Mitteilungen je nach Thema bzw Thread sortiert werden und im Detail aufgerufen werden k nnen Im rechten Bereich befindet sich eine zu sammengef gte Benutzerschnittstelle die aus einem Kalender mit allen eingetragenen Buchungen sowie aus einer bersicht der n chsten Buchungen besteht Die Darstellung erfolgt auf der n chsten Seite 5 4 5 Zusammenfassung In diesem Abschnitt wurden mehrere anleitende Prinzipien bez glich der Gestaltung des Nutzungs erlebnisses eingef hrt Diese bilden die Basis zur Entwicklung einer Benutzerschnittstelle die visuell vorgestellt wurde Der n chste Schritt ist die Beschreibung der tats chlichen Art und Weise in der sich diese Prinzipien in der Softwarel sung wiederfinden k nnten ein Thema welches in dem kom menden Absatz eingegangen wird 5 4 Konzept zum
4. Nachdem die benutzte technologische Grundlage f r die Bereitstellung von REST APIs kurz ein gef hrt ist werden in den kommenden Abschnitten Implementierungsdetails ber die Umsetzung der Kommunikation zwischen dem Backend und dem Frontend gegeben Definition einer Basis API Ein erster Schritt f r die Gew hrleistung der Allgemeinheit im Fall der zu entwickelnden REST API ist die Definition einer Basis API die allgmein g ltige Einstellungen feststellt Diese Einstel lungen werden per Ruby Einbeziehung engl inclusion Ruby Schl sselwort include in die jeweiligen spezialisierten APIs integriert Die genannten Einstellungen ber hren REST und HTTP spezifische Themen wie z B die Be nutzung einer einheitlichen Versionnummer f r API Methoden s o die Benutzung einer Default Repr sentation oder die Feststellung eines Default Content Type Dar ber hinaus werden in der Basis API verschiedene Grape spezifische Einstellungen ausgef hrt wie die stumme Beseitigung eintretender Exceptions durch Logging siehe auch 7 3 6 Die Basis API enth lt auch eine Basis Funktionalit t die von erbenden APIs benutzt werden k n nen eine Methode zur Serialisierung s u und ggf Komprimierung des bergebenen Inhalts Wei terhin ist die Basis API f r erweiterte Konfigurationen zust ndig wie z B die Installation einer Rack Middleware f r die Implementierung des HMAC basierten Sicherheitskonzeptes siehe auch den kommenden dedi
5. Zu diesem Zweck werden die folgenden Parameter oder Faktoren der Arbeitsbelastung von dem dadurch multidimensionalen Fragebogen ber cksichtigt e Geistige Anforderung engl Mental Demand e K rperliche Anforderung engl Physical Demand e Zeitliche Anforderung engl Temporal Demand e Aufgabenerf llung engl Performance e Anstrengung engl Effort e Frustration engl Frustration W hrend die ersten drei Parameter die Anforderungen an dem Proband messen beziehen sich die letzten drei Parameter auf die Auseinandersetzung der Probanden mit der gel sten Aufgabe In dieser Hinsicht funktioniert dieses Fragebogen nur dann wenn der Proband im Vorfeld eine festgelegte Aufgabe erf llt hatte Die Bewertung des Testes erfolgt anhand einer Skala die mit 20 Stufen versehen ist jeweils mit einer nat rlichen Ordnung der Stufen 0 wird als niedrigstes Ergebnis bewertet Dar ber hinaus werden die 6 genannten Parameter oder Faktoren mit 15 paarweisen Vergleiche gewichtet die Ver gleiche werden auf einer Skala von 0 bis 5 beurteilt Schlie lich lassen sich die Seiten bez glich des NASA TLX Fragebogens im Anhang einzeln durchgehen als Teil des Leitfadens Weiterhin wurde den Probanden eine Reihe von Fragen gestellt die eine Antwort in einen tex tuellen Form erlangten Die Fragen ber hrten die Thematik der Allgemeinheit bzw Vollst ndigkeit des Datenmodells verfolgt von einer Frage bez glich der Erweiterbarkeit des Modells
6. anreicherte Objekt relevante Da ten zur ckliefert Beispielsweise liefern die Anfragen getName getDescription und get Location grundlegende Informationen ber den letztendlich modellierten Asset Dar ber hinaus besteht die M glichkeit eine Schnittstelle zu definieren bzw vom eingekapselten InternalAsset umsetzen zu lassen die f r den Gegenstand eine spezifische Funktionalit t ber einen Web Service wie beschrieben bereitstellt An dieser Stelle k nnen z B fortgeschrittene Programmlogik ablaufen wie beispielsweise eine Anfrage an verschiedener Parameter direkt vom eingekapselten Gegenstand 7 2 Datenmodell f r Home Sharing 95 7 2 3 Erfassung von Metadaten c Eine weitere in dem Datenmodell enthaltene Funktionalit t ist die Beschreibung verschiedener Da ten ber die einzeln modellierten Gegenst nde der Umgebung Hiermit k nnen folgende Metadaten f r jeden Gegenstand erfasst werden e Bedienungsanleitungen Hinweise zum Gebrauch InstructionSet UsagePermissi on Mithilfe der Klasse InstructionSet k nnen mit dem Gegenstand assoziierte Bedie nungsanleitungen erfasst werden Eine Bedienungsanleitung Instruction wird durch einen Namen eine Beschreibung und ein dazugeh riges optionales Bild ausgepr gt Weiterhin k nnen Hinweise zum Gebrauch erfasst werden indem theoretische Einschr nkungen des Gebrauchs ge macht werden Beispielsweise beschreibt Frage zuerst ASK_FIRST die Situation in der der Mie
7. Modellierung Im Laufe dieser Phase m ssen die f r die Anwendung relevanten Kontext Elemente auch als Situationen bekannt definiert werden zusammen mit voraussichtlichen Anpassungen die als Reaktion zu entgegengenommenen Kontext Daten von der Anwendung unterst tzt werden sollen LRBA 10I Weiterhin wird in eine alternative Beschreibung der haupts chliche Aufgabe dieser Phase gegeben und zwar es m ssen Beziehungen zwischen jedem Kontext Element und den da zugeh rigen relevanten Aspekt des modellierten Szenarios wie z B Regeln Benehmen bzw An passung der Anwendung sowie die Pr sentation oder Darstellung dieser Aspekte erstellt werden In dieser Phase lassen sich nur Annahmen vom Entwickler treffen da wesentlich pr zisere Infor mationen ber eine Umgebung nur in der Phase der Konfiguration s u zu sammeln sind Hilf reich an dieser Stelle ist die Verwendung eines Metamodells f r die Bereitstellung von Annahmen und allgemeinen beobachteten Regeln im beschriebenen System solche Techniken werden im Abschnitt 6 1 beschrieben Diese Phase liefert als Ergebnis ein statisches Modell welches mit dynamischen Daten aus der Umgebung bef llt wird sobald die mit dem Modell verbundene Anwendung aufgestellt wird e Konfiguration die Aufgabe dieser Phase ist die Erstellung von konkreten Objekten bzw Instan zen der modellierten Kontext Elemente s mtliche Informationen wie z B bestimmte feste Attri bute oder
8. NICKLAS D Tool support for the design and management of context models In Information Systems 36 2011 Marz Nr 1 S 99 114 DEY Anind K ABOWD Gregory D The Context Toolkit Aiding the Develop ment of Context Aware Applications 2000 DAVIDOVSKI Vlatko A Web oriented Infrastructure for Interacting with Digitally Augmented Environments Diss 2010 DUCATEL K BOGDANOWICZ M SCAPOLO F LEIJTEN J BURGELMAN J C ISTAG Scenarios for Ambient Intelligence in 2010 IPTS Seville Seville 2001 Forschungsbericht DAVIDOFF Scott LEE Min K YIU Charles ZIMMERMAN John DEY Anind K Principles of Smart Home Control In Work 2006 DOUKAS Charalampos Introduction to the Internet of Things Version 2012 http www buildinginternetofthings com In Building The Internet of Things with Arduino 2012 ISBN 1470023431 Kapitel 1 1 12 DRYTKIEWICZ W RADUSCH I ARBANOWSKI S POPESCU ZELETIN R pREST a REST based protocol for pervasive systems In 2004 IEEE International Conference on Mobile Ad hoc and Sensor Systems IEEE Cat No 04EX975 2004 S 340 348 ELLENBERG Jens KARSTAEDT Bastian LUCK Kai V WENDHOLT Birgit An Environment for Context Aware Applications in Smart Homes In International Conference on Indoor Positioning and Indoor Navigation 2011 S 21 23 EUZENAT Jer me PIERSON Jer me RAMPARANY Fano A Context Information Manager for Pervasive C
9. Prototyp f r beide mobilen Anwendungen Wohnungseigent mer bzw Wohnungsmieter Anwendung benutzt 8 1 Zielsetzung Die Zielsetzung der Evaluation ist die m glichst pr zise Beantwortung der Forschungsfrage aus Paragraph I 4 Wie muss ein Kontext Modell gestaltet sein dass es Erweiterungen und einen Umgang mit Echtzeit Daten erlaubt unter Beibehaltung gewisser Eigenschaften wie die Allgemeinheit Flexibilit t oder ein erh htes Sicherheitsgrad Die nur konzeptionell entwickelten Konzepte wie z B der Umgang mit Echtzeit Daten wie z B Datenstr me die von lokalen oder in der Umgebung vorhandenen Sensorik erfasst werden wurden in der Evaluation nicht ber cksichtigt Eine Vorstellung m glicher Methoden die zu einer L sung dieses Problems beitragen k nnten findet im Paragraph 6 2 2 statt Auch als Echtzeit Daten k nnen die Konzepte relativ zum Kommunikationskanal betrachtet wer den Diese nahmen wiederum an der Evaluation nicht teil da der Konzept nicht f r relevant genug im Rahmen der gesamten Arbeit gehalten wurde eine Beschreibung der m glichen und teilweise auch durchgef hrten Umsetzung der zum Kommunikationskanal bezogenen Konzepte erfolgte bereits im Paragraph In dieser Hinsicht wurden Aufgaben vorbereitet die die Allgemeinheit und Erweiterbarkeit Fle xibilit t des Datenmodells im Rahmen des Home Sharing Szenarios experimentell berpr fen k n nen Dar ber hinaus wurden Metriken
10. Sensor Fusion bezeichnet Zudem wird an dieser Stelle auch das eigentliche Frontend oder die Client Anwendung beschrieben Dies geschieht durch die Klasse Device auf der die beschriebenen Entit ten Sensor und Widget ein 6 2 Definition eines Kontext Modells 83 Context Representation Context Creation FactAlternative value Fact probability Float Interpretation and Aggregation 8 possesses 1 UN Interpreter AggregationService id Identification parse Object Object id Identification signature String parent Widget raw_data Object parent Fact 0 depends on 0 Children 0 i i i i Device Doubleinterpreter 1 i Er seg KEE zu higher level consists of 1 Booleaninterpreter fiir Anwendungen e relevanter Information um consists of 1 0 Contextinformation interpreted_info Object explanation String is_interpreted Bool lt lt Interface gt gt Sensor ISensor 1 1 publishes Abbildung 6 5 Teil des Kontext Modells Erfassung Interpretation und Aggregation von Kontext Informationen gesetzt werden SchlieBlich kann ein erfasstes Faktum auch alternative Fakten enthalten die z B den selben Sachverhalt aus der Sicht eines
11. Technologien ist die drahtlose bermittlung von Audio Video und allgemeinen Daten s tze zu Ger ten in der Wohnung die einen drahtlosen Zugang zu Informationen und Entertainment erm glichen Ambient Intelligence verkn pft mit dem Konzept von Kontext Bewusstsein f hrt zu einer an schaulichen Interaktion sei es ber Stimme Bewegung oder Geste gesteuert der Einwohner mit ihrer Umgebung im Alltag Eine Aussage an dieser Stelle ist folgende durch Ambient Intelligence wird eine neue Art von hands free Nutzerlebnissen erm glicht 2 8 4 Historische Entwicklung Kontextbewusste Anwendungen sind auf die impliziten Formen von Eingaben wie Sensor erfasste und abgeleitete Daten angewiesen um zu vermeiden die Kontext Informationen explizit vom Be nutzer verlangen zu m ssen Die ersten naiven berlegungen zum Thema Kontext Erfassung beschreiben eine simplifizie rende Herangehensweise mit der Kontext erfasst werden k nnte eine explizite Auflistung aller in einer Situation relevanten Aspekte konnte vom Benutzer ausgef hrt werden DA00 Dieses Verfah ren muss aber mit der Zielsetzung von kontextbewusstem Computing engl Context Aware Compu ting verglichen werden die Interaktion mit Rechnersystemen zu erleichtern was in diesem Fall nicht passiert Folglich l sst sich diese Perspektive Nutzer zu zwingen die Informationsmenge im System manu ell zu vergr ern nur schwierig und erm dend l sen W
12. e Unterst tzung der Mobilit t Auch hinsichtlich dieses Kriteriums ist ein erheblicher Unterschied zwischen den analysierten Anbieter zu bemerken nur Airbnb bietet eine mobile Anwendung f r das angebotene Produkt bzw Plattform f r Home Sharing Die Anwendung unterst tzt alle Funk 4 2 Grundlagen 45 tionalit ten des Produkts Au erdem verf gt nur die Airbnb Webseite ber eine mobile Version Das Wichtigste an diesem Kriterium ist die Stellung eines Anbieters gegen das mobile Nutzen des angebotenen Produktes Dar ber hinaus wird keiner der vorherigen Kriterien vollst ndig in der mobilen Version unterst tzt es lassen sich auf dem ersten Blick keine erweiterte Zusatzin formationen wie Hausregel oder Gegenst nde modellieren mittels der Anwendung Im Fall der Kommunikation k nnen nur Buchung bezogene Mitteilungen verschickt werden Eine spontane interaktive Kommunikation wie vorher erl utert ist auf einem mobilen Ger t nicht m glich Zusammenfassend betrachten bzw definieren die genannten und analysierten Anbieter von Home Sharing L sungen das Erlebnis von Home Sharing im Ganzen mit den verschiedenen Vorg nge wie Buchung Mieten und Auschecken aber nicht unbedingt im Tiefen Eine Unterst tzung des Benutzers bzw des Wohnungsmieters w hrend des Mietintervalls aus einer technologischen sowie mobilen Hinsicht ist eventuell zu oberfl chig definiert oder nicht unbedingt mit einbezogen im gesamten Konzept Diese Arbeit
13. A Leitfaden der Evaluation Auf den folgenden Seiten erfolgt eine Auflistung der Dokumente die im Laufe der Evaluation verwendet worden sind CARL Mobile HomeSharing Anwendung OSSIETZKY Im Rahmen der Masterarbeit von Cosmin Pitu ne rs tat Evaluation Leitfaden Willkommen zur Evaluation der im Rahmen meiner Masterarbeit entwickelten mobilen Anwendung Im Folgenden werden einf hrende Merkmale erkl rt Die grundlegenden Ideen des Projektes Das in dieser Arbeit betrachtete Szenario ist Home Sharing das Teilen bzw Vermieten der eigenen Wohnung ein Wohnungseigent mer m chte seinen zus tzlichen Raum seine Couch usw vermieten Nachdem die Wohnung gebucht ist und die Mieter angereist sind m ssen sich die Mieter erstmal an die Wohnung und ihre Besonderheiten Umgebung und andere Aspekte anpassen Dabei k nnen Situationen eintreten in denen spezifische Informationen fehlen wie z B eine bestimmte Hausregel oder die Anwendungshinweise f r ein Haushaltsger t Es w re n tzlich wenn solche Informationen vorab gespeichert vorliegen w rden oder noch nachtr glich erfasst werden k nnten Dies soll durch mobile Anwendungen gel st werden eine Anwendung f r den Wohnungseigent mer sowie eine f r die Mieter Dem Wohnungseigentumer wird es erm glicht bestimmte Hinweise oder Richtlinien an gewissen Stellen in der Wohnung z B in einem Zimmer oder in der N he eines bestimmten Haushaltsger tes zu hinterlassen
14. Computing Systemen die eine spezialisierte Klasse von mobilen sowie verteilten Systemen sind SLP04 Diese Tatsache wird auch in der Abbildung 4 2 graphisch dargestellt Damit l sst sich zuerst eine Auflistung der Anforderungen an generische verteilte Systeme erstel len e Unterst tzung der Mobilit t BPP07 Da alle wesentlichen Komponenten des Kontext Modells insb Sensoren und Anwendungen mobil sein k nnen m ssen gezielt Kommunikationsproto kolle ausgew hlt werden die flexible Formen von Routing unterst tzen wie z B HTTP oder TCP UDP Au erdem k nnen Kontext Informationen zusammen mit den Komponenten des Sys tems auswandern engl migrate e Fehlertoleranz BPP07 Im Normalbetrieb eines kontextbewussten Systems werden Sensoren und andere Komponenten des Systems mit einer erh hten Wahrscheinlichkeit fehlschlagen Des wegen m ssen Inkonsistenzen und Unvollst ndigkeiten in den Daten erlaubt sein und im Betrieb ber cksichtigt werden Weitere Strategien nennen die M glichkeit einer Interpolation von unvoll st ndigen Datens tzen vgl SLPO4 Des Weiteren k nnen auch Unterbrechungen in der Verbin dung eintreten das System muss ungeachtet dessen den Betrieb fortsetzen ohne viele Ressourcen zur Problemidentifikation und behandlung zu ben tigen e Ber cksichtigung der Heterogenit t BPPO7 Ein Faktor in der Entwicklung von verteilten Sys teme ist die berwindung der Heterogenit t es k nnen verschie
15. Die betroffenen Dom nen sind nahezu universell da die neuen Systeme in verschiedenen physischen Orte eingesetzt werden k nnen inklusive H user B ros Autos oder ffentliche Bereiche Durch die verschiedenen M glichkeiten der Aufstellung wird den Konzept von Ambient Intelligence s u verkn pft mit der Idee Anwendungen zu entwickeln die zu der Umgebung den Benutzer und deren Interaktionsmodi ma geschneidert ist BA09 Eine m gliche Definition von Ambient Assisted Living wird ebenso in gegeben ein Smart Home Umgebung die die Unterst tzung allt glicher Aktivit ten der Benutzer Zielgruppe durch den Einsatz von Technologie In Linie zu der Smart Home Grundidee wird die Umgebungsintelligenz engl Ambient Intelligence in der Umgebung eingebettet Die Zielsetzung von Ambient Assisted Living ist die Benutzer bzw Bewohner bei deren Aktionen und Pl ne mehr zu helfen mithilfe von Technologie dadurch werden alle Zielgruppe von Benutzer angesprochen Trotzdem wird norma lerweise im Umfeld von Ambient Assisted Living AAL den aktuellen Fokus darauf gelegt die Technologie f r die Hilfe von Senioren und Menschen mit Behinderung einzusetzen Ein letzter wichtiger Punkt aus ist der folgende in den Feldern von AAL Ambient Intelli gence und Smart Home Umgebungen ist ein Thema immer noch von Aktualit t zwar wird versucht eine gemeinsame Architektur und Framework f r AAL Umgebungen zu entwickeln Die zentrale Herausforderung dabei
16. Die hiermit vorgestellten Anforderungen beschreiben die Eigenschaften und Rahmenbedingun gen die den Entwurf und folglich die Implementierung der Softwarel sung auspr gen werden Die Anforderungen werden als Basis f r die Definition des Entwurfs der in dieser Arbeit entstehenden Softwareprodukte ein Thema welches als n chstes in Kapitel 5 behandelt wird Dar ber hinaus m ssen in diesem Kapitel weitere Anforderungen gestellt werden die den haupt s chlichen Beitrag dieser Arbeit umfassen die Anforderungen die eine Technik zur Erstellung eines Kontext Modells im Folgenden als eine Modellierungstechnik gekennzeichnet erf llen muss 4 3 Anforderungsdefinition 51 Distributed Mobile Ubiquitous Computing N Computing 8 Computing gt Mobile Networks Context Awareness Mobile Information Access Ad hoc Networks Adaptive Applications Smart Sensors amp Devices Abbildung 4 2 Entwicklungshierarchie von Ubiquitous Computing Systeme Quelle SLP04 4 3 4 Anforderungen an eine Modellierungstechnik In diesem Abschnitt werden aus der Literatur bekannte Anforderungen an eine Kontext Model lierungstechnik vorgestellt Da diese aus mehreren Quellen stammen wird keine konkrete Technik beschrieben sondern verschiedene Bestandteile die f r die Entwicklung einer hybriden Modellie rungstechnik verwendet werden k nnten Eine erste Kategorie von Anforderungen stammt aus der Entwicklungshierarchie von Ubiquitous
17. Neues Kontext Element einf gen 2 2 2 2 2 73 5 10 GUI Mockup Wohnungs bersicht Formular Neuer Raum hinzuf gen 74 5 11 GUI Mockup Inbox des Kommunikationskanals Erweiterte Kalender Ansicht f r EE 75 6 1 berblick der Modellhierarchie von MDA Quelle Eigene graphische Herstellung angelehnt an einer lizenzfreien Graphik http upload wikimedia org wikipedia SEENEN 78 6 2 Beispiel eines konkreten Kontext Modells als Unterraum des durch das Kontext Metamodell umgefassten konzeptuellen Raumes Quelle WXO8 79 6 3 Das im Rahmen dieser Arbeit entwickelte Kontext Modell mit Bestandteilen und Beziehungen zwischen den Bestandteilen e 81 6 4 Datentypen des Kontext Modells 20 02 0000 000 82 6 5 Teil des Kontext Modells Erfassung Interpretation und Aggregation von Kontext EE ENEE 83 6 6 Teil des Kontext Modells Erfassung von Metadaten 84 6 7 Teil des Kontext Modells Das r umliche Modell engl Spatial Model 85 142 Abbildungen 6 8 Teil des Kontext Modells Dienste zur Persistenz Entdeckung Discovery und Feedback e Ae a a are Deedee ot Ry ee on Aue r 86 gen ee 89 7 1 berblick des Datenmodells mit folgenden Bestandteilen ae re 93 on 105 SITE i 8 1 Auswertung des NASA TLX Fragebogens 2 22 22 2 nme 130 9 1 berblick der Architektur von The Internet of Things IoT Quelle Doul2 136 143
18. bei der Umwandlung der ausgelesenen Daten zu DataMapper Ressourcen eine Vereinbarung ge macht Zwar wird als Vater Knoten f r die hiermit entstehende Baum Struktur die vorher erfassten Kategorie die Gegenst nde au erhalb der Wohnung beschreibt benutzt Weitere Informationen sind im Abschnitt 7 4 1 beschrieben CentralElement Der zentrale Gegenstand wird durch eine Wohnung ausgepr gt und l sst sich durch ein Kom mandozeile gesteuertes Programm automatisch erstellen Hierf r sind Parameter der UserProfile erforderlich siehe auch 7 2 3 wie z B einen Benutzername oder einen kurzen Profil Satz Die damit entstehende Instanz der Cent ralElement Klasse wird in der Datenbank gespeichert und kann danach benutzt werden An dieser Stelle findet eine Anpassung des vorher bef llten Da tenbestandes die generisch benannten Elementen wie z B Apartment House oder Building werden http www floorplanner com http www foursquare com 8 1 7 3 Backend 101 aktualisiert bzw umbenannt anhand der Eingaben zum eigenen Profil Somit werden die Namen und dazugeh rigen Beschreibungen bestimmter Kategorien mithilfe des eingegebenen Benutzerna mens angepasst Beispielsweise werden im Fall des Benutzernamens Larry23 folgende Anpassungen durchgef hrt Larry23 s Apartment House und Larry23 s Building In diesem Fall wird versucht eine grundlegende aber wahrnehmbare Personalisierung der End An
19. lt Den Pfad bis zum pg_dump wird ermittelt ggf wird nach einer manuellen Angabe nachgefragt wenn den Pfad nicht automatisch ermittelt werden kann und der Datenexport wird ausgef hrt Als Ergebnis wird eine SQL Datei zur ckgegeben welche der Zustand der Datenbank zu dem Zeit punkt der Ausf hrung widerspiegelt Optional kann diese Datei mit dem GZip Verfahren komprimiert werden Die Datei kann von anderen Datenbanksystemen benutzt werden oder zu einer PostgreSQL Datenbank automatisch mithilfe des pg_restore Werkzeuges wieder importiert werden https github com meskyanichi backup http www rubyonrails org ttps github com mikz pg_dumper 100 Umsetzung des Prototyps 7 3 2 Statische vordefinierte Elemente des Datenmodells In diesem Abschnitt wird kurz die Prozedur zur urspr nglichen Bef llung des Datenbestandes er l utert F r diesen Vorgang wurden Ruby Programme entwickelt die die Daten auslesen interpretie ren in einem Datenbank bzw ORM geeigneten Format umwandeln und letztendlich die interpretier ten Daten als feste Instanzen des Datenmodells in der relationalen Datenbank speichern AssetCategory Die erste Kategorie von statischen vordefinierten Elementen des Datenmodells ist von der Klasse AssetCategory siehe auch repr sentiert Diese Datensammlung wurde h ndisch von de dizierten Quellen wie ein Online Werkzeug f r die Erstellung von Grundrisserf oder ein Online Werkzeug f r die Erstellu
20. oder ein Lese Schreibe Rolle vorhanden die den Zugang zu den Kontext Informationen regeln Die Rolle kann entweder direkt zu einem Aktor zugeordnet werden oder kann f r eine bestimmte Gruppe von Aktoren angewendet werden Weiterhin erlaubt das Modell die Definition von Zugriffsinformationen engl Access Token f r jeden Aktor sodass der berechtigte Zugriff zu einem gewissen Zeitpunkt auch ablaufen kann Der hierf r verwen dete Mechanismus basiert auf einem Zeitstempel z B ab dem Zeitpunkt in dem das Token als g ltig im System markiert worden ist l uft die Zeit bis zur definierten G ltigkeit schon ab Der eigentliche Zugriff im System kann z B anhand eines festen Wertes wie ein kryptographisches Hashwert eine private Schl ssel die z B mit dem Server System geteilt ist erfolgen Weiterhin enth lt das Kontext Modell das Konzept der Herkunft engl provenance der einzel nen Kontext Informationen Dabei ist die eindeutige Identifizierung z B anhand der IP Adresse der Sensorik die die Kontext Informationen liefert vorgesehen Datenquellen k nnen wie genannt iden tifiziert werden und lassen sich zudem in Gruppen von Datenquellen engl source groups abbilden Eine Datenquelle kann auf verschiedenen Art und Weisen bezeichnet werden und zwar die Quelle ist entweder dynamisch ein sich stets ver ndernder Wert oder statisch eine dauerhaft gespeicherter Wert die z B bei der Konfiguration des Kontext Modells f r die Ziel Anwe
21. und wurden nur als Einblick in den Profile der Teilnehmer eingef hrt Im kommenden Paragraph werden weitere Details ber die ben tigten Schritte zum Aufbau der Evaluationsumgebung und die Ausf h rung der Evaluation gegeben 8 4 Ablaufplan der Evaluation Im Rahmen der Evaluation wurde ein Leitfaden Dokument erstellt welches zuerst die grundlegen den Ideen hinter dem Projekt und der Hintergrund dessen vorstellte Das n chste behandelte Thema in dem Leitfaden ist die Vorstellung der technischen Infrastruktur n mlich dass zwei verschiedene Android Anwendungen evaluiert werden Des Weiteren wird der Proband darauf hingewiesen dass er sie beide Rollen des Home Sharing Szenarios einnehmen wird Ein Ablaufplan der Evaluation ist weiterhin im Dokument vorgegeben in dem erstens die jeweili gen Abl ufe der Evaluation wie z B die Einf hrung die Durchf hrung der Aufgaben und die Beant wortung der Frageb gen und das absolute Zeitlimit auf h chstens 5 Minute pro Aufgabe festgestellt beschrieben sind Der n chste Hinweis auf dem Plan war die Auflistung verschiedener Anmerkungen die zu beachten sind Diese Anmerkungen wurden aus der 10 steps for the course of action Doku ment abgeleitet Sie stellen allgemein im Laufe des Experiments geltenden Prinzipien vor wie z B dass der Proband zu jeder Zeit mit dem Experiment aufh ren darf oder dass alle bemerk te Fehler im System vom System selbst und nicht kommen vom Probanden selb
22. vorhandene Bestandteile oder Komponente der Ziel Umgebung wie z B Sensorik HTTP aufrufbare Dienste zum allgemeinen Zweck von kontextbewussten Anwendungen eine Kontext basierte An passung zu vernetzen Diese Vernetzung tr gt dazu bei dass heterogene Systeme oder Ger te mittels HTTP integriert bzw werden k nnen bzw zusammenarbeiten k nnen Die Simplifizierung dieser Technik l sst sich zuerst anhand der verwendeten Technologien be merken es werden HTTP Mitteilungen zwischen den einzelnen eingekapselten Komponenten ver schickt s u unter Beachtung der REST Prinzipien Ein interessanter Aspekt bei der Benutzung von HTTP ist die damit erzielte Flexibilit t es k nnen Web Browser gesteuerte Interaktionen zwischen den Komponenten realisiert werden Ein ganzheitliche Perspektive ber die f r die Verbindung der einzelnen Komponenten erforderlichen Schnittstellen wird vorgegeben vereinfachte Datentypen wie z B Zahlen Zeichenketten oder boolesche Werte m ssen zwischen den Komponenten kommuniziert werden k nnen Die von pREST angebotene Funktionalit t ist simplifizierend aber effektiv die Abfrage und Manu pulation von Eigenschaften bzw Daten einer Komponente sowie die M glichkeit eine Funktion anhand angekommenen Klartext basierter Mitteilungen Hiermit l sst sich eine urspr ngliche Konfi guration zwischen einer Client Anwendung und einer entsprechenden Server Anwendung realisieren Weiterhin unterst tzt pREST die los
23. 104 Umsetzung des Prototyps lage und ist als eine open source Alternative zu kommerziellen MO Implementierungen wie IBM WebSphere MQ oder Amazon Simple Queue Service gegeben Erlang ist eine relativ kompakte Programmiersprache die zugleich ein Laufzeitsystem und eine umfassende Bibliothek f r die Entwicklung verteilter hochverf gbarer Systeme zur Verf gung stellt Eine alternative Bezeichnug f r Erlang ist Erlang OTP bei der das Akronym OTP f r The Open Telecom Platform steht Die Auswahl von RabbitMQ kann folgenderweise begr ndet werden aus verf gbaren open source Message Oriented Middleware Softwarel sungen wie ActiveMQ ZeroMQ oder Apache Qpid setzt nur Apache Qpid den AMQP Standard um VW12 Dar ber hinaus verf gt RabbitMQ ber eine umfangreiche Dokumentation inklusive Fachb cher Ein weiteres Argument f r RabbitMQ sind die praktischen mitgelieferten Erweiterungen des AMQP Protokolls Beispielsweise K nnen unzustellbare Mitteilungen persistiert werden weiter l sst sich der Empfang einer Mitteilung von einem Verbraucher zu dem aufrufenden Erzeuger best tigen Eine ausf hrliche Beschreibung des Funktionsumfangs von RabbitMQ sowie weitere Erkl rungen zum AMQP Protokoll sind in vorhanden Queuing Strategie f r die Umsetzung des Kommunikationskanals Die generelle Strategie die verwendet wurde um die Funktionalit t des Kommunikationskanals bereitzustellen ist in der folgenden Auflistung wiedergegeben a Dauerh
24. 2012 http www ibtimes com worldwide smartphone users cross 1 billion mark report 847769 http www airbnb com http www wimdu com ttp www 9flats com a a A Einleitung wie z B die Waschmaschine oder das Home Entertainment System aus der Wohnung oder die Bereitstellung einer Landkarte mit den umgebenden Sehensw rdigkeiten Diese Phase ist freiwil lig und hat als Ziel den Mietern w hrend des Mietzeitraums zu helfen Virtuelle Einf hrungsphase Der Die Wohnungsmieter kommen und bekommen eventuell vom Eigent mer eine Tour durch die Wohnung in der die wesentlichen Informationen vermittelt wer den die nicht aus der Beschreibung der Wohnung bzw die Expos oder Anzeige ersichtlich sind Aus sozialer Perspektive ist dieser erste Tour ein Minimum von Hilfe die den Mieter ge leistet werden kann alle anderen Interaktionen ergeben sich auf einer erforderlichenfalls Basis Des Weiteren k nnte man sich vorstellen dass eine virtuelle Vorf hrung der Wohnung auch im Voraus w hrend der Vorbereitungsphase stattfinden kann mithilfe einer technischen Infrastruktur wie das Web Mietphase Diese Phase beschreibt die eigentliche Zeitspanne in der die Wohnung vermietet wird Ein auftretender Vorgang an dieser Stelle ist das Einleben der Mieter zur Erreichung des wie zu Hause Gef hls Endphase Mit dem Auszug der Wohnungsmieter wird das System erneut in den anf nglichen Zustand gebrach
25. 7 4 2 Funktionalit t der Frontend Anwendungen Der Startpunkt in die Diskussion ber die angebotenen Funktionalit ten der Frontend Anwendungen Wohnungseigent mer bzw Mieter Anwendung ist von der Wohnungsmieter Anwendung repr sen tiert Wohnungseigent mer Anwendung Die Wohnungseigent mer Anwendung stellt dem End Benutzer folgende zusammengefasste Android Aktivit ten und dementsprechende Funktionalit ten bereit e AssetCategoryChooseActivity Hiermit wird zuerst eine Anfrage ans Backend verschickt die die Baum Struktur der aktuell vorhandenen AssetCategories zur ckliefert Nach der De serialisierung entsteht eine visuelle Darstellung der Baum Struktur Namen Beschreibung sowie Symbol wenn vorhanden mithilfe der genannten SwipeView Komponente Gesten f r die Na vigation und Bet tigung einer Auswahl werden bereitgestellt die Auswahl einer Kategorie d h die Best tigung dass eine Instanz der Kategorie wie z B ein Balkon oder ein Rechner hinzuzuf gen ist erfolgt per Long Tap Geste Die Navigation innerhalb der Kategorie d h die Ansicht der Kind Knoten erfolgt mittels einer Tap Geste Falls die ausgew hlte Kategorie ein Vater Knoten ist wird nach der Absicht des Benutzers gefragt ob eine neue Kategorie Erweiterung des Datenmodelles innerhalb der ausgew hlten Kategorie erstellt werden sollte oder ob die bestehende Kategorie z B die gesamte Wohnung oder das ge samte Geb ude in dem die Wohn
26. Android App Route 1 lt lt component gt gt RealtimeStorageDB lt lt publish Presence Information gt gt T T D H I i H 1 i TransientExchange TransientQueue1 i j U I J j U I I J t I i j U I j I 1 I 1 I I lt lt publish Presence Information gt gt ee I redis Abbildung 7 2 berblick des Kommunikationskanals in der AMQP Terminologie mit dauerhaften und kurzlebigen Queues sowie anwendungsspezifischen Erweiterungen 1 5002 In der Abbildung wird das verwendete AMQP Modell f r den Kommunikationskanal darge stellt Die Anwendungen k nnen die Rollen wechseln sodass die Wohnungseigent mer Android App auch in der Lage ist Mitteilungen zu empfangen und umgekehrt Es wurde jeweils ein Exchange im plementiert der die dauerhaften d h Offline oder persistierte Mitteilungen und entsprechend die nicht langlebigen Mitteilungen d h Mitteilungen des Typs Instant Messaging zu einer Queue wei terleitet bzw routet Die Skalierbarkeit der L sung kann durch die Existenz mehrerer Queues begr ndet werden obwohl f r den Basis Anwendungsfall nur eine Queue pro Mieter erstellt wird In weiteren F llen wie z B eine h here Anzahl von Mietern die einzelne Kommunikationen mit dem Mieter durchf hren m ch ten bleibt die Architektur bestehen Ein weiterer Aspekt der Implementierung ist die Darstellung der flush Operation Hiermit wird der Umgang m
27. Benutzer den n chsten Bildschirm n mlich das Dash board Das Dashboard stellt ein Gitter mit bestehenden Aktionen bereit die ausgef hrt werden k nnen Die Aktionen lassen sich mit einer Benachrichtigung hinsichtlich der Anzahl ungelesener Ereignisse beschriften Weiterhin ist in diesem Fall des Dashboards eine erste Anpassung am Kontext der Anwendung zu bemerken je nachdem welche Anwendung verwendet wird bzw ob Mieter oder Eigent mer Anwendung passen sich die dargestellten Elemente in dem Dashboard an indem die h ufig verwendeten Aktionen einen vorrangigen Platz im Gitter bef llen Au erdem wird auf dem Dashboard der Zustand des Kommunikationskanals dargestellt Pr senz Information gefolgt von M glichkeiten die Einstellungen der Anwendung oder das Profil des ein geloggten Benutzers zu ver ndern Die m glichen weiteren Aktionen die mit einer Tap Geste auf dem entsprechenden Kasten aufruf bar sind werden als n chstes vorgestellt In der Abbildung B 9Jwerden die Bildschirme abgebildet die nach einer Tap Geste auf dem Neues Element Button des Dashboards angezeigt werden In dem linken Teil der genannten Abbildung wird ein Bildschirm f r die Auswahl der Kategorie angezeigt eine Kategorie ist eine Sammlung von wei teren untergeordneten Kategorien oder einzelne Ger te bzw Gegenst nde der Wohnung siehe auch 73a Es werden der Name der Kategorie und dessen Beschreibung angezeigt Mittels Tap Gesten 72
28. Bestandteilen 82 Kontext Modellierung 6 2 1 Einbeziehung von kontextbewussten Anwendungen und spezifische Daten typen Der zentrale Aspekt hinsichtlich die Benutzung des Kontext Modells ist die Pr senz der Klasse ContextAwareApplication als Hauptmerkmal im Modell Dadurch wird eine kontextbewusste Anwendung engl Context Aware Application repr sentiert Diese Entit t ist in einer direkten oder indirekten Weise mit allen anderen Komponenten des Modells verkn pft und wird normalerweise auf einem mobilen Ger t betrieben welches in der Ziel Umgebung eingebettet ist Die Anwendung kann anhand technologischen Komponenten die im Laufe des Paragraphs 6 2 3 eingegangen werden mit anderen Anwendungen aus der Ziel Umgebung verschiedene Kontext Informationen austauschen In dieser Sinne kann ein Netzwerk gebildet werden die verteilt eine Anpassung an Kontext ausf hren k nnte Weitere Bestandteile des Kontext Modells sind Datentypen die Konzepte wie eine eindeutige Identifikation der einzelnen darge ee stellten Klassen sowie die Einkapselung Zeit bezogener Sachver SE halte enthalten Die Klasse f r die eindeutige Identifikation kapselt Identification eine ID einen optionalen Namen sowie einen optionalen eindeu ee tigen URI ein Was die zeitbezogenen Sachverhalte angeht beste zul hen diese aus einem Zeitstempel mit z B UTC Coordinated Uni versal Time als einzige Zeitzone sowie einem Zeitint
29. Daten wie z B die Liste der Sehensw rdigkeiten um die Wohnung herum benutzt Das definierte Protokoll f r die Kommunikation zwischen Client und Server ist das HTTP Pro tokoll mit m glicher Erweiterung auf TLS SSL f r einen erh hten Sicherheitsgrad Die ber das Netzwerk verschickten Informationen werden vom Sender in einem bestimmten Format serialisiert und auf der anderen Seite vom Empf nger wieder deserialisiert Zugleich mit dem Server und Client enth lt die Architektur ein Message Oriented Middleware dt etwa Mitteilung bezogene Zwischenanwendung f r die Realisierung des Kommunikati onskanals zwischen Wohnungseigent mer und mieter Hiermit werden Mitteilungen verschickt und empfangen und im Fall von begrenzter Erreichbarkeit auch persistiert Die Graphik 5 1 stellt die Hauptarchitektur der Softwarel sung dar Des Weiteren wird auf die genannten Teileinheiten eingegangen und deren erweiterte Architektur vorgestellt 56 Entwurf Frontend Client J lt lt component gt gt Android App sowie Publisher Subscriber Mieter Apps lt lt subscribe gt gt lt lt publish gt gt HTTP S Gf lt lt send receive Payload gt gt MessagePack _ Backend Server J AMQP over TCP gt thin Ku REST Web Server A lt lt component gt gt Messaging J j 1 Service Gateway Repository SE se lt lt component gt gt 8 lt lt deploy RabbitMQBroker ISe
30. Die Erfassung dieser Informationen l uft ber die mobile Anwendung f r den Wohnungsinhaber Die dadurch erstellten Daten werden den Mietern im Form einer personalisierten bzw an die vermietete Wohnung und deren Bestandteile angepassten mobilen Anwendung zur Verf gung gestellt Zur Evaluation F r die Evaluation wird zuerst die Wohnungseigent mer Anwendung benutzt Das Szenario entspricht dem vorher erw hnten wir stellen uns vor dass Ihre Wohnung vermietet wird Die Rolle des Mieters werden Sie auch spielen aber bis dahin m ssen die von Ihnen als relevant betrachteten Gegenst nde Regeln und andere Aspekte beschrieben werden Begleitend dazu werden einige Aufgaben vorgestellt die in K rze folgen CARL Mobile HomeSharing Anwendung OSSIETZKY universitat OLDENBURG Evaluation Ablaufplan Im Rahmen der Masterarbeit von Cosmin Pitu Ablauf der Evaluation Einf hrung und allgemeine Erkl rungen fast geschafft I Ausf hrung der Aufgaben a Einweisung Aufgaben lesen Fragen stellen bei Unklarheiten b Ausf hrung Zeitgrenze liegt bei 5 Minuten pro Aufgabe Ill Ausf llen der Frageb gen und Diskussion a Beantwortung von weiteren Fragen Ihrerseits b Diskussion ber Ihre Erfahrung mit der Evaluation der Anwendung an sich Verbesserungsvorschl ge u A Anmerkungen Sie k nnen zu jeder Zeit aufh ren Alle eventuell auftretenden Fehler kommen vom System und nicht von Ihnen Ich
31. Dollar aber sollen eine Vielfalt von erweiterten Funktionalit ten anbieten Dadurch w rde ein Web Server in jedem Haushaltsger t oder B roartikel eingebettet sein Eine starke Aussage wird am Ende des Abschnittes ber Thin Clients und Thin Servers getroffen das Netzwerkprotokoll der n chsten Generation n mlich IPv6 ist in der Lage mehr als ein tausend Ger te f r jedes Atom auf der Erdoberfl che einer IP Adresse zuzuordnen Wir werden alle diese Adressen brauchen Wir befinden uns gerade an der Konvergenz zwischen drahtloser Kommunikation und eingebet teten Systemen dies hat zur Folge dass elektronische Ger te zunehmend miteinander verbunden werden DRAPZ04 Die Verbindungen werden jede Facette des Alltags umfassen B ros Wohnun gen und ffentlicher Raum werden in der Lage sein umfangreiche Informationen und Dienste wie eine instante Internet Verbindung bis auf Steuerung M glichkeiten ihrer Bewohner anzubieten Das Angebot wird zudem in einer kontextbewussten personalisierten Art und Wise erfolgen Die genannte Konvergenz zeigt sich auch in verwandten Forschungsfeldern eine k rzlich erschie nene Arbeit verbindet die Ideen von Smart Objects zu der Vision von Internet of Things Using Smart Objects to build the Internet of Things LRHM 12 136 Zusammenfassung Zusammenfassend l sst sich sagen dass die Ereignisse von Forschungsfeldern die die eigene Vi sion mit einer anderen verwand
32. Entwicklung der Soft warel sung darauf geachtet dass die folgenden allgemeinen Prinzipien der Qualit t durchgehend eingesetzt wurden e Dokumentation Die Dokumentation wurde mithilfe von Javadod im Fall des Frontends sowie ein Javadoc hnliches System namens YARDP im Fall des Backends erstellt Dokumentiert wur den Klassen einzelne Methoden sowie weitere erkl rungsbed rftige Attribute bzw Felder der Klassen Die Verwendung von Javadoc und Javadoc hnlichen Dokumentationswerkzeugen ver schafft den Vorteil dass die Vorg nge zur Erstellung von statischen Webseiten die die Softwarel sung anhand der eingebetteten Dokumentationstexte vorstellt automatisiert sind Dar ber hinaus wird versucht Kodebl cke mit eigenen Erkl rungen in Form von ein oder mehrzeiligen Kom mentaren zu versehen Dies dient zur Erhebung der Lesbarkeit und allgemeinen Verst ndlichkeit der benutzten Programmiertechniken e Logging Zus tzlich zu der Dokumentation wurde darauf geachtet s mtliche Logging Ereignisse so h ufig wie m glich zu verwenden Durch die Bezeichnung Logging wird die Dokumentation von Ereignissen rund um das entwickelnde System zusammengefasst Diese Mitteilungen lassen sich verschiedenen Warnungsstufen zuordnen und k nnen in mehreren Formaten exportiert wer den Ein h ufiger Anwendungsfall von Logging ist die Ausgabe eintretender meist unerwarteter System sowie Werkzeug Fehlermeldungen und Ereignisse Diese Ausgaben m ssen
33. Form eines nah Echtzeitigen Chats oder eine Konferenz im Fall von meh reren involvierten Parteien mehrere Wohnungseigent mer oder Wohnungsmieter Als Sender und Empf nger k nnen sich sowohl der Wohnungseigent mer als auch der Wohnungsmieter beteiligen Auf den Kommunikationskanal k nnen beidseitige Interaktionen entstehen wie z B eine Echtzeit Kommunikation zwischen Mieter und Wohnungsbesitzer als auch einseitige Handlungen wie z B die Entdeckung neuer Kontext Informationen von den Mietern und die eventuell damit verbundene berwachung der Aktivit t vom Wohnungsbesitzer Schon auf dieser Ebene lassen sich Aspekte der Privatsph re und berechtigte Datenmanagement erkennen welche eine weitere Herausforderung des Szenarios darstellen und im kommenden Unterabschnitt behandelt werden Zugleich mit dem normalen Betriebsmodus des Kommunikationskanals indem allgemeine Mit teilungen verschickt werden k nnen stellt den Konzept des Kommunikationskanals auch eine weitere M glichkeit zur Verf gung eine Art Notfall Mitteilung die direkt zu dem Dienstvermittler ankom men k nnen Eine m gliche Erweiterung an dieser Stelle von Notfall Mitteilungen w re die Realisie rung einer Verbindung zu einem Notfalldienst Dieser Konzept bersteigt aber den Aufwand dieser Arbeit und wird nur als eine m gliche Erweiterung angesehen Aus der Entwurf und Entwicklungsseite l sst sich der Kommunikationskanal mithilfe einer Midd leware dt Dienstesc
34. Mitteilung keine Manipulation entstanden und somit gilt die Nachricht als erfolgreich durch den unsi 5 2 Server Architektur und Funktionalit t 61 cheren Kanal korrekt bzw unmanipuliert empfangen Die mit diesem Sicherheitsziel verbundenen Umsetzungsdetails werden im Absatz pr sentiert Absicherung der Daten bertragung Ein weiterer Punkt einer Sicherheitspolitik insbesondere im Fall von Verteilten Systemen ist die Absicherung der Daten bertragung zwischen den einzelnen Endpunkten engl endpoints Eine Me thode zur Erreichung dieses Zieles ist die Verwendung einer abgesicherten Verbindung hierf r kann TLS Transport Layer Security ein kryptographischer Protokoll zur Absicherung der ber ein nicht gesichertes Netz entstehenden Kommunikation TLS wird auch im Fall des HTTPS Hypertext Transfer Protocol Secure eingesetzt und diente als eine weitere Inspiration dieser Arbeit die in der TLS Spezifikation beschriebene Methode zur Nach richtenauthentifizierung mittels HMAC wurde auch in dieser Arbeit eingesetzt siehe auch Abschnitt 7 3 5 Die Verbindung zu den Datenbank Systemen zum Broker des Kommunikationskanals sowie zum Frontend Client k nnen per HTTPS abgesichert werden sodass eine sichere Kommunikation der z B Personen bezogenen Daten entstehen kann Data Liberation Das im Abschnitt vorgestellte Projekt namens Data Liberation hat diese Arbeit dazu in spiriert auf die gespeicherten Daten insbesondere di
35. Noch wichtiger w re die Gestaltung eines verallgemeinerten Kontext Modells von dem mehrere Klassen von An wendungen profitieren k nnten SLPO4 Verbunden mit der Entwicklung eines allgemeinen Kontext Modells sind auch Gewinne aus Sicht der Softwaretechnik zu ber cksichtigen die Komplexit t von kontextbewussten Anwendungen verringert sich zugleich steigt die Wartung und das Weiterentwick lungspotential engl evolvability BBH 08 Wie weiter in erl utert ist die Entwicklung von Anwendungen im Ubiquitous Compu ting Umfeld mithilfe von Techniken des Kontextbewusstseins ein sich entwickelnder Forschungsbe reich es wird untersucht welche Methoden flexible und anpassungsf hige L sungen liefern k nn ten die auch eigenverantwortlich im Namen des Benutzers agieren Ein erster Schritt zur Evaluation spezifischer Modellierungsstrategien ist die Bereitstellung von Anforderungen die jede Strategie erf llen m ssen Auf diesen Aspekt wurde in den Paragraph n her eingegangen Nachdem die Anforderungen an eine Modellierungstechnik f r Kontext Modelle aufgestellt wor den sind folgt im n chsten Abschnitt eine kurze Einf hrung in eine aus der Welt der Softwaretechnik bekannte Technik zusammen mit ihren Verkn pfungspunkten mit dieser Arbeit 6 1 1 Modellbetriebene Entwicklung eines Kontext Modells Unter Model Driven Architecture MDA wird eine modellgetriebene Methodologie zur Softwa reentwicklung beschrieben die
36. Nr Beschreibung Zus tzliche Infos Lokalisierung Feineinstellungen m glich Beschreibung der Funktionalit t N tzlichkeit mit 1 2 Beispiele f r m gliche Nutzen des Elements Abbildung 5 9 GUI Mockup Neues Kontext Element einf gen Die Ansicht zur Wohnungs bersicht pr sentiert die Anzahl von modellierten Kontext Elementen und weitere berlegungen zur Darstellung eine Art Aktivit tsgrad Anzeige die z B von der An zahl der erfolgreichen Indoor Lokalisierungen bestimmt werden kann oder eine Art Checkliste An zeige welche die vorstellbaren Vorbereitungen darstellt die zu den einzelnen Phasen des Szenarios siehe auch 3 1 1 geh ren k nnen Au erdem wird auf der rechten Seite eine andere berlegung zur Anzeige der aktuellen Lokati on in der Wohnung dargestellt Damit verkn pft ist die Aktion welche erm glicht einen symbo lischen Raum anhand der aktuellen Lokation zu definieren Diese Anzeige l sst sich noch verein fachen indem eine Liste mit den zu dem entsprechenden Zeitpunkt definierten R umen dargestellt wird Dadurch wird die M glichkeit gegeben einen neuen Raum relativ zu dem ausgew hlten Raum hinzuzuf gen 74 Entwurf lt HomeName gt optional ZUR CK Adresse ApartmentPic optional r Wohnung Elemente Ger te R ume 100 42 2 Regel Karte Symbol 5 6 bis A lt ReferenzElement gt
37. Prozess welcher den Web Server hostet bzw der bergebenen Adresse und dem Port lauscht Thin erm glicht auch eine Art des internen 23 24 https www ruby toolbox com categories web_servers http code macournoyer com thin 114 Umsetzung des Prototyps Loggings ein debug Modus in dem einzelne Anfragen Antworten und Reaktionsszeiten in der Konsole ausgegeben werden 7 3 6 Sonstige Funktionalit t des Backends Im Folgenden werden einige Details ber die sonstige von der Backend Komponente angebotene Funktionalit t gegeben QR Code Generierung Eine sonstige Funktionalit t des Backends wird von der Unterst tzung der Indoor Lokalisierung repr sentiert Hiermit wird ein Eingangswert z B eine String die eine URI kodiert entgegengenom men und mit Hilfe des Ruby Gems namens barby eine Darstellung des Wertes als QR Code als Antwort zur ckgeliefert Das Format der Antwort ist ein PNG Bild in einer mittleren Gr e Kodiert wurde das bergebene Wert meistens eine URI die f r andere Anwendungen oder Szenarien keinerlei Bedeutung tragen sollte wie z B real_asset 42 hiermit wird kodiert dass der QR Code ein RealAsset des Datenmodells mit der ID 42 repr sentiert Weitere Entwicklungen k nnen an dieser Stelle genannt werden wie z B die direkte Unters tzung des PDF Formats welches vom genannten Gem auch unterst tzt wird Dieser Anwendungsfall k nnte auch f r die Implementierung des
38. Systementwurfs w re die Idee den bergang zwischen Entwurf und Aufstellung zu automatisieren Dies kann mithilfe von z B Modell getriebenen Architekturen wie MDA erfolgen Die Vision w re dann eine komplette Me thodologie zum generischen Entwurf und zur Bereitstellung umsetzen zu k nnen Weiterhin muss ein Kontext Modell hinsichtlich seiner F higkeiten beschrieben werden welche Eigenschaften muss das fertige Modell bereitstellen um dem angestrebten Ziel n her zu kommen Die folgende Auflistung aus der Literatur schl gt die relevanten Konzepte vor e Partielle Validierung SLPO4 Durch die Entwicklung eines Kontext Modells wird nur eine Vor lage f r die zu erfassende Kontext Informationen erstellt Aus diesem Grund m ssen diese Infor mationen demn chst auf ihre Vollst ndigkeit gepr ft werden auch wenn nur partiell Die Unvoll st ndigkeit der Kontext Informationen stammt aus der Verteilung des gesamten Systems wobei 4 3 Anforderungsdefinition 53 keine einzige Stelle oder sogar kein bestimmter Zeitpunkt gibt indem sich die vollst ndige inter pretierte Information auf einem separaten System befindet e Ausdrucksst rke BOQ 11 Eine wichtige Eigenschaft des Kontext Modells ist die Ausdrucks st rke die durch die modellierten Elemente abgebildet worden ist Zum einen besteht diese Eigen schaft aus dem Anfrage Potential die Anfragen nach Kontext Informationen m ssen complex sein und auf eine m glichst gro e Anz
39. Wohnung Umgebung Stadtviertel etc der Wohnungsmieter begleitet und eventuell auch verbessert 1 3 Problemstellung In diesem Abschnitt wird die Problemstellung formuliert zun chst aus der Sicht der Anwendungs dom ne und darauffolgend unter Ber cksichtigung der dadurch entstehenden und durch diese Arbeit zu l senden technologischen informatischen Probleme 1 3 1 Aus Sicht der Anwendungsdom ne Die Anwendungs Dom ne dieser Arbeit ist als Home Sharing bekannt Wie genannt ist diese Dom ne ein Teil des Sharing Economy Konzeptes welcher im Folgenden Kapitel detaillierter vorgestellt wird Mit dem Begriff Home Sharing beschreibt man das freiwillige Teilen bzw Vermieten der ei genen Wohnung oder einzelner Zimmer in einer Wohnung f r normalerweise begrenzte Zeitr ume Eine m gliche abstrahierte Unterteilung der individuellen Phasen des haupts chlichen Vorgang Ho me Sharings ist die folgende e Kontaktaufnahme zwischen Wohnungseigent mer und Wohnungsmieter Eine direkte Kon taktaufnahme oder eine die durch ausgew hlte Dienstleister wie z B Airbnt Wimduf oder 9flatg entsteht Sie kann zu einer festen Buchung der Wohnung f hren e Vorbereitungsphase An dieser Stelle k nnte der Wohnungseigent mer den vermieteten Raum mit Informationen anreichern mit z B Tipps relativ zu der Nutzung verschiedener Gegenst nde Artikel Worldwide Smartphone Users Cross 1 Billion Mark Erscheinungsdatum 17 Oktober
40. Zi Wohnung nicht es f llt ihm kein interessanter Namen ein Diese nicht einge gebenen Daten werden anhand Martins eingegebenen Namens generiert z B ein leeres Profilbild oder ein generischer Name f r die Wohnung wie Die Wohnung von Martin Als letztes gibt er die Adresse der Wohnung ein sodass seine G ste den Weg ggf wiederfinden k n nen Als Erweiterung zu dieser Aktion k nnte man sich vorstellen dass das Profil automatisch mit hilfe freigegebenen Dienstleister wie beispielsweise Social Media Webseiten erstellt werden k nnte Im Hintergrund werden die eingegebenen Daten in einer Datenbank persistiert Zuerst wird die Datenbank initialisiert indem die Relationen erstellt und teilweise mit Daten wie z B vordefinier te Kategorien von Kontext Elementen gef llt werden Dieser Prozess ist in dem Frontend bzw in der Anwendung f r den Wohnungseigent mer dargestellt durch ein Ladesymbol Weiterhin werden bestimmte Services und Funktionalit ten auf dem eigentlichen mobilen Ger t auch vorbereitet sie he Abschnitt 6 2 2 f r weitere Informationen Dieses Szenario k nnte als eine Alternative zu einem Kommandozeile basierten betrachtet werden Als n chstes lassen sich Kontext Elemente vom Wohnungsbesitzer mithilfe der dedizierten mobilen Anwendung erstellen Zuerst muss Martin eine Kategorie ausw hlen zu dem der neue Gegenstand engl Asset geh ren wird Im Anschluss m ssen bestimmte Attribute wie z B ein Namen eine Be
41. an ea eal ale wie 135 9 2 Future Work aie ss eo ares BO ee ee a a R E a 136 Abk rzungen 139 Abbildungen 141 142 A Leitfaden der Evaluation 143 Literatur 145 In diesem Kapitel wird das ben tigte Hintergrundwissen vorgestellt der allgemeine Kontext sowie die Dom ne der zu leistenden Arbeit Daraus wird eine Forschungsfrage etabliert welche im Laufe der Arbeit beantwortet wird 1 1 bersicht Die Informationsgesellschaft entwickelt sich in eine neue Richtung in der sich die Computing Technologie von dem etablierten Paradigma des festen Arbeitsplatz entfernt BA09 Die Tendenz zum mobilen ubiquit ren Computing wird deutlicher Im Fall des ubiquit ren Computing werden verteilte Systeme gebildet die haupts chlich aus vernetzten und interaktiven Ger ten bestehen und auch verschiedene Apparaturen und deren Sensorik umfassen Solche verteilten Systeme erm glichen einen Zugang zu einer breiten Palette von Diensten aus verschiedenen Dom nen und werden normalerweise in unterschiedlichen physische Standorten ein gesetzt wie z B H user B ros Autos oder im ffentlichen Raum Solche Anwendungen z hlen zu den Bausteine einer Technologie namens Ambient Intelligence Dar ber hinaus enthalten sie wei terhin die Idee dass Applikationen so entwickelt sollen dass sie f r bestimmte Nutzer deren Umge bung sowie Ausgangssituation w hrend der Benutzung zugeschnitten sind oder sich zur Laufzeit adaptieren Die Adapt
42. anderen Sensors beschreiben Weiterhin erforderlich f r die Erfassung von Sensoren Daten ist eine einheitliche Repr sentation der rohen Daten Innerhalb dieses Modells wird die Bezeichnung Faktum engl fact benutzt und in der entsprechenden Klasse repr sentiert An dieser Stelle besteht wiederum die M glichkeit die einzelnen Fakten zu einer Hierarchie zu gliedern um z B eine zeitliche Reihenfolge oder einen Abh ngigkeitspfad zwischen Knoten abbilden zu k nnen Eine Verkn pfung mit dem r umlichen Modell ist hier auch nennenswert Fakten k nnen zu einer bestimmten Lokation zugeordnet werden W hrend ein Faktum die rohe vom Sensor ausgelesene Information modelliert enth lt die Klasse ContextInformation die eigentliche gereinigte abgeleitete Form der Daten Zugleich l sst sich eine Erkl rung der Ableitung in der genannten Klasse speichern die z B die Auswahl der geeigneten Fakten und deren Interpretierung s u kurz begr ndet bzw annotiert Wie oben aufgef hrt lassen sich die erhaltenen oder ausgelesenen Fakten vom ihrer rohen Form in eine ausgelegte Form umwandeln der Vorgang der Interpretation Daf r sind Services vorhanden wie die verallgemeinerte Klasse namens Interpreter Mithilfe der konkreteren Auspr gungen bzw der Unterklassen lassen sich rohe Daten zu blichen Datentypen zwingen engl type coercion beispielsweise kann ein konkretes Doublelnterpreter eine erfasste Zahl als eine Dist
43. antreiben Das Ger t kann programmiert wer den um andere Apparatur anzutreiben beispielsweise lassen sich Lichter ein oder ausschalten Die Ausl ser m ssen auch eingestellt werden beispielsweise k nnen nur dann die Lichter einge schaltet werden wenn sich die Lichtst rke in dem vom Benutzer aktuell benutzten Zimmer unter eine gewisse Grenze befindet W hrend die vorherigen Funktionalit ten auch f r allgemeine Sensorik gelten sind folgende Funk tionalit ten normalerweise nur f r diejenige Ger te angewendet die zum Internet of Things geh ren e Informationen erhalten Eine einzigartige F higkeit von IoT Ger te ist die M glichkeit eine Verbindung mit der verbundenen Netzwerk oder das Web aufzubauen Damit lassen sich Informa tionen ber andere in der Netzwerk verf gbaren IoT Ger te sowie verschiedene Informationen direkt aus dem Web empfangen Damit k nnen Live Updates wie z B das Einf gen eines neuen Ausl sers oder die Einrichtung neuer Funktionalit ten durchgef hrt werden e Assistenz in der Kommunikation Weiterhin k nnen IoT Ger te f r die Kommunikationsassis tenz in der verbundenen Netzwerk zust ndig werden Informationen k nnen zu anderen IoT Ger te oder Netzwerkknoten weitergeleitet werden Dieses Szenario ist sinnvoll wenn diejenige zu erreichenen Knoten nicht nah zu einem Endpunkt beispielsweise ein Router sind Wie in der Auflistung vermerkt die Funktionalit t die ein IoT Ger t von ein
44. das Server System in der Wohnung verortet und schlie t sich an dem lokalen Netz werk W LAN und gegebenenfalls auch am Internet Nachfolgend werden die grundlegenden Abl ufe oder Phasen des Konzeptes beschrieben die sich w hrend der Beschreibung der User Stories ergeben werden 3 1 1 Grundlegende Abl ufe oder Phasen im System Ein erster Ablauf im System ist implizit und wird nicht durch einen Anwendungsfall abgedeckt die Buchung der Wohnung wird als ein Ereignis au er Kontrolle des Systems betrachtet Darauf folgend kommt das System im Einsatz w hrend einer Buchung Laut Definition beschreibt eine Buchung eine vordefinierte Zeitspanne in dem die Wohnung des Wohnungseigent mers von den Wohnungsmietern gemietet wird Des Weiteren werden vom System die folgenden Kern Phasen des Home Sharing Szenarios betrachtet e Vorbereitungsphase Die Vorbereitungsphase bezieht sich auf die Zeitspanne zwischen Buchun gen und l sst sich mehrmals ausf hren In dieser Phase werden die Kontext Elemente vom Woh nungseigent mer modelliert oder ver ndert mit dem Ziel diese Elemente den neuen Wohnungs mieter zur Verf gung zu stellen Weitere Details ber diese Phase lassen sich aus dem Kapitel 6 entnehmen e Distributionsphase Die mobile Anwendung die von den Wohnungsmietern benutzt wird muss zuerst verteilt werden Diese Phase muss bei jeder Buchung wiederholt werden sodass die Woh nungsmieter ber geeignete Zugriffsinformat
45. den aufgelisteten Services zu erm glichen Ein Hilfsmittel f r diese Darstellung wird von der vorgeschlagenen WADL Spezifikation repr sentiert WADL Web Application Description Language ist eine Sprache zur Beschreibung von Web Anwendungen die im Jahr 2009 zwecks Standardisierung bei W3C vorgeschlagen worden ist Jedoch ist WADL noch nicht standardisiert WADL ist ein XML basiertes Dateiformat das eine Plattform und Programmiersprache unabh ngige Beschreibung von HTTP basierten Web Anwendungen anbietet Eine verbreitete Perspektive von WADL schildert dies als das RESTful quivalent von WSDL KTP11 Obgleich die Beschreibung von REST basierten Web Services m glich ist stellt sie sich als eine zu schwerf llige Ann herung dar In dieser Arbeit wurden die Prinzipien von WADL in einer verk rzten Form bertragen mithilfe des h ufig bersehenen HTTP Verbs namens OPTIONS und die benutzten Methoden zur Beschrei 1 http wadl java net Artikel von IBM Ihttps www ibm com developerworks webservices library ws 5 2 Server Architektur und Funktionalit t 59 bung von URIs aus der Implementierung der Rack Schnittstelle k nnen Beschreibungen vorhandener REST Services auch als engl Endpoints bekannt dynamisch erstellt werden Rack ist eine Softwarel sung die eine minimale modulare API f r die Verbindung von Ruby unterst tzenden Web Servers zu Ruby basierten Web Frameworks sowie zu s mtlichen Middle
46. der Datenbank Umgebung ist das Laden und die letzte Vorbereitung der Modelle die in der Datenbank als Relationen gespeichert werden Ladevorgang und Vorbereitung des Datenmodells In diesem Schritt werden die von dem Komanndozeile basierten Programm gelieferten und ggf noch manuell verarbeiteten Ruby Klassen geladen Mittels Ruby werden erstmal die einzelnen Da teien rekursiv aus dem Dateisystem geladen mithilfe des require Befehls Somit sind alle in der Abbildung 7 1 dargestellten Klassen dem Backend System bekannt und die letzten Vorbereitungen k nnen anfangen Nachdem alle Modelle in der DataMapper Terminologie auch als Ressourcen bekannt geladen sind m ssen die abgeschlossen bzw berpr ft werden Der Befehl DataMapper finalize ist daf r zust ndig Dieser Zwischenschritt ist ben tigt um diejenige deklarierten Modelle nach Feh ler wie z B eine nicht unterst tzte Kardinalit t beispielsweise 0 3 anstatt O n zu untersuchen sowie die mit den Assoziationen verbundenen Getters und Setters zu initialisieren An dieser Stelle ist der Umgang mit dem Datenmodell f r die Formulierung von Befehlen wie z B die Erstellung von Instanzen bereit Die Ausf hrung der Befehle setzt voraus dass die Migration d h die entsprechende Darstellung der Modelle als Relationen in der Datenbank schon abgeschlossen bzw durchgef hrt ist Dieser Schritt wird im kommenden Paragraph erl utert Initielle Migration und Bef l
47. die Wohnung vermieten schlie end auschecken und eine Bewertung abgeben Zusammengefasst wird die Idee hinter dem Home Sharing Erlebnis auch auf der Webseite von Wimdu ein Home Sharing Dienst Wohne wie ein Local hol Dir Insider Tipps von deinem Gastgeber und erlebe eine Stadt aus einer ganz neuen individuellen Perspektive Weitere Details ber Home Sharing und die umfassende Dom ne namens Sharing Economy k nnen aus dem kommenden Absatz 2 4 1Jentnommen werden Dar ber hinaus wird im Paragraph 4 eine Analyse durchgefiihrt die die Niitzlichkeit einer weite ren Unterstiitzung bzw Vertiefung oder Erweiterung dieses Erlebnisses motivieren kann Grundle gend f r die durchgef hrte Analyse war die Etablierung verschiedener Kriterien die zu untersuchen waren Die Kriterien werden an dieser Stelle kurz genannt da in den kommenden Abschnitte Bezug darauf genommen wird e Erfassung von tiefgreifender Datenbest nde ber die Wohnung und deren Umgebung e F rderung des spontanen Kontakts w hrend des Mietintervalls e Unterst tzung der Mobilit t In den n chsten Abschnitten werden einige Konzepte vorgestellt die der Konzept des Home Sha ring unterst tzen und auch erweitern Ein erster Schritt hierf r ist die Definition eines Kontext Modells womit feingranulare Informationen ber die vermietete Wohnung erfasst und verwertet wer den k nnen 1 5 2 Definition eines Kontext Modells Der in der Analyse verschiedener A
48. die Lokalisierung verschiedener Elemente falls bekannt k nnen hiermit erfasst und in dem erstellten Kontext Modell gespeichert werden CWGNI11 Statische Informationen wie z B die IP Adressen der ben tigten Netzwerkinfrastruktur k nnten als Beispiel gegeben werden 34 Verwandte Arbeiten Dar ber hinaus wird in LRBA1O eine weitere Aktivit t dieser Phase genannt die Ausf hrung von Tests die die Funktionalit t des Systems und die unterst tzten Anfragen ausprobieren z B durch ein Hilfsmittel wie ein Web Service Testing Tool beispielsweise SoapU Als Ergebnis dieser Phase ist ein dynamisches Kontext Modell zu liefern CWGN11 welches den aktuellen bzw den Start Zustand der Umgebung beschreibt Dieses Modell wird als n chstes der in der Umgebung laufenden kontextbewussten Anwendung bereitgestellt Ausf hrung Die letzte Phase beschreibt den laufenden Betrieb des entwickelten Kontext Modells das Modell wird den Anwendungen aus der Umgebung zur Verf gung gestellt in Form von programmatischen Objekten bzw Instanzen der erstellten Objekte BPPO7 Hiermit ist die Definition der genannten Anpassungen an neue Werte aus der Umgebung bedeut sam Die Werte str men ins Kontext Modell und eine Reaktion ist erw nscht damit ver bunden ist entweder die Erzeugung oder das Ausl sen verschiedener Aktionen wie in BBH 08 erl utert Wie in der Beschreibung der Entwurfsphase genannt lassen sich generi
49. die entweder bei Bedarf wieder finden zu k nnen oder diese einfach verwalten zu k nnen Des Weiteren k nnen die erfassten Daten beim Verkauf der Wohnung helfen eine automatische Ansicht der Wohnung konnte be nutzt werden um potentiellen K ufern ein genaueres Bild zu machen Diese Idee kann mit der automatischen Generierung einer Anzeige f r Vermietung oder Verkauft weiter verkn pft werden Weitere Anmerkungen dienten zur Evaluation der Benutzbarkeit des Prototyps 33 der Probanden h tten sich eine Hilfsfunktion oder eine Gebrauchseinleitung ein Tutorial beim ersten Nutzen der Anwendungen gew nscht Dar ber hinaus sollte die Anwendung von einer zu jeder Zeit aufrufbarer Hilfsfunktion verf gen und in mehrerer Sprachen z B Deutsch bersetzt bzw lokalisiert werden Schlie lich wurde eine Aussage getroffen bez glich der visuellen Artefakten zur Steuerung der An wendung um eine Kategorie auszuw hlen siehe auch 7 4 k nnte ein Gitter engl Grid eingesetzt werden dar ber hinaus stellte sich ein Proband eine Suchfunktion auch als hilfreich vor Ein weiterer genannten Aspekt ber hrt die Problematik der Datensicherheit siehe auch 1 5 5 der erfassten Daten dieser Aspekt wurde als von gro er Wichtigkeit empfunden aufgrund der erw nschten Privatsph re Zudem wurde der Aspekt eines entfernten Zugriffs auf die Daten der Wohnung genannt ein Punkt welcher in Abw gung zu der Aspekten der Privatsph re des Mieters gebracht
50. diese Prozedur kann die vorhandene Struktur eines Programms d h im Fall einer objektorientierten Programmiersprache einer Klasse untersucht werden und damit ihr Verhalten die Werte Metadaten einzelne Felder und Methoden zur Laufzeit ver ndert werden Damit lassen sich z B Subklassen einer spezifischen Klasse oder im Fall von strikt typisierten Sprachen einer spezifischen Schnittstelle zur Laufzeit ermitteln Diese Herangehensweise konnte wie im Fall der vorher vorgestellten REST basierten Entdeckung fortlaufend durchgef hrt werden bis das erzielte Ergebnis oder ein Grenzfall entdeckt ist Ein Beispiel dieser Methode ist im Da tenmodell vorhanden wo das Frontend eine Anfrage f r die Auflistung der Subklassen der Klasse SpatialRelation formuliert siehe auch Absatz 7 4 Die Ausf hrung von Reflection basierten Verfahren ist sowohl im Fall des Backends als auch im Fall des Frontends verf gbar hiermit k nnen z B neue zur Laufzeit noch nicht bekannte Widgets die auf dem mobilen Ger t laufen entdeckt werden Weiterhin k nnte dieser Typ von Entdeckung auch als eine REST API im Fall des Backends ver ffentlicht werden z B mit der Anfrage GET app HomeSharingl available_widgets subclass IMyWidget Ver ffentlichung der REST API Die Bereitstellung bzw Ver ffentlichung der vorher beschriebenen REST APIs erfolgt mithilfe ei nes Rack kompatiblen Web Servers Die beschriebene Web Anwendung und dessen Routen werden nach au
51. diesem Konzept des Profils auch gut zusammenarbeiten k nnte e Eine von 33 der Probanden eingegangene Thematik bezieht sich auf der eventuellen Erschei nung von Schaden in der Wohnung Notf lle wie eine defekte Heizung oder allgemeine Fragen rund um die Versicherung sollen erfasst werden k nnen Dar ber hinaus schl gt ein Proband vor dass die Anwendung von einer Beibehaltung des Kontakts mit dem Wohnungseigent mer profi tieren k nnte Diese Funktionalit t wurde im Laufe der Evaluation nicht genannt das vorgestellte Konzept zum Kommunikationskanal w rde aber diese Anforderung erf llen siehe auch 1 5 4 e Die Erweiterbarkeit des Prototyps wurde auch gut empfunden 83 der Probanden w nschten sich eine Erweiterung der vorhandenen Kategorien mit Beispiele wie z B ein Spiegel einen Stecker zusammen mit Anwendungshinweise bez glich der maximal erlaubten Kraft beim Ausstecken eines Ger ts oder eine Kategorie f r Dekorationsgegenst nde Vasen Bilder Blumen Kerzen und Kissen die zugleich mit Hinweise zur Umdekorierung ob gestattet oder nicht bereichert werden k nnen Einzeln benannten Ger te waren beispielsweise ein Eierkocher eine Dunstabzugshaube oder ein Waffeleisen e Bez glich der Frage zur Allgemeinheit der erfassten Daten wurden weiterhin interessante Aussa gen von Probanden getroffen es wurde die M glichkeit einer strikten privaten Nutzung erl utert in dem man nur f r sich selbst die Gegenst nde modelliert um
52. diskutiert welche ausgel st werden k nnen und somit eine Aktion vom System erfordern Durch die ses Konzept lassen sich Reaktionen oder allgemeines Feedback modellieren bzw darstellen wie z B eine Mitteilung im Frontend wenn ein bestimmter OR Code eingescannt worden ist Dar ber hinaus k nnte die Reaktion ausf hrlicher aufgestellt sein es k nnen automatische Aktionen durchgef hrt werden nicht nur auf dem ausl senden System sonder auch auf anderen Systemen damit soll ein Format der Anpassung bzw Reaktion sowie ein Kommunikationskanal zwischen den wahrscheinlich technologisch heterogenen Systemen geschaffen werden Anfrage und Verteilung von Kontext Informationen Context Query Context Distribution QueryMethod lt lt Interface gt gt ContextPublisher ZN lt lt implements gt gt 0 1 RESTfulserviceBasedQueryMethod E publishes L ActiveMQBroker ci lt lt implements gt gt via Subclasses ContextDistributionBroker id Identification KH _ZeroMQBroker lt lt Interface gt gt IQueryMethod tr 1 publishes Le lt lt Interface gt gt uses listens to K ContextListener uses listens to Kb QueryCodeGenerator 0 a generates Abbildung 6 9 Teil des Kontext Modells Anfrage und Verteilung von
53. eine m gliche Weiterarbeit an dem erstellten Kontextmodell siehe auch Kapitel 6 inspirieren indem die semi automatische Entdeckung von im urspr nglichen Modell nicht einbezogenen Dienste und Sensorik verwertet werden kann Ein weiterer Einfluss der genannten Arbeit ist die Ausnutzung von normalerweise unbeachteten HTTP Verben wie HEAD oder die Spezifikation der angebotenen Funktionalit t durch HTTP Headers Diese Techniken haben die Beschreibung vorhandener und eventuelle Entdeckung neuer REST Web Services in der Umgebung inspiriert weiter Informationen zu diesem Thema sind im Paragraph 7 3 5 zu finden 2 8 Kontext Modellierung In diesem Abschnitt wird Hintergrundwissen bermittelt ber den zentralen Fokus dieser Arbeit unter Ber cksichtigung vorheriger und aktueller Entwicklungen aus der Dom ne Dieses Wissen bil det den theoretischen Hintergrund der dem vorzustellenden Entwurf und Umsetzung des in dieser Arbeit entwickelten Kontext Modells zugrunde liegt 2 8 1 Einleitung Eine erste bedeutende Aussage zum Thema Kontext wird in gemacht Kontext gestaltet das menschliche Erlebnis Der gegenw rtige Stand ist dass wir unsere Welt zunehmend durch eine Linse der Information betrachten und sogar beeinflussen Damit wird die Qualit t unserer Inter aktionen davon abh ngig wie f hig unsere Ger te und Dienste sind unsere bestimmten Anfragen u erungen oder Gesten zu erkennen und davon unsere breiteren Intentionen un
54. eingegangen 4 3 Anforderungsdefinition In dem aktuellen Absatz werden die wesentlichen Anforderungen AF an der zu entwickelnden Softwarel sung aufgelistet je nach Anforderunsklasse Funktionale oder Nicht Funktionale Anforde rungen Die Anforderungen wurden anhand der User Stories und der durchgef hrten Analyse erfasst Als Startpunkt werden die funktionalen Anforderungen festgelegt 4 3 Anforderungsdefinition 47 4 3 1 Funktionale Anforderungen Die Funktionale Klasse von Anforderungen stellt fest was die Softwarel sung leisten soll Im Folgenden werden die Anforderungen aufgeschl sselt aus Sicht der jeweilig betroffenen Systemen die zwei mobilen Anwendungen aus dem Frontend sowie das Backend 4 3 1 1 Backend Die folgenden Anforderungen beziehen sich auf der Backend Komponente welcher Struktur bzw Architektur in dem folgenden Kapitel vorgestellt wird Die beschriebene Aktivit t ist in diesem Fall der Normalbetrieb bzw die Beantwortung von Anfragen aus dem Frontend Identifikationsnummer Anforderung AF F 1 1 Das Backend muss das Szenario von Home Sharing unterstiitzen AF F 1 2 Das Backend muss die in dem Kontextmodell definierten Services entwerfen und umsetzen AF F 1 3 Das Backend muss mehrere RESTful Services zur Verfiigung stellen AF F 1 4 Das Backend muss mit dem Frontend kommunizieren k nnen AF F 1 5 Das Backend muss die Persistierung von kontextbezogenen In
55. en anhand einer festgestellten IP Adresse siehe auch 7 3 3 und eines Ports zur Verf gung gestellt Die Konfiguration ist aus einer Datei gelesen wie weiter im Paragraph 7 3 6 beschrieben wird Bei der Auswahl eines Web Servers wurde darauf geachtet dass die Softwarel sung die F hig keit beh lt mehrere gleichzeitige Verbindungen anzunehmen zur Gew hrleistung der Performanz bei einer erh hten Anzahl von Benutzern Skalierbarkeit Die aus der Welt der Ruby on Rails Web Application Framework bekannten minimalistischen Web Server L sungen WEBRick oder Mon grel unterst tzen diese Anforderung nicht Weitere L sungen wie Passsenger oder Unicorn sind f r fortgeschrittene Zwecke wie die Ver ffentlichung von Web basierten Enterprise Software geeignet Der richtige Ausgleich zwischen mitgelieferten Features und Leichtgewicht wird von dem Web Server namens Thin f4 geliefert welcher sich als ein schneller leicht bedienbares Web Server f r Ruby beschreibt Thin fasst Ideen aus mehreren Technologien f r Ruby basierte Web Entwicklung in einer vielseitigen Software L sung zusammen Thin wird in Form eines Ruby Gems ver ffentlicht und bietet eine vereinfachte Benutzung an Um eine Instanz des Web Servers zu starten werden nur die genannten Parameter IP Adresse und Port und die entsprechende Rack konforme Anwendung ben tigt Damit entsteht aus der Perspektive des Betriebssystems worauf der Server betrieben wird ein neuer
56. erhoben die den Umgang der Probanden mit dem Prototyp bzw das dabei entstehende Nutzungserlebnis bez glich Kriterien wie z B das Niveau der Frus tration oder die mentale Last ermessen k nnen Schlie lich wurde versucht eine allgemeine Meinung gegen ber der N tzlichkeit der Anwendung und der eventuellen Kritikpunkten zu erfragen Die ein zelnen Schritte dieses Vorgangs von der Rekrutierung bis zu der Auswertung der Ergebnisse werden in den kommenden Abschnitten vorgestellt 8 2 Anwerbung der Probanden In wurde motiviert dass eine Evaluation der Arbeitsbelastung siehe auch Paragraph 8 5 3 gezielt mit einer Gruppe von Probanden durchgef hrt sollte die eine m glichst hnliche Bef higung besitzt wie die Nutzer die das untersuchte System letztendlich bedienen werden Dieser Aspekt kann auch folgenderma en angesehen werden bei dem Auswahlverfahren der Probanden sollen Testperso nen ausgew hlt werden die typisch f r die untersuchte Umgebung des inspizierenden Systems sind d h die benutzen ein hnliches System schon oder haben Erfahrungen in der Sektor des Systems W hrend diese Idee sich eher an technologischen Problemstellungen richtet l sst sie sich auch im Fall der aktuellen Evaluation benutzen die ausgew hlte Probanden sollen m glichst Interesse daran haben die eigene Wohnung zu vermieten Damit l sst sich die Art der Evaluation schon nennen es 126 Evaluation wurde ein Feldstudie hnliche Exp
57. gestrebt einen m glichst automatisierten Vor gang zu entwickeln welcher eine schnelle Anpassung der zu persistierenden Bestandteile eines kon kreten dom nenspezifischen Kontext Modells auf Datenbank Ebene gew hrleistet Dieser Vorgang wird weiter in Kapitel 7 beschrieben Nachdem die Bausteine f r die Definition eines Kontext Modells eingef hrt sind wird das im Rahmen dieser Arbeit entworfene Kontext Modell vorgestellt und im Detail erl utert 6 2 Definition eines Kontext Modells Im Laufe dieser Arbeit wurde ein Kontext Modell entwickelt das als Zielsetzung die Beschreibung verschiedener Anwendungsf lle einer kontextbewussten Anwendung hat Zu diesem Zweck wurde versucht die im Absatz 4 3 4 eingefiihrten Anforderungen umzusetzen sodass die in der Forschungs frage aufgelisteten Kriterien beibehalten bzw umgesetzt werden k nnen wie z B die Allgemeinheit des Kontext Modells und dessen Umgang mit Echtzeit Daten Abbildung gibt einen berblick ber das Kontext Modell und die Beziehungen zwischen den einzelnen Bestandteilen Hinsichtlich der Architektur kann das entwickelte Kontextmodell in zwei Teilen aufgeteilt wer den ein Modell bestehend aus Kontext Informationen deren Metadaten geographische Daten sowie leichtgewichtige Services und eine Service Schicht die aus Dienste besteht die f r die Distributi on Feedback Generierung und Anfrage F higkeiten des Modells zust ndig sind Dar ber hinaus er m glicht das Kontext M
58. i E parent Building_1 i i i Services Frontend Backend Action Service Boom 2 Boom 1 Room_1_StartPoint I z SymbolicSpace Symbolicspace Point ActionService1 ActionService lt lt type gt gt i ActionService1ld parent Apartment_1 parent Apartment_1 x 1 39193 iaa Identification BrightnessLuxinterpreter yopa i i EH Doubleinterpreter id 8 i name Action Service uri http 10 0 1 40 Room_1_EndPoint 1 Point i BrightnessSensorFusionService Distance to Boom 1 HasDistance i x 3 92 lt lt Interface gt gt reference_point Room_1_Location Relativelocation NCAR EEE i gt lLocalMessageDisplay DisplayLocalMessage lue 32 3 m m i w s origin 0 0 erg action Room 1 Surface Geometr BrightnessTooHighTrigger AfterConfirmationTimeElapsed Euzzyinterpreter ActionTrigger Timer ActionTimer Booleaninterpreter Abbildung 6 10 Veranschaulichung beispielhafter Instanzen des Kontext Modells 90 Kontext Modellierung Weiterhin befindet sich im Haus ein System zur Erfassung der Lichtintensit t in jedem Raum Dieser Sensor wird auch benutzt um alternative Fakten zu erstellen Diese beiden Informationen wer den mit einer gewissen Wahrscheinlichkeit zu einer einheitlichen Darstellung in Form einer Kontext Information fusioniert Eine Ver nderung des umgebenden Lichtes wird dem mobilen Ger t mitgeteilt indem eine Be nachrichtigung mittels des D
59. id Identification 1 uses via Subclasses 1 1 1 1 lt lt defines gt gt ContextPersistenceMethod uses via Subclasses lt lt interface gt gt Action L uses 0 Action 1 AN DiscoveryMethod ContextPersistenceInRDBMethod lt cimplement gt gt populates 1 ContextPersistenceInNoSQLDBMethod RESTDiscoveryMethod OOBasedDiscoveryMethod PR ContextArchive 1 ContextRepository timeframe Timestamp ___ created _at Timestamp IE SREST ond duration TimeSpan manages implements instance_of f r Widgets Services etc has 1 ActionTrigger 1 possesses 0 1 ActionTimer Abbildung 6 8 Teil des Kontext Modells Dienste zur Persistenz Entdeckung Discovery und Feedback Generierung In der Abbildung 6 8 werden mehrere Dienste oder Services dargestellt die ein Teil des Kontext Modells sind Diese Dienste lassen sich normalerweise von einem Server System ausfiihren und stel len diverse Funktionalit ten bereit zum einen wird die M glichkeit gegeben bestimmte Kontext Informationen zu persistieren in ein relationales oder nicht relationales Datenbanksystem Der da mit entstehende Datenbestand auch unter der Bezeichnung Context Repository bekannt kann in v
60. im Sinne des behandelten Szenarios z B die modellierten Gegenst nde zu einem anderen Zweck als Home Sharing zu benutzen Schlie lich konnten Meinungen relativ zu dem allgemeinen Konzept des sen N tzlichkeit und Anwendbarkeit zusammen mit eventuellen Verbesserungsvorschl ge ge u ert werden Dieser zweite Fragebogen geh rt ebenso zum Anhang A als Teil des Leitfadens Nachdem die Organisation und Durchf hrung der Evaluation vorgestellt wurde werden die da durch feststellbare Ergebnisse im n chsten Abschnitt erl utert 8 6 Analyse der Ergebnisse Die erste Auswertung bezieht sich auf den Angaben der Probanden im Fall des NASA TLX Fra gebogens und wird in Abbildung Sim tabellarischen Form zusammengefasst Die Gesamtergebnisse je nach Proband sind in der Abbildung 8 1 als jeweils ein Balken zu sehen Das gesamte Ergebnis eines Probanden stellt sich nach der Gewichtung der eingegebenen Ma zahlen je nach Parameter oder Faktor z B wird bei dem Vorgang der Gewichtung 3 Mal den Parameter Frustration ausgew hlt ergibt sich eine Gewichtung von 0 2 des Parameters weil insgesamt 15 paarweise Vergleiche durchgef hrt werden fest Damit setzt sich das gesamte Ergebnis des NASA TLX Fragebogens durch die Addition der gewichtete Werte des jeweiligen Parameters Eine Interpretation der Ergebnisse kann durch die folgenden Aussagen zusammengefasst werden Gesamt Ergebnis in weniger ist besser 130 Evaluation 50 00
61. k nnen und da durch neue Wege f r eine Welt der vernetzten Ger te ffnen Trotzdem hat sich in mehr als 20 Jahren keine vollst ndige aus einer Hand L sung f r ein intelligentes Haus er ffnen M gliche Gr n de werden in dargestellt im Wesentlichen liegt eine fehlende gemeinsame dynamische Architektur f r die Installation zugrunde Des Weiteren l sst sich der Zuwachs des Ger tespektrum nennen sowie eine fehlende gemeinsame im Sinne von normaler und Smart Wohnung Benut zeroberfl che Aktuelle Richtungen zeigen dass mehr und mehr Ger te vernetzt werden als Oberbegriff wird das sog Internet of Things verwendet RQBA09 Wie genannt hat diese Entwicklung das Internet das Web als grundlegende Infrastruktur und bertragungskanal Diese Initiative malt sich eine Zu kunft aus in der eine nahtlose Integration und Erreichbarkeit von Smart Objects im Web ubiquit r ist Leider ist diese Vision auch in aktuellen Zeiten noch nicht realisiert worden aufgrund Inkompa tibilit ten auf der Ger te Ebene und fehlende bertragung und Integrationsstandards Dav 10 Diese Entwicklungen haben den globalen Zuwachs von Internet Benutzern als Hintergrund schon im Jahr 2005 benutzten 2 Milliarden Menschen das Internet ausschlie lich von Desktops oder No tebook Anfang 2011 verdoppelte sich schon diese Menge der n chste Schritt wird voraussicht lich 2017 erreicht Bis dahin wird erwartet dass eine weitere Mil
62. namens PostgreS QL in der Version 5 1 eingesetzt Zudem wurde f r die normenkonforme Speicherung und Bearbei tung von geographischen Daten das Werkzeug mit dem Namen PostGIS angewendet ein Plugin f r PostgreSQL welches die Verwaltung von geographischen Daten erm glicht Von UML Diagramm zur Datenbankschema Wie vorgestellt wurde das Kontext Modell zun chst in Form von UML Diagrammen entworfen Um diese Darstellung in Form eines Datenmodells entwerten zu k nnen m ssen diejenige darin beschriebene Klassen und deren Beziehungen zuerst in Datenbank spezifische Konstrukte umgewan delt werden Dieser Vorgang entspricht in der MDA Terminologie etwa Model Transformation Im Raum dieser Softwarel sung wurde ein Werkzeug f r die Automatisierung dieses Vorgangs entwi ckelt Als Eingang nimmt das Software eine Excel Datei Microsoft Excel ist ein Softwareprodukt f r den Umgang mit Tabellenkalkulationen und ist Teil der Microsoft Office Suite entgegen die die entsprechende UML Diagramme des Kontext Modells darstellen Die UML Diagramme sind mit tels der UML Modelleierung Software namens Visual Paradigm entworfen und exportiert worden Auf der Ausgangsseite lassen sich Ruby Klassen generieren die ihre in der Diagramm modellierten Assoziationen und Attributen beibehalten Das Ausgangsformat entspricht dem vom DataMapper ORM s u benutzten Format Der n chste Schritt zur Erreichung der Repr sentation des Datenmodells in e
63. nenspezifischer Anforderungen repr sentiert Das allgemein geltende Modell ein Meta Modell entsprechend der MDA bzw MOF Hierarchie wurde spezialisiert in ein Kontext Modell das zielgerichtet f r das Home Sharing Szenario einge setzt werden sollte Weiterhin diente dieses Modell ein Datenmodell als Hauptkomponente zu einer prototypischen Umsetzung des gesamten Konzeptes Nachdem ein zufriedenstellender Reifegrad des Prototyps erhalten ist wurde dieser Prototyp anhand der Forschungsfrage und bestimmten Metriken in einer kleinen Gruppe evaluiert Die Evaluation zeigte das Potential des Produktes auf Grund positiver Eindr cke der Probanden was ihr Ansehen der N tzlichkeit und Bedienbarkeit der prototypischen Anwendungen anging In diesem Zusammenhang werden im Folgenden weitere offene Fragen und Perspektiven bez glich der aktuellsten Forschungsergebnisse aus den mit dieser Arbeit verwandten Forschungsfeldern diskutiert 9 1 Ausblick Eine im Jahr 1996 aufgestellte Vision von Mark Weiser der Vater des markanten Ubiquitous Computing Forschungsfeldes beschrieb wie die vielbelobten Thin Clients leichtgewichtige Ge r te die einen Zugang zum Internet besitzen einen erheblich geringeren Effekt auf die Mensch Maschinen Interaktionen haben werden als die so genannten Thin Servers WB96 Die Thin Servers sollen dieselbe Preispolitik wie Thin Clients haben zur damaligen Zeit einige hunder te
64. sodass in einem vom Kathrin gemeldeten Notfall mehrere Informationen ber die zuletzt get tigten Aktionen bermittelt werden k nnen Im Falle eines Notfalls k nnten diese Informationen in einer Smart Home Umgebung genutzt werden um entsprechende Sensorinformationen wie z B ein Rauchmelder oder ein Strom berspannungsmonitor abzufragen Als ihr gelungen ist die perfekte Tasse zu kochen will Kathrin Martin alles dar ber erz hlen Daf r versucht sie Martin ber den Kommunikationskanal zu erreichen Da Martin zu dieser Zeit auf der Arbeit ist und deswegen offline hinterl sst sie eine Mitteilung in der Hoffnung dass Martin dies sieht und sich freut An einem anderen Tag will Kathrin das Stadtviertel rund um die Wohnung erkunden konnte aber Martins Tipps ber die umgebende Lokale nicht finden Sie erschienen in der Liste der verf gbaren Kontext Elementen gar nicht Diese kleine Kritik nahm Martin gut entgegen und versprach das noch zu regeln Am selben Abend berichtete er ber seine Freude als er die Mitteilung von Kathrin gesehen hatte Der letzte Tag von Kathrins Aufenthalt kommt eher als gedacht Sie zieht aus und bedankt sich bei Martin f r die sch ne Zeit Martin f hrt die Vorbereitungsphase wieder durch diesmal denkt er auch an Kathrins Tipps und versucht auch diese abzubilden Er hofft die Technologie hat Kathrins Zeit in seiner Wohnung verbessert und freut sich schon auf den n chsten Gast und die M glichkeit di
65. stellt die Integration von Wohnungssteuerung Sensoreninformationen sowie Modalit ten der Interaktion dar Dieser Aspekt der mangelhaften vollst ndigen Interoperabilit t zwi schen AAL L sungen wird in auch best tigt Weiterhin kann die Entwicklung und Laufzeitmanagement der multimodalen Interaktionen in den oben genannten Felder erheblich erleichtert werden durch die Benutzung von modellbasierten Ent wicklungsmethoden BA09 Im Fall dieser Anwendung wird eine kleinma st bliche Integration der oben aufgef hrten Komponenten erzielt deren Entwicklung modellbasiert ist wie vorher vorgeschla gen Eine weiter inspirierende Arbeit ist in ALGMVMIO zu finden hier wird eine M glichkeit der technischen Infrastruktur einer Anwendung im AAL Ambient Intelligence Felder vorgestellt In der 2 4 Smart Home 17 Arbeit wird eine technologische Plattform beschrieben die Service gesteuert ist Ein Service in der Arbeit wird durch ein RESTful Web Service realisiert das eine Beschreibung der von ihm ausim plementierten Schnittstellen bereitstellt eine Art Service Description und sich ins Verzeichnis der verwendeten Service Discovery eintr gt Diese Services lassen sich zusammensetzen indem eine Definition der anderen beteiligten Services vorgeschrieben wird zusammen mit einer Beschreibung des Datenablaufs zwischen den individuellen Bestandteilen Weiterhin wird in der Arbeit der subtiler Aspekt der Privatsph re betont die meisten
66. t Eine Lokalisierung kann au en Outdoor oder innen Indoor ausgef hrt werden Im Raum der Au en Lokalisierung gilt die GPS Technologie als ein de facto Standard und eine fast universell einsetzbare Technik An dieser Stelle l sst sich sagen dass das Problem von Outdoor Lokalisierung fast keinen Forschungsaufwand mehr br uchte POM12 da die Ergebnisse der Tech nik in Zusammenarbeit mit Wi Fi oder Mobilfunknetze hohen Qualit tsanspr chen entsprechen Trotzdem erm glicht die Forschung in der Outdoor Lokalisierung den Denkansatz die Ergebnisse aus der Outdoor zu der Indoor Welt zu bertragen Jeweils kann die bertragung nicht automatisch erfolgen weil die Indoor Umgebungen erhebliche Unterschiede im Fall der Signalausbreitung pr sentieren Eine bersicht der verschiedenen Indoor und Outdoor Lokalisierungstechnologien bez glich ih rer Reichweite und ihrer Genauigkeit wird in Rail 1 gegeben Covera ge Graphic Rainer Mautz Outdoor 10m 100 m km 10 km Indoor 1m Accuracy 1 um 10 um 100 um 1mm 1cm 1 dm 1m 10m 100 m 1 km Abbildung 2 1 berblick der verschiedenen Technologien der Indoor und Outdoor Lokalisierung Quelle Rai1 1 Aus der Abbildung D jist die Vielfalt der einsetzbaren Technologien zu entnehmen Jedoch ver kn pft mit der Auswahl einer bestimmten Umsetzung sind dazu Kriterien wie Kosten ben tigte Infra struktur Verf gbarkeit und Marktreife oder Geschwindigkeit Anzahl und eventuell
67. tems die nicht direkt zu einer Funktionalit t eines Systems verbunden sind Prel I Beispiele nicht funktionale Anforderungen sind Eigenschaften bzw Parameter bez glich der erzielten Performanz oder Verf gbarkeit des zu entwickelnden Systems Dar ber hinaus werden nicht funktionale Anforderungen in weiteren Untergruppen gegliedert Win11 e Technische Anforderungen diese Kategorie enth lt Anforderungen die auf die einzusetzenen Technologien das System selbst und dessen Umfeld bezogen sind e Prozessanforderungen an dieser Stelle wird den geplanten Ablauf des Softwareentwicklugs prozesses beschreiben wie z B das Vorgehensmodell 4 3 Anforderungsdefinition 49 e Qualit tsanforderungen hiermit werden qualitativen Merkmale des Systems enthalten wie z B die Verwendung von Testgetriebenen Entwicklung zur Validierung verschiedener Qualit ts merkmale e Sonstige Anforderungen hier werden diejenige Anforderungen umgefasst die als zu keiner vorher erl uterten Kategorie passend gehalten werden Als erstes werden die Technischen Anforderungen behandelt je nach betroffenen System 4 3 2 1 Backend An dieser Stelle gelten die im Abschnitt 4 3 1 1 genannten Merkmale Identifikationsnummer Anforderung AF T 3 1 Das Backend muss mit dem Heimnetzwerk LAN verbunden sein AF T 3 2 Es muss eine objekt orientierte und dynamische Programmier sprache verwendet werden z B Ruby AF T 3 3
68. und deren Bestandteile wie Ger te und Hausregeln m ssen zuerst entdeckt oder gelernt werden Eine mo bile Anwendung k nnte die Mieter dabei unterst tzen sich im neuen Kontext zurecht zu finden und w rde es erlauben m gliche Unklarheiten mit dem Wohnungseigent mer zu fast jeder Zeit kl ren zu k nnen Artikel Silicon Valley Technology helps power new sharing economy Dana Hull San Jose Mercury News 9 Mai 2012 http scienceandtechnologypopular com silicon valley technology helps power new sharing economy san jose mercury news 2 Einleitung Die Zielsetzung dieser Arbeit ist die Bereitstellung einer technischen Architektur und Anwendun gen die eine m gliche Implementierung des Home Sharing Anwendungsfalles realisiert w hrend bestimmte Kriterien wie die Allgemeinheit und Sicherheit der L sung bestehen bleiben 1 2 Hintergrund Ein intelligentes Haus engl Smart Home wendet die von Mark Weiser im Jahr 1991 definierten Konzepte des ubiquit ren Computings an Rechensysteme die zu jeder Zeit erreichbar sind sowie intelligent und m glichst unsichtbar agieren Wei91 Weiterhin sind diese Systeme in der Lage die Bed rfnisse der Benutzer zu erkennen und diese im Alltagsleben zu unterst tzen RQBA09 Technologien und Anwendungsgebiete wie Smart Homes Ambient Assisted Living sowie Smart Products stellen Konzepte vor die diese Vorstellung von Weiser umsetzen
69. und treiben den Vorgang an die Pr ferenzen des Benutzers zu entdecken Mit jeder Aktivit t oder Situation eines Benutzers wird ein Gewinn an Kontext Informationen erzielt wie in der Abbildung D eu bemerken f ngt die Darstellung von erweitertem Kontext mit den blichen Dimensionen von Zeit und Raum an Mit der Weiterentwicklung werden verschiedene andere Entit ten erkannt Dies geschieht mithilfe anderer Dimensionen wie dem Sozialen oder Semantischen Web sowie durch die Handhabbarkeit von frei verf gbaren Daten Linked Open Data 2 8 3 Kontext Bewusstsein Die Relevanz von kontextbewussten Anwendungen zeigt sich insbesondere im Fall von mobilem ubiquit rem Computing eine Dom ne in der die Aufmerksamkeit von Benutzern von gro er Bedeu tung ist HIMOS http www apple com ios siri 30 Verwandte Arbeiten Web of knowledge Project Professional Task network Collaboration Meeting Competency Customer service Loyalty Product team brand party ownership I Large Parenting Vacation Small Time amp context location ntex nn Social Web of Contracts amp Emotions amp network things commitments outcomes Interests Abbildung 2 3 Erweiterter Kontext engl Large Context Quelle angelehnt an Meh12 Kontext Bewusstsein engl Context Awareness bezieht sich im weitesten Sinne auf die F higkeit von Software ihre Umgebung wahrzunehmen und darauf zu reagieren Kontext Bewusstsein zei
70. was ein Nutzer erlebt liest oder insbesondere u ert schreibt Damit gestaltet Nutzerkontext aus wie die Benutzer eine Mittei lung wahrnehmen und wie sie spezifische und oft mehrdeutige W rter wie z B engl party Partei oder Feier interpretieren Nutzerkontext bestimmt auch wie Ger te und Services die u erungen und den generierten Inhalt eines Benutzers interpretieren Ein Beispiel insbesondere f r die Deko dierung des gesprochenen Nutzerkontextes ist die Technologie hinter Sir P eine Software die der Erkennung und Verarbeitung von nat rlich gesprochener Sprache dient Dieser Technologie zugrunde liegend ist die Erkennung von Entit ten aus einem gegebenen bzw ausgesprochenen Kontext Um den Nutzerkontext benutzen zu k nnen m ssen Systeme und Dienste weiter gehen als nur die Daten der aktuellen GPS gesteuerten Nutzerposition auszuwerten oder die W rter und Anfragen aus Dokumenten zu interpretieren Sie m ssen Orte verstehen Wissen der Nutzer zu ihren Interessen zuordnen k nnen integrierend auch die Identit t des Nutzers sowie wem oder was sie vertrauen ihren sozialen Netzwerken und dem sozialen Kontext in dem sie kommunizieren und zusammenarbeiten Dies sind Beispiele von Dimensionen des erweiterten Kontextes siehe auch Abbildung 2 3 die die neue Generation von kontextbewussten Anwendungen pr gen werden Meh12 Entit ten die den gr eren erweiterten Kontext bestimmen verschachteln kleineren Entit ten
71. werde w hrend der Aufgabe nicht eingreifen deshalb stellen Sie mir bitte im Vorfeld so viele Fragen wie m glich wenn Ihnen etwas unklar ist Unklarheiten Haben Sie vielleicht Fragen die vor der Ausf hrung gestellt werden sollen Aufgaben Die einzelnen Aufgaben lassen sich der n chsten Seite entnehmen CARL Mobile HomeSharing Anwendung OSSIETZKY Im Rahmen der Masterarbeit von Cosmin Pitu universitat Evaluation Aufgaben Aufgaben Sie werden beide Rollen spielen Zuerst versuchen Sie Ihr Haus mit Regeln Gegenst nden und allgemeinen Informationen zu beschreiben Danach verwenden Sie die Informationen Als Wohnungseigent mer 1 Beschreiben bzw modellieren Sie einige R ume des Hauses und die r umlichen Beziehungen dazu z B die K che befindet sich neben dem Wohnzimmer welches eine Entfernung von etwa 5m vom Schlafzimmer hat 2 Beschreiben Sie einige Gegenst nde Ihrer Wohnung z B einen Tisch welcher nicht zum Essen benutzt werden sollte einen Rechner an dem man sich nur ber ein bestimmtes Konto und das dazugeh rige Passwort anmelden kann 3 F gen Sie zu den eventuell vorhandenen Eigenschaften eines Gegenstandes erweiterte Attributte Ihrer Wahl hinzu wie z B das Attribut Maximale Anzahl von einzugebenen Kaffeepads mit dem Wert 2 f r eine Kaffeemaschine 4 Erweitern Sie die vorhandene Liste der Gegenst nde und Kategorien mit einer zust tzlichen Kategorie oder einem zus tzlich
72. z B Fragme nt nutzen zu k nnen trotz der Entwicklung und dem Testen auf einer alten Version der Plattform Gin gerbread 2 3 7 Dar ber hinaus wurde versucht durch die benutzten visuellen Elemente wie z B Farben Schriftart Wohungseigent mer und Mieter Symbole ein Gef hl der Markenentwicklung engl branding herbeizuf hren Feststellung der zu kompilierenden Anwendung Wie bei der Beschreibung des Backend Systems genannt wird ein automatisierter Mechanismus zur Vorbereitung der Aufstellung engl deployment verwendet die eine Quelltext Datei und die dazugeh rige Manifest Datei siehe auch 5 3 2 aktualisiert Durch diese Aktualisierung werden vi suelle Merkmale wie das Symbol der Anwendung in dem App Drawer das Gitter zur Auswahl einer auszuf hrenden Anwendung oder App in dem Android mobilen Betriebssystem oder die auf dem Dashboard siehe auch 7 4 2 verf gbaren Buttons aktualisiert 7 4 Frontend 121 Neben der Manifest Datei wird die Klasse TargetSpecification aktualisiert Der Wert der booleschen Konstante namens TARGET_IS_HOST wird entsprechend berarbeitet Dieser Wert ist f r die Anpassungen der Anwendung an den aktuellen Benutzertyp Wohnungseigent mer oder mieter in der ganzen Anwendung zust ndig Nachdem die Hauptmerkmale der Architektur des Frontend Systems genannt wurden lassen sich die angebotenen Funktionalit ten dieses Systems aus dem kommenden Absatz entnehmen
73. zip welches auch anderen Web Frameworks zugrunde liegt Der Name dieser Technik deutet an dass die definierten Routen eines REST APIs bevor die Aufstellung engl deployment auf einem Web Server abgeschlossen werden m ssen Das hei t es k nnen au er der abgeschlossenen fina lisierten Routen keine andere Route behandelt Zu diesem Zweck werden alle deklarierten Routen einer REST API in einer Rack konforme Anwendung zusammengefasst Durch die Kompilierung der Routen werden diese stets statisch Routen k nnen auch anhand von variablen Parametern wie z B POST model action id definiert werden Diese Route besagt dass die Parameter namens action und id aus der ankommenden Anfrage auszulesen sind was die Bedeutung von auswert bar enth lt Die Auswertung der Routen wird auch von einem Grape Plugirf benutzt Dieses Plugin dient als ein Dokumentations Werkzeug f r die Beschreibung einer mit Grape definierten REST API und kann mit dem Swagger Werkzeug zum Testen von Web Services zusammenarbeiten Anhand des Prinzips der Routen Kompilierung wurde in dieser Arbeit eine Erweiterung zur Beschreibung und eventuelle Entdeckung vorhandener REST Web Services definiert welche im Folgenden beschrieben wird Durch Metaprogrammierung wurden in vorhandenen REST APIs bzw BaseAPI sowie Basic ModelAPI grundlegende HTTP Methoden zur Beschreibung der Funktionalit t der entsprechenden API eingef hrt Beispie
74. 2 konkrete User Storiesl 22 22 22 m on nen 3 3 Zusammenfassung lt s o s e mn nn 4 Anforderungserhebung 4 1 Analyse aktueller Anbieter von Home Sharing L sungen 2 2 Beh tie hs e ees Sods e dee de en ee ee ee E E fee EE E E re ee en 5 1 berblick icy ee nn ee aa 5 2 _Server Architektur und Funktionalit tl e 5 3 __Client Architektur und Funktionalit t e 5 4 Konzept zum Nutzungserlebnis UA 6 Kontext Modellierung 6 1 Techniken der Kontext Modellierung 6 2 Definition eines Kontext Modells 6 3 Beispielhafte Instanziierung des Kontext Modells 2 2 2 2 2 0 6 4 Zusammenfassung CH Ch L A ro m 13 13 14 16 17 20 22 24 27 35 35 37 40 43 43 45 46 55 55 56 63 66 IV Inhalt 7 Umsetzung des Prototyps 91 7 1 Allgemeine Merkmale der Quelltextqualit t 91 7 2 Datenmodell f r Home Shana 92 7 32 Backend x 23 4 wa ante a sa ar sad ee Saka Be weed a 96 17 4 Frontend 3 22 u Be ara de ee ed ee ee Oe we a 115 75 Zusammenfassung 2 a e a a e a A E e e E e a A S AA 124 8 Evaluation 125 ST Zielsetzung e e pe Ge 2 42 be 2 da Sn da wa Hada eae Gaede ds 125 8 2 Anwerbung der Probanden 125 8 3 Profile der Teilnehmerl 126 8 4 Ablaufplan der Evaluation 127 8 5 Ausf hrung der Evaluation aaa 127 8 6 Analyse der Ergebnisse 2 222222 ee 129 8 7 Zusammenfassung ooo 132 9 Zusammenfassung 135 91 Ausblick at a ea WE sn a sa ae
75. 45 00 40 00 35 00 30 00 25 00 20 00 15 00 10 00 5 00 0 00 T T 1 1 2 3 4 5 6 m Geistige Anforderung m K rperliche Anforderung m Zeitliche Anforderung m Aufgabenerf llung m Anstrengung m Frustration Abbildung 8 1 Auswertung des NASA TLX Fragebogens e Alle Probanden haben die Arbeitsbelastung jeweils als unter dem Wert von 50 eingesch tzt Das hei t die Benutzung der Anwendung stellt keine erheblichen Schwierigkeiten e Trotz einem Ausrei er ist ein geringeres Frustationsniveau zu bemerken ein eventuelles Zeichen der Bezeichnung Calm Technology siehe auch A 2 der Mittelwert der gewichteten Eingaben liegt beim Wert 4 40 e Die Zielsetzung der Probanden alle Aufgaben zu l sen war als gr tes Einflussfaktor von Proban den angesehen aus alle Ergebnisse repr sentiert dieser Faktor 66 der maximalen Ergebnisse das Mittelwert der gewichteten Eingaben betrug 9 00 e Die L sung der Aufgaben Mittelwert der gewichteten Eingaben 9 00 ist deshalb proportionell mit den geistigen Anforderungen Mittelwert 4 67 und die Anstrengung Mittelwert 5 73 e Die zeitlichen und k rperlichen Anforderungen wurden als die geringsten Einflussfaktoren einge sehen der Mittelwert der zeitlichen Anforderungen lag bei 1 93 w hrend die k rperlichen Anfor derungen mit dem Mittelwert 1 47 Des Weiteren wird die Analyse des zweitens Fragebogens vorgestellt In dem zweiten Fragebogen wurden allgemeinen Eingaben in Freitext Form vo
76. Beyond Search and Location based Services In IEEE Internet Computing 2012 MACEDO Tiago OLIVEIRA Fred Redis Cookbook O Reilly Media 2011 ISBN 1449305040 148 Literatur MPOMI10 MWT 02 Nie93 Nor12 Per10 PGS 11 POM12 Prel1 Raill RLB10 RQBA09 Rup09 Sat02 SAW94 MATIC Aleksandar PAPLIATSEYEU Andrei OSMANI Venet MAYORA IBARRA Oscar Tuning to your position FM radio based indoor localization with spontaneous recalibration In 20 0 IEEE International Conference on Pervasive Computing and Communications PerCom 2010 M rz S 153 161 MEDLOCK M C WIXON D TERRANO M ROMERO R FULTON B Using the RITE method to improve products A definition and a case study In Proceedings ofthe Usability Professionals Association 2002 NIELSEN Jakob ISBN 0125184069 Usability Engineering Morgan Kaufmann 1993 NORDAN Robert A Framework for Testing Indoor Positioning Systems 2012 PERROTTA Paolo Metaprogramming Ruby Program Like the Ruby Pros Pragma tic Bookshelf 2010 ISBN 1934356476 PREHOFER C GURP Jiles van STIRBU Vlad SATHISH Sailesh LIIMATAI NEN Pasi P FLORA Cristiano di TARKOMA Sasu Practical Web based Smart Spaces 2011 Forschungsbericht 1 20 S POPLETEEV Andrei OSMANI Venet MAYORA Oscar Investigation of indoor localization with ambient FM radio stations In 2012 IEEE Inte
77. C etc Abbildung 5 3 Systemarchitektur der Android Plattform Quelle Angelehnt an http developer android com about versions index html und ACS09 Nachdem die allgemeine System Architektur von Android dargestellt wurde folgt im n chsten Abschnitt eine Beschreibung der obersten Ebene die f r diese Arbeit von Bedeutung ist zwar die allgemeine Architektur einer Android Anwendung 5 3 2 Architektur einer Android Anwendung Die f r diese Arbeit relevanten Bausteine einer Android Anwendung sind in der Abbildung zusammengefasst eine Reihe von evtl lose gekoppelten Aktivit ten die Ressourcen benutzen und letztendlich in einer Manifest Datei aufgelistet sind Andere Komponente der Android Plattform sind Intent Receiver helfen Daten aus einer anderen Anwendung bearbeiten zu k nnen Services langlebige Dienste sowie Content Provider helfen Daten zu einer anderen Anwendung mitteilen zu k nnen 5 3 Client Architektur und Funktionalit t 65 Activity View text label View text input A View selection input View map View image Resources Manifest application definition activities permissions intents Abbildung 5 4 Grundlegende Architektur einer Anwendung f r die Android Plattform Quelle ACSO09 Grunds tzlich werden Activities als die wichtigsten Komponenten angesehen eine Aktivit t re pr sentiert die auf dem Bildschirm des End Ger ts
78. Dan ANZELMO Erin DODSON Sean BAS si Alessandro RATTO Matt The Internet of Things 2011 Kov cs George L KOPACSI Sandor Some Aspects of Ambient Intelligence In Acta Polytehnica Hungarica 3 2006 Nr 1 S 35 60 KAWSAR Fahim LYARDET Fernando NAKAJIMA Tatsuo Three Challenges for Future Smart Object Systems 2008 KOSBA Ahmed E SAEED Ahmed YOUSSEF Moustafa RASID A Robust WLAN Device free Passive Motion Detection System In 20 2 IEEE Interna tional Conference on Pervasive Computing and Communications 2012 ISBN 9781467302586 S 180 189 KAMILARIS Andreas TRIFA Vlad PITSILLIDES Andreas HomeWeb An Application Framework for Web based Smart Homes 2011 S 1 6 ISBN 9781457700248 LEE Matthew Intro to Context Aware Computing Slides 2007 LANTHALER Markus G TL Christian On Using JSON LD to Create Evolvable RESTful Services In WS REST 2012 ISBN 9781450311908 LEE Karen LUNNEY Tom CURRAN Kevin SANTOS Jose Proactive Context Awareness in Ambient Assisted Living 2010 LEHMANN Grzegorz RIEGER Andreas BLUMENDORF Marco ALBAYRAK Sahin A 3 Layer Architecture for Smart Environment Models A model based ap proach 2010 S 636 641 ISBN 9781424453283 LOPEZ Tomas S RANASINGHE Damith C HARRISON Mark MCFARLANE Duncan Using Smart Objects to build the Internet of Things Cambridge Service Alliance 2012 MEHRA Pankaj Context Aware Computing
79. Das Backend muss eine performantes relationales Datenbankma nagementsystem verwenden z B PostgreSQL AF T 3 4 Das Backend muss die verwandten Anforderungen des Kontext Modells ber cksichtigen AF T 3 5 Es muss ein performanter nicht sequentieller Web Server f r die Bereitstellung der REST API benutzt werden z B Thin AF T 3 6 Das Backend kann eine Middleware Komponente bereitstellen f r die Realisierung des Kommunikationskanals z B RabbitMQ AF T 3 7 Das Backend kann ein Middleware Protkoll f r die Funktionali t ten des Kommunikationskanals bereitstellen AF T 3 8 Es k nnen verschiedene Web basierten Services benutzt werden insoweit Internetzugriff vorhanden ist Tabelle 4 3 Technische Anforderungen am Backend 4 3 2 2 Frontend An dieser Stelle gelten die im Absatz 4 3 1 2 genannten Merkmale Identifikationsnummer Anforderung AF T 4 1 Das Frontend muss sich mit der Heimnetzwerk LAN z B ber WLAN verbinden k nnen AF T 4 2 Es muss eine Plattform f r mobile Entwicklung benutzt werden z B Android AF T 4 3 Das Frontend muss zumindest Android API Level 10 unterst tzen AF T 4 4 Es sollen die neusten Interaktionsparadigmen der mobilen Platt form angewendet werden z B Android 3 0 AF T 4 5 Das Frontend muss sich leicht bedienen lassen Tabelle 4 4 Technische Anforderungen am Frontend 50 Anforderungserhebung 4 3 2 3 Prozessanforderungen Durch Prozessanforderungen werden Anfo
80. Entwurf Splash Hallo lt Username gt Oo ProfilePic Dashboard Radial Gradient Logo Neuer Raum Wohnung Ubersicht CL 34 neue Msgs Statistiken evtl Inbox RB Ladevorgang Abbildung 5 8 GUI Mockup Splash Screen und Dashboard gelangt der Benutzer zu der jeweiligen tieferen Ebene der Kategorie mit einer Long Tap Geste wird die aktuell dargestellte Kategorie ausgew hlt Das Ergebnis der Auswahl ist die Darstellung vom linken Bildschirm Auf der rechten Seite der genannten Abbildung ist das Formular zum Hinzuf gen eines Kontext Elementes dargestellt Hiermit lassen sich Daten ber das Element wie ein Name oder eine Beschrei bung erfassen sowie die Feststellung erweiterter Einstellungen Bilder zuweisen Sichtbarkeit n dern Weiterhin kann das Element verortet werden oder mit Attributen Regeln und Anwendungshin weisen erweitert bzw angereichert werden Des Weiteren befinden sich auf dem Dashboard M glichkeiten zu einem Wohnungs bersicht zu wechseln sowie einen neuen symbolischen Raum in der Wohnung hinzuzuf gen die dazugeh ri gen Mockups sind in der Abbildung dargestellt 5 4 Konzept zum Nutzungserlebnis UX 73 Element hinzuf gen Typ Auswahl L schen ohne DONE ABBRECHEN Erkl rung des Auswahlverfahrens Element klicken lt ElementName gt Upload Tipp ODER s o
81. F r die beiden Szenarien Erstellung und Speicherung bzw Lesen und Darstellen muss zuerst eine Darstellung des Modell Zustands entstehen Hierbei werden leichtgewichtige Modelle erstellt die im Frontend nur ein Snapshot des Modells zu einem gewissen Zeitpunkt anbieten zusammen mit der M glichkeit diesen Zustand entweder zum Backend zu verschicken oder entsprechend auszulesen Die schlanke Aufstellung der Modellen bietet den Vorteil dass eine Serialisierung und bzw eine Deserialisierung der Daten wie im Abschnitt 7 3 5 erl utert mit einer verbesserten Geschwindigkeit ausgef hrt werden kann Eine konkrete Auspr gung eines Modells wird in der folgenden Auflistung gegeben package edu uni_ol msc pitu model NOTE Imports weggelassen public class Asset implements MessagePackable region Public Attributes public Integer ParentId public boolean IsAtRootLevel public String Name public String Description public boolean IsVisible true public String UsagePermission public List lt AssetAttribute gt Attributes public List lt AssetRule gt Rules public List lt AssetInstruction gt Instructions 118 Umsetzung des Prototyps endregion region Constructors xx Default Constructor public Asset initializes members Attributes new ArrayList lt AssetAttribute gt Rules new ArrayList lt AssetRule gt Instructions new ArrayList lt AssetInstructio
82. Guest bzw DashboardActivityHost erweitert wird Bezie 7 4 Frontend 123 hungsweise werden in den Sub Klassen die vorher genannten Aktivit ten des Wohnungseigent mers und die Aktivit ten des Wohnungsmieters zur Wahl in Form eines Dashboards vorgestellt Wohnungsmieter Anwendung Die Wohnungsmieter Anwendung stellt dem End Benutzer folgende zusammengefasste Android Aktivit ten und dementsprechende Funktionalit ten bereit e ORCodeScannerWrapperActivity Eine Aktivit t zum Einscannen von QR Codes wird dem Benutzer vorgestellt Diese Aktivit t wird im Vollbildmodus engl full screen mode vor gestellt und verwendet die Bildaufnahme F higkeiten des End Ger ts indem die aktuell von der Kamera aufgenommene Szene dargestellt wird Zugleich wird ein Hinweis zu der Funktionalit t gegeben der Benutzer kann diese Aktivit t verwenden um einen in der realen Welt bzw in der Umgebung in der Wohnung vorhandenen QR Code einzuscannen Weitere Details werden im Rahmen des zum Thema Indoor Lokalisierung dedizierten Paragraphs gegeben e RoomNavigateActivity Im Fall dieser Aktivit t wird die im Rahmen des Paragraphs 7 4 1 eingef hrte Komponente zur Navigierung einer hierarchischen Datenstruktur wiederverwendet Die in diesem Fall angebotene Funktionalit t ist eine grundlegende Navigation durch die Woh nung mithilfe der erfassten r umlichen Beziehungen Dadurch lassen sich die modellierten bzw erfassten Beziehungen navigieren F
83. Hilfsmittel benutzt habe Au erdem versichere ich dass ich die allgemeinen Prinzipien wissenschaftlicher Arbeit und Ver ffentlichung wie sie in den Leitlinien guter wissen schaftlicher Praxis der Carl von Ossietzky Universit t Oldenburg festgelegt sind befolgt habe Oldenburg den 19 Oktober 2012 Cosmin Pitu
84. Kontext Informationen Nachdem die Kontext Informationen aus der Umgebung oder mithilfe der lokalen auf dem mobilen Ger t vorhandenen Sensorik erfasst worden sind wird im Kontext Modell die M glichkeit gegeben diese Informationen anzufragen Dieser m glicher Anwendungsfall ist insbesondere im Szenario der Smart Home Umgebung relevant In diesem Szenario wird normalerweise von der Existenz meh rerer kontextbewusster Anwendungen ausgegangen Diese Anwendungen k nnen auch zusammen arbeiten indem sie Informationen aus mehreren Quellen durch Anfragen verlangen Um dieser Aspekt zu erm glichen lassen sich verschiedene Anfragemethoden definieren die eine Schnittstelle bereitstellen und mithilfe von Quelltext Generierungsmethoden erstellt werden k nnen Eine weitere Beschreibung einer Generierungsmethode die auf REST Web Services basiert folgt im Abschnitt 7 3 5 Eine grundlegende Anfrage k nnte die Lokation eines InternalAsset verlangen durch z B ei ne HTTP Anfrage wie GET location Chair relative Sofa Die Semantik dieser Anfra ge ist die folgende die Lokation geographisch oder symbolisch des Assets mit dem Namen Chair wurde verlangt relativ zu einem anderen Gegenstand namens Sofa 88 Kontext Modellierung Bei der Distribution oder Verteilung von erfassten Kontext Informationen lassen sich dieselben Technologien einsetzen bzw das Netzwerkprotokoll namens AMQP welches insbesondere f r Echtzeit A
85. Kritiker des AAL Umfeldes betonen die Wichtigkeit dieses Themas und weisen Vorw rfe der Man gelhaft auf In der Arbeit wird die feine Abw gung zwischen die Erf llung der Zielsetzung Hilfe und Unterst tzung leisten und die Achtung auf der Privatsph re Auf diesem Aspekt wird auch in dieser Arbeit durch die im Absatz 5 2 2 vorgestellten Sicherheitskonzepte geachtet 2 4 Smart Home Der Dom ne von Smart Homes repr sentiert eine Auspr gung eine Anwendung der Konzepte die im Paragraph2 2 beschrieben worden sind Grob gesehen ist eine Smart Home Umgebung eine Umgebung die mit umgebender Intelligenz Ambient Intelligence bereichert worden ist Die In telligenz in diesem Fall besteht beispielsweise aus Microcontroller Einheiten und drahtlose Sende Empf ngsger ten engl transceiver die zusammen mit Netzwerktechnik zu einer lokalen drahtlosen Netzwerk aufbauen Die Netzwerk wird stets als ein Wireless Sensor Network WSN bezeichnet Ei ne quivalente Definition wird in gegeben wobei die alternative Bezeichnung f r Smart Home Technologien auch erl utert ist Smart Environments oder Smart Spaces PGst11l Der Fokus einer Anwendung die in einer Smart Home Umgebung eingesetzt ist spiegelt wie im Fall von Ambient Assisted Living siehe auch 2 3 die Unterstiitzung der Bewohner im Alltag wie der Die Unterst tzung erfolgt anhand mehrerer wahrgenommenen Umgebungsparameter und findet einen Auspr gung z B in e
86. Modellierung bzw k nnen gewisse Kontext Informationen nicht modellieren Deswegen brauchen rein bernommene Techniken gewisse Erweiterungen oder eine Problemumge hung Um eine kurze bersicht ber vorherige Kontext Modellierungstechniken zu geben werden die ersten L sungsans tze aus genannt Schl ssel Wert Modelle verwenden zum einen die zu modellierenden Attribute als Schl ssel und lagern deren Auspr gungen als Werte Der Nachfolger zeigt sich in Form von Auszeichnungssprachen die Sprachen wie SGML oder XML verwendeten Weiter f hrt der W3C einer Standard f r die Beschreibung von mobilen Ger ten namens Composite Capabilities Preference Profile CC PP ein die RDF benutzte und vereinfachte Einschr nkungen engl constraints und Beziehungen zwischen Kontext Elementen erlaubte Zusammen mit dieser Technik wurden auch grundlegende Inferenz F higkeiten mithilfe von jeweils spezialisierten Reaso ners vorgestellt Wie oben genannt wenden aktuelle Modellierungstechniken Konzepte aus der Welt der relationalen Datenbanken oder Techniken des Wissenmanagements an Des Weiteren benutzen sie allgemeine Inferenzmethoden die der Modellierungstechnik entsprechen wie z B die Pr dikatenlogik oder die Beschreibungslogik BBH08 2 8 Kontext Modellierung 33 2 8 5 Phasen der Kontext Modellierung Nachdem einen berblick der bisherigen Entwicklung der Kontext Modellierung im Paragraph 2 8 geschaffen wurde ist die wichtige Defin
87. Nutzungserlebnis UX 75 neies Jo dee Message A falls sehr laaaang dann Sam L 2d lt August 2009 gt Now that we know who you are know who am I not a mistake It all makes sense In a comic you kncfiegeege s how you can tell who the arch villain s going to be He s the exact opposite of the hero And most times they re friends like you and me I should ve known way back when You know why David Because of the kids They called me Mr Glass ee Swipe Sam L Message B Message C Message D Message E Message F Message G Message H Message I Message J Message K Message L ft Nachste Buchung Booking Allg Kalender eS Swipe Inbox MessageCenter 4 3 Personen gt Q Suche 11 12 2020 f r 3 N chte Abbildung 5 11 GUI Mockup Inbox des Kommunikationskanals Erweiterte Kalender Ansicht f r Buchungen 76 Entwurf 77 In diesem Kapitel werden die zugrundeliegenden Konzepte der Kontext Modellierung eingef hrt zusammen mit dem Entwurf und der Implementierung des im Rahmen dieser Arbeit entworfenen Kontext Modells 6 1 Techniken der Kontext Modellierung Kontext Modellierung wird in definiert als eine Methode die ein erh htes Abstraktionsni veau anhand Kontext Informationen schafft Ein gut entworfenes Modell stellt der kontextbewussten Anwendung eine essentielle Schnittstelle zur Kontext Information zur Verf gung
88. Objekt kann in einer Vater Kind eine Baumstruktur Beziehung zu einem anderen Objekt stehen W hrend die symbolischen Objekte durch einen Namen identifiziert werden k nnen wird im Fall von geometrischen Objekten eine pr zise Lokation f r ein Objekt vermittelt Die Auspr gung dieser Lokation befolgt den internationalen Standard namens Simple Features for SQL Spezifikation der Open Geospatial Consortium OGC womit mehrere Geometrien repr sentiert bzw gespeichert werden k nnen Verkn pft mit der Definition des r umlichen Modells ist die Bereitstellung von Methoden zur Indoor Lokalisierung Dieses Thema wird in diesem Modell durch einen Dienst realisiert welcher eine der spezifizierten Methoden zur Lokalisierung benutzen kann Wie in vorherigen Kapiteln auf http www opengeospatial org standards sfa 86 Kontext Modellierung gef hrt wurde im Rahmen der prototypischen Entwicklung nur eine Methode umgesetzt deren Im plementierungsdetails dem dedizierten Paragraph zu entnehmen sind 6 2 3 Service Schicht Im Folgenden werden die wesentlichen Dienste des Kontext Modells im Detail vorgestellt Bereitstellung von Diensten zur Persistenz Entdeckung und Feedback Generierung bei gegebenen Kontext Informationen Persistency Service Discovery Service Action Service 0 1 ContextPersistencyService id Identification 1 0 DiscoveryService ActionService id Identification
89. REST Prinzips f r verschiedene Repr sentationen derselben Route siehe dazu Paragraph verwendet werden Weiterhin k nnte die Speicherung der generierten Datei die der QR Code enth lt direkt auf dem Server entstehen Diese Funktionalit t des Backends wird f r die Generierung von QR Codes eingesetzt die eine vereinfachte Art von Indoor Lokalisierung bereitstellen wie im Paragraph weiter erl utert wird Logging Das Backend setzt die vorher aufgef hrten Konzepte des Logging Verfahrens siehe auch Para graph 7 1 um indem das genannte Werkzeug namens Log4r um einige Funktionalit ten erweitert wurde Die Funktionalit ten erlauben die Vererbung von Logging Eigenschaften einer Vater Klasse z B Pfad der zu speichernden Datei zu der neuen Kind Klasse Dar ber hinaus wurden einige Vereinba rungen in die Implementierung des Logging Verfahrens eingebettet wie z B die automatische Spei cherung der Logging Datei mit der Dateimaske lt NameDerKlasse gt log xml unter dem Ordner log in der Projektstruktur Des Weiteren wurden Kurzformen der ben tigten Methoden zum Logging in jeder aufrufenden Klasse mittels grundlegender Metaprogrammierungs Verfahren definiert sodass die Erstellung eines neuen Eintrags in die Logging Datei einfach und kurz erfolgt Konfigurationsdateien Zur Erleichterung der Eingabe s mtlicher Konfigurationsparameter wie z B Zugangsdaten IP Adressen und dazugeh rige Ports wurde ein Mechanismus entwickelt der den Vor
90. Stelle anmerken dass Ubiquitous Computing auch die Problematik der Informations berflutung anspricht HCH 11 die oben genannten Rechnersysteme m ssen sich zu vorhandenen menschlichen Umgebungen anpassen anstatt die Menschen zu erzwingen die rechne rische Welt anzutreten Damit m ssen im Wesentlichen anpassungsf hige Interaktionen bzw Dar stellungen entwickelt werden die sachkundig dem Benutzer im Alltag unterst tzen In ihrer ultimativen Form malt die Vision von ubiquit ren Computing jedes Ger t aus das Re chenarbeiten durchf hren kann w hrenddessen der Nutzer mobil ist Eine weitere wichtige Eigen schaft dieser Vision ist die Tatsache dass das mobile Ger t schrittweise ein dynamisches Modell der st ndig ver ndernden Umwelt aufbauen kann Dar ber hinaus mithilfe vorhandener Intelligenz und Inferenz F higkeiten Kann es sein eigenes Leistungsangebot bez glich der aktuellen Situation anpas sen Damit w rden Ger te in der Lage sein vorherig modellierte Umgebungen zu erkennen oder proaktiv vorhandene Dienste auf neuen Umgebungen einstellen zu k nnen Zusammenfassend repr sentiert ubiquit res Computing ann hernd den Gegenteil der virtuellen Realit t Wohingegen die virtuelle Realit t Menschen in einer neu erschaffenen Welt integriert be schreibt Ubiquitous Computing das Szenario in dem die Rechensystemen zur Aufbesserung in die wahrhafte Welt eingebettet werden Diese Vision hat sich in den Grundlagen v
91. Umsetzung eine gute Performanz innerhalb von 3 Sekunden des Web Ser vers bei der Behandlung einer ersten Anfrage cache miss und weiterhin erheblich bessere Performanz unter 1 Sekunde im Fall der erneuten Behandlung derselben Anfrage cache hit Wei terhin kann das AMQP Netzwerkprotokoll auch als echtzeitf hig angesehen werden wie in Kapitel 5 2 3 motiviert Tabelle 8 1 bersicht zur geleisteten berpr fung der Forschungsfrage hinsichtlich der Bestandteile und die Realisierbarkeit dessen Zusammenfassend k nnen die prototypisch entwickelten Anwendungen als f r das vorgestellte Szenario des Home Sharing und nicht nur geeignet angesehen Trotz einer nicht allzu hohe Anzahl an Probanden l sst sich das bekannte Diktum aus der Forschungsfeld namens Usability Testing einf hren welches besagt dass Observing 4 5 participants will uncover approximately 80 of the problems in a user interface that have a high likelihood of detection IMWT O2 8 7 Zusammenfassung 133 Diese Herangehensweise der kleinen Evaluationen wurde auch von Jakob Nielsen seit Jahren emp fohler und beh lt seine Wahrheit immer noch beh lf Durch eine Evaluation der Gebrauchstaug lichkeit engl usability lassen sich auch bestimmte Merkmale ber die N tzlichkeit der vorgestellten Konzepte ein Ergebnis ist die Verbesserung des Produktes im Ganzen trotz der Mangel an statisti scher Aussagekraft Diese Hypothes
92. action In Mobile HCI 2007 Nr September S 5 7 SCHMIDT Albrecht BEIGL Michael GELLERSEN Hans W There is more to context than location In Computers amp Graphics 23 1999 Dezember Nr 6 S 893 901 SCHMIDT Douglas C Model Driven Engineering 2006 Nr February S 25 31 SHADBOLT Nigel Ambient Intelligence In JEEE Intelligent Systems 2003 SIBYLLE FROSCHLE Folien der Lehrveranstaltung Sichere Kommunikation Uni versit t Oldenburg SoSe STRANG Thomas LINNHOFF POPIEN Claudia A Context Modeling Survey In Graphical Models 2004 SCHULZ Lasse S SS BAUER Elisabeth OTTO Siegmar Nutzen statt Besitzen Perspektiven f r ressourcen effizienten Konsum durch innovative Dienstleistungen 2010 Nr August SHANNON Claude E WEAVER Warren The Mathematical Theory of Communi cation University of Illinois Press 1998 ISBN 0252725468 TRIFA Vlad GUINARD Dominique DAVIDOVSKI Vlatko KAMILARIS Andre as DELCHEV Ivan Web Messaging for Open and Scalable Distributed Sensing Applications 2010 Forschungsbericht 1 15 S TOGNAZZINI Bruce Tog on Interface Addison Wesley Professional 1992 ISBN 0201608421 TANENBAUM Andrew S STEEN Maarten van EDUCATION Pearson Hrsg Distributed Systems Principles and Paradigms 2nd Editio 2007 ISBN 0132392275 TUNGARE Manas Mental Workload in Personal Information Management Un derstanding PIM Practices Acros
93. afte Queues Es wird jeweils eine dauerhafte Queue f r jede teilnehmende Rolle Woh nungseigent mer und Mieter definiert Die Queues k nnen die im Sinne dieser Herangehens weise auch als Inboxes oder als Foren f r jeden Teilnehmer angesehen werden Hierbei wer den dauerhafte Mitteilungen persistiert indem aktuelle sowie vorherige Mitteilungen abgerufen werden k nnen Hier k nnen auch Mitteilungen gespeichert werden die zu dem Sendezeitpunkt nicht empfangen werden konnten die Offline Art von Mitteilungen Eine dauerhafte Queue kann nur auf Anfrage gel scht werden b wm Kurzlebige Queues Dariiber hinaus lassen sich nicht dauerhafte Queues erstellen die fiir die Lebensdauer einer Instant Messaging Sitzung behalten werden Eine Sitzung entsteht zwischen einem oder mehreren Wohnungsmietern und dem entsprechenden Wohnungseigentiimer oder um gekehrt Die Entfernung der nicht dauerhaften Queues wird normalerweise dann ausgef hrt wenn keine Abonnenten mehr d h Erzeuger und Verbraucher auf dem entstehenden Kanal lau schen In diesem Fall k nnte auch ein Mechanismus definiert werden der die ausgelaufenen Queues in eine dauerhafte Form von Queues umwandelt jeweils mit eindeutigen Namen z B anhand des Zeitstempels F r die erste aufgelistete Art von Queues kann die genannte erneute Zusendung der Mitteilung an hand einer RabbitMQ spezifischen Erweiterung zum AMQP Standard erfolgen Message Rece
94. ahl von Arten der Kontext Informationen anwendbar sein Dar ber hinaus beschreibt die Ausdrucksst rke eine wichtige Komponente des Kontext Modells und zwar die Notwendigkeit der Inferenz F higkeiten Die Entscheidungsfindung wird normalerweise durch Inferenz Komponenten namens Reasoners geleistet angemessene Aktionen bzw Reaktio nen und Anpassungen der Anwendung anhand der verf gbaren Kontext Informationen m ssen ausgew hlt werden Der weitere Nutzen der Reasoner Technologie wird in eingef hrt indem die Reasoners auch f r die Interpretation der erfassten Daten zust ndig sind die Ablei tung vom h heren Kontext aus rohen Daten sowie f r die Schlussfolgerung der komplexeren Nutzersituationen 4 3 5 Weitere Anforderungen an eine Modellierungstechnik Zusammenfassend wird ein berblick von WX08 auch gegeben in Form konkreterer Anforde rungen an eine Modellierungstechnik Der Arbeit zufolge m ssen verschiedene Aspekte relativ zu der Nutzung des Kontextes ber cksichtigt werden e Eine dynamische Integration von Sensorik im Rahmen einer Smart Home Umgebung e Die Definition von Dienst spezifischen Kontext Modellen je nach angebotenen oder zusam mengef gten Funktionalit ten muss ein Kontext Modell als Unterst tzung bzw Rahmen der An passung definiert werden e Als letzter Aspekt soll eine graphische Benutzeroberfl che bereitgestellt werden welche das Kontext abh ngige Verhalten des Systems beschrieben bzw
95. al Objects i Information BEE Abbildung 6 1 berblick der Modellhierarchie von MDA Quelle Eigene graphische Herstellung angelehnt an einer lizenzfreien Graphik http upload wikimedia org wikipedia commons 9 93 MO m3 png Ein fundamentales Konzept der MDA Vision ist das Modell MDA definiert ein Modell als eine Repr sentation eines Bestandteils des Diskursuniversums in diesem Fall das beschriebene Soft waresystem Ein Bestandteil kann eine gewisse Funktion eine Struktur und oder Verhalten des Sys tems sein Letztendlich dient ein Modell dazu Fragen ber das System zu beantworten ohne eine direkte Untersuchung des Systems durchf hren zu m ssen LRBA 10 Unter diesem Gesichtspunkt lassen sich dynamische sowie statische Modelle erstellen die sich im Verlauf der Zeit nicht ndern Im Fall von statischen Modellen wird nur eine Momentaufnah me des Systemzustandes zu einem gewissen Zeitpunkt gemacht LRBAI0 Daf r lassen sich nur Untersuchungen in Form von Was ist Fragen durchf hren w hrend zus tzlich im Fall von dy namischen Modellen auch die Entwicklung eines Systems mitgespeichert wird und sich damit auch Fragen wie Was ist geschehen vorherige Zust nde oder Was w re wenn Prognosen beant worten lassen Diese Modelle sind in der MDA Terminologie als Plattform unabh ngige Modelle engl Platform Independent Base Model PIM bekannt Die letzte Art von Mode
96. alls Instanzen des Datenmodells z B Gegenst nde der Woh nung in einem ausgew hlten Raum vorhanden sind werden diese in Form einer vereinfachten Auflistung vorgestellt Die daf r zust ndige Aktivit t ist AssetViewActivity Im Fall jeder Instanz werden die erfassten Daten z B Namen sowie die dazugeh rigen Metadaten z B Re geln dargestellt Nachdem ein berblick ber die entwickelten Aktivit ten je nach Anwendung gegeben wurde werden weiterhin erweiterte Funktionalit ten der beiden Anwendungen vorgestellt 7 4 3 Sonstige Funktionalit t des Frontends In diesem Abschnitt werden die sonstigen von der Frontend Komponente angebotenen Funktiona lit ten zusammengefasst Indoor Lokalisierung Die bereits genannte Funktionalit t zum Einscannen von erstellten QR Codes vgl Paragraph basiert auf einer open source Bibliothek namens ZBarP die f r das Einscannen verschiede ner Typen von Codes eingesetzt wird Bei der Ausf hrung der Aktivit t werden F higkeiten der auf dem Endger t vorhandenen Kamera genutzt wie z B die Autofokus Funktion f r einen schnelleren Vorgang zum Einscannen Nachdem der QR Code ausgelesen und als g ltig interpretiert wurde die eingebettete Information sollte nur anhand der spezifischen im Rahmen dieser Arbeit entwickelten Annahmen wie z B eine Inttp zbar sourceforge net 124 Umsetzung des Prototyps feste IP Adresse und ein fester Port lesbar sein gelangt der Benutzer zu der genan
97. alm Technology dt etwa beruhigende Technologie zusammengefasst Eine erste Motivation bez glich der Auswahl des Be griffs beruhigend wird in der Arbeit gegeben die Evolution der Technologie f hrt zu wesentlichen nderungen was die Integration bzw den Platz der Technologie in unseren Leben angeht Wichtig zu bemerken ist nicht wie sich die Evolution entwickeln wird sondern welche die Beziehungen zu den Nutzern sein werden WB96 Die neuen Anwendungen m ssen zwei auf den ersten Blick widerspr chliche Anforderungen er f llen sie m ssen beruhigen und informieren Ein erster Gedanke welches mit dem Prinzip der Beruhigung assoziiert werden k nnte ist die genannte Problematik von Inversion of Control Dar ber hinaus aber stellt die genannte Arbeit eine interessante These vor die Technologien beruhigen uns w hrend sie unsere Peripherie bef higen erstmal sollte sich die beruhigende Technologie ein wandfrei vom Zentrum der Interaktion zur Peripherie bewegen k nnen W hrend die Peripherie benutzt wird entsteht die Bef higung dadurch dass mehrere Details angeboten werden was an sich ein Gef hl der Kontrolle ber die Technologie vermitteln K nnte Damit l sst sich das Grundprinzip von beruhigenden Technologien formulieren ein Ergebnis der Interaktionen mit der Technologie sollte eine Art Sicherheitsgef hl sein der Benutzer muss sich daheim in einem bekannten Ort f h
98. als Grundprinzip eine Trennung von abstrahierten Konzepten bzw zu entwickelnden Funktionalit ten einer Softwarel sung und die f r die Entwicklung dessen erforderli che Technik anwendet Damit wird eine Softwarel sung entwickelt die die Evolution und nderun gen des Gesch ftes und der Softwaretechnologie berstehen kann MDA definiert eine Hierarchie von Meta Modellen zusammengefasst in dem Begriff Meta Object Facility MOF die von M3 Meta Metamodell bis M0 die Objekte der realen Welt beschrif tet sind um die Abstraktionsstufen zu unterscheiden Das Meta Object Facility MOF wurde vom Object Management Group OMG eingef hrt und beschreibt eine spezielle Architektur f r Metada ten Weiterhin spielen verschiedene Technologien wie UML Unified Modeling Language oder XMI XML Metadata Interchange eine Rolle in dieser Hierarchie welche in der Abbildung anhand eines Beispieles zusammengefasst ist Angelehnt anhttp www omg org mda faq_mda htm 78 Kontext Modellierung M3 MOF 2 0 lt lt instanceOf gt gt lt lt instanceOf gt gt Meta Metamodel lt lt instanceOf gt gt Ma Attribute UML 2 0 classifier Metamodel T I 1 H f i i i H 1 U 1 I L Li U i i AET M1 i lt lt instanceOf gt gt E D Dr Kaes ne e User Model i Be SE d Model EEN 1 I Fae a Ze E N description Just your normal augmented sofa JE MO lt instanceOf gt gt 3 Re
99. anz zwischen zwei Objekte des Kontext Modells umwandeln bzw interpretieren Diese Information hat dann f r die kontextbewusste Anwendung eine klare Bedeutung im Vergleich zum urspr nglichen rohen Wert Ein zus tzlicher Dienst f r den Umgang mit interpretierten Datenbest nden bzw Kontext Infor mationen ist der Aggregationsdienst Hiermit lassen sich verschiedene Kontext Informationen die einen bestimmten f r die untersuchte Dom ne relevanten Sachverhalt darstellen zusammenfassen bzw gruppieren 84 Kontext Modellierung Auf diesen Aspekt der Aggregation wird im Absatz n her eingegangen Im selben Abschnitt wird auch ein bedeutsames Konzept des Kontext Modells vorgestellt die M glichkeit erfasste Kontext Informationen mit Metadaten zu versehen Erfassung von Metadaten QualityMetric 7 alte Object Ownership and Access Control Provenance Quality of Context Ownership OwnershipGroup 1 Source A Kg 5 Bete gt 1 id Identification 0 has 1 SourceGroup consists of lt lt enumeration gt gt gt GlobalOwnershipStrategy i associated with F Resolution System selbst nicht f hr Ee Dynamicsource StaticSource Be PY DL 1 immer ffentlich etc L Qual
100. ard s u M glichkeiten der Benutzer gegeben einen QR Code f r eine bestimmte Instanz des Datenmodells zu erstellen oder eine bersicht der modellierten Ge genst nde zu erhalten Gemeinsame Grund Funktionalit ten der Anwendungen Die entwickelten Anwendungen teilen sich zwei visuelle Darstellungen die DashboardActi vityBase und die SplashActivityBase Das Dashboard stellt ein Gitter dar welches f r die Auswahl einer bestimmten auszuf hrenden Aktivit t zust ndig ist Des Weiteren erm glicht das Das hboard die Darstellung einer Anzahl von ungelesenen Ereignissen die mit der jeweiligen darge stellten ausw hlbaren Aktivit t verkn pft sind Beispielsweise kann durch diese visuelle Pr sentati on visuelles Feedback ber die Anzahl von ungelesenen Mitteilungen aus dem Kommunikationskanal gegeben werden Dar ber hinaus stellt die Splash Aktivit t ein Ladefenster dar welches ber den Fortschritt der Preload Vorg nge siehe dazu Abschnitt 7 4 1 informiert und den Benutzer bei der Benutzung der Anwendung visuell begr t z B wird die Mitteilung HomeSharingApp Guest dargestellt Nachdem die Preload Vorg nge erfolgreich abgeschlossen wurden gelangt der Benutzer in die Ausf hrung der oben genannten DashboardActivityBase bzw ihre Spezialisierung siehe un ten Die genannten Aktivit ten stellen nur eine Vorlage dar die durch die spezialisierten Klassen na mens DashboardActivity
101. ate Transfer REST ist ein Architekturmuster f r die Realisierung von Verteil ten Systemen das von Roy Fielding in eingef hrt wurde Ein Architekturmuster spezifiziert eine Reihe von Einschr nkungen oder Prinzipien die wenn sie in der vorgeschlagenen Art und Weise eingesetzt werden zu einer optimalen Gestaltung der Architektur einer Softwarel sung f hren Die durch dieses Muster beschriebene Architektur entspricht der grundlegenden Architektur aus der Dom ne der Verteilten Systeme indem mehrere eigenst ndige Systeme so agieren bzw kom munizieren und zusammenarbeiten dass es dem Benutzer transparent bleibt Es wird dadurch der Eindruck vermittelt dass der Benutzer ein einzelnes ganzes System benutzt TS07 Das Akronym erl utert an sich die wichtigsten Konzepte des Musters und zwar die Zust nde ver schiedener Ressourcen werden zwischen den Bestandteilen die beteiligten Systeme im Rahmen einer Punkt zu Punkt Kommunikation bertragen Diese Beschreibung nennt ein erstes grundlegendes Konzept hinter REST und zwar der Begriff Ressource Als Ressourcen lassen sich beliebige identifizier und addressierbare Einzelheiten aus der beschriebenen Dom ne bezeichnen Es reicht jedoch nicht nur die Existenz einer Ressource zu kennen die Ressource sollte noch beschrieben werden Deswegen wird der Zustand einer Ressource zu einem gewissen Zeitpunkt durch eine Repr sentation z B in HTML XML oder JSON vorgegeben Im Mittelpun
102. ation zu der aktuellen Situation des Benutzers spielt eine gro e Rolle wenn man sich in einem unbekannten Kontext befindet Durch Technik kann dieser Prozess erleichtert werden damit lassen sich eventuell unentdeckte Vorteile der Umgebung ausnutzen Allgemein ordnet sich dieses Szenario zu den Paradigmen der Ambient Assisted Living Dom ne wo die Unterst tzung des Be nutzers w hrend seiner t glichen Zielen und Aufgaben im Vordergrund steht WX08 Diese Aspekte werden in dieser Arbeit in das sich st ndig entwickelnde globale konomische Konzept namens Sharing Economy eingebettet auch unter dem Begriff Gemeinschaftlicher Kon sum engl Collaborative Consumption bekannt Dieses Konzept basiert auf der Idee dass Zugang wichtiger als Besitz ist Dadurch werden diejenige Personen die Eigent mer eines Produkts oder ei ner Dienstleistung sind einer anderen Personen zugeordnet die dieses Produkt oder Dienstleistung braucht Durch dieses Modell entstehen sogenannte Peer to Peer Marktpl tze welche auf sozia len Prinzipien wie gegenseitiges Vertrauen Ansehen und einem Gemeinschaftsgedanken basieren Weitere Details sind im Absatz 4 1 zu finden Ein Teil der Sharing Economy sind virtuelle Marktpl tze f r Wohnungen engl Home Sharing Home Sharing bedeutet das Teilen bzw Vermieten der eigenen Wohnung Die genannte Problema tik des Einlebens ist in dieser Dom ne aus Sicht der Mieter auch vertreten die neue Wohnung
103. auch Format der 2 5 Indoor Lokalisierung 21 Ausgaben zu beachten Rail1 Weitere Aussagen aus deuten darauf hin dass ein systema tische Evaluationsschema zur Zeit nicht vorhanden sei die Gr nde daf r sind die unterschiedlichen benutzten Technologien sowie die hohe Anzahl von Metriken oder Kriterien die eine Technologie beschreiben k nnen Trotzdem geben neue in vorgestellten Ergebnisse Hoffnung dass eine Evaluationsschema in der Tat erzielbar w re Ein letzter wichtiger Punkt aus ist dass die Einf hrung von Standards in dem Gebiet der Lokalisierung sehr hilfreich w re ein IS International Organization for Standardization oder IEC International Electrotechnical Commission Standard w rde dazu f hren dass die verschiedenen ge nannten Methoden einheitliche Konzepte benutzen w rden sowie einheitliche Ausgaben zur cklie fern w rden Zum Beispiel k nnte das GUM The Guide to the Expression of Uncertainty in Measure ment ISO IEC Guide 98 3 2008 Dokument benutzt werden um die Angaben der Messunsicherheit normen zu k nnen Initiativen in diese Richtung sind jedoch zu bemerken ein Wettbewert namens Evaluating AAL Systems through Competitive Benchmarking hat als Zielsetzung die Evaluation von AAL s o L sungen und ein Kriterium f r die Evaluation ist die Performanz der benutzten Technik zur Indoor Lokalisierung Der m glicherweise letzte Stand der Methoden zur Indoor Lokalisierung befindet sich in Arbeiten wi
104. auf verschiedenen Systeme gelagert werden k nnen um z B eine bessere Fehlertoleranz zu erzielen Im Rahmen des Architektur Konzeptes dieser Arbeit werden die Dienste in einem Gateway zusammengepackt und mithilfe eines hochperformanten Servers zur Verf gung gestellt wie im Detail im Laufe des Abschnittes 7 3 5 dargestellt wird Weiterhin wird zwischen normale nicht Echtzeit f hige Dienste und Echtzeit f hige Dienste unterschieden indem die daf r zust ndige Komponente f r die Zwischenspeicherung oder Persis tierung siehe auch vorheriger Paragraph unterschiedlich ist W hrend sich ein NonRealtimeService mit der relationalen Datenbank in Verbindung setzen kann spricht hingegen ein RealtimeService die Echtzeit Datenbank an Ein weiterer Unterschied zwischen den zwei Arten einbezogener Diensten w re dass die deklarierten Schnittstellen unterschiedlich sind Des Weiteren verwenden beide Arten von Diensten eigene Unterkomponenten die die verschiedenen Persistenz bezogene Programmlo gik einkapseln Ein weiterer Aspekt bez glich der Bereitstellung von REST Web Services n mlich die Entdeckung vorhandener Dienste wird im darauffolgenden Abschnitt behandelt Entdeckung und Beschreibung vorhandener REST Web Services In wird die Idee eingef hrt dynamisch eine maschinenlesbare Darstellung vorhandener RESTful Services zu erzeugen Dies w rde dazu dienen einen einheitlichen und standardisierten REST basiert Datenaustausch mit
105. beiten stellen viele L sungen zu partiellen Problemen vor die in einer m glichen L sung der Home Sharing Problematik angewandt werden k nnten Weiterhin l sst sich die Problemstellung des Home Sharing Szenarios auch nicht anhand der Funktionalit ten vorhandener Anbieter von Home Sharing Systemen vollst ndig l sen wie im Ab satz 4 1 motiviert Zu diesem Zweck muss eine generische und erweiterbare Softwarel sung gefunden werden die bestimmte Kriterien erf llt Ein erster Schritt womit die vorgestellte Angelegenheit ein zugrenzen ist w re die Formulierung einer Forschungsfrage In dieser Arbeit wird der Fokus darauf gesetzt ein Kontext Modell zu definieren welches eine technische Architektur bereitstellt Die Architektur muss das vorgestellte Home Sharing Szenario sowie weitere Smart Home bezogene Szenarien unterst tzen Die abgeleitete grundlegende For schungsfrage lautet folgenderma en Wie muss ein Kontext Modell gestaltet sein dass es Erweiterungen und einen Umgang mit Echtzeit Daten erlaubt unter Beibehaltung gewisser Eigenschaften wie die Allgemeinheit Flexibilit t oder ein erh htes Sicherheitsgrad Um eine Antwort auf die gestellte Frage nennen zu k nnen m ssen grobe Konzepte eingef hrt wer den die auf den betrachteten User Stories angewendet werden Diese f hren zu eine Erhebung von Anforderungen an die zu entwickelnde Softwarel sung Diese breite Thematik bereitet alle notwendi
106. bezogen werden Aus Sicht des Softwareentwick lers werden im Fall von BDD einzelne Beispiele des erwarteten Verhaltens des Quelltextes er stellt die auch als Akzeptanz Tests oder Integrationstests engl acceptance und integration test bekannt sind Ein Unterschied zwischen TDD Test Driven Development testgetriebene Software entwicklung zu BDD ist dass bei TDD normalerweise die Struktur Organisation und Robustheit der Softwarel sung getestet werden w hrend eine TDD Spezifikation die Softwarel sung als eine Black Box betrachtet und nur die Erf llung einer gewissen Funktionalit t oder eines Verhaltens erwartet e Verwendung von open source Bibliotheken und Projekte Alle bei der Umsetzung des Soft wareproduktes eingesetzten Technologien bzw Produkte sind im Internet frei verf gbar und f r pr zisere Zwecke anpassbar Dieses Kriterium stellte sich als Hauptmerkmal f r die Auswahl der Werkzeuge dar die im Laufe der Entwicklung verwendet worden sind Die M glichkeit einer Anpassung war essentiell im Fall von einigen Werkzeugen die beispielsweise hinsichtlich ihrer Fehlerausgabe oder allgemeinen Funktionsweise anhand des frei verf gbaren Quelltextes unter sucht worden sind Hiermit ist auch die Gelegenheit verbunden einige kleinere f r diese Arbeit benutzten Software Teile als open source Produkte ver ffentlichen zu k nnen Nachdem in einer zusammengefassten Weise die einzelnen bei dem Entwicklungsvorgang be achteten Merk
107. bsicherung der Datenbank selbst mit einem sicheren Superuser oder Administrator Passwort durchzuf hren Starke Passw rter m ssen f r die einzelnen Datenbank Benutzer auch ausgew hlt und benutzt werden Die Implementierung dieser Aspekte wird weiter im Paragraph beschrieben Teilnehmerauthentizit t Dieses Sicherheitsziel k nnte zuerst von dem Dienstleister gew hrleistet werden z B die Authenti zit t einer Buchung wird vorher gepr ft indem ein Login Verfahren erforderlich ist Dazu k nnte ein gesichertes Bezahlungsverfahren garantieren dass die Teilnehmer authentisch sind Dadurch wird mit einer hohen Wahrscheinlichkeit die tats chliche Identit t des Wohnungsmieters festgestellt dasselbe Prinzip kann im Fall des Wohnungseigent mers eingesetzt werden Trotzdem wird im Fall dieser Softwarel sung ein Signatur Verfahren eingesetzt der Wohnungs eigent mer generiert f r jeden seinen G sten bzw G stengruppen eine kryptographische Wert z B ein Hash die zu den Wohnungsmietern nach der Buchung oder bei der Anreise verteilt wird Damit l sst sich ein Teilnehmer bzw ein Wohnungsmieter innerhalb der Softwarel sung identifizieren Dar ber hinaus k nnte die Idee weiterentwickelt werden indem eine bestimmte Hash Wert nach einem gewissen Zeitraum ablaufen kann durch z B die Verwendung eines Zeitstempels f r die Zeit der Ge nerierung Die Details bez glich der Umsetzung dieser Idee sind im Paragraph 7 3 5 zu entnehmen Nac
108. ch auch zu benutzen Diese Herausforderungen sind auch zusammen mit den im Laufe des Paragraphs 4 3 4 vorgestellten Anforderungen zu ber cksichtigen Damit wird im Rahmen dieser Arbeit ein Kontext Modell f r die Umsetzung des genannten Kriteriums Erfassung von tiefgreifender Datenbest nde ber die Wohnung und deren Umgebung entwickelt Dieses zentrale Konzept der Arbeit wird in Kapitel 6 detailliert 1 5 3 Unterst tzung der Navigation durch Lokalisation Verkn pft mit dem Kriterium Unterst tzung der Mobilit t ist die Entwicklung einer Indoor Lokali sierung zur Bestimmung der aktuellen Lokation des Benutzers innerhalb eines r umlich un begrenzten Raum Erzielt an dieser Stelle wird eine Anpassung der Anwendung in diesem Fall k nnen Ele mente des Kontext Modells vorgeschlagen werden oder automatisch abgerufen bei h heren Wahr scheinlichkeit einer festen Lokalisierung Die Motivation dieses Konzeptes wird in Arbeiten wie gegeben die Lokation der Ort des Benutzers ist einer der haupts chlichen Komponente des Kontextes im Rahmen der Mensch Maschine Interaktion Die Verortung dient aus Sicht dieser Arbeit zu der Selektion der Wohnungsin formationen die zu einem gewissen Zeitpunkt relevant sein k nnten 1 5 Motivation 9 Das Konzept wof r eine Indoor Lokalisierung von Vorteil w re ist wie genannt die Zusammen arbeit mit dem Kontext Modell zudem k nnen auch r umlich bezogene Fragen beantwortet werden wie etwa die Frag
109. che Konfigurationszeit s u gering gehalten werden konnte Insgesamt wurden sechs Probanden gefunden und die Evaluationszeit betrug einzelne sechs Tage und dementsprechend sechs Evaluationstermine Diese Termine fanden innerhalb des f r die Aus f hrung der Evaluation eingeplanten und eingehaltenen Zeitintervalls von maximal 2 Wochen statt Weiterhin erfolgt eine kurze anonymisierte Vorstellung der Teilnehmer im kommenden Paragraph 8 3 Profile der Teilnehmer Die sechs Teilnehmer ein Mann f nf Frauen k nnen aufgrund des Alters in folgenden demogra phischen Kategorien eingestuft werden 18 21 Jahre alt 1 Teilnehmer 22 25 Jahre alt 2 Teilnehmer 26 30 Jahre alt 1 Teilnehmer 31 35 Jahre alt 1 Teilnehmer 36 40 Jahre alt 1 Teilnehmer Schlie lich k nnen folgende Profile der Teilnehmer hinsichtlich der jeweiligen Wohnungssituation und der ausge bten T tigkeit erstellt werden Zwei Studentinnen die in einer Wohnungsgemeinschaft wohnen Eine Studentin die eine 2 Zi Wohnung vermietet Ein erwerbst tiger Mann der in einer 2 Zi Wohnung wohnt Eine erwerbst tige Frau die in einem Einfamilienhaus wohnt Eine erwerbst tige Frau die in einem 2 Zi Wohnung wohnt 8 4 Ablaufplan der Evaluation 127 Die aufgelisteten Aspekte spielten keine Rolle bei der Ausf hrung der Evaluation d h kein Teil nehmer hatte Schwierigkeiten oder wurde aufgrund des Alters oder Wohnsituation benachteiligt
110. d Access Control Context g SofalsinRoom2Fact Fact Representation lt lt enumeration gt gt A parent nil SH_Sys1_GlobalOwnership lt lt type gt gt raw data nil SlobalOwnershipStrategy SH Sys1_Actor Actuator SH Syst Id Identification id SH_Sys1_Id mat name HomeSharingSystem1 uri http 10 0 0 23 SofalsinRoom2 Contextinformation Ss explanation Predefined interpreted_info nil is_interpreted false SH_Sys1 And JohnDoe Ownership OwnershipGroup role_values DATA_READER DATA WRITER lt lt type gt gt BrightnessAsReportedByHVAC BrighinessFact1 JohnDoe id Identification EactAlternative Fact JohnDoe Actor id 2 _ probability 0 95 parent nil name JohnDoe HomeOwner raw_data lux 32 318 uri nil Brightnessinformation1 Contextinformation MasterAccessToken HS Sys1 AccessToken sps explanation As generated by Sensor 341890 MasterAccessTokenTS interpreted_info 34 timestamp MasterAccessToken_HS_Sys1 pi VW value 900150983cd4fb0 Timestamp ENER role_values DATA_READER DATA WEIER global_stamp 2012 06 15 time_to_live 2012 12 15 Provenance Spatial Model SH Sys Source StaticSource Building1 GPS GlobalLocation SmartHomeApp ContextAwareApplication proj4 proj longlat datum Wi value 53 14697 8 18802 HVAC Source PerceivedSource EE i i Building_1 ExternalSpace ITC_Desire Source PerceivedSource parent nil i i i i SH1 Sensors Apartment 1 SymbolicSpace i SourceGroup
111. d Bed rfnisse abzu leiten Menschen k nnen ihre Ideen und Intentionen anderen Menschen zu bermitteln und dadurch eine Reaktion auszul sen Die Gr nde daf r sind vielf ltig zuerst bietet die verwendete Ausdrucksweise bzw die Sprache reiche Konstrukte zur u erung weiterhin verf gen Menschen in einer Gesellschaft ber ein gemeinsames Wissen welches die verschiedenen Aspekte der Welt umfasst sowie allt gliche Situationen oder Normen und Regeln DA00 Wenn Menschen miteinander kommunizieren werden implizite situationsbezogene Informationen zusammengefasst im Begriff Kontext benutzt um die Breite der mitgeteilten Aspekte zu erwei tern Damit ist Kontext ein fast unsichtbarer Akteur in der menschlichen Kommunikation sowie in Aktionen und allgemeinen Umst nden Kontext enth lt sachdienliche zus tzliche Fakten Regeln oder Axiome deren Auswertung oder Ber cksichtigung unsere Kommunikation effizient unsere Be fehle prozessf hig und unsere Umst nde verst ndlich erbringt Meh12 28 Verwandte Arbeiten Aus der Perspektive der Mensch Maschine Interaktion l sst sich diese menschliche F higkeit Ide en miteinander auszutauschen sehr schwer in Szenarien ableiten in denen Menschen mit Rechnern interagieren Bei der normalen Situation des Interactive Computing Situation beh lt der Benut zer limitierte Mittel womit Daten eingegeben werden k nnen d h Tastatur Maus Auch wenn die Technik inzwischen wesent
112. d etwas ber eine neue Anwendung geh rt hat Die Anwendung erlaube einem Wohnungsbesitzer die Gegenst nde seiner Wohnung mit einer digitalen Intelligenz anzureichern Die Anwendung soll G ste dabei unterst tzen sich in der Wohnung und der neuen Umgebung besser zurecht zu finden Dies bewegt Martin dazu die Anwen dung auszuprobieren 38 User Stories Im Folgenden werden die beiden Phasen des in Kapitel 1 5 beschrieben Konzeptes detaillierter vorgestellt Vorbereitungsphase Martin hat die M glichkeit das Backend auf verschiedene Arten zu installieren entweder l sst er von MyHomeSharing eine geeignete Server Umgebung sprich ein Server System ein Rechner liefern und installieren oder verwendet seinen eigenen Rechner daf r Martin entscheidet sich f r die letzte Variante da er in seine Freizeit f r Technik und Gadgets interessiert Zu diesem Zweck l dt er das Do It Yourself Installationskit und die dazugeh rige Android An wendung herunter Nachdem er die Installationsbeschreibung gelesen hat installiert er die Backend Anwendung auf seinem PC der ebenfalls mit dem lokalen Netzwerk verbunden ist Das Backend System ist hochgefahren und er kann mit dem Test der mobilen Anwendung das Frontend anfangen Beim ersten Lauf der Android Anwendung f r Wohnungsbesitzer wird der Benutzer aufgefordert ein grundlegendes Profil zu erstellen Martin w hlt einen Benutzername und ein Profilbild aus Dazu benennt er seine 2
113. d in der Industrie eine Umsetzung der User Stories erlauben w rde Um die Bezeichnung Erweiterung von Home Sharing des Konzeptes zu begr nden wurde eine Analyse der zur Verf gung gestellten Funktionalit ten f r die gr ten Anbieter von Home Sharing Plattformen ausgef hrt Die untersuchten Anbieter sind 9flats Wimdu und Airbnb Die Analyse wurde anhand der online aus der Startseite abrufbaren Informationen gef hrt Seiten wie H ufig gestellten Fragen Wie es funktioniert oder ber uns wurden verglichen Der Zweck der Analyse war die berpr fung folgender Annahme aktuelle L sungen aus der Home Sharing Do m ne setzen den Akzent nicht unbedingt auf die technologische Unterst tzung der Wohnungsmieter und eigent mer durch das Mietintervall Die Kriterien die die Analyse gesteuert haben sind die folgende 1 Erfassung von tiefgreifender Datenbest nde ber die Wohnung und deren Umgebung Unter tiefgreifende Datenbest nde lassen sich erweiterte Informationen ber die Wohnung wie z B Hausregeln allgemeine Richtlinien oder einzelne Anleitungen zur Verwendung oder Verf gbar keit verschiedener Bestandteile der Wohnung wie beispielsweise Ger te oder Zimmern In der Welt der Immobilie lassen sich solche Informationen durch den Bezeichner Ausstattungsmerk male zusammenfassen Hierhin geh ren auch Daten ber die Umgebung au erhalb der Wohnung wie z B Annehmlich keiten in der N he zu be
114. dargestellte Elementen Dar ber hinaus verfolgt eine Aktivit t ber einen festen Lebenszyklus die besagt wann die Aktivit t dekonstruiert bzw nicht mehr angezeigt werden soll wann die wieder dargestellt werden soll usw Die visuelle Aus pr gung einer Aktivit t wird von einem Layout repr sentiert welche die jeweiligen Komponenten auch als Views bekannt enth lt Views sind das was der End Benutzer sieht und damit interagiert ACS09 Views und Layouts k nnen bestimmte visuellen Attributen wie z B String Werte Farben eine Theme oder s mtliche Grafiken f r die Darstellung brauchen Diese Dateien werden vom Anwen dungsentwickler zur Verf gung gestellt sie werden vorkompiliert und im Lieferumfang der An wendung eingebettet sodass die laufende Anwendung auf sie zur ckgreifen kann als Ressourcen f r die jeweilige Aktivit t oder View Ein letzter Element von Interesse an dieser Stelle ist die Architektur der Benutzeroberfl che GUI die von Android bereitgestellt wird Die Android GUI hnelt normale Java basierte GUI Bibliothe ken wie Swing oder SWT indem ein einzelner Thread zur Verf gung gestellt wird zusammen mit einer Bibliothek von ineinander schachtelbaren Komponenten die auf Ereignisse aus der Laufzeit umgebung reagieren k nnen engl event driven Die Organisation der Android GUI Komponenten verfolgt das MVC Prinzip Model View Controller ein Software Architekturmuster welches zur Strukturieru
115. dass die neu integrierten Dienste von den F higkeiten der Umgebung in voller Breite profitieren k nnen Die Idee der Nutzerbef higung engl user empowerment ist urspr nglich aus der Welt der Busi ness Intelligence BI entstanden wo dieser Prinzip auch als self service oder end user oriented bekannt ist und in Visionen wie Business Intelligence 3 q Jenthalten ist Dasselbe Prinzip wird zudem in erl utert in der genannten Arbeit wird der Entwurf eines Frameworks vorgestellt in dem die Entwicklung von kontextbewussten Anwendungen von den Einwohnern selber durchgef hrt werden kann obwohl sie voraussichtlich keinerlei Erfahrungen mit Softwareentwicklung gesammelt haben Dar ber hinaus wird ein anderer Aspekt in bez glich der Nutzerbef higung diskutiert als eine Technologie wie z B eine Smart Home Umgebung die verbreitetete kommerzielle Einf h rung n hert muss den Fokus auf die Entwicklung von Nutzer zentrische Systeme gesetzt werden Detailliert sollen Systeme entwickelt und geliefert werden die idealerweise von den End Benutzern selbst installiert und verwaltet werden kann Diese Perspektive ist von besonderen Bedeutung in ei nem Szenario wo das System in die eigene Wohnung installiert und betrieben werden muss wo ein Gef hl der Kontrolle entstehen muss siehe unten Diese Idee kann die Akzeptanz gegen ber Smart Home L sungen verbessern da diese L sung die Benutzer aktiv involviert und is
116. dem Ergebnis erfolgreich beendet usw dem View ber das Model mitteilen Jeder spezifische Controller erbt von der genannten BackendCommunicationControllerBase und setzt je nach Anfrage Typ eine bin r MessagePack getriebene oder eine normale Daten bertragung ei ne Schnittstelle um entweder BackendAsyncBinaryHTTPResponseHandler oder Ba ckendAsyncHTTPResponseHandler AppPreloadController Dieser Controller wird f r die berpr fung spezifischer Vorbedingungen bei dem Start der jeweiligen Anwendung angewendet Die zu berpr fenden Vorbedingungen sind folgende berpr fen ob die Anwendung auf dem End Ger t zum ersten Mal l uft Hiermit k nnen z B spezifische Ma nahmen ergriffen werden wie die Darstellung einer Anleitung zur ersten Anwendung oder die Darstellung eines Formulars zum Eingeben eines minimalen sozialen Profils siehe auch Uberpriifen ob Wi Fi aktiviert ist oder nicht Wenn noch nicht aktiviert wird diese Wahl automatisch bet tigt berpr fen ob eine Wi Fi Verbindung erfolgreich etabliert werden konnte Falls die Ver bindung nicht hergestellt werden konnte wurde der Nutzer zum Android spezifischen Men weitergeleitet das f r die Wi Fi Verbindung zust ndig ist Diese Wahl wird getroffen um si cherzustellen dass eine Verbindung mit dem lokalen Netzwerk erfolgreich hergestellt werden kann 26 http loopj com android async http http developer android com ref
117. dem sie mehr ber die komplizierte Methode zur perfekt gekochten Kaffee von Martin h rt und den erkl rten Vorgang zum ersten Mal alleine ausf hrt Kathrin l dt die von Martin genannte Anwendung herunter eine Alternative der Distributionspha se Sie erstellt ein minimales Profil ber ihre Person ohne Profilbild Wie schon genannt k nnte die Anwendung die manuelle Erstellung des Profils vermeiden durch die Benutzung einer API zu einem Dienstleister wie Airbnb oder die bernahme vom Informationen im Web selbstverst ndlich nachdem der Benutzer dies best tigte und autorisiert hat Nach der Erstellung ihres Profils wird automatisch ein Kalendereintrag mit Erinnerung f r ihren Auszugstermin verf gbar ber die Buchungsdaten angelegt Martin hat vergessen eine Checkliste f r seine G ste noch zu erstellen aber Kathrin wird auch ohne klarkommen und die Wohnung in einem guten Zustand hinterlassen k nnen Der angebrachte QR Code kommt am n chsten Tag zum Einsatz Martin befindet sich auf der Arbeit und Kathrin versucht die besonderen Kaffeetassen zu finden von denen Martin ihr erz hlt hat Hilfesuchend scannt sie den prominent platzierten QR Code mit ihrer Anwendung Angezeigt bekommt sie dann Bedienungsanleitungen in Form einer Checkliste die den Prozess zur Erstellung ala carte begleitet Im Hintergrund wird diese Information voraussichtliche Benutzung der Kaffeemaschine in der Echtzeit Datenbank zwischengespeichert
118. dene Systemen integriert werden die ihre eigene Vorstellung des Datenmodells oder des Kommunikationsprotokolls haben Weitere Anforderungen k nnen von der Klasse der Ubiquitous Computing Systeme abgeleitet wer den und zwar e Performanz HIMOS Inmitten eines kontextbewussten Systems steht die Anforderung an die Echtzeit Verarbeitung von Daten die von mehreren verteilten Quellen gemeldet werden k nnen 52 Anforderungserhebung Aus dieser Perspektive m ssen Anwendungen eine geringere Reaktionszeit bereitstellen um ein Gef hl einer nahtlosen Mensch Maschine Interaktion zu gew hrleisten Diese Aufgabe stellt sich noch schwieriger in der Laufzeit Umgebung eines mobilen Ger tes heraus e Skalierbarkeit HIMOS Die Gr e des Systems kann wesentlich mit der Zeit variieren z B durch das Einf gen einer erheblichen Anzahl von Sensoren oder die Vergr erung des Nutzer und Anwendungskontingentes Aus Sicht der System Architektur k nnen folgende zu beachtende Punkte eingef hrt werden e Modularit t und Flexibilit t BPP07 Die Architektur des gesamten Systems muss so modular wie m glich aufgebaut werden indem Komponenten f r jede ben tigte Funktionalit t entwickelt werden Durch die Modularit t werden die Details des Kontext Modells von der Anwendungslogik abgekoppelt vgl HIM05 Die damit gewonnene Flexibilit t des Systems zeigt sich bei der dynamischen Erweiterung der Funktionalit t z B hinzugef gte Dienste G
119. denken Regeln des Wohnblocks oder Quartiers 2 F rderung des spontanen Kontakts w hrend des Mietintervalls W hrend die Kontaktaufnah me bevor der Buchung wichtig ist wichtiger ist die Existenz einer Kontaktmethode w hrend der Aufenthalt in der Wohnung Hiermit k nnen spontan Probleme verschiedener Schwierigkeitsgrade besprochen werden unter bestimmte Annahmen wie Verf gbarkeit oder Privatsph re 3 Unterst tzung der Mobilit t Ein wesentlicher Punkt ist auch die Existenz einer mobilen Anwen dung f r die angebotene Dienstleistung Die Anwendung w rde dann das erste Kriterium weiter unterst tzen indem die Datenbest nde mobil und im besten Fall auch au erhalb der Wohnung abrufbar w ren Die Ergebnisse der Analyse gruppiert nach Kriterium sind in der folgenden Auflistung zu finden 44 Anforderungserhebung e Erfassung von tiefgreifender Datenbest nde ber die Wohnung und deren Umgebung Alle Webseiten erlauben die Annotierung des Inserats mit einer Beschreibung der Wohnung und des sen Gegenst nde Jeweils hier zu beachten ist die Allgemeinheit es k nnen keine Annotierungen auf bestimmte Elemente erfolgen Die Granularit t dieser Beschreibungen k nnte dann verbessert werden f r den Fall dass der modellierte Element pr zisere Angaben hinsichtlich der Verwendung oder Pflege braucht Weiterhin erlauben alle Anbieter die Erfassung von Hausregeln Jeweils lassen sich nur Freitext Eintr ge erstellen es fehlt jedoch ein
120. droid SQLitd modelliert Beispielsweise k nnen hier Statistiken wie Anzahl der Benutzungen oder Pr ferenzen f r die Anwendung gespeichert wer den View Gem des Android Konzeptes sind Views in Form von Aktivit ten engl Activities ausgepr gt Die Gestaltung einer Aktivit t entsteht mithilfe von Layouts die ein What you see is what you get Konstrukt repr sentieren Das hei t ein Layout bestimmt die visuelle Wiedergabe die dem Benut zer vorgestellt wird Basierend auf den Konzepten zum Nutzungserlebnis siehe auch Abschnitt 5 4 wurden verschiedene Komponenten entwickelt die die Darstellung und entsprechende Benutzung der Anwendung erleichtern Die folgende Auflistung fasst die entwickelten Ul Komponenten zusammen e Eine klappbare Liste die die Grundriss Komponente des Android Frameworks namens Expan dableListView um die Funktionalit t zur Hinzuf gung L schung und Bearbeitung von Items Sihttp www sqlite org 120 Umsetzung des Prototyps erweitert Die urspr ngliche Komponente wurde nur mit einer grundlegenden Funktionalit t zur Darstellung von Items entwickelt e Verschiedene Hilfskomponenten wie z B eine Combo Box als Spinner in der Android Ter minologie bekannt die einen Titel einen Untertitel und ein Symbol Icon unterst tzt Diese Komponente wird z B f r die Darstellung der Privatsph re Merkmale wie ASK_FIRST in einer visuellen und textuell ausf hrlichen Form n tzlich Weitere D
121. ds Die Funktionalit t dieses Tasks ist die Erstellung einer BaseModelAPI Klasse die mittels Me taprogrammierung s u und Grape eine REST API f r das bergebene Datenmodell definiert An schlie end wird ein Web Server gestartet siehe auch 7 3 5 welcher die spezifischen Routen dieses Datenmodells zur Verf gung stellt Der grundlegende Ansatz der Metaprogrammierung ist die Definition eines bestimmten Quelltex tes der einen anderen Quelltext selbst erzeugt die Programmierung von Programmierung Durch diese Technik kann ein Quelltext definiert werden welcher besser und flexibler auf unerwartete Er eignisse reagieren kann Weitere Informationen ber das Konzept der Metaprogrammierung werden in der einflussreichen Arbeit Metaprogramming Ruby gegeben Metaprogrammierung wird an dieser Stelle benutzt um die angeforderten Datenmodelle und deren Routes in eine monolytische REST API einzubetten die Anfragen f r alle involvierten Datenmo delle bearbeiten kann Dar ber hinaus werden Hilfsmethoden bereitgestellt die z B f r das Log ging bestimmter Ereignisse oder die Etablierung einer Verbindung mit der Datenbank zust ndig sind Durch Metaprogrammierung wird das automatische Laden der Datenmodell spezfischen Routen wie z B GET spatial_relations eine Route f r das Datenmodell Space das SpatialRe lations enth lt gew hrleistet Die Routen die per Default in der BaseModelAPI Klasse verf g bar sind ber h
122. e Welche Haushaltsgegenst nde befinden sich in der Garage sowie Welche modellierten Ger te sind in der K che zu finden oder beispielsweise Wo finde ich die n chste U Bahn Station Die Unterst tzung solcher r umlichen Anfragen ergibt sich aus der M glichkeit r umliche Daten und Beziehungen in dem Kontext Modell zu speichern wie weiter im Abschnitt beschrieben Aus der verschiedener M glichkeiten zur Indoor Lokalisierung verwendet die Softwarel sung die vereinfachte Variante der Lokalisierung mittels ausgedruckter und eingescannter QR Codes wie weiter in Kapitel 7 vorgestellt wird Die M glichkeit eine andere Methode zur Lokalisierung zu verwenden ist vorhanden bzw unterst tzt wie es im Abschnitt 7 4 3 erl utert wird Diese L sung basierend auf QR Codes wurde aufgrund der vorhersehbar hohen Implementierungs und Evaluati onsaufwand ausgew hlt Eine M glichkeit zur Outdoor Lokalisierung l sst sich jedoch im Fall der Kontext Elementen au erhalb der Wohnung benutzen und verwendet als technologische Grundlage die bliche GPS Lokalisierung 1 5 4 Ein Kommunikationskanal f r Normal und Notf lle Das letzte Kriterium F rderung des spontanen Kontakts w hrend des Mietintervalls wird gel st durch die Entwicklung eines Kommunikationskanals Dieser Konzept kapselt die allgemeinen Be griffe aus der Kommunikationstheorie SW98 es werden Monologe durch Offline Mitteilungen unterst tzt Dialoge in
123. e Anwendung weiter zu testen 40 User Stories 3 2 2 Smart Home Eine weitere m gliche User Story welche auf dem in Abschnitt 1 5 vorgestellten Konzept basiert beschreibt die Aufstellung und Wartung der einzelnen Teilsystemen einer Smart Home Umgebung Diese Aufgaben repr sentieren eine der zentrale Herausforderungen die den Erfolg von Smart Home Technologien beim breiten Publikum verhindern RQBAO9 Aktuelle Herangehensweise erfordern eine umfangreiche initiale Systemzusammenstellung und weitere technische Unterst tzung von Ex perten Daher stellt sich die Frage ob eine entfernte Instandhaltung m glich w re Dies w rde es erlauben das System aktuell zu halten eventuelle Sicherheitsl cken zu vermeiden sowie neue Funktionalit ten einzubinden In diesem Fall wird nicht mehr ber Wohnungsmieter gesprochen sondern ber Woh nungsbesitzer und Techniker Der Techniker konnte ebenfalls bei einer spezialisierte Dienstleister von Smart Home Anwendungen angestellt sein Demn chst werden m gliche Verkn pfungspunkte mit dem allgemeinen Szenario von Smart Home Sharing eingef hrt ohne eine neue User Story aufzubauen Eine erste Funktionalit t beschreibt die angepasste Nutzung des Kommunikationskanals zwischen Wohnungsbesitzer und Techniker Auf diesen Kanal k nnen n tzliche Informationen ausgetauscht werden jeweils abh ngig vom Kontext in diesem Fall z B bei welchem Ger t des Smart Homes das Problem auftrit
124. e Formulierung von intelligenten Antworten und damit eine Dialogf higkeit Die intelligente Facette der Ambient Intelligence Systeme stammt aus dem Forschungsfeld der Intelligenten Systeme Sha03 wo fortgeschrittene Algorithmen rund um maschinelles Lernen und Muster Abgleich Stimme Erkennung oder Gesten Klassifizierung sowie die Bewertung von Situa tionen Situation Bewusstsein entwickelt werden Weiterhin werden spezifische Eigenschaften der Mensch Maschine Interaktion durch Ambient In telligence erweitert die Wechselwirkung und Benutzung der Technologie sollte mit minimalen Auf wand erfolgen weiterhin muss die Interaktion leicht verst ndlich sein und damit zu einer insgesamt angenehmen Erfahrung f hren Zusammenfassend bietet Ambient Intelligence eine Vielfalt von einfallsreichen M glichkeiten an Bequemlichkeit f r die Benutzer des Systems zu erzeugen Es werden L sungen vergegenwirtigt die ber den aktuellen Stand der Technik hinausgehen wie z B die Verkn pfung des Cloud Computing 2 2 Ambient Intelligence Aml 15 Paradigmas in einen Ambient Intelligence Kontext wie in LLCS10 beschrieben Weitere Szena rien sind in der ersten Arbeit ber Ambient Intelligence IDBS O1 enthalten und in Sha03 kurz zusammengefasst Aus der erkundeten Werke ist der Konzept von Ambient Intelligence zu entnehmen insbeson dere die erw nschte Merkmale wie leicht bedienbar intelligent sowie das insgesamt angenehme User E
125. e Kopplung der zu integrierenden Komponente im Vergleich zu blichen Herangehensweisen der Vernetzung die die Etablierung einer gemeinsamen Schnittstelle in Form von IDL Interface Description Language eine Sprache womit die Schnittstelle einer Soft warekomponente beschrieben werden kann oder WSDL Web Service Description Language eine XML basierte Sprache die die von einer Web Service bereitgestellte Funktionalit t beschreibt Do kumenten vorsehen stellt pREST eine begrenzte Semantik f r die gegenseitige Verbindung vor Es wird motiviert dass im Fall von ubiquit ren in house Computing fast nur Mitteilungen der Form ein Ereignis ist aufgetreten Wert auslesen oder Wert setzen verschickt werden m ssen Zu diesem Zweck werden nur die Basis Verben HTTP Verben benutzt um die einzelnen Kompo nenten bzw Ressourcen anfragen zu k nnen GET POST sowie HEAD Eine GET Anfrage f r einen Dienst wird als eine Art Discovery Anfrage angesehen die Antwort zu der Anfrage besteht aus einer REST gem e Repr sentation der f r den Aufruf ben tigten Parameter Dementsprechend ist die Formulierung einer POST Anfrage f r einen Aufruf des Dienstes gehalten Das HTTP Protokoll wird weiter ausgenutzt indem ein vereinfachtes System zur Typisierung engl typing system eingesetzt wird mithilfe von HTTP Headers und einer MIME hnliche Typisierung Ein Accept Header listet die von einer Ressource bearbeitbaren Inhalt
126. e Wohnung und Ortsbezogene Daten sowie pers nliche Daten derjenigen Mieter und Eigent mer zu achten Es wird damit erm glicht die Da ten mithilfe einer zur Zeit Kommandozeile gesteuerten Anwendung exportieren zu lassen dieses Verfahren wird n her im Paragraph 7 3 l eingegangen Ein weiterer Aspekt zur Vermeidung der Vorratsspeicherung ist die automatische Vernichtung aller personenbezogenen oder verallgemeinert pers nlichen Daten eines Eigent mers und dessen Mieter Dieser Vorgang k nnte so eingestellt werden dass es beim Eintritt eines spezifischen Ereignisses beispielsweise nachdem ein Gast ausgecheckt ist ausgel st wird Diese Idee ist nur auf einem theo retischen Niveau geblieben und K nnte beispielsweise mithilfe des Triggers Konzeptes aus der Welt der relationalen Datenbanksverwaltungsystemen gel st werden Nachdem die wesentlichen Komponente des Server Systems erl utert worden sind kommt gelegen eine zweite Komponente einzuf hren Diese Komponente stellt ein Kommunikationskanal zwischen den Wohnungseigent mer und den Wohnungsmietern bereit und kann zudem auch f r die Kommu nikation zwischen kontextbewussten Anwendungen oder die Verteilung von Kontext Informationen verwendet werden Die Beschreibung dieser Komponente folgt im anschlie enden Paragraph 5 2 3 Entwurf des Kommunikationskanals Eine weitere Funktionalit t des Servers ist die Bereitstellung einer technischen Architektur f r die Distribution von Mitteilu
127. e auf neu eintretenden Instan zen dieser Informationen erm glichen kann Die Automatisierung ist auch vorstellbar anhand von mehrerer Informationen aus der Umgebung k nnen die Entscheidungen z B ber die Aufsicht oder Aktivit t des Benutzers die Situation in der er sie sich gerade befindet automatisch vorgeschlagen werden Andere m gliche Unklarheiten oder allgemeine Probleme die w hrend der Mietphase eintreten k nnen sind Fragen wie beispielsweise Warum soll nach 23 Uhr keine laute Musik abgespielt wer den oder Wie funktioniert diese hoch automatisierte Waschmaschine Konzepte die diesbez glich abgeleitet werden k nnen sind Hausregeln und Anwendungshinweise die in Kapitel 1 5 eingef hrt werden Diese Informationen sollen auch m glichst automatisch abgerufen werden wenn z B sich der Benutzer das mobile Ger t in der N he des Gegenstandes befindet hiermit ist eine Technik der Lokalisierung gefragt Im Laufe der Mietphase k nnte man sich auch Situationen vorstellen die aus dem Rahmen des b lichen fallen k nnen hier k nnen beispielhafte Grenzf lle wie der Defekt eines wichtigen Haushalts ger ts oder eine au ergew hnliche Anfrage von der Seite der Mieter geh ren In diesen Situationen ist eine m glichst direkte aber trotzdem nicht zu st rende Kontaktaufnahme gefragt dar ber hinaus k nnen gravierende Ereignisse dem Dienstvermittler oder dem Wohnungseigent mer direkt kommu niziert werden Diese Ko
128. e die Dimensionen Aktivit t Position und Zeit bestimmt werden einzelnen ausgewerteten Situationen wird jeweils eine Identifikationsnummer gegeben Ein weiteres Beispiel w re die Definition einer Beziehung die ein Treffen zwischen zwei Person Entit ten beschreiben kann verkn pft sein m ssen an dieser Stelle die zwei Entit ten ber ein Attribut welches auf dieselben oder relativ gleiche Auspr gungen der entsprechenden Dimension Position achtet Zusammenfassend erlaubt MDA die Verwendung einer technischen Architektur womit Kontext Modelle erstellt werden k nnen In LRBAI10 wird ein Beispiel einer modellgetriebenen Entwick lung eines Kontext Modells f r Smart Environments ausf hrlich beschrieben Aus diesem Abschnitt zu entnehmen ist die M glichkeit einer v llig modellgetriebenen Entwick lung eines Kontext Modells basierend auf der MDA Methodologie Die M glichkeit von einem UML entwickelten Modell eine zur Laufzeit benutzbare Umsetzung benutzen zu k nnen war f r diese Arbeit interessant und dessen N tzlichkeit wurde auch im Laufe der Literaturrecherche best tigt in wird ber die umfassende Technik der Context Modeling Language CML diskutiert bei der ein in dem ein konzeptuelles Schema automatisch in eine relationales persistierba res Datenbanksschema umgewandelt wird um das Datenmanagement der Kontext Informationen in einer Datenbank zu erm glichen In dieser Hinsicht wurde in dieser Arbeit danach
129. e folgt organisiert in Kapitel 2 werden die Arbeiten vorgestellt die zur Ent wicklung der vorgestellten Konzepte und Szenarien eine unterstiitzende Rolle spielen Weiter werden http www dataliberation org Vel Linux Information Projekt http www linfo org vendor_lockin html Mnttp www dataliberation org home faq 8 1 6 Struktur der Arbeit 11 in Kapitel 3 m gliche User Stories vorgestellt die im Freitext die zu untersuchenden Anwendungs f lle beschreiben Darauffolgend werden im Laufe des Kapitels 4 die auf User Stories aufbauenden Anforderungen erhoben bzw definiert In der Folge l sst sich der zugrundeliegende Entwurf zur Durchf hrung der Anforderungen in Ka pitel 5 vorstellen aus Sicht der visuellen und softwaretechnischen Architektur Der zentrale Konzept der Arbeit wird dementsprechend n her in Kapitel 6Jund mit einbezogen in der Vorstellung der proto typischen Umsetzung aus Kapitel 7 Die Evaluation des entwickelten Prototyps erfolgt in Kapitel 8 w hrend in Kapitel 9 das Fazit gezogen wird und einen Ausblick gegeben wird 12 Einleitung 13 Im Rahmen dieses Kapitels werden die verwandten und verwendeten Arbeiten die zu der Erstel lung dieser Arbeit beigetragen haben beschrieben Der Bezug zu jeder genannten Dom ne wird kurz erl utert und danach werden einzelne Werke ausgezeichnet um den Zusammenhang oder Beitrag bzw Inspiration zu dieser Arbeit erkl ren zu k nnen 2 1 Ubiq
130. e gegeben werden weil dieser Vorgang bei dem Anlegen von neuen Datenbank Benutzern verwendet wird Sicherheitskonzept Umgang mit Passw rter Das grundlegende Konzept f r den Umgang des Backends mit den ben tigten Passw rter basiert auf folgende Voraussetzungen 1 Die Basis Passw rter bzw Passwort Dateien sind nur auf dem Server System zug nglich 2 Die Passwort Dateien sind nur dem Backend Systemadministrators z B der Wohnungseigent mer zug nglich 3 Das Backend System ist mit einem Administrator Passwort versehen W hrend die erste Voraussetzung mit der Organisation des Quelltextes im Fall der Backend An wendung erf llt ist durch die Handhabung des config secrets Ordners m ssen die ande ren aufgelistete Elementen entweder vom Wohnungseigent mer wenn das Server System auf einem eigenen Server installiert wird oder vom Dienstleister umgesetzt werden Die Mechanismen der Zugangskontrolle am Betriebssystem Ebene sind daf r zust ndig man kann z B Rechte nur dem Systemadministrator vergeben Die auf dem Server gelagerten Passw rter bzw die entsprechenden Dateien werden vom Backend ausgelesen angepasst und benutzt Die genannte Anpassung wird in Form eines einfachen Ersetzen 98 Umsetzung des Prototyps eines Platzhalter Textes ausgef hrt z B in dem Satz SPass is_HERE wird den Platzhalter HERE durch den entsprechenden Passwort ersetzt Der n chste Schritt in der Bereitstellung
131. e hat sich im Fall der durchgef hrten Evaluation verwirklicht wo eine sehr n tz liche Sammlung von Daten betreffend Verbesserungsvorschl ge Ideen zur Weiterentwicklung und Aussagen ber die Arbeitsbelastung erfasst werden konnte Als letzter Schritt der Arbeit wird im kommenden Kapitel eine Zusammenfassung der Arbeit sowie einen Ausblick ber m glichen weitere Entwicklungen gegeben Artikel Why You Only Need to Test with 5 Users Jakob Nielsen Erscheinungsdatum 19 M rz 2000 http www useit com alertbox 20000319 html Artikel How Many Test Users in a Usability Study Jakob Nielsen Erscheinungsdatum 04 Juni 2012 http www useit com alertbox number of test users html 134 Evaluation 135 Zusammenfassend wurde in dieser Arbeit zuerst ein Konzept vorgestellt welches als Erweiterung des Home Sharing Ergebnisses vorgesehen ist Diese vereinfachte Perspektive der Arbeit wurde zudem erg nzt durch die Definition einer Forschungsfrage die die weitere Entwicklung der Arbeit auspr gte Anhand der abgeleiteten Anforderungen und mit R cksicht auf vorher geleistete Arbeiten in den umgebenden Forschungsfeldern wurde eine technische Architektur definiert welche als Zielsetzung die Unterst tzung der genannten Konzepte hatte Ein gro er Teil der technischen und zugleich kon zeptuellen Architektur wurde von der Definition eines Kontext Modells anhand spezifischer Vorar beiten und dom
132. e weitere Kategorisierung dieser Eintr ge oder die eventuelle Verbindung zu einem modellierten Gegenstand engl asset der Wohnung Trotzdem ist eine Kategorisierung zu bemerken im Fall aller Anbieter eine so gesehene allgemein bekannte Haus regel wie die M glichkeit Haustiere in der Wohnung unterzubringen ist behandelt jedoch nicht als eine Hausregel sondern in einer hnlichen Art und Weise wie die Eigenschaften der Woh nung u Anzahl der Zimmer Es besteht also keine Allgemeinheit des Hausregeln Konzeptes und keine M glichkeit eine Hausregel zu einer bestimmten Ger t oder zu einem Gegenstand in der Wohnung zuzuweisen W nschenswert an dieser Stelle w re eine einheitliche zu jeder Zeit abrufbare Darstellung Bezogen auf die Umgebung l sst sich nur bei manchen Anbieter eine erweiterte Beschreibung das hei t au er die ungef hre oder genaue Adresse finden Airbnb unterscheidet sich bez glich dieses Kriteriums von den anderen Anbieter indem ein Reisef hrer f r die G ste erstellt werden kann Dadurch werden bestimmte rtlichkeiten oder Sehensw rdigkeiten aufgelistet und auf einer Landkarte lokalisiert Dazu lassen sich online Routen zu jeder rtlichkeit berechnen anschlie end kann den Reisef hrer ausgedruckt werden Die Benutzbarkeit dieser Auflistung ist nicht u erst hoch diese Daten verkn pfen nur den Standort bzw die vermietete Wohnung mit der Umgebung und erlauben keine einfache Navigati
133. ections String Smart Objects i Asset Metadata a 0 1 0 D I Tr has VirtualAsset i InstructionSet PictureSet RuleGroup lt lt enumeration gt gt o virtual_id Identification i id Integer id Integer rules List lt Rule gt UsagePermission has Children Children 1 b FREE_USE i 1 7 ASK_FIRST 1 1 1 i 1 PRIVATE D declares via Subclasses UNSPECIFIED 0 AssetCategory a RealAsset composed of has re name String parent RealAsset k 1 i A description String children List lt RealAsset gt 2 WebService 1 8 zu 17 1 icon Picture H id Identification Instructionstep Picture Rule UserProfile parent AssetCategory 1 A ZN DiServiceDesc String H name String title String name String username String children List lt AssetCategory gt i Logik zen d Z description String description String description String timestamp Timestamp i ae i Anwendung zu beachten 1 pictures PictureSet bio String 1 i i S i GenericWebService RESTWebService i i ServiceDesc XMLString N has 1 1 possesses may lt lt implement gt gt 9 W H i H i lt lt interface gt gt lt lt implements gt gt i 1 Provenance ES gt h lAssetLogic Source Provenance enumeration En En SET i id Identification Static Sensed Profiled UserType s si HOME_OWNER AttributeSet R described by IGenericVirtualAssetFunctionsService i PESEE EEE HOME_RENTER id Integer getName String i Cen
134. ed message authentication code Hyper Text Transfer Protocol Hypertext Transfer Protocol Secure Identifikation Interface Description Language International Electrotechnical Commission Institute of Electrical and Electronics Engineers Informations und Kommunikations Technologien Instant Messaging Internet Protocol International Organization for Standardization Information technology JavaScript Object Notation Linked Data Message Authentication Code Model Driven Architecture Multipurpose Internet Mail Extensions Meta Object Facility Message Queuing Model View Controller National Aeronautics and Space Administration Near Field Communication Object Relational Mapping 140 Abk rzungen Open Geospatial Consortium Object Management Group Object Relational Mapping seltener Object Role Mapping The Open Telecom Platform Personal Computer Platform Independent Base Model Platform Specific Model Quick Response Code Resource Description Framework Representational State Transfer Pico REST Radio Frequency Identification Rich Site Summary Software Development Kit Standard Generalized Markup Language Short Message Service Service Oriented Architecture Simple Object Access Protocol Structured Query Language Secure Sockets Layer Standard Widget Toolkit Transmission Control Protocol Test Driven Development Transport Layer Security Task Load Index User Datagram Protocol User Interface Unified Modeling Langua
135. ef hrt worden sind Als n chstes werden weitere Aspekte der Distribution der Anwendungen vorgestellt Distribution der Anwendung f r Wohnungsmiieter Der n chste Schritt bis hin zur Nutzung der entwickelten mobilen Anwendungen ist die Distribu tion der Anwendungen als Android konforme apk Dateien Die normale Distribution einer Andro id Anwendung erfolgt auf der Google Market Plattform oder inzwischen Google Play Store Plattform wo Anwendungen und die dazugeh rige apk Datei heruntergeladen und lokal auf dem End Ger t installiert werden k nnen Zus tzlich steht eine Konfigurationsoption bereit die diese Li mitierung aufhebt und dadurch die Installation von Anwendungen auch aus unvertrauten Quellen zul sst Der Unterschied zwischen eine unvertraute und vertraute Anwendung wird durch die Herkunft der apk Datei etabliert um eine Anwendung auf dem Market ver ffentlichen zu k nnen muss die apk Distributionsatei signiert werden Diese Authentifizierung ist n tig um sicherzustellen dass die Anwendungen die von einem Entwickler oder einer Softwareentwicklungsfirma ver ffentlicht sind tats chlich aus dieser Quelle auch herkommen In dieser Hinsicht wird normalerweise das selbe Zertifikat oder Signatur f r alle vom demselben Entwickler ver ffentlichte Apps verwendet RLB 10 Das Distributionsmodell dieser Anwendung setzt voraus dass die entstehende zu installierende apk Datei im
136. ein oder MPOMIIOI wo die benutzte Techniken FM Funkstationen als technische Ba sis haben Weiter sind in und WLAN Techniken eingesetzt w hrend in verschiedene Strategien zur Lokalisierung f r die nah am K rper Anwendung von RFID Tags detail liert wird Verkn pft mit der Verwendung der aktuellen Infrastruktur WLAN RFID FM etc ist die Er stellung spezialisierten Sensorik zur Indoor Lokalisierung wie in beschrieben In diesen Aspekten lassen sich die Ergebnisse mehrerer Sensoren f r verbesserte Pr zision zusammensetzen Weitere Ideen aus der genannten Arbeit gehen um Pfad Prognose Algorithmen die Feststellung mit gewisser Wahrscheinlichkeit dass sich die k nftige Lokation des Benutzers in einem bestimmten Wertebereich befinden wird Eine sehr ausf hrliche Beschreibung vorhandener Technologien inklu sive kommerzielle L sungen ist auch in zu finden Weiterhin wird eine m gliche Revolution in dieser Feld wird durch die Einf hrung des Indoor At las Systems geschafft Indoor Atlas verwendet eine Magnetfeld basierte Technologie und eine mobile Anwendung f r sehr pr zise Messungen und Bestimmungen der Indoor Lokation in voraussichtlich Industrie bezogene Szenarien Nennenswert an dieser Stelle ist auch der Mangel an open source Projekte bez glich Indoor Lokalisierung jedoch wird durch Redpirf eine L sung vor geschlagen die zumindest eine gute Pr zision an der Zimmer Ebene liefern kann Aus diesem Abschnitt zu entnehme
137. eintretenden Situationen die M chtigkeit jedes Kontext Modells bersteigen w rde Aus diesem Grund m ssen Techniken zur Anpassung entwickelt werden wie weiter in Kapitel 6 beschrieben 1 3 2 Aus Sicht der technologischen Herausforderungen Eine technische L sung w re eine erweiterbare Menge von m glichen Bestandteilen des Kontext Modells zur Verf gung zu stellen wie weiter in Kapitel 1 5 beschrieben Dadurch k nnen gewisse Gegenst nde engl assets in der Wohnung modelliert werden die zu einer bestimmten vorgegebe nen oder erweiterten Kategorie geh ren Die dadurch erfassten Gegenst nde k nnen die Wohnungs mieter bei der Anpassung helfen Zum Beispiel k nnen Fragen wie Wo finde ich das B geleisen eventuell automatisch beantwortet es sei denn der Wohnungseigent mer n tzlich empfunden hatte dieser Element in der Modellierung mit einzubeziehen Kritisch an dieser Stelle ist die Bereitstellung durch z B eine Darstellung auf dem mobilen Ge r t der so gesehenen richtigen Gegenst nde oder Vorz ge in einer m glichst automatischen Art und Weise Ein erstes Kriterium f r die Auswahl des richtigen Objektes w re beispielsweise die aktuelle Lokation des anfragenden Benutzers Solche Informationen bauen zu einer Entscheidung auf und m ssen verfolgt und gespeichert werden k nnen eine L sung ist die Definition eines Kontext Modells welches ein schneller Zugriff auf die vorher modellierten sowi
138. eiterhin w rden m glicherweise durch diesen Denkansatz andere Probleme auftreten und zwar voraussichtlich werden die Benutzer nicht wissen ob eine Information eine h here Relevanz f r das System oder f r die aktuelle Situation besitzt und es nicht bekannt machen bzw eingeben Die plausiblere und praxistauglichere Methode das Kontext Bewusstsein in einer Anwendung zu integrieren beschreibt einen Ablauf in dem eine automatische Datenerfassung stattfindet gefolgt von der Bereitstellung der abgeleiteten Daten zum laufenden Rechensystem oder der Anwendung Als letztes muss die Maschine entscheiden welcher Aspekt der Daten f r das entworfene Szenario relevant ist und entsprechend darauf reagieren Die f r diese Entscheidung wichtigen Informationen m ssen vorab entworfen worden sein 32 Verwandte Arbeiten F r den Entwurf von Kontext Bewussten Anwendungen mithilfe der vorher genannten Herange hensweise waren wie im Jahr 2000 in beschrieben alle Vorbedingungen vorhanden Zum einen verbreiteten sich kommerzielle serienm ig produzierte Erfassungstechnologien was die Er fassung vom Kontext in variierten Umgebungen durchf hrbar machte au erdem wurde der Zugang zu leistungsf higen vernetzten Rechnersystemen leichter welche erlauben w rden die Technologien der Zeit zu benutzen um Kontext Informationen zwischen mehreren Anwendungen zu verteilen Was aber geschehen ist ist vergleichbar mit dem geringeren Erfolg der Smart Ho
139. em blichen Sen sorger t unterscheidet ist im Prinzip die Herstellung einer direkten oder indirekten Verbindung zum Internet Web Durch die vorherige Auflistung lassen sich auch diejenige Charakteristiken von Ger ten beschreiben die durch das Kontext Modell der Softwarel sung siehe auch Kapitel 6 abgedeckt werden Weiterhin wird den Weg in beschrieben wodurch die Verbindung zum Internet von den Ger ten verwendet werden kann Der Dom ne von Web of Things repr sentiert einen Kreu zungspunkt zwischen zwei Felder die in der Vergangenheit selten verbunden worden sind Sensorik mit eingebetteten Netzwerkkomponenten und Web Entwicklung Die grundlegende Idee der Web of Things WoT Dom ne ist Web basierte Interaktionen zwischen eingebetteten Ger ten zu erm gli chen Motivierend daf r ist die hohe Verbreitung und Offenheit der Web Infrastruktur Deswegen ba siert die Umsetzung der WoT Vision auf die Wiederverwendung der Infrastruktur und Web Standards wie beispielsweise HTTP XML und RSS Ein Teil der Web Infrastruktur ist von REST repr sentiert das genannte Antreiben anderer Ger te l sst sich durch die Bereitstellung von RESTful APIs abrufen Die Web of Things Prinzip Wieder 24 Verwandte Arbeiten verwendung der Web Infrastruktur ist f r diese Arbeit eine wichtige Inspirationsquelle wie es in dem kommenden Kapitel 5 auch beschrieben wird 2 7 REST und RESTful Web Services REpresentational St
140. em Controller werden bestimmte Vorg nge abgewickelt und dessen Ergebnisse weiter zu den Views eingereicht Dabei ver wendet der Controller die f r den Zweck der behandelten Aufgabe relevanten Modelle Im konkreten Fall wurden folgende Controllers definiert BackendCommunicationControllerBase In diesem Controller werden Vorg nge f r die Kom munikation mit dem Backend definiert Eingekapselt wird eine synchrone und asynchrone Art der Kommunikation mittels der Bibliotheken android async http sowie die in Android SDK einge bettete Bibliothek namens HTTP Clem dem Apache Projekt Bereitgestellt von diesem Controller sind Fehlerbehandlungen die Aktualisierung des Aktivit ts Symbols im Hauptmen die Generierung und Einbettung von HMAC Signaturen sowie ent sprechend die Zusendung der HTTP Anfragen Eine weitere Entwicklung im Rahmen dieses Controllers w re die Untersuchung anderer Biblio theken zur Steuerung von ausgehenden HTTP Anfragen engl Requests wie z B die leichtge wichtige vom Google Android Team entwickelte Bibliothek namens HttpUrlConnection Dieser alternative Weg k nnte aus Sicht der Performanz getestet werden eine Hypothese ist dass die Optimierung des Vorgangs anhand von Android spezifischen Konstrukten stattfindet Model Spezifische Controllers Des Weiteren wurden spezifische Handlers von REST Anfragen f r jedes Model s u entwickelt die die Ereignisse z B Anfrage schlug fehl Anfrage mit folgen
141. en Anwendung bermittelt Durch dieses Konzept wur de die h ufig eintretende Problematik der Integration verschiedener Softwarel sungen angegangen Dar ber hinaus sollte die L sung eine immer steigende Belastung an Mitteilungen aufrechterhalten VW12 An dieser Stelle kann das vorhersehbare Beispiel einer Anwendungsfall f r AMQP gegeben werden der Handel mit Aktien oder Trading Aus diesem Grund ist die geleistete Interoperabilit t ein nennenswerter Aspekt des AMQP Protokolls es k nnen AMQP konforme Systeme miteinander kommunizieren trotz technologischer Hetero genit t z B andere Ziel Plattformen Programmiersprachen Dar ber hinaus lassen sich beliebige Typen von Mitteilungen engl payload verschicken wie z B ein JSON Objekt eine String Wert bin re Inhalte oder sogar Medien VW12 Erforderlich f r die Kommunikation ist die Pr senz einer Bezeichnung engl label die den Na men des Exchange s u enth lt Die Aufgabe des Brokers ist m gliche Verbraucher anhand dieser Bezeichnung auszuw hlen und sie ber die Mitteilung zu informieren Die Benennung eines bestimm ten Empf ngers vom Erzeuger ist im Vergleich zum TCP Protokoll daher nicht ben tigt VW 12 Ein Empf nger wird wie gesagt vom Broker ausgew hlt Aus Sicht der Architektur wird ein Broker auch als Message Oriented Middleware bekannt ben tigt die die Kommunikation verwaltet Die Verwaltung bzw die Distribution oder Routing so wie die Persis
142. en Einzelteilen eines verteilten Systems und zwar ein System spielt die Rolle des Servers und stellt eine Reihe von Diensten zur Verf gung w hrend mehrere Clients sich zum Server verbinden und bestimmte Operationen auf den zug nglichen Diens ten ausf hren Die Dienste werden in Form von einzelnen RESTful Web Services angeboten die auf einem Web Server laufen und durch eine HTTP Verbindung zu erreichen sind Ein Web Service der die Be schr nkungen von REST siehe auch 7 einh lt wird als RESTful bezeichnet Die Operationen die ausgef hrt werden k nnen lassen sich unter der Bezeichnung CRUD zusammenfassen Das Akronym steht f r Create Read Update und Delete und stellt damit die wesentlichen verf gbaren Operatio nen zur Erstellung und Aktualisierung sowie zum Auslesen und L schen einer persistierten Ressource dar Die Verteilung in diesem Fall ist physisch aus dem Grund dass die Funktionalit ten des Clients und entsprechend des Servers auf verschiedenen End Ger ten ausgef hrt werden als End Ger t f r das Client kommt ein mobiles Betriebssystem wie z B Android infrage im Fall des Servers wird die Windows Plattform benutzt Dar ber hinaus k nnen die Systeme r umlich getrennt werden Wie in Kapitel 1 5 erl utert be finden sich im Normalfall das Client und der Server im selben Raum bzw in der Ziel Wohnung Eine Abweichung kann entstehen indem das mobile Client System die Wohnung verl sst und lokal gespeicherte
143. en Ger t Gegenstand 5 F gen Sie eine allgemein geltende Hausregel hinzu z B Nichtraucher Wohnung oder Kein L rm nach 23 Uhr empfindliche Nachbarschaft Als Wohnungsvermieter 1 Rufen Sie die Liste von verf gbaren Gegenst nden in der Wohnung ab 2 Versuchen Sie zu einem vorher modellierten Ger t Gegenstand zu navigieren Fazit Vielen Dank f r Ihre Mitarbeit Als N chstes w rde ich mich freuen wenn Sie sich noch kurz Zeit nehmen w rden zwei kleine Frageb gen zu beantworten CARL Mobile HomeSharing Anwendung OSSIETZKY Im Rahmen der Masterarbeit von Cosmin Pitu universitat Evaluation Fragebogen Fragebogen TLX Sub Scale End Points Description Mental Demand Low High How much mental and perceptual activity was required e g thinking deciding calculating remembering looking searching etc Was the task easy or demanding simple or complex exacting or forgiving Physical Demand Low High How much physical activity was required e g pushing pulling turning controlling activating etc Was the task easy or demanding slow or brisk slack or strenuous restful or laborious Temporal Demand Low High How much time pressure did you feel due to the rate or pace at which the tasks or task elements occurred Was the pace slow and leisurely or rapid and frantic Performance Good Poor How successful do you think you were in accomplishing the goals of the task set by the exp
144. en auch folgende Aspekte in einer Anforderungsdefintion vorhanden sein e Akteure sodass die Aktivit t von einer Entit t ausgef hrt wird m gliche Akteure w ren Das System selbst Verkn pft mit Benutzerinteraktion Verkn pft mit einem Objekt aus einem Fremdsystem e Die rechtliche Verbindlichkeit eine Formalisierung Optional Erg nzungspunkte der Aktivit t und zwar Subjekte die die Verrichtung unterst tzen Merkmale der Qualit tssicherung Qualit tseigenschaften Optional Weitere Randbedingungen wie z B Vorbedingung Ausl ser bspw ein Ereignis Unter Verwendung der aufgelisteten Kriterien lassen sich die folgende Kategorien von Anforde rungen unterscheiden 1 Pflichtanforderungen Schl sselwort Muss Hiermit werden Anforderungen beschrieben die unbedingt erf llt werden m ssen 2 Wunschanforderungen Schl sselwort Sollte oder Soll Anforderungen die erf llt werden sollten insofern die zeitliche Planung dies erlaubt bzw zul sst 3 Vorschlaganforderungen Schl sselwort Kann Diese Art von Anforderungen werden nur dann erf llt wenn alle andere Anforderungen erledigt sind anders gesagt falls die ben tigten Ressourcen verf gbar sind Durch diese Anforderungen werden normalerweise optionale Funk tionalit ten bedeckt Nachdem die meist verwendeten Grundregel f r die Formulierung von Anforderungen eingef hrt sind werden alle Arten von Anforderungen n her
145. en erstellt werden Dies geschieht anhand einer Beschreibung der Datentypen abgesonderter Attribute und Verbindungen zu anderen Relationen des Schematas Ein wichtiger an dieser Stelle zu beachtenden Aspekt ist die Einkapselung der Persistenz bezogenen Funktionen in eigenst ndigen REST Web Services welche z B f r jede Operation Create Read Up date Delete auf eine Ressource eine entsprechende HTTP Methode bereitstellt Dieser Aspekt ist ein Beispiel f r ein NonRealtimeService Details ber die Umsetzung dieses Aspektes lassen sich weiter aus dem Absatz 7 3 5lentnehmen Aus Sicht der Datenhaltung kann der Server auch Zugang zu einer nicht relationalen Datenbank bereitstellen Diese Datenbank ist f r den Umgang mit sehr schnell einkommenden sogenannten Echtzeit Daten relevant Wie im Fall der relationalen Datenbank wird eine Schnittstelle verwendet mit dem Zweck die Ausf hrung von CRUD Operationen zu erleichtern Die Softwareprodukte die f r die Umsetzung der Datenhaltung werden in 7 3 1 benannt W hrend die interne Kommunikation zwischen dem Server und den einzelnen f r die Datenhaltung zust ndigen Teilsystemen durch ORM Dienste realisiert wird l sst sich die eingehende Kommuni kation vom Client zum Server mittels des genannten Kommunikationsprotokolls n mlich HTTP realisieren Jeder Dienst kann nach au en eine Schnittstelle definieren in Form eines REST Web Services in eine Art und Weise die im kommenden Paragra
146. en zu k nnen Die genannte Art von impliziten Verkn pfungspunkten mit dem grundlegenden Kontext Modell bezieht sich darauf dass versucht wurde die Komplexit t der entwickelten Softwarel sung zu ver ringern Unter diesem Gesichtspunkt handelt es sich um implizites Wissen das im Datenmodell ent halten ist Die r umlichen Daten werden nicht durch einzelne Fakten wie im Paragraph 6 3 im Fall der beispielhaften Instanziierung dargestellt sondern sie werden durch eine Assoziation zwischen den teilnehmenden Klassen bzw Relationen aus Sicht des Datenbankmodells ausgepr gt Au er 7 2 Datenmodell f r Home Sharing 93 Location value Object 1 LocalizationMethod bestimmt werden Siehe Kontext Modell Diagramm SS anhand des Wertes eines Attributs found in Asset Definition possesses k annotated with Asset contains id Integer contains der Wohnung pame 1 Shing Sal El ee el i contains Lett description String n i AA InternalAsset may lt lt implement gt gt L is_visible boo ff i ExternalVenue dir
147. ent erkennt welcher Parser einzusetzen ist oder nicht im Fall von HTTP wird den MIME Type auch als media type bekannt explizit angegeben oder ob die Antwort noch zu entkomprimieren ist REST verwendet auch verschiedene Abstraktionen um die Systeme voneinander abzukoppeln die Clients erwarten nur die Antwort auf die verschickte Anfrage dem ausgew hlten Weg im System Das hei t die Existenz anderer Schichten ist dem Clients unbekannt Aus diesem Grund lassen sich Clients und Server individuell entwickeln unter Beibehaltung der Interoperabilit t bei einer unver 2 7 REST und RESTful Web Services 25 nderten Schnittstelle Eine weitere Einschr nkung ist die Verwendung von Zwischenspeicherung engl Caching behandelte Anfragen k nnen mit der Information bereichert werden ob sie f r die Zwischenspeicherung geeignet sind oder nicht Zu der Abstraktion oder Automatisierung des Kommunikationsvorgangs z hlt auch die Benut zung von Hypermedia wie beispielsweise Hyperlinks in einem Hypertext Deswegen soll eine Ant wort Referenzen zu weiter verkn pften Ressourcen oder noch verwendbaren Operationen zu dem ak tuellen Ressourcen Typ enthalten Dadurch wird der Vorgang automatisch gesteuert indem der Cli ent nur entlang der vorgeschlagenen weiteren Verkn pfungen navigieren sollte um sich der Antwort zur formulierten Anfrage zu n hern F r den Umgang mit Hypermedia werden in der Praxis soge nannte Hypertext Applicatio
148. er te oder Sensoren Dar ber hinaus sollten Anwendungen als Einsteckbausteine angesehen werden ihr Hinzuf gen sollte f r keinen Systemausfall bzw Systemneustart sorgen vgl EPRO6 e Transparente Verteilung BPP07 Die im Kontext Modell abzubildenden Sensoren k nnen phy sisch verteilt sein sodass sie nicht zu einem einzigen System verbinden k nnen Eine identische Eigenschaft pr gt die Anwendungen die das Kontext Modell benutzen m chten diese k nnen auf mehreren Ger ten laufen Die Transparenz in diesem Fall bezieht sich auf die Zustellung der ben tigten Kontext Informationen zu den Anwendungen es muss eine Trennung zwischen den Kontext Konsumenten und den Kontext Produzierenden engl separation of concerns entstehen sodass die Anwendungen keine direkte Aufsicht der Implementierungsdetails haben In wird vorgeschlagen die Komponenten des Kontext Modells unabh ngig von jener Anwendung zu entwerfen Verteilte Struktur SLPO4 Als eine abgeleitete Form von verteilten Systemen erben Ubiqui tous Computing Systeme dasselbe Paradigma der Mangel einer zentralen Instanz eines zentralen Systems das die Rolle des Supervisors bernimmt Somit m ssen kontextbewusste Systeme selbst f r die Erstellung Aufstellung sowie Wartung der einzelnen Meta Daten wie z B Be schreibungen des Kontextes durch ein Kontext Modell und Dienste zust ndig sein Automatisierung BPP07 Ein weiterer interessanter Aspekt des
149. erence org apache http client package summary html 7 4 Frontend 117 Diese berpr fungen basieren auf zwei Schnittstellen n mlich der IOnPrerequisiteCom pletedListener welcher eine Ruckruffunktion engl callback bereitstellt f r den Fall in dass die berpr fung zu Ende gekommen ist Au erdem steht derentsprechende IOnPrere quisiteUpdatingListener zur Verf gung um das View und implizit den Benutzer ber den aktuellen Fortschritt des berpr fungsvorgangs informieren zu k nnen Eine berpr fung Klasse erbt von der Basis Klasse PrerequisiteVerificationBase Weitere Controllers sind nicht eingef hrt diese werden eventuell nach einem erneuten Refactori sierungsdurchlauf ben tigt um z B den Umgang der Anwendung mit lokal vorhandener Sensorik zentral steuern zu k nnen durch z B ein HardwareSensorController Model Abgesehen davon dass die gesamte Architektur der Softwarel sung vorgestellt in Kapitel 5 sich aus verschiedenen Systemen zusammensetzt werden bestimmte Aspekte des Kontext Modells in ver schiedenen Orten gespeichert angezeigt und oder bearbeitet Im Fall des Datenmodells siehe auch Abschnitt 7 2 werden die einzelnen Modelle im Frontend erstellt und bef llt w hrend die entspre chende Persistierung dieser Modelle im Backend erfolgt Der umgekehrte Weg gilt auch die persis tierten Modelle lassen sich aus dem Backend bzw aus der Datenbank lesen und zu dem Frontend bertragen
150. eriment durchgef hrt bei den jeweiligen Probanden vor Ort in situ Durch diese L sungsansatz wurde versucht die Authentizit t des Home Sharing Erlebnisses beizubehalten durch diesen Ansatz lassen sich schon an dieser Stelle Fragen bez glich des Vertrau ens stellen wie etwa Warum w rde ich eine unbekannte Person in meine Wohnung rein lassen Diese Herangehensweise grenzt die Menge an m glichen Teilnehmer erheblich ein n mlich zu dem eigentlichen Freundeskreis des Evaluationsbeauftragters Diese Beschr nkung wurde trotzdem nicht als negativ bewertet wie bei der Zusammenfassung dieses Kapitels vorgestellt wird Die Anwerbung erfolgte per E Mail und enthielt einige einf hrenden Merkmale ber die Anwen dung als Ganzes sowie den Aspekt dass die Evaluation vor Ort erfolgen muss Dar ber hinaus wurde das einzige Auswahlkriterium erl utert es musste in der Wohnung eine WLAN Verbindung vorhanden sein sodass eine Verbindung zwischen Backend und Frontend m glich ist Die WLAN Verbindung steigerte auch die Mobilit t der Probanden bei der Benutzung des Systems somit wurde auch getestet ob die Anwendung sich wirklich mobil in der Wohnung bedienen l sst Schlie lich wurde in der E Mail erl utert dass die Evaluation keine andere Technik wie z B ein mobiles Ge r t erfordern w rde Es wurde zudem den Probanden empfohlen die Zugangsdaten zu der WLAN Verbindung m glicherweise aufzuschreiben sodass die anf ngli
151. erimenter or yourself How satisfied were you with your performance in accomplishing these goals Effort Low High How hard did you have to work mentally and physically to accomplish your level of performance Frustration Level Low High How insecure discouraged irritated stressed and annoyed versus secure gratified content relaxed and complacent did you feel during the task CARL Mobile HomeSharing Anwendung OSSIETZKY Im Rahmen der Masterarbeit von Cosmin Pitu universitat Evaluation Fragebogen Fragebogen TLX Participant Code Date Mental Demand How mentally demanding was the task Very low Very high Physical Demand How physically demanding was the task Very low Very high Temporal Demand How hurried or rushed was the pace of the task Very low Very high Performance How successful were you in accomplishing what you were asked to do I 1 Perfect Failure Effort How hard did you have to work to accomplish your level of performance a ER a a Very low Very high Frustration How insecure discouraged irritated stressed and annoyed were you ne re RR DE RE BE ER BE REIN Very low Very high PLEASE TURN PAGE OVER Mobile HomeSharing Anwendung Im Rahmen der Masterarbeit von Cosmin Pitu Fragebogen TLX Weights OSSIETZKY universitat OLDENBURG Evaluation Fragebogen In each pair of factors below which of the two do you think is more importa
152. ers die w hrend der Interaktion mit einem Produkt einem Dienst oder einer Umgebung erfasst oder beobachtet werden k nnen 5 4 Konzept zum Nutzungserlebnis UX 67 Das beachteter deutsch internationale Blog Smashing Magazine definiert User Experience in dem Artikel What is User Experience Design Overview Tools and Resources P folgenderma en UX beschreibt wie sich ein Benutzer bei der Benutzung eines bestimmten Systems f hlt Anscheinend abstrakt fasst diese Definition mehrere verbundene Dom nen die in der Abbildung B 6 bekanntlich gemacht werden Eine haupts chliche Komponente des UX Begriffs ist Usability dieser Begriff stammt aus dem Englischen und setzt sich aus zwei Worten zusammen to use benutzen und the ability die F hig keit bersetzt wird der Begriff mit Gebrauchstauglichkeit oder auch Brauchbarkeit H ufig werden User Experience und Gebrauchstauglichkeit als Synonyme interpretiert obwohl sie zwei verschiedene Felder des Gebiets Mensch Maschine Interaktion bezeichnen Trotzdem spielt Gebrauchstauglichkeit auch eine wesentliche Rolle in der User Experience zusammen mit anderen Disziplinen wie z B Information Architecture Eine bersicht der breiten Dom ne von UX wird in der folgenden Veranschaulichung gegeben Usability Human Factors Design Utility HCI Accessibility Marketing Ergonomics System Performance Abbildung 5 6 berblick der verwandten Dom ne im UX Umfe
153. erschiedene Archive verlagert werden sodass verschiedene Schnappsch sse der gespeicherten Informationen erstellt werden k nnen Dieser Aspekt ist relevant da die Kontext Informationen nor malerweise nur f r ein begrenztes Zeitintervall gespeichert werden sofern sie berhaupt gespeichert werden Weiterhin befasst sich der Entdeckungs Dienst mit der m glichst automatischen Erweiterung der zun chst statisch gelagerten Kontext Informationen bez glich der Umgebung in der das Kontext Modell eingesetzt wird Diese Erweiterung erzielt das Hinzuf gen von neuen Widgets s u oder Services die nur zur Laufzeit in die Umgebung eingef gt worden sind In diesem Fall ist eventuell ei ne Aktualisierung der laufenden Software erforderlich da die Software h chstwahrscheinlich mit den unerwarteten neuen Diensten nicht umgehen kann F r die Bereitstellung dieser Funktionalit t wurde das Kontext Modell mit zwei verschiedenen Methoden der Entdeckung versehen ein auf pREST basierender Mechanismus siehe auch P 7 1 sowie ein objektorientierter Mechanismus welcher die 6 2 Definition eines Kontext Modells 87 dynamischen F higkeiten der Programmiersprache Ruby benutzt f r Implementierungsdetails siehe dazu auch 7 3 5 Der letzte Dienst repr sentiert ein allgemeines Verfahren zur Definition von Anpassungen bzw Reaktionen auf allgemein auftretende Ereignisse im Kontext Modell Hiermit wird ber Ereignisse
154. ervall f r AR die Beschreibung ablaufender Verl ufe en In den folgenden Abschnitten wird auf die Bestandteile des Mo dells einzeln eingegangen Zudem wird ein entsprechender Bezug zu den Anforderungen an ein Kontext Modell hergestellt Abbildung 6 4 Datentypen des Kontext Modells 6 2 2 Modell In diesem Abschnitt werden die Bestandteile des Kontext Modells eingef hrt welche Funktionen wie Datenerfassung und beschreibung umsetzen k nnen Als Startpunkt wird die Repr sentation von Kontext Information im Rahmen des Kontextes vorgestellt Erfassung Interpretation und Aggregation von Kontext Informationen Ein Hauptthema des entwickelten Kontext Modells ist die Erfassung von Kontext Informationen in der Fachsprache auch als Fakten bekannt aus der umgebenden auf dem Frontend vorhandenen Sensorik Zu diesem Zweck ist die Idee der Erstellung von spezifischen Widgets aus ber nommen ein Widget repr sentiert eine Kapselung der Funktionalit t eines Sensors welche durch eine Schnittstelle repr sentiert wird Sensor Die Schnittstelle ist f r einen bestimmten Sensor ein deutig und kann beispielsweise Methoden rund um das Auslesen der Datenstr me enthalten Dar ber hinaus lassen sich Widgets zu einer Hierarchie organisieren sodass die M glichkeit entsteht z B eine bestimmte Kontext Information anhand eines Durchlaufs der Hierarchie zu erfassen jeweils mit Teil Informationen von jedem Knoten diese Prozedur wird als
155. erwandter Dom nen wie Ambient Intelligence oder Internet of Things ausgepr gt Zugleich bestimmen die Ideen dieser zentralen Dom ne in hohem Ma e die grundlegenden Konzepte dieser Arbeit 14 Verwandte Arbeiten 2 2 Ambient Intelligence Aml Ambient Intelligence stellt sich vor als ein Konvergenzpunkt mehrerer Ideen aus dem Ubiquitous Computing und repr sentiert zugleich der Basis f r Ambient Assisted Living In wird der Zusammenhang der verschiedenen Bereichen oder Teilkonzepte aus Ambient Intelligence AmI erl utert der Konzept von AmI wird durch die Bereitstellung von ubiquit ren Computing s u ubiquit ren Kommunikation ein universeller standortsunabh ngiger Zugang zu einer Computing und Netzwerkinfrastruktur sowie der Einsatz intelligenter anpassungsf higer Benutzersoberfl chen engl intelligent user adaptive Interfaces realisiert Die h ufig verwendeten Begriffe ambient sowie ubiquit r lassen sich anhand von wie folgt erkl ren im Fall von ambient oder dt umgebend gilt die folgende W rterbuch Definition aus allen Seiten vorhanden engl existing or present on all sides Die Idee hinter Ubiquit t oder Allgegenwart beschreibt die Existenz eines oder derselben Gegenstandes berall innerhalb eines definiertes Raumes wie z B die Existenz verschiedener Sensoren in einer Smart Home Umge bung In wird motiviert dass die Konvergenz von Informationen Kommunikatio
156. es Data Liberation Vorgangs ist die Bereitstellung der exportierten Daten in ein m glichst offenes portables Format um die Interoperabilit t des Ergebnisses gew hrleisten zu k nnen In diesem Fall wird es von einem allgemeinen Datenexport der Datenbank gesprochen das bliche Format ist eine SQL Datei die aus mehreren DDL Befehlen wie CREATE TABLE sowie INSERT INTO besteht Dadurch bleibt nur die Erf llung der Interoperabilit t im Fall des PostgreSQL Datenbanksystems m ssen einige Aspekte mitber cksichtigt werden wie z B die Ver meidung des eigenen COPY schnellere PostgreSQL spezifische Variante vom INSERT INTO Befehls Die Analyse vorhandener L sungen zu einem Ruby unterst tzten Datenbank Export haben ge zeigt dass entweder die Werkzeuge nur f r UNIX hnliche Betriebssysteme anwendbar sind wie im Fall des Backup Gems oder dass sie nur mit einer spezifischen ORM in diesem Fall ActiveR ecord bekannt als Teil des Ruby on Rails Web Framework auszuf hren sind der Fall bei dem p g_dumper Gem Zu diesem Zweck wurde ein eigenes Kommandozeile basiertes Ruby Programm entwickelt wel ches das mit PostgreSQL mitgelieferte Werkzeug pg_dump aufruft und den Datenexport ausf hrt Die Funktionsweise ist die folgende mit der bergabe des Namens der Datenbank siehe auch 7 3 1 werden die Zugangsparameter bestimmt Benutzername Name der zu exportierenden Datenbank welche die Datenmodell enth
157. etails ber die Situationen in denen diese Hilfskomponente n tig sind werden im Paragraph 7 4 2 gegeben e Dar ber hinaus wurde eine Komponente namens SwipeView an einer open source Komponente angelehnt und deren Hilfsklassen SwipeViewPopulate sowie SwipeViewNavigate zur Navigation in einer verschachtelten Datenstruktur wie z B eine Baum Struktur entwickelt Diese Komponente erm glicht mithilfe von Gesten wie z B einer Swipe Geste eine Bewegung durch die implizit dargestellte Hierarchie Der Anwendungsfall f r diese Komponente wird im Paragraph genannt e Weiterhin wurde eine Komponente f r die Darstellung eines Buttons f r das Dashboard siehe auch 7 4 2 und eine dazugeh rige Anzahl von ungelesenen Ereignissen bereitgestellt Schlie lich ist eine Komponente zum visuellen Feedback ber den Fortschritt eines asynchronen Vorgangs nennenswert Eine bersicht der einzelnen entwickelten Activities und ihrer dazugeh rigen Funktionalit t und Zielsetzung wird in verschafft An dieser Stelle zu bemerken ist die Verwendung einer einheitlichen an die aktuellen Entwick lungen des Android Designs n mlich die Einf hrung des Holo Designs und der ActionBar Komponente ab Android Version 3 0 angepassten visuellen Darstellung Zu diesem Zweck wurde die Bibliothek namens ActionBarSherlock angewendet Dies liegt wesentlich darin begr n det fortgeschrittene Konzepte der neuen Versionen der Android Plattform wie
158. fangen sollte 8 5 2 Bearbeitung der Aufgaben der Wohnungseigent mer Anwendung Die Ausf hrung der Aufgaben beginnt wenn die Anwendung von dem App Drawer ge ffnet ist Es wird dabei ggf die WLAN Option angeschaltet und die Anwendung versucht sich mit dem lokalen Netzwerk zu verbinden Von diesem Punkt an sind die Aktionen der Probanden angefragt die zu der eventuellen L sung der gestellten Aufgaben f hren k nnen Nachdem die Aufgaben bez glich der Wohnungseigent mer Anwendung durchgef hrt worden sind mussten die im Paragraph 8 5 1 genannten Schritte zur Initialisierung erneut durchgef hrt wer den dieses Mal f r die Initialisierung der Wohnungsmieter Anwendung Die im vorherigen Abschnitt genannte Prozedur zur ffnung der diesmal Wohnungsmieter Anwendung werden wiederholt Schlie lich werden diejenige f r die Mieter gestellten Aufgaben durchhgef hrt und somit fand die Ausf hrung der Aufgaben auf dem mobilen Ger t Ende Die n chste vom Proband durchzuf hrende Aktion war die Ausf llung der Frageb gen welche im n chsten Paragraph behandelt wird 8 5 3 Erfassung der Metriken F r die Erfassung von Metriken bez glich verschiedener mentalen Faktoren wie z B Frustration oder geistige Anforderung wurde das Fragebogen namens NASA TLX benutzt Anhand die ses Testes kann festgestellt werden aus welcher Parameter sich die selbst ermittelte Beurteilung der Arbeitsbelastung zusammensetzt 8 6 Analyse der Ergebnisse 129
159. formationen gew hrleisten AF F 1 6 Das Backend muss Erweiterungen an dem vorhandenen Basis Kontextmodell erlauben AF F 1 7 Das Backend muss mit geographischen Daten umgehen k nnen AF F 1 8 Das Backend muss die Sicherheitskonzepte umsetzen AF F 1 9 Das Backend soll eine Schnittstelle f r den Kommunikationska nal und die Distribution von Kontext Elementen bereitstellen AF F 1 10 Das Backend soll in einer m glichst schnellen Weise Antworte zu gleichzeitigen Anfragen abliefern AF F 1 11 Das Backend soll automatisiert Einstellungen in dem Frontend in der Vorbereitungsphase ab ndern k nnen Tabelle 4 1 Funktionale Anforderungen am Backend 4 3 1 2 Mobile Anwendungen Frontend Die folgenden Anforderungen beziehen sich auf der Frontend Komponente welcher Struktur bzw Architektur in dem folgenden Kapitel vorgestellt wird Die beschriebene Aktivit t ist in die sem Fall der Normalbetrieb bzw die Benutzung der Anwendungen f r Wohnungseigent mer sowie Wohnungsmieter Identifikationsnummer Anforderung AF F 2 1 Das Frontend muss mit dem Backend kommunizieren k nnen m ssen sich im selben Netz befinden AF F 2 2 Das Frontend muss den Sicherheitskonzepte entsprechen AF F 2 3 Das Frontend muss die allererste Benutzung des Apps erkennen k nnen 48 Anforderungserhebung AF F 2 4 Das Frontend soll die Erstellung eines Nutzerprofils anbieten AF F 2 5 Das Fron
160. formen Form gebracht sind Als letztes erfolgt die Speicherung in der Datenbank Nachdem den urspr nglichen Datenbestand in der Datenbank gespeichert ist m ssen sich gewisse Konfigurationsvorg nge ausgef hrt werden eine Thematik die in den kommenden Abschnitte behan delt wird 7 3 3 Konfiguration des Server und Anwendungszugangs Die aufwendige Aufstellung und Installationsvorg nge sind aus der Welt der Smart Home Tech nologien bekannt wo sich der Aufwand der Konfiguration als eine erhebliche Herausforderungen zur breiteren kommerziellen Einf hrung der Technologie herausstellt RQBAO9 Daf r ist eine der Zielsetzungen der entwickelten Softwarel sung eine m glichst schnelle und einwandfreie Konfiguration des Servers bzw des Backend Systems anzubieten Zu diesem Zweck wurden Kommandozeile basierten Werkzeuge entwickelt die dieser Vorgang der ersten Konfigurati on automatisieren Diese Werkzeuge werden als n chstes vorgestellt Das erste Werkzeug ist f r die Aktualisierung der IP Adresse des Servers zust ndig Der Ziel dieses Werkzeuges ist die erste registrierte lokale IP des aufrufenden Rechners zu bernehmen und diese in den Konfigurationsdateien des Frontend und Backend Systems zu aktualisieren Damit wird si chergestellt dass das Backend auf der vom Frontend angesprochenen IP Adresse lauscht und dass das Frontend eine Verbindung mit der richtigen IP Adresse versuchen wird Eine m gliche Erwei 102 Umsetzung de
161. g laufen wo der Typ und Anzahl der verschiedenen Ger te begrenzt ist 18 Verwandte Arbeiten Wenn aber in der Praxis hunderte von verschiedenen Ger te verwendet werden die auf verschiedenen Betriebs und Laufzeitumgebungen ausgef hrt werden verbleibt das entwickelte System gr enteils nicht v llig funktionsf hig Diese Problematik ist auch in der bergeordneten Dom ne von Ubiquitous Computing bekannt eine zitierte Studie aus derselben Arbeit benennt im Jahr 2004 ebensoviel wie 29 un terschiedliche Plattformen f r die Entwicklung von Ubiquitous Computing Anwendungen Dieser Ph nomen wurde in beschrieben als nur die Handhabung verschiedener Inseln der Funktionalit t aber noch keine richtige integrierte L sung Trotz dieser Schwierigkeiten werden in der letzten Zeit vorhandene Prinzipien der Dom ne Web of Things f r Smart Home Technologien wiederverwendet in KTP11 und IPGS 11 wird ber die Entwicklung von Web orientierten Smart Home Technologien berichtet Die Einf hrung Web basierter Technologien in die Smart Home Dom ne kommt als eine m g liche L sung zu der vorher genannten Problematik der Interoperabilit t durch einheitliche standar disierte Schnittstellen wie z B HTTP XML k nnen viele heterogene Systeme miteinander Informa tionen austauschen Durch den Einsatz von Sende Empfangsger te k nnen ber Web Technologien komplexere Systemen aufgebaut werden auch wenn nicht alle Ger te ei
162. gang des Ausle S https github com toretore barby 7 4 Frontend 115 sens und die Benutzung dieser Konfigurationsdateien automatisiert Als Format f r die Speicherung der einzelnen Dateien wurde YAML ausgew hlt aufgrund guter Lesbarkeit und vereinfachter Lese Mechanismen Zugleich wurden einige Vereinbarungen definiert die z B die Pr senz einer Konfigurationsda tei per Default unter dem Ordner config in der Projektstruktur mit der jeweiligen Dateimaske lt NameDerKlasse gt yaml regeln Diese Vereinbarungen erm glichen eine automatische Aus wertung einer Konfigurationsdatei es wird gezielt nach der entsprechenden Konfigurationsdatei in der Projektstruktur gesucht mit einer Toleranz von h chstens einem Niveau Bei der Einbeziehung einer Konfigurationsdatei in der Klasse My Test Cls wird beispiels weise unter dem Pfad config my test nach einer Datei namens cls yaml gesucht Wenn die Datei YAML konform ist lassen sich die ggf gespeicherten Einstellungen mittels der Methode get_configuration in der Klasse Cls abrufen Die genannte Methode wird per Metaprogrammie rung in der Cls Klasse dynamisch definiert 7 3 7 Zusammenfassung In diesem Unterkapitel ist die Umsetzung der wesentlichen Funktionalit ten der Backend Kom ponente aus der Softwarel sung ausf hrlich vorgestellt worden Damit ist die technische Infrastruktur bereitgestellt die f r die Umsetzung des Hauptkonzeptes dieser Arbeit erforderl
163. ge Uniform resource identifier Coordinated Universal Time User Experience Visual Display Terminals Value Object Web Application Description Language Wireless LAN Web Service Description Language Wireless Sensor Network XML Metadata Interchange Extensible Markup Language YAML Ain t Markup Language Yay A Ruby Documentation Tool 141 2 1 berblick der verschiedenen Technologien der Indoor und Outdoor Lokalisierung Radi cok HS ran EC 20 2 2 berblick der Architektur von The Internet of Things IoT Quelle Angelehnt an Doul2 2 22 ccm ee ee 22 2 3 Erweiterter Kontext engl Large Context Quelle angelehnt an Meh12 3 1 Die grundlegenden Abl ufe oder Phasen im System 2222200 37 4 1 Eine Schablone f r die Feststellung bzw Formulierung von Software Anforderungen Quelle Angeletint an Rup09 ege sr rn Rena une 45 4 2 Entwicklungshierarchie von Ubiquitous Computing Systeme Quelle catia ool 5 1 berblick der Architekturl 22 222 o 56 Quelle Angelehnt an http rubyamgp info articles getting_started 62 EE 64 5 4 Grundlegende Architektur einer Anwendung f r die Android Plattform Quelle ACSO9 65 5 5 Model View Controller Architekturmuster in Android Quelle RLBIO 66 5 6 berblick der verwandten Dom ne im UX Umfeld 67 BEIM RR p aaa araa EES nn en a ee 69 5 8 GUI Mockup Splash Screen und Dashboard 72 5 9 GUI Mockup
164. gen Bausteine f r die letztendliche Gestaltung Umsetzung und Evaluation der in der Forschungsfrage genannten Aspekte 1 5 Motivation In diesem Abschnitt werden die zentralen Konzepte dieser Arbeit vorgestellt welche aus Sicht der Benutzer deren Stories und Use Cases des Entwurfs und Umsetzung weiter benutzt werden 1 5 Motivation 7 1 5 1 Unterst tzung des Home Sharing Ein erster Motivationsfaktor dieser Arbeit wird von der Dom ne repr sentiert in der die vorzustel lenden Konzepte umgesetzt werden Home Sharing welche einer der erfolgreichsten Branchen des Sharing Economy siehe auch ist Unter Home Sharing wird ein Marktplatz f r Wohnun gen verstanden Diese Arbeit schl gt eine m gliche Erweiterung des grundlegenden Szenarios dieser Branche vor der genauere Konzept dazu wird im Laufe dieses Abschnittes vorgestellt Das Kernkonzept der Arbeit umschlie t wie erl utert die Vorg nge von Home Sharing legend den Fokus auf die Mietphase Dadurch wird das Einleben der neuen Mieter technologisch unterst tzt indem eine mobile Softwarel sung zur Verf gung gestellt wird die zusammen mit einem Server System ein Backend arbeitet Eine m gliche Definition des Home Sharing Erlebnisses k nnte die Folgende sein die M g lichkeit eine Wohnung zu suchen und auszuw hlen mit der Zusage des Wohnungseigent mers an reisen unter Beachtung der vereinbarten Hausregeln und allgemeinen Gesch ftsbedingungen
165. geordnet Des Weiteren k nnen im Fall von ExternalVenue Klassen auch Wegbeschreibungen annotiert werden Zudem erm glicht ein InternalAsset die Ausblendung bzw nicht Ver ffentlichung eines bestimmten Gegenstandes und die Erfassung verschiedener Attri bute siehe unten 94 Umsetzung des Prototyps Weiter kann ein InternalAsset ineinRealAsset oderinein VirtualAsset siehe n chs ten Paragraph unterteilt werden Die Modellierung als RealAsset erlaubt die Darstellung verschie dener Gegenst nde in einer hierarchischen Struktur und die Zuweisung einer bestimmten Kategorie oder mehrerer Kategorien z B in Form verschiedener Tags mittels der Klasse AssetCategory Dar ber hinaus wurde die Schnittstelle IAssetLogic modelliert sodass ein Hinweis darauf gege ben wird dass ein Gegenstand auch mit einer bestimmten Logik in derjenigen Anwendung die das Datenmodell umsetzt eingeplant werden kann Weiterhin besteht im Rahmen des Home Sharing Szenarios der Bedarf ein zentrales Element CentralElement statisch modellieren zu k nnen in diesem Fall wird das zentrale Element durch eine Wohnung repr sentiert Die Instanzen der Klasse InternalAsset sowie die Instanzen der Klasse AssetCategory unterst tzen die Definition von beliebigen Eigenschaften anhand der Klasse AttributeSet und implizit der Klasse Attribute Durch diesen Mechanismus k nnen Eigenschaften wie z B die Wohnfl che f r jede Art von Raum oder die Mobili
166. gl cues oder allgemeiner Kontext bekannt erleichtern diese Hilfsmittel die Aufgabe der Kommunikationspartner einen gemeinsamen Nenner in der Kommuni kation engl common ground grounding zu finden DAOO Die bestimmende Definition von Kontext wurde 2000 von Dey formuliert Unter Kontext versteht man irgendwelche Information die verwendet werden kann um die Situation einer Entit t zu be schreiben DAOO In diesem Fall lassen sich mit dem Ausdruck Entit t verschiedene Elemente einbeziehen wie Personen Orte oder Objekte die f r die Interaktion zwischen Benutzer und An wendung Maschine als relevant angesehen werden k nnen Weiterhin geh ren zu diesem Begriff sowohl der Benutzer als auch die Anwendung Diese Definition von Kontext kann im Fall der Mensch Maschine Interaktion kaum angewen det werden haupts chlich aus dem Grund dass fast kein gemeinsamer Kontext zwischen den Han delnden etabliert wird Zwar k nnen von der menschlichen Seite nat rlich Elemente des Kontextes wie z B Gesten Zeichen der Frustration oder Verwirrung bereitgestellt werden aber die Erkennung oder Wahrnehmung dieser Hinweise kann von einem Rechnersystem nicht automatisch erfolgen DA00I Diese ersten erkannten Dimensionen von Kontext wurden in zusammengefasst Identi t t Wer Aktivit t Was Zeit Wann Standort Wo Weiterhin lassen sich diese Erkenntnisse in der folgenden Formel ausdr cken Wer Was Wann Wo Wa
167. gt sich als zentrale Komponente von Context Aware Computing eine Disziplin die in folgen derma en definiert wurde Context Aware Computing befasst sich mit der Entwicklung von Software die den st ndig ver ndernden Kontext eines Individuums untersucht und darauf reagiert Weiterhin wird in Sat02 Kontext Bewusstsein als ein zentrales Thema in der Entwicklung von ubiquit ren Systemen vorgestellt hiermit wird den Aspekt vorgestellt dass ein System das anstrebt minimalinvasiv zu sein muss auch kontextbewusst sein In der Tat hat sich Kontext Bewusstsein in der letzten Zeit im Forschungsgebiet von Ubiquit ren Computing als eine zentrale Technik gezeigt Insbesondere ist diese Auspr gung f r die Adaption mobiler Anwendungen wichtig hiermit werden F higkeiten in den Endger te eingebettet die es er lauben sich automatisch der Umgebung anzupassen Eine Folge dieser Automatisierung w re dass die expliziten Anleitungen des Anwenders nicht mehr n tig sind Das automatisierte Verhalten enth lt eine erste Phase der Beobachtung der Umgebung die als Er gebnis die abgeleiteten Informationen wie die aktuelle r umliche Lokation und Aktivit t des Be nutzers oder die aktuell verf gbaren Ressourcen zur ckgeliefert Des Weiteren findet der Schritt der Anpassung statt in dem eine Aktion anhand des wahrgenommenen Kontextes ausgef hrt wird HIMOS S mtliche abgeleiteten Informationen sind unter dem Begriff Kontext Info
168. hicht die die Verwaltung der angekommenen versandten und zu persisitieren den Mitteilungen bernimmt und ausf hrt Weitere Informationen ber die Umsetzung werden im Paragraph eingegangen 10 Einleitung 1 5 5 Sicherheitskonzept Datensicherheit spielt im Konzept eine wichtige Rolle weil pers nliche Daten gespeichert werden wie z B die Adresse oder separate Merkmale der Wohnung sowie eventuelle Daten ber Buchungen oder die Profile der Wohnungsmieter Dar ber hinaus erfolgt die Kommunikation zwischen die Cli ent s und dem Server in der Wohnung ber einen m glich unsicheren Netzwerk normalerweise eine WLAN Verbindung Aus diesem Gr nden lassen sich folgende Ziele hinsichtlich der Sicherheit der Softwarel sung aus identifizieren e Vertraulichkeit bertragene und gespeicherten Daten sollen nur berechtigten Instanzen zug ng lich sein In erster Linie zu bedenken ist an dieser Stelle die sichere Persistierung der Daten e Teilnehmerauthentizit t Dieses Ziel beschreibt die Gewissheit dass der Kommunikationspart ner tats chlich derjenige sein sollte f r den er sich ausgibt e Nachrichtenauthentizit t engl Message Authenticity auch als Datenintegrit t bekannt re pr sentiert die Gewissheit dass es nicht m glich ist die bertragenen Daten unautorisiert und unbemerkt zu manipulieren e Datenintegrit t Ein weiteres Sicherheitsziel der von MACs unterst tzt wird ist die Datenintegri t t Dieses Prinzi
169. hrichtenauthentizit t Dieses Ziel wird mithilfe von Message Authentication Codes MACs erreicht Bekannt aus dem TLS SSL Protokoll ist die Verwendung von MACs die auf kryptographischen Hashfunktionen ba sieren Ein Beispiel an dieser Stelle w re HMAC die als grundlegender Prinzip der Teilung einer privaten Schl ssel zwischen den in der Kommunikation beteiligten Parteien eingesetzt wird Im Fall der aktuellen Softwarel sung wird jeden Austausch zwischen Client und Server mittels einer HMAC signiert und an dem Empf ngerseite berpr ft Somit wird sichergestellt dass eine HTTP Anfrage die eventuelle Sch den zuf gen Kann wie z B das L schen bestimmter Daten nur von berechtigten Teilnehmer ausgef hrt werden kann Weitere Details werden im Abschnitt 7 3 5 diskutiert Datenintegrit t Die vorherige Umsetzung des Prinzips Nachrichtenauthentizit t nennt Message Authentication Codes als einen verwendeten Baustein Zus tzlich zu der Etablierung der Nachrichtenauthentizit t dient eine MAC zudem zur Gew hrleistung der Datenintegrit t Daf r wird zus tzlich bei der Benut zung des HMAC Signaturverfahrens eine andere Hashfunktion f r die Bestimmung der Dateninte grit t der zu verschickenden Mitteilung generiert und mitversendet Wenn durch die erneute Berechnung der Hashfunktion Wert f r die entgegengenommenen Daten keinen Unterschied zu der mitverschickten Wert zu bemerken ist dann ist bei der bersendung der
170. ich ist Die Integra tion des Backends in die gesamte Softwarel sung erfolgt mit der Umsetzung und Bereitstellung von mobilen Anwendungen f r den Wohnungseigent mer sowie f r die Wohnungsmieter Die Umset zung der Frontend bzw der mobilen Komponente ist das Thema welches im kommenden Absatz behandelt wird 7 4 Frontend Die weiteren Systemen die im gesamten Konzept der Softwarel sung eine Rolle spielen sind von den mobilen auf der Android Plattform entwickelten Anwendungen repr sentiert In diesem Abschnitt werden die zwei Anwendungen aus Sicht ihrer Umsetzung vorgestellt 7 4 1 Architektur Die Architektur des Frontends orientiert sich an dem klassischen MVC Model View Controller Architekturmuster Hiermit werden Views Aktivit ten und Layouts dargestellt die deren Verh lt nisse in Controllers z B ein Controller f r die Kommunikation mit dem Backend einkapseln F r die lokale tempor re Persistierung der bertragungsdaten werden leichte Modelle eingesetzt die nur Werte der einzelnen richtigen Modelle enthalten in der SOA Terminologie werden diese Typen von Objekten als Value Objects VOs angesehen Somit werden in den Modellen nur Funktionen rund um die Serialisierung der Daten angeboten 116 Umsetzung des Prototyps Controller Ein erster wichtiger Bestandteil der Architektur wird von den Controllers repr sentiert Die Auf gaben eines Controllers bewegen sich im Umfeld der Daten Kontrolle in ein
171. ienste die mittels einer REST kompatiblen Schnittstelle den Clients Funktionalit ten anbietet Jeder Dienst beh lt Zu griff auf mehreren Unterkomponenten des Servers die demn chst eingegangen werden Ein erster 5 2 Server Architektur und Funktionalit t 57 Dienst ist von der Persistenz Komponente repr sentiert welche die vom Client entgegengenomme nen Datenbest nde sichert Speicherung des Datenbestandes Als Hauptkomponente f r die Speicherung des Datenbestandes bietet der Server eine Komponente die Daten persistieren bearbeiten und auslesen kann Damit wird der Zugang zu einem relationalen Datenbanksystem erm glicht welches CRUD Operationen ausf hren kann Die Schnittstelle zwischen dem Server und dem Datenbanksystem wird von einer ORM Kom ponente gew hrleistet ORM steht f r Object Relational Mapping und beschreibt einen Dienst der eine beidseitige Verbindung zwischen einem bestimmten Eintrag in der Datenbank und dessen Re pr sentation als Objekt bzw Instanz in einer Objekt orientierten Programmiersprache herstellt Eine Schreibvariante des Akronyms ist auch O RM um den Unterschied zwischen Object Relational Map ping und Object Role Mapping deutlicher zu machen Vorteilhaft an der Verwendung eines ORM Dienstes ist die Einbettung gewisser Verbindungen und Eigenschaften oder Attributen der Ressource in eine einheitliche Komponente bzw Klasse Weiterhin k nnen mithilfe fortgeschrittener ORM Dienste Relationen im Ganz
172. ienstes ActionServicel erstellt und eventuell angezeigt wird Schlie lich werden Metadaten wie z B die Herkunft der einzelnen Kontext Informationen durch Klassen wie LightPerceptor_Source und HTC_Desire_Source erfasst 6 4 Zusammenfassung In diesem Kapitel wurde einer der zentralen Beitr ge dieser Arbeit vorgestellt das Kontext Modell Mit diesem Konzept k nnen verschiedene konkrete Szenarien s u umgesetzt werden die ein Netz von kontextbewussten Anwendungen und von in der Umgebung eingebetteten Sensorik beschreiben k nnen Dieses Netz kann zusammen mit der ben tigten Darstellungen von Kontext Informationen zu der Generierung von kontextbezogenen Anpassungen f hren kann Bestandteile und Konzepte dieses Modells wurden prototypisch eingesetzt zur Umsetzung eines Smart Home Sharing Szenarios Die daf r entwickelte Anwendung wird im n chsten Kapitel aus Sicht der Implementierung vorgestellt 91 In diesem Kapitel wird vorgestellt wie die Umsetzung der beschriebenen Konzepte in Form eines Prototyps realisiert ist Die entstehende Softwarel sung bzw der Prototyp setzt sich aus den zwei genannten Teilen zusammen dem Backend sowie dem Frontend auf welche in diesem Kapitel n her eingegangen wird Als Erstes wird aber ein kurzer berblick ber das Konzept Quelltextqualit t gegeben 7 1 Allgemeine Merkmale der Quelltextqualit t Unter Ber cksichtigung der Merkmale der Quelltextqualit t wurde bei der
173. ieter herstellt ber den Dienst leister laufen z B die Buchungen und die ersten Vereinbarungen zwischen den zwei Gruppen e Wohnungsmieter Der Wohnungsmieter mietet die Wohnung des Wohnungseigent mers f r einen gewissen normalerweise k rzeren Zeitabschnitt beispielsweise einige Tagen bis zu einem Mo nat Die Akteure interagieren aus Sicht der Anwendung und der User Stories in einer offenem Umge bung die aber r umlich begrenzt ist Die Umgebung in der diese Stories entfalten besteht aus der folgendem Bestandteile e Wohnung Die Wohnung ist vom System als ein r umlich begrenzten Raum angesehen In die sem Raum werden die meisten Interaktionen zwischen den Akteuren stattfinden Es wird zwischen einer blichen Wohnung und einer Smart Wohnung unterschiedet Die Smart Home kann erweiterte Interaktionsm glichkeiten anbieten wie z B eine automatisierte Regelung der Tem peratur und Feuchtigkeit oder des Lichtsystemes automatische Entdeckung von unerwarteten Ereignisse wie ein Gasaustritt oder eine Gel nde berwachung Dar ber hinaus bieten Smart Ho me Umgebungen personalisierte Entertainment Pr senz Erkennung und Assistenzsysteme die anhand der installierten Sensorik den Einwohnern Vorschl ge generieren k nnen oder sogar in tiefgehenden Situationen intelligent agieren bzw eingreifen k nnen e Umgebung Relativ zu der eigentlichen Wohnung k nnen auch Bestandteile der Umgebung be trachtet we
174. im Hinter grund behandelt bzw gelagert werden sodass der Nutzer nicht beeintr chtigt oder verwirrt wird Die verwendeten Logging Werkzeuge sind im Fall des Frontends mit der Android Plattform mit geliefert w hrend im Fall des Backends wurde das Werkzeug namens Log4r eine Umsetzung der Log4j Konzepten aus der Java Welt in Ruby umgesetzt und bzw erweitert wurde e Behaviour Driven Development GD Im Fall des Backends wurden Prinzipien rund um die verhaltensgetriebene Softwareentwicklung eingesetzt Bei der Verwendung der verhaltensgetrie benen Softwareentwicklung wird gepr ft ob die Ziele z B die Anforderungen des Software produkts erreicht werden k nnen Zu diesem Zweck wird eine Spezifikation engl specification Kurzform spec erstellt in der das erwartete Verhalten des Quelltextes kurz beschrieben wird In ihrer rein textuellen Form beschreibt eine Spezifikation das Verhalten mithilfe von Vorausgesetzt dass erf llt ist beim Auftritt dieses Ereignisses muss dies folgenderma en behandelt wer den engl Given When Then S tzen Hiermit k nnen auch die Stakeholders mit bei Ein in Java eingesetzt aber an weiteren Sprachen angelehntes Format f r die textuelle Dokumentation vom Quelltext YARD Yay A Ruby Documentation Tool http www yardoc org 7 Einf hrung in BDD http dannorth net introducing bdd 92 Umsetzung des Prototyps der Erstellung solcher Spezifikationen mitein
175. iner graphischen Darstellung einer vorgeschlagenen L sung zu der st n dig ndernden Aktivit t bzw Situation des Benutzers LRBA 10 Ein ann hernder Blickwinkel der Funktionalit t wird in dargestellt ubiquit re Anwen dungen im Rahmen innerhalb von Smart Spaces benutzen die lokal vorhandenen Verbindungen und die Entdeckung engl discovery anderer lokalen Ger ten um Inhalte und Dienste zwischen den vernetzten Ger te auszutauschen Diese vereinfachte Beschreibung von Smart Home Technologien die als eine Umsetzung der Ambient Intelligence Konzepte angesehen werden kann malt jedoch einen idealisierten Anwen dungsfall aus In der Tat stellt sich die Umsetzung bzw die Installation und Bereitstellung einer Smart Home Technologie in eine Wohnung als eine wesentlich schwierigere Aufgabe heraus In wird motiviert dass eine der zentralen Herausforderungen von Smart Home Technologien war und ist immer noch der Mangel an einer einheitlichen Entwicklung von Produkten und Dienstleistungen die auf gemeinsame Standards und Protokolle basieren Dar ber hinaus wird dasselbe Argument auch von geliefert w hrend die Anzahl von Forschungsprojekte die das Potential von Smart Home Technologien vorstellen hoch ist sind die Ergebnisse dieser Recherchen nicht weitgehend eingesetzt worden Der wesentliche Grund daf r ist die mangelhafte Zusammenarbeitsf higkeit die Anwendungen k nnen einwandfrei in einer kontrol lierten Smart Home Umgebun
176. iner relationalen Da tenbank ist von einer Initialisierung der Datenbank bzw die Erstellung der entsprechenden Relatio nen repr sentiert Zuerst werden einige einf hrende Details ber die Verbindung mit dem Daten banksystem gegeben Kommunikation mit der Datenbank und Initialisierung dessen Die Kommunikation mit der Datenbank erfolgt mittels selbstgeschriebenen Wrappers einer Daten bankverbindung Benutzt wurde das mit dem DataMapper ORM mitgelieferte Verbindungsmodell sowie ein schlankes Wrapper ber das Verbindungsmodell des pg Gems Eine Verbindung l sst sich entweder als der Datenbankadministrator der so genannte root oder superuser Benutzer oder als der Administrator einer bestimmten Datenbank oder als ein Nutzer mit eingeschr nkten Rechten dessen erstellen http www datamapper org 7 3 Backend 97 Die genannten Verbindungsmodelle bauen auf einer TCP Verbindung auf und k nnen bei Bedarf mittels TLS SSL gesichert werden Au erdem besteht die M glichkeit bei beiden Modellen SQL Befehle manuell einzugeben eine M glichkeit die demn chst bei der Initialisierung verwendet wer den Schlie lich bleibt eine Verbindung mit der Datenbank bis der Schlie ung dessen offen in einer Keep Alive Weise Nachdem eine Verbindung erstellt ist lassen sich entweder ORM spezifische Befehle oder wie ge nannt rohe SQL Befehle zu dem Datenbanksystem bergeben Im Fall der Initialisierung
177. ion verf gen K nnen F r weitere Informationen be z glich der Umsetzung dieser Phase siehe auch Paragraph 7 3 3 3 2 Konkrete User Stories 37 e Mietphase Die Mietphase stellt die tats chliche Laufzeit einer Buchung dar W hrend dieser Phase werden diejenige freigeschaltete Kontext Elemente von den Wohnungsmietern entdeckt siehe auch 7 4 3 und beachtet bzw benutzt Zusammenfassend zeigt Abbildung ljeine graphische Repr sentation der beschriebenen Phasen Freigeben A Entdecken C indor e SS Vi O Lokalisierung Erfassen m Abbildung 3 1 Die grundlegenden Abl ufe oder Phasen im System weit GO S 3 2 Konkrete User Stories In diesem Absatz wird eine User Story vorgestellt durch welche die Funktionalit t und m gliche Erweiterungen des Systems herausgestellt wird Zun chst wird eine bliche Wohnung vorgestellt Darauf folgt die Beschreibung einer Smart Home Umgebung 3 2 1 Normale Wohnung Der Wohnungsbesitzer namens Martin A hat seine erste Anzeige mittels der Internet Plattform MyHomeSharing ein fiktiver Home Sharing Dienst eingestellt und schon eine Anfrage be kommen Diesbez glich wendet sich die viel reisende Kathrin D an ihn f r eine dreit gige Unterkunft in seiner komfortablen Wohnung mitten in der Hamburger Altstadt Martin beantwortet die Anfrage positiv und freut sich auf den kommenden Besuch Dabei erinnert sich Martin daran dass er von einem Freun
178. ional Workshop on Advanced Context Modeling Reasoning and Manage ment 2004 UbiComp 2004 BOLCHINI Cristiana ORSI Giorgio QUINTARELLI Elisa SCHREIBER Fabio A TANCA Letizia Context Modelling and Context Awareness Steps forward in the Context ADDICT project 2011 Forschungsbericht 1 8 S BRATSKAS Pyrros PASPALLIS Nearchos PAPADOPOULOS George A An Eva luation of the State of the Art in Context aware Architectures 2007 BOTSMAN Rachel ROGERS Roo What s Mine Is Yours The Rise of Collaborative Consumption HarperBusiness 2010 ISBN 0061963542 CURRAN Kevin FUREY Eoghan LUNNEY Tom SANTOS Jose WOODS De rek An Evaluation of Indoor Location Determination Technologies 2009 For schungsbericht 101 162 S CURRY Edward Message oriented Middleware In MAHMOUD Qusay H Hrsg Middleware for Communications Wiley amp Sons Ltd 2004 ISBN 0470862068 S 1 28 CURRAN Kevin Ambient Intelligence Context Aware Pervasive and Making a Difference in a Modern World In CURRAN Kevin Hrsg Ubiquitous Innovative Applications of Ambient Intelligence Advances in Smart Systems IGI Global Januar 2011 2011 ISBN 9781466600386 S i xv 146 Literatur CWGN11 DA00 Dav10 DBS 01 DLY 06 Dou12 DRAPZ04 EKLW11 EPR06 Fie00 Gan 10 Geill GL08 HCH 11 HIM05 CIPRIANI N WIELAND M GROSSMANN M
179. ipt Confirmation auch als Publisher Acknowledgements bekannt Weiterhin k nnten die nicht zustell baren Mitteilungen in der Benutzeroberfl che beispielsweise hervorgehoben werden um zu zeigen dass sie w hrend einer Zeitspanne von Inaktivit t angekommen sind Bihttp www rabbitmqg com extensions html 7 3 Backend 105 Die Entwicklung der nicht dauerhaften Art von Queues ist mehr mit der nicht relationalen Da tenbank namens Redis verbunden wie im kommenden Paragraph erl utert wird Redis ist ein Server f r Datenstrukturen der ein In Memory Datenspeicherungsmodell f r eine schnelle Anfragebearbeitung verwendet Im Vergleich zu anderen key value store Datenbanksyste men ist Redis in der Lage komplexere Datenstrukturen zu persistieren wie Maps Hashes Dictiona ries Mengen sortierte Mengen und Listen Weitere Details sind in zu finden AMQP Modell und Architektur f r die Realisierung des Kommunikationskanals Konkret wurde das folgende Modell f r den Kommunikationskanal in der AMQP Terminologie umgesetzt zusammen mit dem genannten NoSQL echtzeitf higen Datenbanksystem namens Re dis er N bb Rabbit DurableExchange DurableQueue1 Frontend Client en Frontend Client J lt lt component gt gt lt lt publish gt gt __ lt lt consume gt gt lt lt component gt gt Wohnungseigent mer Wohnungsmieter Android App lt lt publish gt gt lt lt consume gt gt
180. it Queues definiert die von einer nicht dauerhaften 106 Umsetzung des Prototyps Form z B eine Chat Sitzung zu einer dauerhaften Form z B die Archivierung einer Konversation per Anfrage umgewandelt werden sollen Des Weiteren wird das nicht relationale Datenbanksystem Redis f r die Speicherung und bzw Anfrage des aktuellen Online Zustandes eines Benutzers z B Online oder Offline eingesetzt Eine weitere Entwicklung des Pr senz Konzeptes w re die Speicherung verschiedener Metadaten ber die Pr senz wie z B Ereignisse wie tippt gerade engl is typing oder zuletzt gesehen am Zeit engl last seen at Die technische Infrastruktur f r die Realisierung des Kommunikationskanals ist das amqp Ruby Gem welches nicht nur eine Schnittstelle zum AMQP Netzwerkprotokoll und zu den dazugeh rigen Broker Systemen bereitstellt sondern nutzt auch spezifische Erweiterungen von Brokers wie z B die RabbitMQ Erweiterungen nutzt Zusammenfassung In diesem Abschnitt wurde die Umsetzung des Kommunikationskanals vorgestellt Zu beachten ist jedoch die prototypische Gew hrleistung eingeschr nkter Funktionalit ten Es wurde nur ein bei spielhaftes Szenario der bersendung von einfachen Nachrichten Instante Nachrichten oder IM zwischen Wohnungseigent mer und mieter getestet d h nicht evaluiert Der Grund f r diese Entscheidung ist die ubiquit re Pr senz und Nutzung anderer Kan le f r die K
181. ition eines Kontext Modells nennenswert Diese wurde in eingef hrt und lautet folgenderma en ein Kontext Modell ist eine formelle Beschreibung der relevanten Aspekten einer Umgebung Teil der realen Welt Der Entwicklungsprozess einer kontextbewussten Anwendung kann wesentlich erleichtert werden wenn ein Kontext Modell in die Entwicklung mit einbezogen wird Der Grund daf r ist dass eine Ab strahierung der Kontext Erfassung engl context sensing erm glicht die Herstellung einer Verbin dung zwischen der realen nicht technischen Welt und der technologisierten Ansicht der Anwendung erm glicht BN04 Diese beschriebene Verbindung erfolgt anhand von vordefinierter erweiterbare und dynamische Kontext Modelle die einen gewissen Ausschnitt der Welt beschreibt Im Folgenden wird eine Beschreibung der einzelnen Phasen die zu der eigentlichen Entwicklung eines Kontext Modells geh ren k nnen gegeben Zu diesem Zweck wurden hnliche Meinungen aus der Literaturrecherche zusammengefasst In LRBA1O wird der Lebenszyklus f r die Entwicklung von kontextbewussten Anwendungen genannt Dabei werden drei Phasen identifiziert die auch mit einem verallgemeinerten Software Entwicklungslebenszyklus vergleichbar sind e Entwurf in dieser Phase wird das Datenmodell des Kontext Modells festgelegt normalerweise mithilfe eines UML Tools Diese Phase l sst sich auch in CWGNI1 sowie in I BPP07 wieder finden in Form der quivalenten Phase der
182. ityParameter ConfidenceLevel 1 lt lt enumeration gt gt 0 Actor 1 has ww RoleType lormlerweise L id Identification O 7 DATALREADER dauerhaft in Kontext Precision ER o IHDATA_WRITER PerceivedSource ProfiledSource Repositories gelagert t standard_error Float H is_human_derived Bool zur Beantwortung von i Actuator AccessToken EE Freshness role_values RoleType Porreres en created_at Timestamp value String Anwendungen ii timestamp Timestamp Abbildung 6 6 Teil des Kontext Modells Erfassung von Metadaten In der Abbildung 6 6 sind die Bestandteile der integrierten Verwaltung von Metadaten innerhalb des Kontext Modells abgebildet Als erstes wird erm glicht Metadaten ber den Besitzer der Kontext Informationen zu erfassen dazu wird eine abstrakte Ownership Klasse definiert die entweder durch eine globale f r die Anwendungsdom ne spezifische Strategie z B alle Daten sind nicht ffentlich verf gbar oder durch eine Gruppe von Aktoren s u ausgepr gt werden kann Die tats chliche Auspr gung des Besitzes wird durch die Definition von Aktoren erm glicht die entweder menschlich sind HumaneActor oder aus einer maschinellen Quelle herkommen Actua tor Zus tzlich zu der Spezifikation von Besitz Entit ten werden auch Mechanismen zur Zugangs kontrolle im Kontext Modell definiert Daf r sind zuerst verschiedene Rollen wie ein Lese
183. jects entlang des Lieferantenkettenmanagements eng Supply Chain Ma nagement SCM benutzen bzw anhand dem kosteneffizienten RFID Tag verfolgen KLNO8 Weiterhin k nnen Smart Objects sich in Systeme organisieren aufbauend ein Smart Object Sys tem In diesem Szenario kommuniziert und arbeitet ein Smart Object zusammen mit anderen Agen ten aus der r umlich begrenzten Umgebung um eine spezifische Aufgabe zu l sen Anhand dieser Organisation der Objekte in einem Netz k nnen Aufgaben auch zentral von einem Server System ge l st bzw koordiniert werden ohne dass die einzelnen Objekte von ihrer benachbarten Gleichartigen engl peers wissen m ssen Zusammenfassend stellen Smart Objects eine weitere M glichkeit eine Umgebung mit digitalen Informationen in einer meist kosteng nstige Weise anzureichern um ein bestimmtes Ziel zu errei chen Mithilfe bestehender Technologien wie das Web die Nachwuchs Technologie zur Near Field Communication NFC sowie Techniken der Indoor Lokalisierung kommen Visionen wie Smart Ob jects n her zum verbreiteten kommerziellen Einf hrung Bis zu dem Meilenstein bleiben jedoch ver schiedene Fragen die adressiert werden sollten wie in ausf hrlich beschrieben z B die Erstellung von Smart Objects die ihre Intelligenz engl Smart Features f r mehrere Gegenst nde anwenden k nnen und nicht nur diese F higkeiten in einem Objekt einbetten Dar ber hinaus bleibt besteht eine Herausforder
184. keiten ACS09 Ein interessantes Eigenschaft der Android Plattform ist die folgende es besteht keinen Unterschied zwischen mitgelieferten Anwendungen und End Benutzer Anwendungen die von Dritten mithilfe des Software Development Kits SDK eine Kollektion von Tools und spezifische Anwendungen die benutzt werden k nnen um ein eigenes Softwareprodukt zu erstellen entwickelt worden sind und auf dem End Ger t installiert worden sind Es k nnen aus dieser Hinsicht fortgeschrittene leistungsstarke Anwendungen geschrieben werden die die Ressource des End Ger ts zu Nutze machen ACS09 Der Zusammenhang zwischen den Bestandteilen des Android Plattform und das entsprechende End Hardware Plattform die Laufumgebung werden in der Abbildung 5 3 dargestellt 64 Entwurf Ein weiterer Vorteil der Plattform ist ihre freie Verf gbarkeit Android ist open source Software aus diesem Grund lassen eventuell fehlende Zusammenh nge oder Funktionalit ten der urspr ngli chen Software Paketen aus der Welt der frei verf gbaren Software erweitern age Telephony Content Providers n Notification View System Android Runtime java Core Libraries via Dalvik VM surface Manager OpenGL ES 1 Framework Database SQLite munications Browser Engine WebKit Linux Kernel Device Drivers Display Camera Flash Memory Power Keypad Wi Fi Audio Management Hardware Device Specific capabilities e g GPS Camera Bluetooth NF
185. klung von kontextbewussten Anwendungen zu erleichtern ist die Verwaltung solcher Informationen auch als Kontext Informationen bekannt nicht auf der Ebe ne der Anwendung zu f hren sondern in spezialisierten Software Komponenten namens Kontext Modelle CWGNI1 Der Akzent wird dadurch auf die Wiederverwendbarkeit des Kontext Modells gelegt damit verbunden ist eine Kostensenkung im Fall der Entwicklung weiterer kontextbewussten Anwendungen die dasselbe Modell verwenden Jedoch sind mit der Etablierung bzw Definition eines Kontext Modells erhebliche Herausforderun gen zu beachten Beispielsweise muss das Modell flexibel genug sein um statische vorher modellier te Informationen mit dynamischen zur der Ziel Anwendung entstehenden Informationen erweitern lassen zu k nnen Weiterhin sollte das Modell generisch ausgepr gt sein sodass die modellierten Sachverhalte abstrakt genug sind um sich f r weitere Anwendungsf lle anpassen zu k nnen aber je doch auch konkret genug um eine bestimmte Anwendungsdom ne wie z B Home Sharing erfassen zu k nnen Dar ber hinaus muss das Kontext Modell auch als gemeinsames Kommunikationssche ma zwischen die zu entwickelnden Anwendungen des Wohnungseigent mers sowie die der Mieter agieren Die N tzlichkeit des Kontext Modells stellt sich als ein weiter wichtiges Thema heraus die Benutzer sollen in der Lage sein die vorhandenen Informationen abzurufen zu bearbeiten bzw zu erweitern und letztendli
186. kt der Punkt zu Punkt Kommunikation muss eine bestimmte Ressource stehen Eine m gliche Analogie an dieser Stelle w re die Formulierung einer Anfrage vom einem System zu ei nem anderen Der Zugriff vom jeweiligen Client zu dem entsprechenden Server erfolgt mithilfe einer standardisierten Schnittstelle wie z B HTTP Die Vorbedingung f r die Kommunikation ist das Beste hen eines globalen normalerweise eindeutigen Pfades bis zur Ressource im Fall von Web basierten REST Systemen wird den Pfad durch eine URI bezeichnet Zudem muss die erw nschte Art der Anfrage bekanntgegeben werden bzw welche Operation auf der Ressource zu unternehmen ist zu diesem Zweck werden Konzepte aus dem Vokabular von HTTP wiederverwendet die HTTP Verben wie GET PUT oder POST beschreiben die Aktion oder Operation die behandelt werden muss Eine weitere wichtige Eigenschaft ist die Zustandslosigkeit der Kommunikation auf dem Server werden keine Informationen ber den Client gespeichert Das hei t jede formulierte Anfrage vom Client muss gen gende Informationen f r die Bearbeitung enthalten Deshalb m ssen Informationen ber die Sitzung mit dem Server auf dem Client gespeichert werden Weiterhin m ssen die Antwor ten vom Server selbstbeschreibend sein das hei t in der Antwort m ssen auch Fakten vorhanden sein die den Vorgang f r die Informationsverwertung beschreiben Beispielsweise muss den Typ der bertragenen Information vorhanden sein sodass der Cli
187. ld Weitere Details ber Gebrauchstauglichkeit k nnen aus den dazugeh rigen ISO Standards entnom men werden n mlich ISO 9241 210 2010 Ergonomics of human system interaction Part 210 Human centred design for interactive systems sowie ISO 9241 11 1998 Ergonomic requirements for office work with visual display terminals VDTs Part 11 Guidance on usability wo UX und Usability in vollem Detail erl utert werden Das einflussreiche Buch von Jakob Nielsen sowie ein sehr aktuelles Buch ber UX k nnen weitere Einblicke in dieses sehr breiten Forschungs feld geben Im kommenden Abschnitt wird der Zusammenhang zwischen UX und Ubiquitous Computing aus der Perspektive der Calm Technology Vision von Mark Weiser erl utert 6 Erscheinungsdatum 5 Okt 2010 what is user experienc http uxdesign smashingmagazine com 2010 10 05 design overview tools and resources 68 Entwurf 5 4 2 Nutzungserlebnis in Ubiquitous Computing Nachdem der Begriff Nutzungserlebnis eingef hrt wurde l sst sich dies mit denjenigen Konzep ten die von Mark Weiser in der Arbeit The coming Age of Calm Technology WB96 eingef hrt worden sind verkn pfen In der Arbeit werden m gliche Gestaltungsrichtlinien und prinzipien eingef hrt die die Entwick lung der Anwendungen aus dem neuen Paradigma des Computing namens Ubiquitous Computing antreiben sollen Die neuen Technologien sind zu dem Begriff C
188. len WB96 Ein Durchlauf der Dom nen Hierarchie Ubiquitous Computing Ambient Intelligence Smart Home wie in Kapitel 2 erl utert zeigt dass die Eigenschaftsw rter die f r die Beschreibung von Ambient Intelligence Technologien benutzt werden sich in dem selben Raum wie die beschriebe nen beruhigenden Technologien bewegen au er beruhigend werden auch unsichtbar und un auff llig benutzt LLCS10 Zusammenfassend beschreibt die Vision von Calm Technology eine Welt von unauff lligen n tzlichen und meist unsichtbar agierenden Anwendungen Implizit wird hier ein Nutzungserlebnis beschrieben weil die genannte Beziehung der Nutzer und dessen Gef hle wie das erw hnte Sicher heitsgef hl betrifft 5 4 3 Aspekte des Nutzererlebnisses in mobilen Ger ten Im Rahmen dieses Abschnittes werden die Konzepte einer einflussreichen Arbeit zusam mengefasst Diese Arbeit hat sich mit dem Kontext mobiler Interaktionen befasst und gibt Auskunft ber die damals nur im Entstehen befindende Dom ne der Gestaltung f r mobile Ger te aus Sicht einiger Strategien die f r eine optimale Gestaltung verwendet werden k nnen Eine erste R cksichtnahme im Fall eines mobilen Nutzererlebnisses ist der Kontext in dem die Interaktionen stattfinden dieser Aspekt bestimmt das entstehende Erlebnis v llig Befreit von der Arbeitsplatz verbundenen PC Ara finden mobile Interaktionen h ufig im Alltag des Ben
189. len die eine nachhaltigere Verbrau cherherrschaft erschafft Daf r entstehen die sogenannten Peer to Peer Marktpl tze welche auf soziale Prinzipien wie gegenseitiges Vertrauen Ansehen und einen Gemeinschaftsgedank basieren indem die Kunden sich gegenseitig helfen weniger zu kaufen und mehr zu benutzen Gan 10 B ro und Veranstaltungsr umg Auto sind zu mieten sogar Versicherte k nnen sich zu einem Netzwerk schlie en und gemeinsam bei Versicherungen sparerf diese Beispiele zeigen nur einen kleinen Teil der aktuellen Breite des Konzeptes Eine systematisierte Behandlung verschiedener Rich tungen in denen sich Sharing Economy bewegt z B Product Service Systems oder Communal Economies wird in gegeben Pressemitteilung Deutschland teilt Auf dem Weg in eine neue Konsumkultur Erscheinungsdatum 19 Juni 2012 http www enorm magazin de bl0o9 2012 06 19 studie deutschland teilt bestatigt trend des teilens in deutschland 20 Verwandte Arbeiten 2 5 Indoor Lokalisierung Der im Paragraph 1 5 3 genannte Vorgang der Lokation Bestimmung wird in der Fachsprache als Lokalisierung bekannt Lokalisierung stammt aus der ersten Arbeiten in der Dom ne von ubiquit ren Computing POM12 somit nennen die ersten Definitionen von Kontext die Lokalisierung bzw die Lokation eines Benutzers als einer der grundlegenden Bestandteile des Benutzer Kontextes neben Zeit Aktivit t und Identit
190. liarde von Benutzer Internet fahige Ger te wie Smartphones Tablets oder e Readern sowie Spielkonsolen oder Mediaplayers benutzen werden Der Oberbegriff f r diese Art von Ger ten w re nicht Rechner engl non computer oder verallgemeinert mobile Ger te Die Anwendung solcher nicht Rechner Ger te ist ein globales Ph nomen das im August 2011 schon in f nf globalen M rkte Singapur Gro britannien Vereinig ten Staaten Japan und Australien vertreten war Bereits 5 Prozent vom Browser basierten Traffic kam in den benannten M rkten nicht von blichen Rechnern Dar ber hinaus werden Smartphones immer wieder mehr aus dem benannten Anteil von nicht Rechner gewinnen laut International Data Company IDC einem international t tigen Marktfor schungsunternehmen auf dem Gebiet der Informations und Kommunikations Technologien IKT hat der globale Telefon Markt um 11 Prozent im 2 Quartal des Jahres 2011 zugenommen Damit haben Mobiltelefone welche nicht zu den Smartphones geh ren zum ersten Mal in fast zwei Jahren an Marktanteil verloren Das hei t dass die Smartphone Industrie st ndig an neue Nutzern gewinnt Artikel One Billion Internet Users Jakob Nielsen Erscheinungsdatum 19 Dezember 2005 http www useit com alertbox internet_growth html vlg die kommerzielle IT Publikation Digital Omnivores How Tablets Smartphones and Connected Devices are chan ging U S Digital Media Consu
191. lich erweiterte Interaktionsm glichkeiten anbietet wie multimodale oder taktile Schnittstellen nutzen die Mechanismen des Mensch Maschine Dialogs nicht die Bandbrei te des Kommunikationskanals aus da kontextbezogene Details verloren gehen oder nicht genug behandelt werden k nnen DA00 Mit einem verbesserten Zugang der Maschine zum Kontext w r de sich die Vielfalt der Interaktion verbessern Somit k nnen Dienste im Sinne von Systemen oder Softwarel sungen entworfen werden die sinnvoller auf ihre Benutzer deren Situation und Eingaben reagieren Um das Konzept von Kontext wirksam nutzen zu k nnen muss Kontext sowie die Art und Weise in der er sich nutzen l sst definiert werden Ein besseres Verst ndnis von Kontext wird den Designern einer Anwendung bei der Entscheidung helfen welche Instanzen von kontextbezogenen Informatio nen zu beachten sind und wie dieser Vorteil in der Anwendung zu nutzen ist Diese Aspekte des Kontext Bewusstseins werden in den n chsten Abschnitten eingef hrt 2 8 2 Was ist Kontext Wie genannt wird in der Mensch Mensch Interaktion eine gro e Menge an Information ohne ex plizite Kommunikation bermittelt Gesten Gesichtsmimik die Beziehung zu anderen Personen und Objekten in der N he sowie die geteilten und damit verbundenen Geschichten tragen alle wesent lich dazu bei die explizite Kommunikation des Kommunikationspartners erfolgreich wahrzunehmen bzw zu verstehen Als Stichw rter en
192. llen sind die ausf hrbaren engl executable Modelle die dynamisch sind und den Zustand des modellierten Systems zur Laufzeit widerspiegeln Der Begriff f r diese Modelle ist Plattform spezifische Modelle engl Platform Specific Models PSM Diese Vorg nge k nnen von den im Absatz beschriebenen Phasen der Kontext Modellierung abgeleitet werden was die M glichkeit der Entwicklung eines Kontext Modells mittels dem MDA begr nden kann 6 1 Techniken der Kontext Modellierung 79 Der erste Vorgang in MDA wire die Feststellung eines Meta Modells Im Fall der Kontext Model lierung l sst sich ein verallgemeinertes Meta Modell anwenden welches in WX08 folgenderma en beschrieben ist 1 Kontext Entit t Kontext Element auf eine Entit t wird durch einen Namen verwiesen Eine Entit t stellt ein physisches oder konzeptuelles Objekt dar Beispiele von Entit ten sind Personen Ger te oder Geb ude 2 Kontext Dimension Weiterhin umfasst eine Dimension m gliche Eigenschaften die zu mehreren Entit ten und Beziehungen s u zugewiesen werden k nnen Beispiele aus dieser Kategorie sind ein Zeitstempel ein gewisser Zustand oder eine Lokation 3 Kontext Attribut Durch ein Atribut wird die Assoziation zwischen einer konkreten Eigenschaft einer Entit t oder Beziehung s u und der dazugeh rigen Dimension beschrieben 4 Kontext Beziehung Eine gewisse Entit t wird mit einer anderen Entit t in Zusammenhang ge brach
193. lsweise liefert die Anfrage OPTIONS eine JSON kodierte Array mit dem folgenden Format zur ck version v1 method GET path version set visited format version v2 method DELETE path version id recurse format Hiermit wurde durch das Hash erkenntlich gemacht welche Routen f r die ausgew hlte Name space verf gbar sind Dabei enthalten sind alle ben tigten Informationen die Version der API die zu benutzende HTTP Methode sowie das erwartete Format der URI Die Entdeckung vorhandener Services k nnte mittels derselben vorgestellten L sung erreicht wer den durch wiederholte Formulierungen von OPTIONS Anfragen anf nglich an einen Dienst Gateway und darauffolgend gezielt an eine Namespace von Interesse k nnten theoretisch neue durch REST Web Services ver ffentlichte Dienste entdeckt werden 20 Artikel OpenSSL HMAC vs ruby hmac Benchmarks Erscheinungsdatum 04 Dez 2008 http blog nathanielbibler com post 63031273 openssl hmac vs ruby hmac benchmarks https github com tim vandecasteele grape swagger http swagger wordnik com 2 22 7 3 Backend 113 Entdeckung neuer Services und Widgets Eine Weise in der die Entdeckung neu angebundener oder vorhandener Services im Fall des Ba ckends erfolgen k nnte basiert auf der F higkeit einer Programmiersprache bzw eines Programms eine Reflexion engl reflection durchzuf hren Durch
194. lt sich als die gr te Herausforderung in die vorstellbare Evolution des definierten Kontext Modells dar Aktuelle Her angehensweisen EKLW11 benutzen physische Sensoren wie ein Ultrabreitbrand unterst tztes Artikel Airbnb Announces 10 Million Guest Nights Booked Erscheinungsdatum 19 Juni 2012 http mashable com 2012 06 19 airbnb users 9 2 Future Work 137 System f r die Lokalisierung verkn pft mit zeitlichen Angaben Tag der Woche aktuelle Zeit und aus dem Web abgeleiteten Informationen um eine Einsch tzung der aktuellen Situation des Benutzers zu formulieren Diese Herangehensweise der Sensor Fusion und Konzepte wie Lin ked Open Data er ffnet ein breites Spektrum an M glichkeiten Der Kommunikationskanal k nnte von Peer To Peer Techniken wie AllJ oy profitieren die eine direkte Verbindung zwischen Clients ohne die Handhabung einer zentralen Kontroll Instanz er m glichen Dies kann als eine gesamte Generation von neuen Technologien angesehen werden die diese Form der ad hoc Kommunikation verwendet Dar ber hinaus werden Neuigkeiten erwartet ber die von Google entwickelte Plattform f r An droid in der Wohnung namens Android Home P die auch als der erste Schritt von Google in der Dom ne Internet of Things angesehen wird Eventuelle weitere Versionen dieser Arbeit k nnen von dieser Entwicklung profitieren Anhand der aufgelisteten Merkmale die f r eventuelle k nf
195. lung der Datenbank Der Seeding Vorgang muss zuerst ber eine Datenbankschema verf gen zur Zeit wurde nur die Datenbank und deren Rollenverwaltung durchgef hrt worden F r die Erstellung einer Schema meist im engl als ein migration bekannt m ssen weitere DDL Befehle bergeben werden wodurch die einzelnen Relationen erstellt werden Dieser Schritt erfolgt fast automatisch dank dem genannten DataMapper ORM mittels der DataMapper automigrate Befehl Die Auswirkung dieses Befehls ist es dass diejenige Klassen die mit Eigenschaften Attributen und Assoziationen Beziehungen versehen und als DataMapper Ressourcen markiert sind sich in der Datenbank wiederfinden werden Das ORM kapselt dann dieser Prozess die Ausf hrung von DDL Befehle wie z B CREATE TABLE ein abstrahierend von der h ndischen bergabe von DDL Befehlen und die eventuell damit verbundene Fehlerbehandlung Das Konzept einer Migration ber hrt am meisten die einzelnen Schritte die erfolgen m ssen um einen gewissen Zustand der Datenbank bzw des Datenbasis zu erreichen Beispielsweise l sst sich die Erstellung einer einzigen Relation auch als ein Migrationsschritt ansehen Vorteilhaft bei diesem Konzept ist die M glichkeit eine ausgef hrte Migration zur cksetzen zu k nnen damit wird den umgekehrten Weg einer Migration beschrieben In der entwickelten Softwarel sung wird die ganze Erstellung der zum Datenmodell geh
196. male zur Sicherung einer erh hten Quelltextqualit t beschrieben worden sind wird der Fokus auf die tats chliche Umsetzung der Bestandteile der Softwarel sung gelegt Zu diesem Zweck wird zuerst die f r die Umsetzung des Home Sharing Szenarios entwickelte Auspr gung des Kontext Modells hier als Datenmodell gekennzeichnet vorgestellt 7 2 Datenmodell f r Home Sharing W hrend in Kapitel 6 die Definition eines allgemein anwendbaren Kontext Modells gegeben wur de muss eine weitere Definition einer konkreten Auspr gung bzw Umsetzung dieses Modells ein gebracht werden In dieser Arbeit wurde zugleich ein Datenmodell erstellt welches die in Kapitel B beschriebenen User Stories unterst tzt Eine visuelle Darstellung dieses Modells erfolgt anhand der Abbildung Neben den genannten in K rze zu erl uternden Bestandteilen des Datenmodells befinden sich in dem dargestellten Modell au er den impliziten s u Verkn pfungspunkten mit dem verallgemeiner ten Kontext Modell auch tats chliche Verkn pfungen die Klassen Location und Source Die Einbeziehung der Location Klasse liegt im Bedarf begr ndet Kontext Informationen zu erzeugen und zu bearbeiten die auch in der Wohnung verortet sind Weiterhin wurde die Klasse Source in diesem Modell verkn pft um den Unterschied zwischen vordefinierten statischen vom System an f nglich bereitgestellten Daten siehe auch 7 3 1 und dynamischen auftretenden Datens tze aus dr ck
197. mationen in Form von Fakten zur Verf gung stellt Ein Faktum wie BrightnessFactl wird von einem Interpreter wie BrightnessLuxInterpreter inter pretiert und ergibt dadurch eine profilierte Informationsquelle 6 3 Beispielhafte Instanziierung des Kontext Modells 89 Context Creation 1 lt lt type gt gt intelligentSofa lt lt type gt gt BrightnessWidget Id ArtificialActor IntelligentSofaWidget Id fi fi id IntelligentSofaWidget_Id id 3 parent nil id 4 name BrightnessWidget_ld signature 1e44080f7441 name Intelligent Sofa uri nil uri http 10 0 1 1 80 BrightnessWidget Widget HTC Desire Device HVACBrightnessWidget id BrightnessWidget_Id Widget parent nil signature 1e44080f7441 i 1 Vv BrightnessSensor Sensor IBrightnessSensor ISensor Ownership an
198. me Technologien ein Mangel an Standards an einheitlichen Methoden zur Entwicklung und Ausf hrung von kontext bewussten Anwendungen verhinderte die Verbreitung Die meisten kontextbewussten Anwendungen wurden f r den Einzelfall oder hinsichtlich einer einzigen Klasse von Anwendungen entwickelt indem die Technologie hinter der Erfassung des Kon textes Vorrang hatte Damit wurde weder eine Allgemeinheit der L sungen erzielt noch geschafft jede neue Anwendung musste von Grund auf neu gebaut werden Eine erste Erkenntnis die die Entwicklung von allgemeinen kontextbewussten Anwendungen wesentlich erleichtern w rde w re eine gemeinsame Architektur die generische Mechanismen f r die Erfassung und Verwaltung von Kontext Informationen bereitstellen w rde Der n chste Schritt w re die Spezifizierung und Umset zung der dom nenspezifischen Kontext Elemente DA00 Die Empfehlung von Dey wurde im Laufe der Zeit durch mehrere L sungsans tze zur Kontext Modellierung umgesetzt Dennoch zeigen Studien wie HIMO5 dass sich bis jetzt keine Herange hensweise durchgesetzt hat Die meisten Ans tze wenden Konzepte aus verbundenen Feldern wie Datenbank Modellierung oder Semantic Web Technologien an Hierbei ist von Vorteil dass diese bernommenen Techniken eine gute Tool Unterst tzung sowie teils eine Interoperabilit t anbieten Trotzdem berwiegen die Nachteile die F higkeiten dieser Ans tze entsprechen nicht allen Anfor derungen der Kontext
199. mer als eine unvertraute Quelle vom Android angesehen wird da die Datei nicht aus dem Market heruntergeladen wurde Diese Limitierung wird auch auf der offiziellen Seiten ber die Distribution einer Anwendung erl utert eine weitere Limitierung wird an der Stelle auch eingef hrt manche Telefonanbieter sperren die genannte Konfigurationsoption Aufgrund dieser m glichen Be grenzungen in dem Distributionsmodell k nnte die Distributionsphase beeintr chtigt werden eine Evaluation mit mehrerer Nutzer k nnte diese Hypothese ob die Installation der Anwendung durch Telefonanbieter behindert werden k nnte berpr fen Auf der genannten Seite die Hinweise zu der Distribution von Android Anwendungen gibt werden auch M glichkeiten eingegangen die die apk Inttp developer android com distribute open html 7 3 Backend 103 Datei per E Mail oder eine Webseite verteilen Dies stellt sich als eine praktische Variante und k nnte auch im Fall vom alternativen Distributionsmodell s u angewendet werden Des Weiteren kann ein anderes Distributionsmodell ber cksichtigt werden es k nnen die ben tig ten Zugangsdaten siehe auch 7 3 3 mittels einem genannten Kommunikationskanal wie E Mail oder eine gesicherte Webseite verschickt werden Dieser Schritt impliziert dennoch eine manuelle Eingabe vom Wohnungsmieter ein Punkt der mit dem erzielten Prinzip Zero Configuration Handhabung m glichst automatisierter Konfigurationsv
200. mption Habits 2011 http www ipmark com pdf Omnivoros pdf 1 3 Problemstellung 3 wie vom globalen Marktforschungsunternehmen Nielsen bekanntgegeben sind 40 Prozent aller US B rger Smartphone Anwender wovon wiederum 40 Prozent das Android Betriebssystem verwenden Eine sehr aktuelle Studie des Forschungsunternehmen Strategy Analytics zeigt dass die Anzahl von global benutzten Smartphones zum ersten Mal seit der historische Einf hrung des Segments im Jahr 1996 mehr als eine Milliarde betr gt Weiterhin stehen als Basis dieser Trends die schon ab 2006 erkannten Fortschritte in mobilen und ubiquit ren Technologien wie z B die Paradigmen von Pervasive Computing eingebettete Sensor Technologien oder die Vielfalt von drahtgebundenen und drahtlosen Protokollen erkennt lich Nat rlich baut die Vision von The Internet of Things auf etablierten Technologien auf und erzielt wie betont die Art und Weise in dem die Ger ten selbst ndig mit anderen Ger ten aus dem selben lokalen Netz interagieren und sogar mit den Benutzer kommunizieren So bleibt die Entwicklung einer L sung f r die Smart Home Dom ne fast nur eine Frage der ben tigten Infrastruktur wie muss ein System definiert werden um das t gliche Leben des Woh nungsbesitzer und G ste wesentlich zu vereinfachen In den n chsten Kapitel wird ein Konzept einer Anwendung vorgestellt die in einem mobilen Kontext die Anpassung ans Neue z B neue tempor re
201. n Dienst anbie ten k nnen sie die anderen Dienste aus der Smart Home bedienen indem sie Inhalt und Kontext aus der lokalen Perspektive abliefern Weiterhin sind in der genannten Arbeit andere Ideen der internetf higen Smart Home vorhanden die Vereinigung lokaler bzw Intranet zug nglicher Diensten mit Extranet bzw Internet Web verf gbaren Diensten Ein Beispiel aus nennt zum einen die Sammlung verschiedener lokal vorhandenen mit geographischen Koordinaten angemerkten Fotos und zum anderen die Darstellung von damit verbundenen Landkarten ber eine Internet Verbindung Dar ber hinaus wird in belegt dass eine Evolution m glicher Web basierten L sungen im Rahmen von Smart Homes zu bemerken ist w hrend die ersten L sungskonzepte SOAP basierte Web Services benutzten steht f r die aktuelle Entwicklung die Benutzung von RESTful Web Services siehe auch 2 7 im Mittelpunkt Die Einbindung von REST Technologien wird in der oben genannten Arbeit weitergef hrt indem separate Ger ten mit IP Technologie eingebettet werden mittels IEEE Standards wie 6LoWPAN IPv6 over Low power Wireless Personal Area Networks und HTTP Zwischenspeicherung engl caching wird es erm glicht HTTP Web Servers auf jeden Ger t laufen zu lassen Damit wird die Verbindung zu den Konzepten dieser Arbeit hergestellt die Anwendung von Web basierten Technologien wie REST im Rahmen des Smart Home Sharing Szenarios kann auch direkt be
202. n Languages wie HAUT oder Hypermedia Types wie Collection J SoN entwickelt Diese sind als Vorschl ge an den W3C eingereicht worden Nah verkn pft mit REST sind RESTful Web Services auch als ein RESTFul Web API bekannt die mittels der REST Prinzipien HTTP basierte Web Services definieren Das erste Merkmal eines RESTful Web Service ist die Basis URI die definiert an welcher URI die HTTP Anfragen formuliert werden m ssen Um auf eine bestimmte Ressource zuzugreifen muss normalerweise die Basis URI mit dem Namen der gew nschten Ressource erg nzt werden Zus tzlich enthalten die Web Services wie oben aufgef hrt auch pr zise Angaben der unterst tz ten Repr sentationen der Ressourcen z B JSON XML o Das genannte Vokabular von HTTP Methoden muss auch vorhanden sein ein Web Service ver ffentlicht auch seine unterst tzten HTTP Methoden z B kann die Beschreibung des Web Services deutlich machen dass beispielsweise das HTTP Verb PUT nicht unterst tzt wird Ein letzter Aspekt eines RESTful Web Services ist die Hypermedia gesteuerte Entdeckung von weiteren m glichen Pfaden bzw URIs Ein Unterschied eines RESTful Web APIs zu beliebigen Web Services wird auch durch die Be nutzung von sogenannten Clean URIs eindeutig Ein Clean URI oder ein Benutzerfreundlicher URT enth lt kein Query String ein durch ein Fragezeichen getrennter Bestandteil sondern nur das verwendete Protokoll z B http und die Dom ne die Autori
203. n Vergleich an dieser Stelle mit einer E Mail Anwendung ist aufschlussreich der Benutzer hat bei der Auswahl einer Anwendung eine wesentlich niedrigere Toleranz f r Spam 70 Entwurf Mit dieser Idee ist auch ein hoher Bedarf an Bedienbarkeit verkn pft viele Kontexte sind von einer einh ndig ausgef hrten Aktion bestimmt dar ber hinaus erfordert die blicherweise klei ne Tastatur nur eine kurze Eingabe an Hierf r k nnen kurze URIs oder QR Codes angewendet werden Neue mobile Erlebnisse konkurrieren mit alten Nutzermodellen Die neuen mobilen Erlebnis se bewegen sich in oft unergr ndete Richtungen versuchend neue Interaktionsmodelle aufzustel len Bei der Gestaltung ist aber zu beachten dass die neuen Modelle mit den alten konkurrieren dieser Aspekt spiegelt das von Weiser beschriebene Sicherheitsgef hl wider indem einem ein gearbeiteten Weg schwierig zu verlassen ist Es kann ein Gemisch zwischen der neuen und der veralteten Interaktion entstehen wie im Fall der blichen Einw hlen Aktion engl dial die immer noch die Existenz eines Drehw hlers unterstellt Weiterhin ist an dieser Stelle die Idee der Calm Technology zu ber cksichtigen davon abgese hen dass das mobile Ger t im Laufe eines Tages n her an dem Benutzer sein wird als der bliche PC konkurriert das mobile Ger t mit vielen anderen Ereignissen die auch eine gewisse Ma an Aufmerksamkeit verlangen Aus diesem Gru
204. n besteht einen anderen wesentlichen Vorteil vom AMQP darin dass verschiedene Kom munikationsmuster umgesetzt werden k nnen die Distribution kann in einer Broadcast Art und Weise erfolgen 1 Erzeuger erreicht ein oder mehrere Verbraucher was bei Protokolle f r Instant Messaging nicht erfolgt diese unterst tzen den normalen eins zu eins Kommunikationsmuster VW 12 Im Kapitel werden Details ber die prototypische Anwendung des AMQP Protokolls im Rah men der Arbeit gegeben Dies erfolgt mit der Unterst tzung des Brokers namens RabbitMQ und des sen spezifische Erweiterungen des AMQP Protokolls 5 3 Client Architektur und Funktionalit t In den kommenden Abschnitten wird die allgemeine Architektur der Client Anwendung eingegan gen Diese richtet sich nach den Prinzipien die vom Android Software Plattform f r die Entwicklung eigener Android Anwendungen Kurzform Android Apps bereitgestellt werden 5 3 1 System Architektur des Android Plattform Android ist keine Hardware Plattform sondern repr sentiert eine Software Plattform auch engl Software Stack oder eine Software Umgebung die f r mobile Ger te entwickelt worden ist Als Plattform bietet Android umfangreiche Funktionalit ten wie z B ein Linux basiertes Betriebssys tem eine komplette L sung f r die Gestaltung der Benutzeroberfl che End Benutzer Anwendungen eigene Frameworks f r die Entwicklung dessen Unterst tzung von Medien und viele andere F hig
205. n den Probanden verlangt Die Ergebnisse zu den einzelnen Fragen siehe dazu A werden in der folgenden Auflistung zusammengefasst e Das allgemein vorgestellte Konzept wurde als hilfreich teilweise auch sehr hilfreich empfunden bietend eine gut brauchbare Funktionalit t siehe unten Au erdem wurde von einem Proband erw hnt dass die Funktionalit t auch im gesch ftlichen Bereich angeobten werden k nnte 8 6 Analyse der Ergebnisse 131 e Das vorgestellte Funktionalit t des Prototyps k nnte der Meinungen der Probanden nach folgen derma en verbessert werden durch die Bereitstellung eines Hausplans zur Raumeinteilung sowie durch die M glichkeit Raumdimensionen erfassen zu k nnen e Dar ber hinaus erw nschten sich 33 der Probanden erweiterte Daten ber die gesamte Woh nung erfassen zu k nnen Konkret wurde die M glichkeit genannt vor der Anreise zu wissen ob Haustiere in der Wohnung erlaubt sind Weiter sind Hinweise zur Pflanzenpflege genannt worden insbesondere im Fall von Mieth user wurden Hinweise zur Flurreinigung erw nscht Schlie lich benannte ein Proband den Wunsch dass Informationen zu Nachbarn und Bewohnern auch hilfreich sein k nnten mit der Erstellung eines minimalen sozialen Profils k nnen z B Informa tionen zur L rmempfindlichkeit erfasst werden Weiterhin im Fall einer Wohngemeinschaft wurde erw hnt dass die Erfassung der einzelnen zu den Mitbewohner geh renden Zimmer als R um lichkeiten mit
206. n gt endregion region MessagePackable Implementation Override public void readFrom Unpacker pUnpacker NOTE Wegen Datei Gr E Override public void writeTo Packer pPacker Prepare result Map lt String String gt out Put common attributes if ParentId null out put IsAtRootLevel Parent Name and description if Name null if Description null Usage permission is visible if UsagePermission null out Gut IsVisible Add lists if Attributes size gt 0 if Rules size gt 0 if Instructions size gt 0 Write result as MsgPack d map MsgPackUtils writeStringMapTo pPacker SuppressWarnings unchecked private void collectionToMsgPack String pKey new HashMap lt String out put Name out put Description out put UsagePermission Boolean toString IsVisible collectionToMsgPack Attributes collectionToMsgPack Rules collectionToMsgPack Instructions throws IOException nicht aufgelistet throws IOException String gt IsAtRoot out put Parent Boolean toString IsAtRootLevel ParentId toString Name Description UsagePermission out out out out Map lt String String gt pDestinationMap Retrieve List in question using Reflection List lt IToStringExAble gt sourcelist List lt IToStringExAble gt Ass
207. n ist die technische Komplexit t die mit der Entwicklung einer Indoor Lokalisierung verbunden ist Aus dieser Perspektive wurde im Rahmen dieser Arbeit auf die Verwendung einer aufwendigen bzw hochpr zisen Technik zur Indoor Lokalisierung verzichtet wie im Abschnitt 5 3 erl utert Shttp evaal aaloa org 6 Indoor Positioning for the Rest of Us http www redpin org 22 Verwandte Arbeiten 2 6 Internet of Things Laut ist das Internet of Things IoT ein Konzept in dem die virtuelle Welt der Informations und Kommunikations Technologie nahtlos mit der realen Welt der Sachen einge bunden wird Dadurch wird die reale Welt zug nglicher f r Rechnersysteme sowie vernetzten Ger te aus der Perspektive verschiedener Betriebs und Alltagsszenarien An sich l sst sich den Begriff Internet of Things nur schwierig definieren da es in verschiede nen Vermarktung und Vertrieb bezogenen Publikationen als ein Modewort missbraucht worden ist UHM11 Au erdem wird in motiviert dass die Einf hrung zahlreichen Arbeiten aus der IoT Dom ne normalerweise mit einer Umformulierung verschiedener weit angenommenen De finitionen beginnt Trotzdem wurde 2009 vom europ ischen IoT Forschungsprojekt bzw Strategic Research Agenda of the Cluster of European Research Projects on the Internet of Things CERP IoT 2009 eine genauere Begriffserkl rung bekannt gemacht hier angepasst A dynamic global network infrastructu
208. nbieter von Home Sharing zuerst angewendete Kriterium Erfassung von tiefgreifender Datenbest nde ber die Wohnung und deren Umgebung braucht zuerst eine fertigzustellene Struktur die von den eigentlichen Instanzen einzuhalten ist und eventuell auch erweitert werden kann Die genannte Struktur wird als ein Modell in der Terminologie der Softwaretechnik bezeichnet Weiterhin werden in der Softwaretechnik Techniken der Modellgetriebenen Software Entwicklung 8 Einleitung eingesetzt um das Wissen einer bestimmten Dom ne zu erfassen und in Anwendungen zu benutzen Wissen istin diesem Fall eine abstrahierte Darstellung von Prozessen und Sachkenntnissen die die beschriebene Dom ne bestimmen Der Fokus wird in der Modellgetriebenen Entwicklung nicht auf algorithmischen rechnerischen Sachverhalte gelegt sondern auf das Erzeugen von Abstraktionen die die Absicht des Entwurfs auf der konzeptionellen Ebene und nicht mehr auf der technologischen Ebene z B Hardware Eigenschaften der Ziel Plattform erfassen Aus diesem Grund l sst sich Kontext Modellierung als eine spezifische Anwendung von Techniken der Modell getriebenen Software Entwicklung ansehen In der Dom ne der kontextbewussten An wendungen weitere Informationen sind in Kapitel 6 zu finden sind Informationen ber die aktuelle Situation oder Aktivit t gefragt die die Anpassung hinsichtlich der Darstellung oder Operationen der Anwendung steuern Um die Entwic
209. nd in den kommenden Paragraphen eingegangen werden 5 4 4 Entwurf mehrerer Mockups f r die Softwarel sung Nach der Einf hrung von Prinzipien zur Realisierung eines mobilen Nutzungserlebnisses werden diese angewandt indem Mockups erstellt werden die eine gute Idee ber die visuelle Gestaltung des zu entwickelnden Softwarel sung geben k nnen Eine kurze Definition der Bezeichnung Attrappe engl mockup w re die folgende ein Mockup ist eine Form der Prototypenentwicklung bei der ein rudiment rer Prototyp der k nftigen umzu setzenden Benutzeroberfl che eines Softwareproduktes dargestellt wird Ein Mockup dient meistens dazu ein Grundger st bereitzustellen welches keine weitere Funktionalit t enth lt Es wurden im Rahmen dieser Arbeit insgesamt acht Mockups erstellt die im Folgenden einzeln veranschaulicht und beschrieben werden Eine Identifikationsnummer ist auf jedem Mockup oben links zu sehen Sie dient zur Navigation Als Erstes wird ein Splash Screen dt Begr ungsbild schirm zusammen mit einem Dashboard dt etwa Instrumententafel in der folgenden Abbildung dargestellt In der Abbildung wird zuerst links der Begr ungsbildschirm dargestellt Ein Ladevorgang stellt fest dass die Bedienelemente bereit sind und bestimmte Vorbedingungen bspw eine vorhande ne Verbindung mittels WLAN mit dem lokalen Netzwerk erf llt sind Nachdem die Vorbedingungen asynchron gepr ft worden sind erreicht der
210. nd m ssen Anwendungen abw gen wenn die dar zustellende Aktivit t zum Vordergrund gerufen werden soll und wenn sie lieber in der Peripherie bzw im Hintergrund bleiben sollte Mobile Ger te sind von der Verarbeitungsleistung nicht begrenzt Ein mobiles Ger t kann insbesondere im Fall eines verteilten Systems als nur ein Knoten angesehen werden die anderen beteiligten Knoten aus dem gesamten System k nnen oder sogar m ssen ber das Netzwerk ange sprochen werden um ein breiteres Angebot an Funktionalit ten gew hrleisten zu k nnen In dem Anwendungsfall in dem die Ger te nur als Sender und entsprechend Empf nger agieren wird von einem dumb terminal gesprochen welches nur die Funktionalit ten einer Fernbedienung f r weitere smart Umgebungen oder die Funktionalit t eines pers nlichen Displays anbietet Trotzdem kann das Szenario des reinen dumb terminal heutzutage bersehen werden da die rechnerischen F higkeiten von mobilen Ger ten in der letzten Zeit hoch angestiegen sind und noch kein Zeichen der Abbremsung geben Ein Verkn pfungspunkt mit den im vorherigen Ab schnitt vorgestellten Ideen der Calm Technology ist auch im Fall dieser Empfehlung zu finden als m glicher Teil eines verteilten Systems m ssen Netzwerk Operationen ausgef hrt werden aber der Zustand dieser Operationen wird meistens nicht angezeigt W hrend in diese Mangel an Darstellung im Fall von PCs aufgrund physischer Anzeige
211. nderungen der gespeicherten Daten erlauben k nnen In dieser Hinsicht m ssen Konzepte zur Datensicherheit und Sichere Kommunikation entworfen wer den Diese Beschreibung erfolgt anhand des n chsten Abschnittes 5 2 2 Sicherheitskonzepte In dem vorher eingef hrten Paragraph wurden die grundlegenden Sicherheitsziele vorgestellt die ein zu einem erh hten Sicherheitsgrad f hren k nnen Im Folgenden werden diese Prinzipien aus Sicht des Entwurfs und mit minimalen Implementationsdetails vorgestellt Vertraulichkeit Vom oben nach unten in der Hierarchie Backend Anwendungen Frontend Datenbank m s sen folgende Sicherheitsma nahmen eingehalten werden erstens muss das Server System mit einer starken Administrator Passwort abgesichert werden sodass den direkten Zugang zum Server m g lichst vermeidbar ist Weiterhin sollte die serverseitige Anwendung das Backend keine direkte Passw rter z B in Quelltext eingebetteten Eingaben direkt speichern sondern diejenige ben tig ten Passw rter aus dem Dateisystem des Servers auslesen Die Umsetzung dieses Prinzips wird im Abschnitt 7 3 erl utert 3 gt Beispiel zum gesamten Durchlauf eines Anwendungsfalles mit RESTdesc 60 Entwurf Diese beiden Anforderungen k nnen mithilfe von der Rechtenverwaltung des Betriebssystems ge regelt werden eingeschr nkte Rechtevergabe auf Benutzer und Dateiebene Letztendlich im Fall der Vertraulichkeit ist auch wichtig die A
212. ndungsdom ne eingege 6 2 Definition eines Kontext Modells 85 ben bzw gespeichert worden ist Zudem lassen sich dynamische Quellen in wahrgenommene engl perceived und profilierte Quellen unterteilen Im Fall der wahrgenommenen Quellen handelt es sich um Hardware oder Software basierte Sensoren die als Datenquellen agieren Auf der anderen Seite sind profilierte Quellen Daten die entweder von einem menschlichen Aktor eingegeben worden sind oder von der kontextbewussten Anwendung selber angelegt wurden Die letzte Kategorie von erfassbaren Metadaten ist die der Qualit tsdaten engl Quality of Con text Hiermit lassen sich verschiedene Metriken eingeben die zu einer Kontext Information zu geordnet werden Die Metriken sind Teil einer Klasse namens Qualitdtsparameter Die im Kontext Modell vorgesehenen Metriken beschreiben z B Konfidenzintervalle beispielsweise Wahrscheinlich keitswerte die Genauigkeit z B mithilfe des Standardfehlers und die Resolution z B eine Distanz oder eine r umliche Begrenzung einer Sensor Messung und letztendlich auch die so gesehene Fri sche einer Messung die abgelaufene Zeit seit die Messung zustande gekommen ist hierzu k nnen auch einzelne Messungen mit Ablaufzeiten vorgesehen sein Einbeziehung von Geodaten durch das Lokationsmodell
213. nem mobilen Ger t HTC_Desire betrieben wird Die Umgebung wird durch das Lokationsmodell bestimmt und enth lt mehrere R ume wie Room_1 und Room_2 die Teil einer Wohnung Apartment _1 sind Die Wohnung befindet sich in einem Geb ude Building_1 dessen auf GPS basierende Koordinaten bekannt sind Dar ber hinaus werden verschiedene r umliche Beziehungen definiert wie Distance_to_Room_1 die die ge sch tzte Distanz zwischen den zwei R umen erfasst Fest verankert im System sind Merkmale des Besitzes das System selber verwendet ein globales Schema f r den Besitz SH_Sys1_GlobalOwnership welcher mit einem Zeitstempel und einer Signatur versehen ist Dieses AccessToken wird dem anderen Akteur dem Bewohner im System mitgeteilt sodass ein Zugriff auf die vom System bereitgestellten Gegenst nde s u m glich ist Die vorher modellierten Gegenst nde im System umfassen mehrere Fakten es gibt ein virtuell mo delliertes Sofa IntelligentSofa welches sich im Raum befindet Dieses Sofa wird als Smart Object betrachtet und stellt eine ber REST verf gbare Schnittstelle zu Funktionen wie getDes cription bereit Die statische vorher gegebene Lokalisierung des Sofas ist ein Beispiel f r die Klasse ContextInformation Weitere Kontext Informationen im System werden dynamisch erfasst auf dem mobilen Ger t ist ein Sensor zur Vermittlung der aktuellen umgebenden Helligkeit eingebaut Dieser Sensor wird benutzt indem er neue Infor
214. nen und Netz werktechniken ein gemeinsames Framework etabliert haben die die Einf hrung von umgebenden engl ambient ubiquit ren Computing erm glicht Die Vision von Ambient Intelligence hat das Potential eine Revolution anzutreiben bez glich der Art und Weise indem diese Computing Dienst leistungen angeboten werden Dieses Angebot ist umfassend und basiert auf die idee von intelligen ten Umgebungen allt gliche Wohnfl chen in denen Unterst tzungstechnologie eingebaut wird Die Zielsetzung ist es diejenige Technologien einzusetzen die f r die Benutzerzielgruppe relevant und m glichst sehr hilfreich im Alltag sind Eine wichtige Anforderung an diesem Szenario ist der dauernde Zugriff auf pr zise Informationen ohne Ber cksichtigung des Standortes innerhalb der intelligenten Umgebung Deshalb sind Systeme der Ambient Intelligence anpassungsf hig und kontextbewusst um die Kontext abh ngig relevan ten Informationen in einer personalisierten Form liefern zu k nnen Damit wird es den Benutzer erm glicht gut informierte Entscheidungen in einer dringenden Zeitspanne zu treffen Die Individua lisierung der L sung bestimmt die genannte Eigenschaft der Relevanz die intelligente Technologie erkennt die Pr senz der Menschen und sollte die individuellen Pr ferenzen ihrer Benutzer erkennen und ausnutzen im Laufe der Anpassung Weitere intelligente Merkmale w ren die Unterst tzung der nat rlichen Sprache und die damit verbunden
215. ng von Software L sungen hilft Wei03 und ist in Abbildung 5 5 dargestellt 66 Entwurf v NR redraw d SS key press taps etc a gt invalidate update Abbildung 5 5 Model View Controller Architekturmuster in Android Quelle RLB10 Die von Android bereitgestellten Bauk sten sind Views die graphische Informationen auf dem Bildschirm des mobilen Ger tes abbildet sowie Controllers die Benutzereingaben wie Tastendr cke oder Tap Gesten auf dem Bildschirm behandeln Nachdem kurz die grundlegenden Aspekte der Architektur der Android Plattform dessen Anwen dungen und Benutzeroberfl che eingef hrt worden sind lassen sich die im Rahmen dieser Arbeit entwickelten Anwendungen eingehen Dies erfolgt dementsprechend im Paragraph 7 4 Das n chste zu behandelnde Thema ist die visuelle Gestaltung der Benutzeroberfl che der entwor fenen Anwendungen welches im kommenden Abschnitte erfolgt 5 4 Konzept zum Nutzungserlebnis UX In diesem Absatz wird der Entwurf des Nutzungserlebnisses der zu entwickelnden Software l sung vorgestellt Im Folgenden wird eine kurze Einleitung in diese breite Dom ne gegeben um danach den Fokus auf relevante Aspekte dieser Arbeit zu legen wie z B die mobile Benutzeroberfl che 5 4 1 Einleitung Als Einstiegspunkt l sst sich das Akronym UX entschl sseln es kommt aus dem Englischen User Experience und repr sentiert alle Facetten der Erfahrungen eines Benutz
216. ng von verschiedenen Diagrammen Typen welche auch die Erstellung von Grundrissen erm eicht zusammengefasst Die Darstellung der gesammelten Daten wurde in einer formatierten Text Datei realisiert zur Er leichterung der Bearbeitung Die Vater Kind Beziehungen zwischen den einzelnen Kategorien bzw Knoten wird durch die Einr ckung bestimmt Trennzeichen unterscheiden die verf gbaren Attri bute wie Name Beschreibung oder f r die Darstellung benutztes Symbol Ein Parser wurde f r diese vereinfachte Datei Struktur geschrieben Nachdem die Daten ausgelesen sind und damit die Struktur bzw die Vater Kind Beziehungen festgestellt sind werden die Daten zu DataMapper entsprechenden Instanzen der Klasse AssetCategory umgewandelt und in der Datenbank gespeichert Derselbe Vorgang wird im Fall der externen Kategorien d h die rtlichkeiten au erhalb der Wohnung ExternalVenue eingesetzt mit dem Unterschied dass kein Parser erforderlich ist es wurde ein JSON Parser f r Ruby verwendet Die Quelle der rtlichkeiten ist die API der popu l re Dienst f r Check Ins und lokale Vorschl ge namens Foursquard welche die Taxonomie der erfassbaren rtlichkeiten ver ffentlicht Eine Application Programming Interface API ist eine Spe zifikation der Schnittstellen die fiir die Kommunikation zwischen Software Komponenten verwendet werden k nnen Um eine transparente Darstellung der ausw hlbaren Kategorien im Frontend zu erm glichen wird
217. ngen die von einem oder mehreren Erzeuger engl producer zu einem oder mehreren Verbraucher engl consumer verschickt werden Diese verallgemeinerte Ansicht von Er zeuger und Verbraucher l sst sich in mehreren Szenarien benutzen Im Rahmen dieser Arbeit k nnen folgende Anwendungsf lle angesehen werden e Echtzeit Kommunikation zwischen Wohnungseigent mer und mieter 62 Entwurf e Verteilung von Kontext Informationen von einem Sensor in der Umgebung zu einem zentralen System oder anderen Sensoren e Kommunikation zwischen kontextbewussten Anwendungen Zur Unterst tzung dieser Anwendungsf lle wird das AMQP Netzwerkprotokoll eingesetzt wie weiter im vorgestellt Advanced Message Queuing Protocol AMQP ist ein standardisiertes frei benutzbares Netzwerk protokoll welches die Kommunikation zwischen einer Anwendung und ein Server System ein Bro ker erm glicht Die Bedingung daf r ist nat rlich dass sowohl die Anwendung als auch das Broker dem beschriebenen AMQP Standard bereinstimmen Der offene Standard AMQP wurde 2004 von dem Finanzinstitut namens JPMorgan Chase einge f hrt als eine L sung f r Message Queuing MQ bezogene Bed rfnisse und Topologien Das Messa ge Queuing Konzept wurde im Jahr 1985 entwickelt und l sst sich anhand der urspr ngliche Beschrei bung ein Software Datenbus sp ter als The Information Bus TIB bekannt die Information von einer Anwendung zu einer anderen interessiert
218. ngsformat vorgestellt welches von dem Backend und Frontend Anwendungen als Kommunikationsgrundlage benutzt wird Das Payload MessagePack Das Konzept der Repr sentation siehe auch 2 7 wird in der Praxis meistens als Payload dt Nutzdaten bezeichnet Ein Payload repr sentiert das Format der im Rahmen einer Kommunikation bertragenen Daten beispiele daf r sind XML JSON oder MessagePack W hrend XML normaler weise mit alten Web Services assoziiert werden ist JSON f r ein Aush ngeschild f r die Verbrei tung REST basierter Web Services gesehen Ein Payload unterst tzt normalerweise zwei m gliche Operationen eine Serialisierung und eine entsprechende Deserialisierung der zu bertagenden bzw bertragenen Daten Ein nicht u erst bekanntes aber effizientes Payload ist MessagePack Kurzform MsgPack Das Team hinter der Entwicklung dieses open source Projektes gibt bekannt dass MessagePack bis auf zehn Mal so schneller als JSON sei und fasst dieses Ergebnis als das Tagline It s like JSON but fast and small zusammen Unabh ngige Studien zeigen dass die Aussagen des MessagePack Teams zwar begr ndet werden k nnen jeweils nicht unbedingt in der angegebenen Ma zahl es wird nur beschrieben dass MessagePack im Endeffekt immer noch JSON ist R ckw rtskompatibel jedoch mit einer effizienten bin ren Kodierung Die Alternativen zu MessagePack die in der zitierten Artikel vorge
219. nt for the task that you just performed Place an X mark next to the one you think is more important than the other Mental Demand Physical Demand Effort Frustration Level Mental Demand Effort Frustration Level Mental Demand Effort Physical Demand Temporal Demand Mental Demand Physical Demand Performance Temporal Demand UUDUUUDUDUUUDUUOUODD OOOOUOOUOOOOUOOOOO Physical Demand Temporal Demand Performance Performance Effort Physical Demand Mental Demand Temporal Demand Frustration Level Performance Effort Performance Frustration Level Temporal Demand Frustration Level CARL Mobile HomeSharing Anwendung OSSIETZKY Im Rahmen der Masterarbeit von Cosmin Pitu universitat Evaluation Fragebogen Fragebogen Freitext 1 Haben Sie eine Kategorie von Gegenst nden oder ein bestimmtes Ger t M belst ck Raumtyp etc in dem vorgeschlagenen Verzeichnis vermisst Bitte begr nden Sie kurz Ihre Wahl 2 Welche Informationen au er den Hausregeln Nutzungsrichtlinien und Attributen zu den einzelnen Gegenst nden fehlen Ihrer M nach W rden Sie sich w nschen etwas Anderes erfassen zu k nnen 3 Glauben Sie dass Sie die erfassten Daten ber Ihre Wohnung auch zu anderen Zwecken bzw Szenarien rund um die Wohnung verwenden k nnen 4 Haben Sie Verbesserungsvorschl ge Ideen allgemeine Anmerkungen zu den Konzepten die Sie kurz kennengelernt haben Halten Sie die angebotene Funktion f r au
220. nte auch eine hybride L sung zur Distribution verwendet werden der Wohnungsei gent mer kann die apk Datei selber erstellen bzw anhand eines automatisierten Programms erstellen lassen welches die ben tigten Schritte Kompilierung Signierung ausf hrt und dann per E Mail zu dem Mieter sendet und darauf hinweist dass die Konfigurationsoption f r unvertraute Quellen ein gestellt werden soll Damit wird der End Benutzer in dem Prozess aktiv miteinbezogen siehe auch das Konzept der Nutzerbefahigung aus Paragraph 4 3 5 und es wird Zeit beim Start der Mietphase gespart Weiterhin k nnten die Zugangsdaten auch per QR Code eingelesen werden Nachdem die Aspekte der Konfiguration und Distribution der mobilen Anwendung eingef hrt sind wird das Thema des Kommunikationskanals im kommenden Abschnitt vorgestellt 7 3 4 Kommunikationskanal Das Konzept des Kommunikationskanals hat als technische Grundlage das AMQP Protokoll wel ches ein Kommunikationsprotokoll darstellt wie im Absatz erl utert Das AMQP Protokoll stellt nur einen Grundriss bereit worauf weitere Anwendungen in Form von AMQP f higen Server produkten namens Brokers laufen k nnen Die meist verwendete Serverl sung f r AMQP wird vom frei verf gbaren RabbitMQ Broker repr sentiert Die Entwicklung von RabbitMQ begann im Jahr 2006 als der erste Entwurf der AMQP Spezifikation ver ffentlicht wurde RabbitMQ verwendet die Programmiersprache Erlang als technologische Grund
221. nten Aktivit t namens AssetViewActivity Die m gliche Weiterentwicklung der Funktionalit t zur automatischen Indoor Lokalisierung be trifft im Wesentlichen das Frontend aufgrund der bei der Benutzung geschaffenen Mobilit t Hierf r k nnen weiterf hrende Techniken zur Bestimmung einer Lokation siehe dazu Absatz 5 eingesetzt werden wie z B ein Wi Fi basiertes Verfahren Wie es schon genannt wurde konnte hinsichtlich des gesch tzten h heren technischen Aufwandes keine fortgeschrittene Technologie umgesetzt werden 7 5 Zusammenfassung Im Laufe dieses Kapitels wurde auf die geleistete Umsetzung der vorher eingef hrten Konzepte im Detail eingegangen Dies erfolgte im Hinblick auf die beiden Systemen das Backend und ent sprechend das Frontend W hrend eine Umsetzung eines kompletten Systems zur Unterst tzung des Home Sharing Szenarios nur teilweise geschafft wurde zeigen die umgesetzten Anwendungen und die dazugeh rige technische Infrastruktur ein gutes Potential f r die Benutzung im Rahmen eines realen Szenarios Diese Aussage st tzt sich auf erhobene Daten die bei der durchgef hrten Evaluation der genann ten Systeme erfasst worden sind Die Planung Durchf hrung und Analyse der Evaluation wird als n chste Thematik in dieser Arbeit vorgestellt 125 In diesem Kapitel wird die organisierte und durchgef hrte Evaluation der prototypisch umgesetz ten Softwarel sung vorgestellt Im Folgenden wird die Bezeichnung
222. ntscheidung getroffen eine nicht unbedingt bekanntd 3 aber m chtige Softwarel sung f r die Definition von REST APIs namens Grape anzuwenden 13 Grape hat 1900 Watchers und 162 Forks auf Github w hrend Sinatra wesentlich popul rer ist mit 4160 Watchers und 615 Forks nhttp intridea github com grape 7 3 Backend 107 Grape erm glicht die Definition einer REST API durch die Bereitstellung eines Micro Frameworks Nachdem eine API definiert ist kann diese Spezifikation auf einem Rack kompatiblen Web Server in stalliert und den Client Anwendungen angeboten werden Grape unterst tzt h ufig verwendete Kon zepte die mit der Definition einer REST API verbunden sind wie z B verschiedene Repr sentatio nen oder Formate Die Anfrage an eine URI wie http localhost api index html lie fert z B eine andere Antwort als eine Anfrage an die http localhost api index json URI Weiterhin unterst tzt Grape die Versionierung einer API durch die Einbettung der aktuellen Ver sion in die URI http localhost api v8 etc alternativ k nnen HTTP Headers oder Parameters verwendet werden Weiterhin k nnen verschiedene Namensr ume engl namespace definiert werden in dem die be schriebenen Routen ihre Einzigartigkeit behalten z B bei der Definition der Namensr ume foo und bar werden die Anfragen GET foo my action und GET bar my action dem entsprechen den Namensraum weitergeleitet bzw geroutet
223. nutzer kann eine Auswahl bet tigen und dadurch die textuell dargestellte Entscheidung Dieser Gegenstand befindet sich innerhalb dieses Raumes treffen Eine weitere Entwicklungsm glichkeit l sst sich an dieser Stelle benennen an statt einer statischen Lokation k nnte eine Visualisierung der aktuell berechneten Lokation des Benutzers innerhalb der Wohnung vorgestellt werden Die Speicherung der modellierten Instanz erfolgt per Knopfdruck des Save Buttons Der Benut zer wird ber den Fortschritt der Speicher Aktion visuell informiert SpaceAddActivity Durch diese Aktivit t wird dem Benutzer erm glicht einen symboli schen Raum vgl Lokationsmodell im Paragraph 6 2 2 hinzuzuf gen Eine Anfrage ans Backend wird als Vorbereitungsschritt verschickt w hrenddessen wird ein Ladesymbol dargestellt um die aktuell verf gbaren R ume zu erhalten Diese R ume sind im Fall von relativen R umen Lokation anhand einer r umlichen Beziehung relevant Dem Raum kann ein Namen gegeben werden sowie eine freiwillige Anzahl von r umlichen Be ziehungen zu einem anderen Raum Hierf r wird eine ExpandableListView bereitgestellt die Operationen auf vorhandenen r umlichen Beziehungen oder das Einf gen einer neuen Bezie hung unterst tzt Die Speicherung des modellierten Raumes erfolgt per Knopfdruck des Save Buttons Der Be nutzer wird ber den Fortschritt der Speicher Aktion visuell informiert Dar ber hinaus werden im Dashbo
224. nwendungen geeignet ist die auch f r das Konzept des Kommunikationskanals im Paragraph5 2 3 aufgef hrt worden sind Im Paragraph 7 3 4 werden zudem die Implementierungsdetails diskutiert Nennenswert bleibt an dieser Stelle auch die Verallgemeinerung des Verteilungsvorganges es k n nen weitere Technologien eingesetzt werden die entweder einen direkten Pub Sub Kommunikati onsmechanismus umsetzen oder dies mithilfe eines Zwischendienstes engl Middleware realisieren Die Abonnenten k nnen im Sinne des Kontext Modells andere kontextbewusste Anwendungen aus derselben Umgebung wie die produzierenden Anwendungen sein Publisher Subscriber oft als PubSub bezeichnet ist ein allgemeiner Mechanismus welcher zum einen die Erstellung von beliebigen Nachrichten oder Datenbest nden von einer Anwendung er laubt und zum anderen die entsprechende Verteilung der ver ffentlichten Datenbest nde an beliebige Abonnenten bzw Anwendungen erm glicht Nachdem die Bausteine des Kontext Modells definiert worden sind wird ein kurzer berblick ber eine m gliche Nutzung des Kontext Modells anhand eines vereinfachten Anwendungsfalles gegeben 6 3 Beispielhafte Instanziierung des Kontext Modells In der Abbildung wird das entworfene Kontext Modell in einem beispielhaften Szenario ei ner Smart Home Umgebung eingesetzt Hierf r wurde eine kontextbewusste Anwendung SH1 Platzhalter f r Smart Home 1 definiert die von ei
225. nzepte sind als das Kommunikationskanal zusammengefasst und in Kapitel B 2 3 weiter vorgestellt Technisch schwierig an dieser Stelle ist die Realisierung der Kommunikation in einer Echtzeit m igen m glichst dezentralisierten Art und Weise zusammen verkn pft mit dem nicht st renden Aspekt eine Frage der Pr senz 6 Einleitung Zusammenfassend setzt die zu beschriebene Softwarel sung Konzepte um die das Einleben der Wohnungsmieter erleichtern k nnen Anhand eines Kontext Modells wird die Umgebung der Woh nung gestaltet und mit Gegenst nde bef llt sodass diese sp ter w hrend der Mietphase entdeckt bzw lokalisiert und entwertet werden k nnen Dar ber hinaus wird auch ein Konzept vergegenwartigt welches eine zu sozialen Normen konforme zu beliebigen Zeitpunkten ausf hrbare Kommunikation zwischen Eigent mer und Mieter erm glichen k nnte Diese Themen bieten der Ausgangspunkt zur Formulierung einer zentralen Forschungsfrage welche als n chstes behandelt wird 1 4 Forschungsfrage Im Zuge dieses Kapitels wurden die wesentlichen mit der Hauptthematik dieser Arbeit verwand ten Forschungsfelder kurz genannt zusammen mit denjenigen Problemen die diese Arbeit versucht anzusprechen Dadurch entsteht eine Hauptfrage bez glich der Forschungsrichtung mit Hilfe derer Konzepte definiert werden die die betrachteten Anwendungsf lle der Dom ne abdecken k nnen Die genannten und in Kapitel 2 ausf hrlich eingegangenen Ar
226. odell die Definition von kontextbewussten Anwendungen die das Modell und die Service Schicht benutzen k nnen und somit eine Kontext Anpassung realisieren Nachdem die Darstellung einer kontextbewussten Anwendung im Kontext Modell vorgestellt wird werden die restlichen beiden Teilen n her eingegangen hinsichtlich ihrer Komponente und Funktionalit t 6 2 Definition eines Kontext Modells 81 Context Query Context Distribution A 1 lt lt uses gt gt Hentgen ve a aa E ee a A Discovery Service Context Creation H H lt lt uses gt gt lt lt uses runs on Device gt gt a a eer 6h el Ul lhl Mee ee gt Persistency Service near lt lt uses listens to gt gt i j 7 lt lt uses gt gt l ni E n Den E E TEE ES D te H UI Sees se ET ee eee EE E E E ET E E ee E E E E Ee U 1 KI lt lt uses gt gt i vi i te H UI DH ki UI lt lt uses listens to gt gt Localization Service Spatial Model lt lt captured within gt gt Eeer i I i I I I I i Ownership and Access Control i i I I I I I I I I lt lt creates gt gt lt lt has Source gt gt lt lt uses gt gt v Provenance Quality of Context lt lt creates SourceGroup gt gt lt lt enriches Quality Parameter gt gt gt Abbildung 6 3 Das im Rahmen dieser Arbeit entwickelte Kontext Modell mit Bestandteilen und Beziehungen zwischen den
227. odells Paragraph 6 2 2 im Datenmodell auch verf gbar ist Somit modelliert die UserProfile ein minimales Profil ber den Wohnungseigent mer und dessen G ste Ebenfalls enthalten ist der Zeitstempel Attribut timestamp womit die Zugangs kontrolle geregelt werden kann siehe auch 16 2 2 Weiterhin erfasst die UserType Klasse die zwei Klassen von Benutzern aus dem Home Sharing Szenario den Wohnungsmieter HOME_GUEST sowie den Wohnungsbesitzer HOME_OWNER Zusammenfassend enth lt das entwickelte Datenmodell f r Home Sharing die f r die Umsetzung der in Kapitel 3 vorgestellten User Stories ben tigten Bestandteile Das Datenmodell wird von der UML Notation zu einer relationalen Datenbankschema umgewandelt wie in den folgenden Abschnit ten die die zentrale Komponente bzw das Backend behandeln vorgestellt wird 96 Umsetzung des Prototyps 7 3 Backend Das Backend setzt die Persistenzschicht des Kontext Modells verschiedene Dienste rund um das Kontext Modell sowie die technische Verbindung zum Kommunikationskanal um Diese Unterkom ponenten werden ausf hrlich in den kommenden Abschnitten eingef hrt und beschrieben 7 3 1 Persistzenzkonzept des Kontext Modells Das entworfene Kontext Modell muss in einer relationalen Datenbank persistiert werden zur Ge w hrleistung der Integrit t und Sicherheit der gespeicherten Daten die meistens pers nliche Daten darstellen Zu diesem Zweck wurde das verbreitete Datenbankmanagementsystem
228. ommunikation z B Google Talk IM Anbieter E Mail oder SMS von den Benutzern Andererseits besteht der Vorteil des Konzeptes zum Kommunikationskanal darin dass eine sichere Kommunika tion hinsichtlich der Vertraulichkeit siehe auch 1 5 5 und Teilnehmerauthentizit t siehe auch die Erkl rungen aus Paragraph und 7 3 5 entstehen kann Im folgenden Abschnitt wird ein anderer Teil der Implementierung vorgestellt welche das Daten modell f r die Client Anwendungen anhand einer REST basierten Schnittstelle zur Verf gung stellt 7 3 5 REST Implementierung Ein wesentliches Kriterium das w hrend der Suche nach einem geeigneten Framework f r die Um setzung einer REST API gestellt wurde ist die Leichtigkeit der L sung Es wurde ein Framework gesucht welches die Rack Schnittstelle siehe auch 5 2 1 umsetzt und ein geeignetes DSL Domain Specific Language eine dom nenspezifische Sprache womit L sungen f r ein bestimmtes Problem feld m glichst kompakt definiert werden k nnen f r die Beschreibung der einzelnen Methoden die so genannten Routen bereitstellt Ein erster Gedanke war das Web Framework namens Sinatra die zur Verf gung gestellte DSL ist kompakt jedoch wird Sinatra als ein voll entwickeltes Framework f r die Umsetzung Web basierter Anwendungen Web Applications Kurzform Webapps angesehen und nicht nur als ein Frame work f r die Definition eines REST API In dieser Hinsicht wurde die E
229. omputing Environments 2006 FIELDING Roy Architectural Styles and the Design of Network based Software Architectures University of California Irvine PhD 2000 GANSKY Lisa The Mesh Why the Future of Business Is Sharing Portfolio Hard cover 2010 ISBN 1591843715 GEISTERT Jonas WLAN Positioning 2011 GITSHAM Matthew LENSSEN Gilbert Developing the Global Leader of Tomor row 2008 Forschungsbericht ISBN 9780903542753 HAUSEN Doris CONRADI Bettina HANG Alina HENNECKE Fabiant KRATZ Sven L HMANN Sebastian RICHTER Hendrik BUTZ Andreas HUSSMANN Heinrich Ubiquitous Computing An overview of current trends developments and research 2011 Forschungsbericht HENRICKSEN Karen INDULSKA Jadwiga MCFADDEN Ted Modelling Context Information with ORM 2005 Forschungsbericht 147 HP12 HS88 Ind12 KCA 11 KK06 KLNO8 KS Y12 KTP11 Lee07 LG12 LLCS 10 LRBA10 LRHM12 Meh12 MO11 HARTSON Rex PYLA Pardha The UX Book Process and Guidelines for Ensuring a Quality User Experience Morgan Kaufmann 2012 ISBN 0123852412 HART Sandra STAVELAND Lowell Development of NASA TLX Task Load Index Results of Empirical and Theoretical Research In Human Mental Workload 1988 S 239 250 INDOOR ATLAS LTD Ambient magnetic field based indoor location technology 2012 Nr July KRANENBURG Rob van CAPRIO
230. on Rack Middleware in der Rack Architektur als Authentifizierung oder Komprimierung Ma nahme Eine Middleware Komponente kann auch als ein Filter angesehen werden die z B die urspr ngli che Anfrage abfangen und bearbeiten kann oder die formulierte Antwort einer Anfrage weiter bear beiten kann Dar ber hinaus kann der gesamte Vorgang unterbrochen werden wenn z B eine Authen tifizierung fehlschlagt Dar ber hinaus k nnen Rack Middleware Komponenten f r Caching ber wachung der Performanz und hnliche Konzepte eingef hrt werden Der letzte Anwendungsfall Vorgang unterbrechen wird im Fall des rack authenticate Gems ausgenutzt gem dem standardisierten Verfahrerf zur HMAC wird die Bearbeitungskette aus der Abbildung abgebrochen und eine 401 Unauthorized HTTP Antwort zur ckgelie fert falls eine berpr fung s u fehlschl gt Die berpr fung einer HMAC Signatur ber cksichtigt die Handhabung verschiedener Parameter wie die private Schl ssel und den dazugeh rigen Bezeichner in diesem Fall der Name der kontext bewussten Anwendung Klasse ContextAwareApplication das Datum an dem die Anfrage formuliert wurde sowie im Fall von POST Anfragen die Handhabung des MD5 Wertes Anhand dieser Parameter wird zur haupts chlichen berpr fung der privaten Schl ssel gelungen in die ser Phase wird der Bezeichner benutzt um das in der Datenbank gespeicherten Wert die private von Frontend und Backend geteilte Schl ssel a
231. on dahin W hrend eine Weiterleitung zu einer spezialisierten Dienst f r die Beschreibung solcher rtlichkeiten m glich ist lie t sich diese M glichkeit nur online abrufen F rderung des spontanen Kontakts w hrend des Mietintervalls Im Fall dieses Kriteriums l sst sich eine Gleichheit aller Anbieter bemerken es wird ein internes privates Nachrichten system benutzen Eine Bemerkung dazu w re dass in keinen der verf gbaren Gebrauchsanlei tungen eine Erw hnung gemacht wird dass das Nachrichtensystem auch w hrend und nicht nur bevor der Buchung verwendet werden k nnte Eine eventuelle weitere Investigation k nnte noch herausstellen dass diese Funktionalit t doch eingebettet im Produkt ist Die Alternative zu der Kommunikation w hrend des Mietintervalls ist nicht direkt vorhanden nur eine Kommunika tion zwischen Mieter und Dienstleister oder zwischen Eigent mer und Dienstleister wird bei al len Anbieter erw hnt in Form einer Rufnummer f r die Kundenbetreuung die nur im Fall von Airbnb rund um die Uhr erreichbar ist Aus diesem Grund ist die explizite oder technische Rea lisierbarkeit einer spontanen Kontaktaufnahme vom Mieter zu Eigent mer und umgekehrt nicht vorhanden Dar ber hinaus ist das angebotene Kommunikationsmodell eher statisch gepr gt mit der bei al len Anbieter einheitlichen Verwendung des Inbox Modells Es besteht also keine M glichkeit spontan und interaktiv Mitteilungen auszutauschen
232. onstermins erledigt worden Damit wurde die urspr ngliche Konfiguration evaluiert die normalerweise von dem Wohnungseigent mer w hrend der Vorbereitungsphase siehe Paragraph 1 1 ausgef hrt werden sollte Die Evaluationsumgebung bestand in erster Linie aus der Wohnung in der die Evaluation durch gef hrt wurde und dessen spezifischen Bestandteile Ein technisches Merkmal ist die Handhabung eines WLAN Routers das die minimale technische Infrastruktur f r die Daten bertragung zwischen Frontend und Backend bereitstellt Die erforderliche technische Apparatur bestand aus einem mobi len Ger t ein HTC Desire worauf Android in der Version 2 3 7 lief und einem Server System in diesem Fall ein Notebook Beide Ger te unterst tzen WLAN Verbindungen Der erste Schritt in der Konfiguration des Prototyps und entsprechend der Laufzeitumgebung war die Erstellung einer WLAN Verbindung Nachdem die Verbindungen auf beiden Systemen erfolg reich etabliert wurden wurde der ben tigte Konfigurationsvorgang siehe auch 7 3 3 per Kommando zeile vom Evaluationsbeauftragter ausgef hrt Damit wurde gesichert dass die Referenz im Backend und Frontend auf dieselbe IP Adresse des Server Systems gesetzt wurde W hrend diese Einrichtung stattgefunden hatte wurde der Proband darum gebeten das mitge brachte Dokument zum Evaluationsvorgang bzw der genannte Ablaufsplan sorgf ltig zu lesen und ggf Fragen zu stellen bevor die Bearbeitung der Aufgaben an
233. org nge im Vergleich zu dem Konfigurationsaufwand der mit Smart Home L sungen normalerweise verkn pft ist siehe auch 2 2 kollidiert Hinsichtlich dieses Aspekts wird in dieser Arbeit das erste Distributionsmodell eingesetzt Ein Vorteil der von dieser Softwarel sung verwendeten Herangehensweise ist die Verbesserung des genannten Sicherheitsgef hls welches vom Wohnungseigent mer und mieter gesp rt werden sollte und in der Grundprinzipien des Home Sharings oder der allgemeinen Sharing Economy verwurzelt ist Die Distribution ist dann wird dadurch in einem geschlossenen Kreis ausgef hrt und die Sicherheit der personenbezogenen Daten wird eindeutig Dieser Punkt ist im Rahmen einer Mitarbeit mit einem weiteren Dienstleister noch zu beachten sodass die erzielte Sicherheit bestehen bleibt Die tats chliche Laufumgebung bzw worauf die Anwendungen laufen kann unterschiedlich sein im Normalfall bringt der Wohnungsmieter sein eigenes mobiles Ger t mit und l sst die Installation der Softwarel sung darauf laufen oder in einem weniger wahrscheinlichen Fall wird dem Mieter ein mobiles Ger t vom Wohnungseigent mer zur Verf gung gestellt Wie bereits genannt bleibt die Distribution nur eine Frage eines urspr nglichen Vertrauens Nat rlich l sst sich die Einstellung auch fremde Anwendungen laufen zu lassen nach der Installation bzw Distribution der entwickelten Softwarel sung zur cksetzen Trotzdem k n
234. orgestellt die die gestrebten Funktionalit ten der zu entwickelnden Anwendungen in einen textuellen Form vorstellen Diese Texte werden im Anschluss die Basis f r die Erstellung von Anforderungen an der zu entwickelnden Anwendungen herstellen Nachdem in vorherigen Kapitel eine Vorstellung der Konzepten dieser Arbeit erfolgte wird in den n chsten Kapitel den Weg zur Spezifikation einer Software Architektur verfolgt 3 3 Zusammenfassung 41 Der erste Schritt daf r ist die Definition von Anforderungen an das zu entwickelnde Softwarepro dukt und dessen Bestandteile technische Architektur bzw Server System sowie mobile Anwendun gen eine Thematik die in dem kommenden Kapitel vorgestellt wird 42 User Stories 43 Im Rahmen dieses Kapitels werden die Anforderungen f r die zu entwickelnde Softwarel sung erhoben bzw definiert Als Startpunkt wird die Einf hrung einiger Grundlagen verwendet am Ende des Kapitels werden Anwendungsf lle aus der etablierten Anforderungen erstellt und beschrieben 4 1 Analyse aktueller Anbieter von Home Sharing L sungen Nachdem in dem vorherigen Kapitel m gliche User Stories eingef hrt worden sind l sst sich eine Analyse der Anforderungen an einer m glichen Softwarel sung f r die Unterst tzung und Erweite rung wie im Abschnitt 1 5 1 sowie im Abschnitt 2 4 1 motiviert des Home Sharing Erlebnisses bzw dieser Stories durchf hren Es wird damit untersucht ob der letzte Stan
235. orschungsfrage wurden m gliche verwandte L sungsans tze an hand einer Literaturrecherche analysiert Zu der genannten Analyse der Anbieter von Home Sharing L sungen wurden User Stories defi niert die den m glichen Umgang von Benutzern mit der vorgestellten technischen L sung beschrei ben k nnen Aufgrund dessen wurden Anforderungen erhoben die eine technische Architektur f r die L sung des Konzepts bereitstellen Ein erheblicher Teil der Architektur wird von der Definition eines Kontext Modells ausgepr gt Weiterhin wurden die Konzepte in einer prototypischen Anwendung bestehend aus zwei Syste men Backend Server und Frontend Client umgesetzt Die vorbereitete technische L sung wurde am Ende der Bearbeitungszeit durch eine Evaluation auf die Erf llung der Forschungsfrage berpr ft Schlie lich zeigte die Analyse der Evaluations Ergebnisse dass die angebotene L sung als hilfreich empfunden wurde was das Potential der Softwarel sung zeigt und damit weitere Arbeiten daran nicht ausschlie t 1 Einleitung 1 1 Ubersicht 1 2 Hintergrund 1 3 Problemstellung T 4_Forschungsfrage 1 6 __Struktur der Arbeit 2 Verwandte Arbeiten 2 1 Ubiquitous Computing 2 2 Ambient Intelligence Aml 2 3 Ambient Assisted Living AAL 2 4 Smart Home 2 9 Indoor Lokalisierung 2 6 Internet of Things 2 7 REST und RESTful Web Services 2 8 Kontext Modellierung 3 __User Stories dee ah TE al e e ee 3
236. ortedUtils getValueOfFieldNamed pKey this 7 4 Frontend 119 When found if sourceList null Output the items as given by a ToStringEx call StringBuilder out new StringBuilder for IToStringExAble currentItem sourceList toStringEx uses a simple tokenizing Method to serialize Attributes in a comma separated Value String since nesting two Maps in MsgPack did not work String stringExResult currentItem toStringEx if stringExResult null out append stringExResult Update destination map pDestinationMap put pKey out toString endregion Die Art und Weise in der diese leichtgewichtigen Modelle benutzt werden wird als n chstes im View Paragraph behandelt Dar ber hinaus werden Ausschnitte des Kontext Modells auch im Frontend umgesetzt Dies ge schieht zuerst in Form von Services wie bereits im Absatz 7 4 1 erl utert aber auch als leichtge wichtige Modellen in derselben schlanken Art wie k rzlich dargestellt Die Aufgabe dieser Art von Modellen ist ein Snapshot eines Vorgangs wie z B die Erfassung von Sensoren Daten zu mo dellieren sodass diese Daten der Zustand des Modells weiter zum Backend bertragen oder lokal zwischengespeichert werden k nnen Eine weitere Art von eingesetzten Modellen ist von einem beispielhaften Modell repr sentiert wel ches den Zustand der lokalen Datenbank bei An
237. p beschreibt die erw nschte Situation in der die bertragenen Daten unautorisiert und unbemerkt nicht manipulierbar sind Zus tzlich zu den oben genannten Sicherheitszielen ist ein anderer Konzept der Datensicherheit in dieser Arbeit zu erw hnen der sogenannte Data Takeout Vorgang Dieser Vorgang ist eine Initiative von Google und Teil des Data Liberation Projekteg Wie der Name es andeutet wird durch diesen Prozess der allgemeine Vorgang beschrieben womit man seine von einem Anbieter gespeicherten Daten mitnimmt im Fall eines Anbieterwechsels Der Prozess vermeidet die Situation in der eine Vorratsdatenspeicherung entsteht und sich Da ten nicht mehr exportieren lassen Diese Art von Speicherung ist auch als ein Vendor lock in bekannt Mit der Hilfe es Data Liberation Projektes lassen sich allgemein Daten beispielsweise sind im Fall von Google eine Mehrzahl von Produkten f r einen Datenexport bereit wom glich in einem ffentlichen Format exportieren Zusammenfassend l sst sich erw hnen dass die Sicherheitspolitik jedes Produktes zum gro en teils den Erfolg eines Konzeptes bestimmen kann In der Regel besteht die beste Praxis daraus die wichtigsten Merkmale des Sicherheitskonzeptes in Form einer Datensch tzerkl rung oder in Form von AGBs zu ver ffentlichen Die Umsetzung der vorgetragenen Sicherheitskonzepte wird in Kapitel 7jin Detail eingegangen 1 6 Struktur der Arbeit Diese Arbeit ist wi
238. ph beschrieben wird REST Web Services Die im Abschnitt 2 7Jeingegangenen Konzepte hinsichtlich REST Technologien sind in der Archi tektur der entwickelten Softwarel sung enthalten Bereich Backend Server An dieser Stelle wer den mehrere Services definiert die durch REST ansprechbar sind und somit einen SOA hnlichen Konzept der Service Orientierung beschreiben Eine Service Orientierte Architektur engl Service Oriented Architecture SOA beschreibt eine Software Architektur die aus mehrere lose gekoppelte Dienste oder Services besteht Somit wer den die einzelnen Bestandteile und Funktionalit ten der beschriebenen Anwendung in selbst ndige 58 Entwurf Dienste geteilt F r die Kommunikation zwischen der Anwendung und den Services oder zwischen den einzelnen Services werden Standard Schnittstellen wie z B REST eingesetzt Bez glich der von den Diensten bereitgestellten Schnittstelle wird im Fall dieser Architektur eine Schnittstelle definiert die die grundlegenden REST Methoden enth lt die von jedem Dienst bereitge stellt werden m ssen siehe auch 7 3 5 Dar ber hinaus definiert jeder Dienst eine eigene erweiterte Schnittstelle um die eigene Funktionalit t bereitzustellen Die verf gbaren Dienste k nnen in einem Repository oder Gateway gelagert werden und mit tels einem Web Server nach au en zu den Clients bereitgestellt Ein Vorteil einer SOA hnliche L sung ist dass die Dienste individuell
239. pr sentieren wird Dieser Schritt ist optional da nicht alle kontextbewusste Systeme mit einer Benutzeroberfl che vorgesehen sind z B Navigationssysteme basierend auf Vibrationen W hrend die ersten Anforderungen durch vorher genannte Prinzipien abgedeckt werden k nnen bleibt jedoch interessant den letzten Aspekt weiter zu untersuchen Die genannte Arbeit bzw WX08 setzt den Fokus darauf eine geeignete Benutzeroberfl che zu entwickeln die f r die Kommunikation bzw Darstellung von kontextbezogenen Informationen zust ndig ist W hrend diese Thematik im Fall von AAL L sungen von besonderer Wichtigkeit ist wurde die Idee in dieser Arbeit grob angewandt in Kapitel 7 wird die Entwicklung einer spezialisierten und fiir erfahrene Benutzer entwickelten Be nutzeroberfl che beschrieben die f r die Eingabe spezifischer Erweiterungen des Kontext Modells zust ndig ist Auf die oben aufgef hrte Erweiterung des Kontext Modells durch Benutzereingabe wird in auch eingegangen es wird ein Szenario vorgestellt in dem der Nutzer nicht zufrieden mit dem anf ng lichen Angebot des Systems an kontextbewussten Diensten ist Zu diesem Zweck w hlt der Nutzer aus einer Art Service Marketplace Store weitere Dienste die in das bestehende System zu inte grieren sind Dar ber hinaus besteht in dem beschriebenen Szenario die M glichkeit neue Sensorik 54 Anforderungserhebung in das vorhandene Smart Home System einzubringen so
240. primierung der bin ren bertragung weitere Gewinne bez glich der Geschwindigkeit leisten kann Nachdem die zu verschickenden bzw empfangenen Daten serialisiert bzw deserialisiert worden sind muss eine Absicherung der bertragung hinsichtlich der Nachrichtenauthentizit t und der Da tenintegrit t siehe auch Paragraph 1 5 5 erfolgen Dieses Thema wird im folgenden Abschnitt ein gegangen berpr fung der Nachrichtenauthentizit t und Datenintegrit t mittels HMAC Zur Unterst tzung der genannten Sicherheitsziele wird das rack authenticate 7 Gem benutzt je weils mit spezifischen nderungen bez glich der Performanz und allg Debugging bezogenen Kon zepten Wie vorher genannt unterst tzt Rack die Benutzung verschiedener Middleware Komponen ten diese werden normalerweise zwischen der Anfrage das Web Anwendung und die Antwort zur Anfrage platziert aber sie k nnen z B auch den gesamten Vorgang abbrechen Der Zusammenhang von Middleware Komponenten und die grundlegende Architektur von Rack wird in der Abbildung 7 3 angelehnt an dem Artikel Rack Middleware Examples veranschaulicht https github com seomoz rack authenticate Erscheinungsdatum 04 Juni 2010 http ephemera karmi cz post 663716963 rack middlewar xamples 17 18 7 3 Backend 111 Request RackckuthBasie Middleware 1 Rack Deflater Middleware 2 Response Abbildung 7 3 Uberblick beispielhafter Einbindungen v
241. ptimieren Die Optimierung in dieser Sinne kommt aus zwei grundlegenden Betrachtungen verf gbare Peer to Peer Plattformen wie Social Media Soziale Netzwerken werden ausgenutzt um die Vermarktung anzutreiben um Waren und Dienste perspektivischer Kunden pr zis anzubieten und zwar zu dem Zeitpunkt in dem sie es auch brauchen ohne die Belastung und Kosten die durch ein Besitz der Waren oder Diensten verursacht w rde Eine Umformulierung dieser Idee ist auch in einer Studie beantragt von Airbnt zu finden Sei es der Kauf von privat zu privat die Buchung einer Privatunterkunft f r den Urlaub oder die gemeinsame Nutzung von selten gebrauchten Gegenst nden Insbesondere die j ngere Generation hat die Vorteile einer konomie des Teilens wiederentdeckt und belebt sie dank Internettechnologie neu Hier liegt gro es Potenzial f r eine neue Nachhaltigkeit die auch politisch und gesellschaftlich unterst tzt werden sollte Der Aspekt der Nachhaltigkeit wird in SSbO10 auch notiert Wenn sich mehrere Personen ein Auto oder einen Rasenm her teilen und dieses bzw diesen nicht mehr selbst besitzen braucht man weniger Autos bzw Rasenm her und damit weniger nat rliche Ressourcen um dieselbe Menge an Personenkilometern bzw dieselbe Fl che an gem htem Rasen herzustellen Ohne weiter eingehen zu m ssen lassen sich die Vorteile des Sharing Economy zusammenfassen es wird gestrebt eine neue konomische Bewegung zu erstel
242. r die individuellen im Heimnetzwerk vorhanden Ger ten erfolgen jeweils mit einer zus tz lichen Aufwand Dem Extrapolationsverfahren zufolge lassen sich dann beide Szenarien behandeln sowohl der Umgang mit der Sensorik eines Smartphones als auch mit der eingebetteten Sensorik Das zu entwickelnde Kontext Modell muss daher diese Anforderung unterst tzen Weiteres hinsicht lich der Anforderungsdefinition lassen sich aus dem n chsten Kapitel entnehmen Ein weiterer Aspekt der Dom ne Smart Home ist die im Rahmen dieser Arbeit eingef hrte Sub Dom ne namens Smart Home Sharing welche im Folgenden behandelt wird 2 4 Smart Home 19 2 4 1 Smart Home Sharing als zentrale Auspr gung der Sharing Economy Kon zepte Die Sharing Economy oder Collaborative Consumption Bewegung verwendet das Diktum Nutzen statt Besitzen wie aus der Studie bekanntgegeben und hat sich in den letzten Jahren als ein neues sehr lukratives Gesch ftsmodell entwickelt Der Unterschied zu einem tradi tionellen Modell wird in der Einleitung des viel beachteten Buches The Mesh erl utert w hrend im Fall eines herk mmlichen Gesch fts ein Produkt oder Dienstleistung erstellt vermark tet bzw verkauft und damit hoffentlich auch ein Gewinn sammelt steht das Sharing Economy den Kunden mehrere Alternativen Werkzeuge sowie mehr Peer to Peer Kraft um die Vermarktung und letztendlich Nutzung des angebotenen Produktes zu o
243. r wie z B das Schwirren einer Festplatte abgelehnt wurde muss im Fall von mobilen Ger ten eine unauff llige Anzeige der Netzwerkaktivit t vorhanden sein Au er dieser spezifischen Best Practices lassen sich weitere allgemeinere Empfehlungen aus SBO7 entnehmen es muss wenn m glich ein asynchrones Interaktions und Kommunikationsmodell verwendet werden sodass andere Aktivit ten wie z B die Benutzeroberfl che nicht unterbrochen werden Weiterhin sollen die Interaktionen intuitiv und m glichst schnell durchf hrbar gehalten werden Der Schnelligkeitsfaktor kann durch das folgende Beispiel aus verdeutlicht werden wenn der Benutzer sich f r ein Treffen versp tet hat und sich dadurch beeilen muss wird der Schwellenwert der Lernf higkeit sehr niedrig sein Jedes Hindernis auf dem Weg zum Ziel bspw der Treffpunkt muss aus diesem Grund entfernt werden sodass man schnell auf die ben tigte Information zugreifen kann 5 4 Konzept zum Nutzungserlebnis UX 71 Im aktuellen Absatz wurden die von Mark Weiser genannten Prinzipien der Calm Technology als Hinweise f r eine optimale Gestaltung des Nutzungserlebnisses betrachtet daf r wurden eini ge Richtlinien in der Anwendungsdom ne der zu entwickelnden Softwarel sung bereitgestellt Der n chste Punkt auf der Agenda w re diese Prinzipien anzuwenden hierf r sind verschiedene At trappen engl mockups entworfen die sich in der Softwarel sung wiederfinden werden u
244. rden jedoch dient dies nur dazu dass die Wohnungsmieter hilfreichen rtlichkeiten mithilfe des Wohnungseigent mers lokalisieren k nnen Zum Beispiel k nnen Adressen von Su perm rkten in der N he der Wohnung den Mietern bereitgestellt werden 36 User Stories Dar ber hinaus m ssen bestimmte technische Systeme zur Verf gung gestellt werden um sich die Vision der Anwendungen vorstellen zu k nnen Diese Systeme begleiten die Anpassung der Woh nungsmieter am neuen Kontext und stellen die technische Realisierung des Konzeptes dar Folgende Systeme werden ben tigt e Frontend Der clientseitige Teil des Systems besteht aus zwei mobile Anwendungen welche je weils den beiden Gruppen von Akteuren zur Verf gung gestellt werden Das Frontend kommuni ziert mit dem Backend um die Funktionalit t des Systems gew hrleisten zu k nnen Es handelt um die folgenden Anwendungen Anwendung f r den Wohnungseigent mer Diese Anwendung stellt Werkzeuge zur Erfas sung der Daten ber die Wohnung und deren Bestandteile bereit Hiermit werden Instanzen des Kontext Modells siehe auch 1 5 2 erzeugt Anwendung f r den Wohnungsmieter Diese Anwendung stellt Werkzeuge bereit die die Ausnutzung der vorher erfassten Informationen erm glichen e Backend Der serverseitige Teil des Systems wird betrieben auf einem dedizierten Server System in der Wohnung und bearbeitet die meisten Daten bezogenen Aufgaben des gesamten Systems Au erdem ist
245. rderungen zusammengefasst die den allgemeinen Rah menbedingungen des zu leistenden Softwareentwicklungsprozesses betreffen Identifikationsnummer Anforderung AF P 5 1 Der Projektlaufzeit betr gt h chstens 6 Monate AF P 5 2 Es miissen periodische Meetings mit den Betreuern gehalten wer den Tabelle 4 5 Prozessanforderungen an der Softwarel sung 4 3 2 4 Qualitatsanforderungen Die Definition von Qualit tsanforderungen an einer Softwarel sung geh rt zu der Disziplin der Software Qualit tsmanagement Die Qualit tsanforderungen befassen sich damit die einzuhaltenen Qualit tsziele sowie die Ma nahmen zur Erf llung dessen festzustellen Identifikationsnummer Anforderung AF Q 6 1 Es muss eine Evaluation des finalen Prototyps durchgefiihrt wer den AF Q 6 2 Die Evaluation muss die definierten funktionalen Anforderungen anhand beziiglich ihrer Erfiillung untersuchen AF Q 6 3 Eine subjektive Qualit tsanalyse mithilfe eines Experteninter views kann durchgef hrt werden AF Q 6 4 Es m ssen bestimmte Qualit tsanforderungen an der Dokumen tation des Qualltextes eingehalten werden AF Q 6 5 Es sollen Prinzipien der objektorientierten Software Entwicklung mitberiicksichtigt und eingehalten werden wie z B SOLID AF Q 6 6 Es sollen Test betriebene Entwicklungsmethoden verwendet wer den wie z B BDD Tabelle 4 6 Qualitatsanforderungen an der Softwarel sung 4 3 3 Zusammenfassung
246. re with self configuring capabilities based on Standard and interoperable Communication Protocols where Physical and Virtual things have identities physi cal attributes virtual personalities and use intelligent interfaces whilst being seamlessly integrated into the information network d Actuators e d woen z H A d N Li Sensors j W KH gt d Si f lt 3j Comm ication Data Management amp Data Repositories Interfaces The Internet of Things Abbildung 2 2 berblick der Architektur von The Internet of Things loT Quelle Angelehnt an 2 6 Internet of Things 23 W hrend in eine ausf hrliche Beschreibung verschiedener Strategien f r die Architektur von IoT L sungen gegeben wird ist es an dieser Stelle ausreichend wenn die Hauptfunktionalit ten des kleinsten Bestandteils bzw eine Sache ein Ger t aufgelistet wird Eine Zusammenfassung istin zu finden die Funktionalit ten die von einem Ger t zu bieten sind um sich als ein Mitglied der Internet of Things zu sch tzen w ren die folgende e Daten sammeln und bertragen Das Ger t empfindet die Umgebung beispielsweise der K rper oder die Wohnung und sammelt Daten dar ber z B Temperatur und Lichtst rke Die bertra gung erfolgt entweder in die Richtung eines anderen Ger ts wie zum Beispiel ein Smartphone oder ein Server oder direkt ins Internet e Verschiedene Ger te anhand einem Ausl ser
247. ren auf den mit DataMapper miteglieferten Methoden zur Selektion eines bestimmten Datensatzes eine Instanz in der Relation all oder count Durch die Definition der Routen und der Instanz Logik Methoden die f r eine Instanz des Daten modells verf gbar sind wird eine bessere Verwaltung des Quelltextes erm glicht In seiner finalen Form wird ein Datenmodell folgenderma en in Ruby definiert External requires require dm is tree Internal resource references require_relative internal_asset require_relative attribute_set Internal requires require model logic data asset_definition real_asset_logic require model REST data asset_definition real_asset_routes class RealAsset lt InternalAsset Mark as a DataMapper Resource include DataMapper Resource Include Logic extend REST Routes Class level include RealAssetLogic 7 3 Backend 109 xtend RealAssetRoutes Auto generated property ID property id Serial key gt true property parent_id Integer required gt fals Single Table Inheritance property type Discriminator Associations has has n attribute_sets described by Associations belongs require_relative asset_category belongs_to asset_category through gt Resource has_category belongs_to user_profile possesses Tree is tree order gt nam end class RealAsset Als n chstes wird das bertragu
248. renden Relationen als eine einzige Migration gesehen die durch eine erneute Initialisierung behoben werden kann Nachdem die Relationen erstellt sind lassen sich diejenige urspr nglichen Datenbest nde dadrin speichern wie herausgestellt ist dieser Prozess durch den Bezeichner seeding beschrieben In diesem Fall werden die urspr nglichen Elementen des Datenmodells in der Datenbank mittels DML 7 3 Backend 99 Befehle wie z B INSERT INTO VALUES bef llt Data Manipulation Language DML ist eine Sprache mit einer Programmiersprachen hnlichen Syntax die f r die Erstellung Entfernung und Aktualisierung von Datenbest nde in einer Datenbank verwendet wird Es werden n mlich die Asset Category und andere Relationen wie CentralElement siehe auch Abschnitt 7 3 2 mit einem urspr nglichen Datenbasis bef llt Durch diese urspr ngliche Bef llung wird die weitere Modellierung der Umgebung so gesehen freigegeben der Wohnungseigent mer kann die vorhandene Menge an Kontext Elementen wie z B die AssetCategories sehen und eventuell erweitern Dadurch sind einige der technischen Vorbedingungen behandelt die f r die Benutzung bzw Bef l lung des urspr nglichen Datenmodells erforderlich sind Die Beschreibung der eigentlichen Benut zung des Kontext Modells mithilfe der mobilen Anwendungen wird im Absatz 7 4 in Detail vorge f hrt Umsetzung des Data Liberation Vorgangs Ein zentraler Prinzip d
249. rmationen zusammen gefasst Als Quelle f r diese Informationen nennen wir Menschen Sensoren wie GPS Empf nger Beschleunigungssensoren Netzwerk Monitore oder sogar andere kontextbewusste Anwendungen Beispiele von kontextbewusste Anwendungen sind digitale Reisef hrer diese stellen zugeschnittene 2 8 Kontext Modellierung 31 Informationen vorn je nach aktueller Lokation und Pr ferenzen des Anwenders Eine andere Anpas sung kommt vom Smartphone selbst indem das Rufzeichen und Ruflautst rke aufgrund der Lokation voraussichtlicher Aktivit t sowie das Begleiten des Benutzers anpasst HIMOS Dar ber hinaus ist Kontext Bewusstsein ein zentraler Baustein weiterer Technologien wie der Zu kunftstechnologie namens Ambient Intelligence die eine intelligente reagierende Umgebung mit tels Rechentechnik aufbaut Somit werden H user Krankenh user und Konferenzzimmer in der Lage sein die Aktivit ten ihrer Besitzer wahrzunehmen und diese Informationen wirksam einzusetzen indem die Bed rfnisse der Besitzer zu jeder Zeit automatisch erkannt werden Auf diesen Aspekt wird in auch eingegangen durch das Einsetzen von Sensoren in der Umgebung k nnen diese miteinander kommunizieren und gemeinsam zum Erkennen von Bewegun gen und letztendlich Aktionen oder Aktivit ten von einem zentralen System beitragen Eine zur Zeit g ngige obschon limitierte Anwendung von Kontext Bewusstsein im Rahmen von Ambient In telligence
250. rnational Conference on Pervasive Computing and Communications 2012 ISBN 9781467302586 S 171 179 PRECHELT Lutz Online verf gbare Folien der Lehrveranstaltung Softwaretech nik Freie Universit t Berlin SoSe 2011 URL http www inf fu berlin de inst ag se teaching V SWT 2011 Letzter Zugriff 19 Oktober 2012 2011 Vorlesung RAINER Mautz Overview of Indoor Positioning Technologies Slides In PIN 2011 ROGERS Rick LOMBARDO John BLAKE Meike Android Application Develop ment Shroff Publishers amp Distributors Pvt Ltd 2010 ISBN 8184047339 RUNGE Mathias QUADE Michael BLUMENDORF Marco ALBAYRAK Sahin Towards a Common Smart Home Technology 2009 RUPP Chris Requirements Engineering und Management Hanser Fachbuchver lag 2009 ISBN 3446418415 SATYANARAYANAN M Challenges in implementing a Context Aware System In Pervasive Computing 2002 S 2 SCHILIT B ADAMS N WANT R Context Aware Computing Applications In Proceedings of the 1994 First Workshop on Mobile Computing Systems and Appli cations Washington DC USA IEEE Computer Society 1994 WMCSA 94 ISBN 978 0 7695 3451 0 85 90 149 SB07 SBG99 Sch06 Sha03 Sib SLPO4 SSbO10 SW98 TGD 10 Tog92 TS07 Tun09 UHM11 VW12 Wag04 WB96 Wei91 SAVIO Nadav BRAITERMAN Jared Design Sketch The Context of Mobile Inter
251. roduktes zeigt Jedoch leidet Messa gePack wie viele andere open source Projekte unter der Erkrangung einer nicht unbedingt detail lierten Dokumentation Obwohl verf gbar und behandelnd den meisten Anwendungsf lle betrachtet die Dokumentation voraussichtlich veraltete Versionen des Produktes Ein Hinweis ist vom Team an dieser Stelle gegeben um Beispiele der Nutzung sehen zu k nnen m ssen die geschriebenen Testf lle betrachtet werden Dies implizit dass die aktuelle Dokumentation wie gesagt veraltet ist Trotz dieser Versuch sich aus der Testf lle zu informieren werden in den zahlreichen Tests jeweils nur Serialisierungen von vereinfachten Datentypen durchgef hrt Aus diesem Grund hat die Benutzung von MessagePack einige Probleme bei der Entwicklung des Frontends ergeben im Fall der Ruby Version des MessagePack Gems k nnen bliche Datenstruktu ren Hashes Maps Arrays per eine Zeile Quelltext serialisieren to_msgpack bzw deserialisie ren MsgPack unpack Die Zusammenfassung dieses Paragraphs kann folgenderma en lauten MessagePack stellt eine bin re Serialisierungsmethode die eine bessere Komprimierung der Daten bertragung gew hrleisten kann und wird meistens als eine Erweiterung zu einer bestehenden JSON Serialisierung eingesetzt Es werden verschiedene Programmiersprachen unterst tzt und es gibt eine einigerma en benutzbare Dokumentation Dar ber hinaus habe eigene Tests gezeigt dass eine weitere Kom
252. rum Warum repr sen tiert die Inferenz F higkeit eines Systems anders gesagt aus mehreren Dimensionen und Kontext Informationen eine Situation oder ein Szenario ableiten zu k nnen und die entsprechende System 2 8 Kontext Modellierung 29 landschaft anzupassen Schilit Adams und Want legen in SAW94 eine hnliche Perspektive dar die wichtigsten Aspekte des Kontextes sind Wo man ist Wer man ist sowie Welche Ressourcen sich in deiner N he befinden Dar ber hinaus ist die Wahrnehmung von Kontext Elementen bedeutsam im Fall von mobilem ubiquit rem Computing bei dem der Benutzer eine erh hte Bewegungsfreiheit hat Durch diese Mo bilit t treten Situationen auf in denen Kontext als Ganzes z B die aktuelle Lokation einer Person oder die Elemente der Umgebung h chst dynamisch ist Dieses Interaktionsmodell von mobilem Computing erwekct beim Benutzer den Eindruck dass Informationsdienste zu jeder Zeit und an je dem Ort erreichbar sind Damit steigern die Anforderungen an Dienste bzw Anwendungen sie m ssen sich dem aktuellen Nutzerkontext respektive dem breiten Spektrum von m glichen Situatio nen des Nutzers anpassen um die Mensch Maschine Interaktion zu unterst tzen oder besser gesagt mit situationsbezogenen Informationen anzureichern DA00 Weiterhin entspricht die oben genannte Definition von Kontext nur einem Teilbereich des m gli chen Nutzerkontextes Nutzerkontext wird definiert in als alles
253. rviceRepository 6 lt lt extend gt gt T 4003 lt lt extend gt gt lt lt extend gt gt INonRealtimeservice IRealtimeService I_RESTServiceBase lt lt component gt gt 8 Base REST HTTP Interface an OnE Tes a i Publisher Subscriber NonRealtimeService RealtimeService 7 lt lt subscribe gt gt lt lt publish gt gt T i i i 1 lt lt import gt gt lt lt use gt gt lt lt use gt gt lt lt import gt gt 1 vs Vv Persistence Storage J Data Mapper O RM RedisObjects lt lt send CRUD Operations gt gt PE lt lt send CRUD Operations gt gt 7 j O 1 lt lt component gt gt 8 i lt lt component gt gt 1 1 MainStorageDB lt lt use gt gt RealtimeStorageDB TRE SG redis lt lt archive gt gt 5001 5002 Abbildung 5 1 Uberblick der Architektur 5 2 Server Architektur und Funktionalitat Im Folgenden werden die Bestandteile des Server Systems beschrieben Es werden die bereit gestellten Dienste und weitere angebotenen Funktionalit ten wie die Datenspeicherung Komponente sowie die Komponente f r die Umsetzung des Kommunikationskanals eingef hrt Als erstes wird ein berblick der auf dem Server System laufenden Dienste gegeben 5 2 1 Dienste Ein wesentliche Aufgabe des Server Systems ist die Bereitstellung mehrerer D
254. s Multiple Devices 2009 UCKELMANN Dieter HARRISON Mark MICHAHELLES Florian Architecting the Internet of Things Springer 2011 ISBN 9783642191565 VIDELA Alvaro WILLIAMS Jason J W RabbitMO in Action Distributed Mes saging for Everyone Manning Publications 2012 ISBN 1935182978 WAGELAAR Dennis Towards a Context Driven Development Framework for Am bient Intelligence 2004 WEISER Mark BROWN John S The coming age of Calm Technology 01 1996 Nr July S 1 17 WEISER Mark The computer for the 21st century In Scientific American 265 1991 Nr 3 S 94 104 150 Literatur Wei03 WHZM12 Win11 WX08 WEISFELD Matt Object Oriented Thought Process The 2nd Edition Sams 2003 ISBN 0672326116 WAGNER Stephan HANDTE Marcus ZUNIGA Marco MARRON Pedro J On Optimal Tag Placement for Indoor Localization In 20 2 IEEE International Confe rence on Pervasive Computing and Communications 2012 ISBN 9781467302586 S 162 170 WINTER Andreas Folien der Lehrveranstaltung Software Technik Universit t Oldenburg SoSe 2011 Vorlesung WOJCIECHOWSKI Manfred XIONG Jinhua A User Interface Level Context Mo del for Ambient Assisted Living In HELAL S Hrsg Smart homes and health telematics ICOST2008 Springer 2008 S 105 112 Hiermit versichere ich dass ich diese Arbeit selbst ndig verfasst und keine anderen als die ange gebenen Quellen und
255. s Prototyps terung dieses Programms kann auch angesehen werden zur Zeit funktioniert diese kleine Anwen dung nur im Fall der privaten Klasse von IP Adressen n mlich 10 0 0 0 8 172 16 0 0 12 oder 192 168 0 0 16 welche normalerweise f r den privaten h uslichen Verbrauch eingesetzt sind Im Hinblick darauf muss die Funktionalit t dieses Programms manuell reproduziert werden wenn die Anwendung z B f r Testzwecke in einem beruflichen Netzwerk getestet werden sollte Zus tzlich wurde ein anderes Kommandozeile gesteuertes Programm entwickelt welches f r die im Abschnitt 7 3 1 genannte urspr ngliche Migration und Bef llung der Datenbank zust ndig ist Die Aufgabe dieses Programms ist nur die Sammlung bzw das Laden der involvierten Klassen und die Ausf hrung der Funktionalit t dieser Klassen Zudem unterst tzt ein weiteres Kommandozeile gesteuertes Programm die Verteilung des Zugangs wertes n mlich die Private Schl ssel f r die REST Services welche im Abschnitt 5 2 2 behandelt wurde Hiermit wird diesen Wert in dem Quelltext der mobilen Anwendungen aktualisiert Dar ber hinaus werden Werte aktualisiert die f r die k nftige Distribution oder engl deployment der An wendung relevant sind siehe auch 7 4 Die Ausf hrung dieses Programms kann als eine Vorbedin gung f r die erfolgreiche Distribution der Anwendungen angesehen werden Damit wird sicherge stellt dass alle erforderlichen Einstellungen durchg
256. sche Methoden oder Tech niken f r die Erstellung von Kontext Modellen anwenden Dieser Vorgang wurde mit der Existenz von Verkn pfungspunkten zwischen der einzelnen Phasen motiviert Weiter zu behandeln sind die genannten Techniken welche im Abschnitt behandelt werden Mnttp www soapui org 35 In diesem Kapitel werden zwei User Stories eingef hrt welche die Akteure und die Funktionalit t der Anwendungen vorstellen Diese Beispiele dienen dazu einen berblick des gesamten Konzeptes zu schaffen Diese User Stories beschreiben eine einigerma en idealisierte Benutzung der Anwen dung und werden in den kommenden Kapitel weiter ausgef hrt Zun chst werden grundlegende Aspekte wie einen bersicht des Diskursuniversums der An wendung eingef hrt die in der Beschreibung der User Stories eingegangen werden werden 3 1 Akteure Umgebung Systeme Im Folgenden werden die grundlegenden Bestandteile der User Stories beschrieben und n mlich die Akteure deren Umgebung und das Ihnen zur Verf gung gestellten System Das Konzept von Home Sharing enth lt haupts chlich zwei Gruppen von Akteuren und zwar e Wohnungseigent mer Der Wohnungseigent mer besitzt oder mietet eine Wohnung die direkt oder mithilfe eines Dienstleisters s u unter vermietet wird e Dienstleister Der Dienstleister spielt eine indirekte Rolle und entspricht in der Regel einer Firma die den Kontakt zwischen Wohnungseigent mer und Wohnungsm
257. schreibung oder die Sichtbarkeit dem Wohnungsmieter App freigegeben oder nicht angegeben werden Durch Bet tigen des Speichern Buttons werden die Informationen an das Backend ber tragen Damit werden Martins modellierte Wohnungsbestandteile wie die Einleitungen zu der neuen vollautomatisierten Kaffeemachine oder die wichtige Regel des Rauchverbots in seiner Wohnung auf einer Datenbank persistiert Die Vorbereitungsphase ist beendet wenn Martin die generierten QR Codes f r seine relevante Bestandteile z B die Kaffeemaschine ausdruckt und an einer gut sichtbaren Lokation wie zum Beispiel neben dem entsprechenden Ger t aufklebt Damit k nnen G ste sich die hintergelassenen Informationen anschauen Zum Abschluss wird Martin von der Anwendung daran erinnert dass die Signatur die f r seine n chsten G ste eindeutig ist noch denen mitgeteilt werden soll Er verschickt diese Signatur per E Mail eine der m glichen Umsetzungen der Distributionsphase Diese Best tigung der Identit t 3 2 Konkrete User Stories 39 k nnte wieder mithilfe von NFC oder mit der Fertigstellung eines signierten Installationspakets f r die G ste erfolgen dieses Thema wird weiter erl utert im Abschnitt Mietphase Der Ankunftstag seines Gastes Kathrin kommt und Martin begr t sein Gast Er erz hlt Kathrin von der neuen Technologie welche er in seiner Wohnung anbietet Kathrin ist zuerst skeptisch aber versucht ihre Meinung noch zu ndern nach
258. setzt sich das Ziel dieses gesamte Erlebnis anzureichern und damit als eine m glich hilfreiche Erweiterung der Home Sharing Idee zu agieren 4 2 Grundlagen Es muss zuerst eine Methodologie ein Prozess f r die Erhebung der Anforderungen verwendet werden in diesem Fall wird das oft genannte Modell zur Anforderungserhebung aus be nutzt Um die Anforderungen einheitlich und effizient definieren zu k nnen wird in der vorher ge nannte Arbeit das folgende Schema vorgeschlagen Rechtliche ich Anforderungs Verbindlichkeit Aktivit t 1 Bezeichner gt gt Subjekt Fc muss soll gt Akteure eg ai Objekt wird kann i optional KH optional Rechtliche lf Verbindlichkeit Anforderun i 5 gs gt Bedingung Lee Subjekt Erg nzung wird kann Aktivit t el Verrichtung Abbildung 4 1 Eine Schablone f r die Feststellung bzw Formulierung von Software Anforderungen Quelle Angelehnt an Rup09 Zus tzlich zu dieser Gliederung lassen sich weitere n tzliche Empfehlungen aus Win11 abbilden es wurden verschiedene Regel die f r jede Definition einer Anforderung gelten sollten Zwar sollte jede Anforderung folgende Richtlinien beachten e Formulierung in einem Hauptsatz e Inklusion einer einzigen Anforderung pro Satz 46 Anforderungserhebung e Die Bestandteile einer Anforderung sind Ein eindeutiger Bezeichner z B eine ID Nummer Eine Aktivit t die Verrichtung am Objekt Weiterhin m ss
259. sreichend hilfreich 145 ACS09 ALGMVM10 ATH06 BA09 BBH 08 BD05 BN04 BOQ 11 BPPO7 BR10 CFL 09 Cur04 Curl 1 ABLESON Frank COLLINS Charlie SEN Robi Unlocking Android A Devel oper s Guide Manning Publications 2009 ISBN 1933988673 AVILES LOPEZ Edgardo GARCIA MACIAS J Antonio VILLANUEVA MIRANDA Ismael Developing Ambient Intelligence Applications for the Assisted Living of the Elderly In Ambient Systems ANT 2010 S 53 60 ANAGNOSTOPOULOS Christos B TSOUNIS Athanasios HADJIEFTHYMIADES Stathes Context Awareness in Mobile Computing Environments A Survey In Wireless Personal Communications 42 2006 November Nr 3 S 445 464 BLUMENDORF Marco ALBAYRAK Sahin Towards a Framework for the Deve lopment of Adaptive Multimodal User Interfaces for Ambient Assisted Living Envi ronments In Universal Access in HCI 2009 S 150 159 BETTINI Claudio BRDICZKA Oliver HENRICKSEN Karen INDULSKA Jadwi ga NICKLAS Daniela RANGANATHAN Anand RIBONI Daniele A Survey of Context Modelling and Reasoning Techniques 2008 BECKER Christian DURR Frank On Location Models for Ubiquitous Computing In Personal and Ubiquitous Computing 9 2005 Nr 1 S 20 31 BECKER C NICKLAS D Where do spatial context models end and where do ontologies start A proposal of a combined approach In Proceedings of the First Internat
260. st Dar ber hinaus wurde explizit erl utert dass eine direkte Steuerung oder Beeinflussung der Aufgaben vom Evaluati onsbeauftragter nicht m glich ist jedoch wurde weiter erkl rt dass Fragen gerne beantwortet werden k nnen Der Ablaufplan wurde dadurch beendet dass alle Unklarheiten bevor der Ausf hrung der Aufgaben behoben werden sollen Als n chstes Teil des Dokumentes wurden die Aufgaben vorgestellt die zu l sen waren Eine Auflistung der Aufgaben erfolgt im Anhang A Die gestellten Aufgaben wurden so ausgew hlt dass sie die Funktionalit ten des Prototyps pr fen mit der genannten Zielsetzung Metriken und Freitext Angaben zu erfassen die zur eventuellen Be antwortung der Forschungsfrage dienen k nnen In wurde motiviert dass im Fall von einem allgemeinen System das im Rahmen einer Evaluation getestet werden soll muss die Auswahl der Aufgaben anhand denjenigen Verfahren im System die h ufig kritisch und wirklich relevant engl real sind erfolgen 8 5 Ausf hrung der Evaluation Der erste Schritt in der tats chlichen Ausf hrung eines Evaluationstermins ist die urspr ngliche Einrichtung des Prototyps in der Wohnung Dieser Schritt wird in dem n chsten Absatz n her einge gangen 128 Evaluation 8 5 1 Einrichtung des Prototyps in der Wohnung Einige Schritte wie z B die Initialisierung Migration und Bef llung der Datenbank siehe Para graph 7 3 1 vor der Durchf hrung des jeweiligen Evaluati
261. stellt wurden haben den Nach teil dass sie eine streng typisierte Anschauung der Daten erfordern nachteilig bei der Verwendung einer dynamischen Programmiersprache wie Ruby Andererseits erfordert den Umgang mit einem nicht typisierten eine Umwandlung engl typecasting im Fall von streng typisierten Programmier sprachen MessagePack bietet in Java verschiedene M glichkeiten zur Automatisierung dieses Vor Shttp www msgpack org 16 Artikel Protocol Buffers Avro Thrift amp MessagePack Erscheinungsdatum 01 Aug 2011 http www igvita com 2011 08 01 protocol buffers avro thrift messagepack 110 Umsetzung des Prototyps gangs mittels Techniken der Reflection eigene Tests auf einem mobilen Ger t haben diesen Vorgang als nicht optimal beurteilt Die gefundene L sung war die manuelle Umwandlung der Daten an hand Konventionen was die verwendeten Datentypen angeht zwischen Backend und Frontend Des Weiteren werden Ruby SDKs nicht von allen Alternativen angeboten Trotz dieser Marketing Mitteilung der Geschwindigkeit gegen ber JSON setzt MessagePack ein kompaktes bin res Format f r die schnelle bertragung von Mitteilungen im Rahmen einer Punkt zu Punkt bzw System zu System Kommunikation Dieses Konzept wird in Form verschiedener Bindings oder SDKs umgesetzt MessagePack kann in eine erhebliche Anzahl von Programmier sprachen eingesetzt werden welche die Interoperabilit t dieses P
262. stypen engl content type wie z B text plain f r primitive Datentypen oder img f r Bilder w hrend ein Provide beschreibt welche von einer Ressource bereitstellbaren Inhaltstypen sind Vorteilhaft bei der Ein bettung dieser Service Descriptions in HTTP Headers ist dass das HTTP Verb HEAD zu Nutze gemacht werden kann es werden dadurch nur die Headers vermittelt und keinen anderen Inhalt Der vom pREST vorgestellte Ansatz kann durch seine vereinfachte Herangehensweise beim Auf bauen von Datenpfaden in z B einem Sensornetzwerk verwendet werden Damit wird das grundle 2 8 Kontext Modellierung 27 gende Szenario einer kontextbewussten Anwendung umgesetzt die Daten aus einem Knoten wird f r die Konfigurierung eines anderen Knotens oder die Ausl sung eines Dienstes verwendet die von mehreren Quellen abgeleiteten bzw gemeldeten Datens tze sind aggregiert und zu relevanten Ereig nisse umgewandelt um eine Reaktion bzw Anpassung in der Umgebung mittels eines Aktors engl actuator zu erm glichen Zusammenfassend erlaubt pREST die ad hoc semi automatische Erstellung von Sensornetzwer ke die bei der Bereitstellung von Kontext Informationen zu einer oder mehrerer kontextbewussten Anwendungen beitragen kann Der Vorgang ist in diesem Sinne semi automatisch da diejenige In haltstypen die von den neuen Sensoren zu bermitteln sind vorher bekannt durch z B eine Be schreibung des Szenarios m ssen Daf r kann pREST
263. t Eventuelles Feedback vom Wohnungsmieter kann eingebaut werden und Vor bereitungen f r die n chste Vermietung k nnen anfangen Die von dieser Arbeit betrachteten Phasen sind die Vorbereitungs Einf hrungs und Mietphase mit der zus tzlichen Nennung erweiterter Perspektiven der Endphase Problematik an der Vorbereitungs phase stellt sich die Mangel an technischen Architektur die die analogen Pl ne des Wohnungs eigent mers z B bez glich der virtuellen zu jeder Zeit aufrufbaren Tour der Wohnung in einer digitalen Art und Weise unterst tzten und verwirklichen kann Davon abgesehen dass die Dienstleis ter keine solche L sung anbieten da sie normalerweise nur auf die Phase der Kontaktaufnahme und Buchung spezialisiert sind stellt sich diese Ebene als den Einstiegspunkt des Konzeptes Der Hintergrund f r die Einsetzung einer technologischen Ebene die die Wohnungsmieter w hrend des Mietintervalls unterst tzen kann l sst sich r ckverfolgen bis zu einem der zentralen Prinzipien aus der Dom ne Sharing Economy die Zusammengeh rigkeit und die Etablierung einer Gemein schaft f r geteilte Nutzung Sicherlich geh rt zu den Gr nden auch die Gastfreundlichkeit des Ei gent mers welcher sich freiwillig f r die Vermietung angemeldet hat und auf die Zufriedenheit der G ste achten muss sodass er sie k nftig mehrere Mieter willkommen kann Die Absicht des Wohnungseigent mers ist dann die Erleichterung des Anpassungspro
264. t mittels einer einseitig wirkenden Beziehung Eine spezialisierte Art von Beziehungen ist die Verallgemeinerung Weiterhin kann mittels MDA die in gekennzeichnete Herausforderung der Kontext Mo dellierung die Definition eines Mechanismus zur Verfeinerung des Kontext Modells welcher vom Entwurf Niveau bis hin zur Umsetzung seine G ltigkeit beh lt bew ltigt werden Dar ber hinaus stellt die genannte Arbeit eine weitere Anforderung an den Verfeinerungsmechanismus dieser muss erm glichen mehrere alternative Verfeinerungen bzw Anpassungen des Modells definieren zu k n nen Die Verfeinerungen k nnen im Fall von MDA als weitere Bestandteile des Plattform unabh ngigen Modells PIM entworfen werden Die Auswahl einer bestimmten Verfeinerung w rde dann anhand der aktuellen Systemparameter beispielsweise wahrgenommene Werte aus der Umgebung erfolgen Mit Hilfe des vorgestellten Meta Modells k nnen konkrete Auspr gungen bzw Kontext Modelle definiert werden um dieses Prinzip zu erl utern wird in IW SOS die Abbildung 6 2 als ein Beispiel eingef hrt pee op 1 emergency entity type position Person Abbildung 6 2 Beispiel eines konkreten Kontext Modells als Unterraum des durch das Kontext Metamodell umgefassten konzeptuellen Raumes Quelle WX08 80 Kontext Modellierung In der Abbildung 6 2 l sst sich ein Kontext Modell f r au ergew hnliche Situationen Emergency erkennen die durch die Entit t Person sowi
265. t t wie z B iana org Der Unterschied wird mit der Vorstellung eines Beispieles dargestellt Eine Query String basierte URI wie http iana org service jsp cat int amp id registrar ist quivalent zu der bereinigten Variante http iana org service int registrar Vorteilhaft an Clean URIs ist die Best ndigkeit wenn die Ressource immer noch existiert wird die URI f r eine lange Zeit noch erreichbar sein Zugleich l sst sich ein Clean URI leichter und logischer eingeben und behalten Zusammenfassend lassen sich die REST Prinzipien f r die Bereitstellung von REST basierten Web Services anwenden die in dieser Arbeit eine wichtige Rolle f r die Kommunikation zwischen Fron tend und Backend spielen wird wie im Abschnitt 5 2 erl utert wird Zugleich l sst sich mithilfe von REST Web Services auch der Prinzip von Service Discovery umsetzen wie es in dem kommenden Paragraph vorgestellt wird http stateless co hal_specification html http www amundsen com media types collection 26 Verwandte Arbeiten 2 7 1 Pico REST f r Komponentenintegration In werden die Grundprinzipien hinter Pico REST Kurzform pREST eingef hrt es wir ein Netzwerk und REST basierter Zugriffsprotokoll entwickelt die die vereinfachte aber m ch tige Vision des Web ber Daten und Dienste in die Welt der Ubiquit ren Computing und damit z B auch im Rahmen eines Smart Home Szenario berf hren soll Es wird damit versucht verschiedene
266. t t eines bestimmten Gegenstands ausgedr ckt werden Eine Eigenschaft ein Attribut kann einen Namen und eine Beschreibung tragen und kann zugleich hinsichtlich der Optionalit t und des Typs numerisch oder textuell angepasst werden Im Fall von InternalAssets k nnen verschiedene Metadaten erfasst werden welche im ber n chsten Paragraph erl utert werden 7 2 2 Einbeziehung von Smart Objects b Die im Paragraph 2 2 1 eingef hrten Konzepte des Smart Objects Forschungsfeldes werden in das Datenmodell fiir Home Sharing einbezogen in welchem die weitere Spezialisierung der vor her erl uterten InternalAsset Klasse namens VirtualAsset modelliert ist Hiermit wird es erm glicht zumindest auf einer konzeptuellen Ebene s u verschiedene zus tzliche dom nenspezi fische virtuelle Funktionalit ten an einem Gegenstand zu vergeben Die Bezeichnung eine Art von Web Services zeigt die Erweiterbarkeit des Prinzips es k nnen entweder generische Web Services GenericWebService bei denen eine WSDL Beschreibung vorliegt oder REST Web Services siehe auch Abschnitt D A bei denen eine spezifische Art von Beschreibung siehe dazu Abschnitt 7 3 5 vorliegt modelliert werden Bez glich der erwarteten Funktionalit t eines VirtualAssets werden zur Verringerung der Komplexit t keine Aussagen in diesem Modell getroffen Vorgesehen ist die Bereitstellung einer grundlegenden Funktionalit t die einige f r das eingekapselte
267. t normalerweise mit einer Senkung der Kosten verbunden aufgrund dessen dass die Instandhaltung nicht mehr unbedingt von einem spezialisierten Techniker durchgef hrt werden muss Weiterhin k nnte diese Idee als eine m gliche L sung f r die Inversion of Control Problema tik aus der Smart Home Dom ne angesehen werden Das Inversion of Control Problem wird in erkl rt w hrend in den blichen Desktop basierten Modellen der Mensch Maschine Interaktion die Systeme eigentlich als hilflose Ausf hrende der menschlichen Angaben angesehen werden ver ndert sich diese Situation im Fall von fortgeschrittenen kontextbewussten Systemen Da f r muss eine passende Abw gung gefunden werden zwischen der Erweiterung der Funktionalit t des Systems und der Beibehaltung des Kontroll Gef hls engl Sense of Control Vgl die kommerzielle IT Publikation Business Intelligence 3 0 Revolutionizing Organizational Data 2011 http www panorama com resources resource library 55 Im Laufe dieses Kapitels werden die haupts chlichen Merkmale der Architektur der Software l sung vorgestellt Zuerst wird ein abstrahierter berblick einzelner betroffenen Systeme gegeben Hierf r behalten jeweils die Bezeichner Backend Server System sowie Frontend Client System ihre Gleichwertigkeit und werden abwechselnd eingesetzt 5 1 berblick Die Softwarel sung besteht aus den grundlegend
268. t und spezifische Merkmale des Defekts Ein weiter m glicher Anwendungsfall bezieht sich auf die anf ngliche Konfigurierung des Sys tems der Techniker k nnte dem Wohnungseigent mer bestimmte Kontext verbundene Anleitungen in der Wohnung f r die ersten Benutzungen zur cklassen Zus tzlich k nnen solche Metainforma tionen weiter benutzt werden wenn die periodische Wartung von einem anderen Beauftragter durch gef hrt wird Dar ber hinaus w rde auch die M glichkeit bestehen den umgekehrten Weg zu betrachten und zwar das intelligente Haus konnte im Fall von unerwartete Ereignisse Fehlermeldungen an die War tungsstelle zuschicken Dieser Anwendungsfall wurde nur zur bersicht eingef hrt und berschreitet voraussichtlich den vorgestellten Umfang dieser Arbeit Au erdem lassen sich Erweiterungen bzw Verbesserungen der vorgestellten Techniken im Rahmen einer Smart Home Umgebung nennen beispielsweise k nnte die Indoor Lokalisierung automatisch erfolgen ohne den Eingriff z B das Einscannen einer QR Code des Benutzers zu erfordern wie be reits im Abschnitt 2 5 vorgestellt Jedoch k nnen einige Zukunftstechnologien f r die Lokalisierung und Informierung seiner G ste eingesetzt werden NFC Tags k nnen in die Wohnung bzw in einzel nen R ume oder auf Gegenst nde installiert werden um eine automatische Kontext Anpassung zu erm glichen 3 3 Zusammenfassung Im diesen Kapitel wurden m gliche User Stories v
269. ten Vision verkn pfen an dieser Stelle nicht aufh ren werden Der Zusammenhang zwischen Home Sharing und The Internet of Things ist schon sichtbar viel leicht wird Home Sharing der Katalysator f r die kommerzielle Akzeptanz f r Felder wie Internet of Things oder sogar Smart Home Wir befinden uns aber nur am Anfang dieser Integration zwi schen Dom nen in einer urspr nglichen Phase der Evolution Die Architektur und zugleich die Vision namens Internet of Things kann mithilfe des folgenden Bildes 9 1 veranschaulicht werden N scalability gt Y A Future Zz e Internet Internet Extranet OfThings of Things y w d of Things and S Intranet People a of Z Things Abbildung 9 1 berblick der Architektur von The Internet of Things loT Quelle Mit einem fast exponentiellen Wachstunf Jin den letzten Jahren und mit wachsender Akzeptanz des Publikums bleibt Marktf hrer Airbnb an der Spitze der Home Sharing Dom ne Die Frage die sich noch stellt ist folgende wohin sollte es weitergehen Was f r Evolutionspl ne stellen sich die Gr nder vor Es ist alles nur eine Frage der Zeit bis eine neue Konvergenz entsteht 9 2 Future Work Hinsichtlich eventueller zus tzlicher Forschungsvorhaben bez glich dieser Arbeit lassen sich fol gende Punkte in einer zusammengefassten Art und Weise nennen e Die Verkn pfung der Situation in den einzelnen Kontext Informationen stel
270. tend kann den Kommunikationskanal von Eigent mer zu Benutzer bereitstellen AF F 2 7 Das Wonungseigent mer Frontend muss verschiedene M glich keiten zur Bef llung des Kontext Modells anbieten AF F 2 8 Das Wonungseigent mer Frontend muss geographischen Daten erfassen k nnen AF F 2 9 Das Wonungseigent mer Frontend muss nachtr glich Elemen te des Kontext Modells anpassen k nnen bearbeiten einf gen l schen AF F 2 10 Das Wonungseigent mer Frontend soll Elemente des u eren Kontextes erfassen k nnen AF F 2 11 Das Wonungseigentiimer Frontend kann eine Ubersicht der mo dellierten Elementen in der Wohnung anzeigen AF F 2 12 Das Wonungseigent mer Frontend kann ein Element des Kontext Modells mit eigenen definierten Eigenschaften erweitern AF F 2 14 Das Wohnungsmieter Frontend muss das bef llte Kontextmo dell anfragen k nnen AF F 2 15 Das Wohnungsmieter Frontend muss eine Auflistung der model lierten Elementen des Kontext Modells anzeigen k nnen AF F 2 16 Das Wohnungsmieter Frontend muss zumindest eine Methode der Indoor Lokalisierung anwenden k nnen AF F 2 17 Das Wohnungsmieter Frontend kann erweiterte Methoden zur Indoor Lokalisierung wie z B NFC benutzen Tabelle 4 2 Funktionale Anforderungen am Frontend Weiterhin lassen sich nicht funktionale Anforderungen definieren 4 3 2 Nicht funktionale Anforderungen Unter der Kategorie der nicht funktionalen Anforderungen fallen feststellbare Aspekte eines Sys
271. tenz der nicht zustellbaren Mitteilungen hat als Basis verschiedene AMQP spezifische Konzepte die in der Abbildung B5 2 zusammengefasst sind 3 Consumer Abbildung 5 2 Zentrale Konzepte des AMQP Netzwerkprotokolls Quelle Angelehnt an http rubyamgp info articles getting_started 5 3 Client Architektur und Funktionalit t 63 Die Konzepten lassen sich kurz folgenderma en veranschaulichen ein oder mehrere Erzeuger Pu blisher verbinden sich mit dem Broker und verschicken mehrere Mitteilungen mittels AMQP die f r einen bestimmten Posteingang oder Poststelle Exchange gemeint sind In der Post werden Kopien dieser Mitteilungen zu den entsprechenden Abonnenten die Verbraucher anhand spezifi scher Regel auf den Weg Route zu dem f r einen bestimmten Verbraucher Consumer zust ndigen Postfach Queue geliefert Ein wesentlicher Unterschied zwischen AMQP und anderen Protokollen f r den Austausch von Mitteilungen Instant Messaging IM wie z B XMPP Extensible Messaging and Presence Protocol ein Netzwerkprotokoll f r den Austausch von Mitteilungen auf XML basierend ist folgende wegen der Abkoppelung der wesentlichen an der Kommunikation teilnehmender Parteien die Erzeuger und die Verbraucher l sst sich das Konzept von Pr senz engl presence im Fall vom AMQP nicht umsetzen Trotzdem lassen sich daf r andere Systeme anwenden wie in Kapitel 7 3 4 erlautert wird Weiterhi
272. ter dezent darauf hingewiesen wird dass vor dem Gebrauch des spezifischen Gegenstandes nachgefragt werden sollte ob dies m glich w re e Bilder PictureSet Durch diese Metadaten k nnen Bilder zu den einzelnen Gegenst nden assoziiert werden Diese Informationen k nnen zu einer erleichterten Assoziierung der digital vor gestellten Informationen mit dem Gegenstand aus der realen Welt bzw aus der Umgebung dienen Bilder werden in Fotogalerien gruppiert und lokal hei t auf dem Server System gespeichert e Regeln RuleGroup Hiermit werden Regeln erstellt die bei oder vor der Benutzung des ent sprechenden Gegenstandes zu beachten sind Diese Informationen werden zur Zeit nur in einer tex tuellen Form erfasst und entsprechend dargestellt jedoch k nnte eine weitere Entwicklung auch den Fall vorsehen dass statische vorhandene Regeln eine automatische Wirkung bei der Benut zung haben Beispielsweise k nnte dadurch erm glicht werden dass jeder Gegenstand welcher mit der Regel Bitte nicht benutzen versehen ist w hrend oder nach der Mietphase wieder auf die Einhaltung dieser Regel berpr ft wird Hilfreich an dieser Stelle ist eine Liste mit allen Ge genst nden die gepr ft werden sollten Innerhalb des Diagramms wurden die Klassen UserProfile und UserType auch als Teile des Asset Metadata Softwarepakets einbezogen Diese Ma nahme wurde eingef hrt sodass das Kon zept des Besitzes im Rahmen des Kontext M
273. tige Arbeiten von Bedeutung sein k n nen wird ein m glicher Weg dieser Arbeit durch die technologischen Neuheiten beschrieben Zum Abschluss l sst sich res mieren dass die Weiterarbeit an den Konzepten die vielversprechende The matik der Home Sharing Dom ne weiterentwickeln k nnte https developer qualcomm com mobile development mobile technologies peer peer alljoyn Artikel Google s Platform Extends Its Reach With Android Home Erscheinungsdatum 05 November 2011 http www wired com gadgetlab 2011 05 android at home google io 139 6LoWPAN AAL AF AGB AMQP API BDD BI CC PP CERP CML CRUD DB DDL DML DSL FM GPS GUI GUM HAL HMAC HTTP HTTPS ID IDL IEC IEEE IKT IM IP ISO IT JSON LD MAC MDA MIME MOF MVC NASA NFC O RM IPv6 over Low power Wireless Personal Area Networks Ambient Assisted Living Anforderung Allgemeine Gesch ftsbedingungen Advanced Message Queuing Protocol Application programming interface Behaviour Driven Development Business Intelligence Composite Capabilities Preference Profile Cluster of European Research Projects Context Modeling Language Create Read Update and Delete Database Data Definition Language Data Manipulation Language Domain Specific Language Frequency modulation Global Positioning System Graphical User Interface Guide to the Expression of Uncertainty in Measurement Hypertext Application Language Hash bas
274. tralElement getDescription String H 1 Attribute e getLocation Location i 1 1 Bee Statisch z B is numeric bool Apartment 1 __ is optional bool lt lt interface gt gt onsite of E E ISpecificVirtual ssetFunctionsservice lt ___ annotated with Abbildung 7 1 berblick des Datenmodells mit folgenden Bestandteilen Asset Definition a Virtual Assets b sowie Asset Metadata c dem l sst sich das Verfahren hinsichtlich der Absicherung des Kontext Modells vom unberechtigten Zugang Die Rolle der AccessToken Klasse wurde im Laufe des Abschnittes 6 2 2 behandelt mithilfe eines Private Key Verfahrens absichern wie im Abschnitt 7 3 5 beschrieben wird Dar ber hinaus tibernimmt das Datenbanksystem die Verwaltung und Zuordnung von Rollen Das Konzept der Zugangsrollen wurde im Absatz 6 2 2Jeingef hrt wie im Paragraph 7 3 I vorgestellt wird 7 2 1 Erfassung von Gegenst nden a Die erste unterst tzte Funktionalit t des Datenmodells f r Home Sharing ist die Erfassung von Gegenst nden aus der Wohnung Hierf r wird die Basis Klasse Asset zur Verf gung gestellt wel che sich in Gegenst nde innerhalb der Wohnung InternalAsset oder rtlichkeiten au erhalb der Wohnung ExternalVenue spezialisiert Die Verbindung mit dem r umlichen Modell wird durch eine Assoziation dargestellt ein Asset ist einer bestimmten geometrischen oder symbo lischen Lokation zu
275. uitous Computing Mark Weiser hat den Begriff Ubiquitous Computing UbiComp zum ersten Mal im Jahr 1991 gepr gt durch seine einflussreiche Arbeit The Computer of the 21 Century Wei91 Das Konzept beschreibt eine m gliche Zukunft in der allgegenw rtigen Rechnersysteme den Alltag der Menschen unterst tzen sei es in der eigenen Wohnung oder bei der Arbeit Es entsteht dadurch eine konti nuierliche Interaktion des Benutzers mit vielen drahtlos vernetzten Rechnersystemen HCH 11l Eine andere Perspektive wird in gegeben die haupts chliche Zielsetzung von Ubiqui tous Computing ist die Unters tzung oder Erweiterung engl augmentation einer vom Benutzer gef hrten Aktivit t in einer m glichst unsichtbare unauff llige Art und Weise Diese Rechnersysteme w rden im Hintergrund in einer unsichtbaren unauff llige Weise arbeiten Die Menschen w rden dadurch von der Ausf hrung verschiedener m hsamen Routinearbeiten be freit Die in zitierte und verbreitete Definition lautet wie folgt unter ubiquit ren Computing versteht man jede Computing Technologie die eine menschliche Interaktion au erhalb einem ein zigen Arbeitsplatz bzw Workstation erlaubt Beispiele f r Technologien die f r ubiquit r gehalten werden k nnen w ren Stift basierte Technologie Handger te oder mobile Ger ten zusammen mit gro angelegten interaktiven Displays sowie Stimme und Vision basierte Technologien Folglich l sst sich an dieser
276. ung darin die Smart Features eines angereichertes Objekt mittels Anwen dungen Apps zu Nutze zu machen 16 Verwandte Arbeiten Die aus der Smart Home Welt bekannte Problematik der fehlenden standardisierten Schnittstel len siehe auch tritt in diesem Fall auch auf eine Interoperabilit t zwischen Smart Products L sungen wird dadurch aufgehalten da es keine gemeinsame Infrastruktur gibt die Produkte vom verschiedenen Anbieter und verschiedene Wirtschaftssektoren zusammenbringt RQBA09 Damit kann die Vision eines einheitlichen Okosystemes wo jede entwickelte Technologie zus tzlichen Nutzen f r existierende Ger te und Dienste mit sich bringt nicht erf llt werden Dieses Konzept eines Objektes das zusammen mit Smart Features und eine entsprechende tech nische Architektur f r die Bereitstellung von Intelligenz als ein Smart Object agieren zu k nnen wurde in dieser Arbeit konzeptuell umgesetzt Der entsprechende Beitrag befindet sich in dem erstell ten Datenmodell f r Home Sharing im Paragraph 7 2 2 2 3 Ambient Assisted Living AAL Die Informationsgesellschaft entwickelt sich in eine neue Richtung in der sich die Computing Technologie von dem etablierten Paradigma des festen Arbeitsplatz entfernt BA09 Das neue Post PC Paradigma umfasst verteilte Systeme die mit einem breiten Spektrum von Ger ten Vorrichtun gen und Sensoren vernetzt sind und dadurch Zugang zu mehreren Diensten anbieten
277. ung sich befindet bearbeitet werden Nach der Bet tigung einer Auswahl gelangt der Benutzer zur n chsten Aktivit t welche im Folgenden behandelt wird AssetAddActivity Durch diese Aktivit t werden Informationen ber die zu erstellene bzw zu erweiternde Instanz einer AssetCategory erfasst Es werden drei Tab Komponenten zur Verf gung gestellt die in einem entsprechenden Absatz als n chstes beschrieben werden Neben der Zuweisung eines Namen einer Beschreibung oder dem Hinzuf gen eines oder meh rerer Photos stehen dem Benutzer zur M glichkeiten zur Ver ffentlichung der Instanz z B des Gegenstandes bereit Dar ber hinaus l sst sich eine Eingabe ber die permissive oder nicht per missive Verwendung USAGE_PERMISSION der Instanz ber eine Combo Box Komponente machen Die Erfassung von Metadaten wird unterst tzt durch mehrere ExpandableListViews die jeweils die Ver nderung der erfassten oder vorhandenen Attribute Regeln sowie Anwendungs hinweise erm glicht Ein genanntes Merkmal wie z B ein neues Attribut im Datenmodell als Attribute gekennzeichnet kann mithilfe eines Dialogfensters erstellt werden Die genannten 122 Umsetzung des Prototyps Bearbeitungsm glichkeiten L schen Bearbeiten sind in jeder Kategorie von genannten Metada ten vorhanden Schlie lich l sst sich die Lokation der Instanz feststellen Hierf r wird eine Liste der aktuell mo dellierten R ume wenn vorhanden bereitgestellt Der Be
278. uszulesen Der letzte Schritt bei der HMAC Authen tifizierung ist die erneute Berechnung des Hashwertes anhand der ausgelesenen privaten Schl ssel Wenn das entstehende Wert mit dem bermittelten bereinstimmt wird die Anfrage als authentifiziert bezeichnet und weiter in die Bearbeitungskette zugel sst Die genannten Erweiterungen zu dem rack authenticate Gem wurden tempor r in der Ent wicklungsphase im Quelltext durchgef hrt um die berpr fungsphase der HMAC Signatur einzutei len zu dem Zweck eine eventuelle fehlerhafte berpr fung identifizieren zu k nnen Dar ber hinaus wurde eine Erweiterung der Hashwert Berechnung s o durchgef hrt in dem die performantere mit Ruby 1 9 mitgelieferte Bibliothek OpenSSL f r die Berechnung des Hashwertes angewendet wurde RFC 2104 http www ietf org rfc rfc2104 txt 112 Umsetzung des Prototyps Urspr nglich wurde eine externe Bibliothek namens ruby hmac f r die Berechnung der SHA1 256 Hashwertes angewendet welche eine wesentlich geringere Performanz zeig Nachdem die wesentlichen Aspekte der Umsetzung der REST API vorgestellt wurden werden in den kommenden Abschnitten Details gegeben ber die Aufstellung der API mithilfe eines Web Ser vers sowie die Beschreibung der verf gbaren Routes als die Beantwortung einer OPTIONS Anfrage Beschreibung und Entdeckung von REST Web Services Ein grundlegendes Prinzip des Grape mini Frameworks ist die Kompilierung von Routen ein Prin
279. utzers statt 5 4 Konzept zum Nutzungserlebnis UX 69 sie sind daher tief im pers nlichen Kontext des Benutzers bzw Besitzers eingebunden Um dieser Kontext und dessen Bestandteile ausnutzen zu k nnen ist eine Analyse der einzeln berlappenden Ebenen erforderlich Diese entstand in der genannten Arbeit und l sst sich anhand der Abbildung 5 7 erl utern Abbildung 5 7 berblick des mobilen Kontextes in dem mobile Interaktionen stattfinden Quelle SBO7 Die M chtigkeit des Modells berschreitet die bliche Tiefe an der eine mobile Interaktion stattfin det und eignet sich aus dieser Hinsicht nicht f r alle Arten von Anwendungen Jedoch gibt das Modell einen berblick f r diejenige F lle in dem tiefgreifende Aspekte wie Kultur oder eine Vielfalt von unterst tzten Aktivit ten des Benutzers wichtig sind Au erdem lassen sich aus der Arbeit wichtige Perspektiven mitnehmen bez glich zu ber cksich tigender bester Methoden zur Gestaltung von mobilen Interaktionen Diese basieren auf der Theorie und Praxis der Dom ne der Mensch Maschine Interaktion und sind in der folgenden Auflistung zu sammengefasst worden e Alle mobilen Interaktionen sind Benutzer getrieben Es ist eine hohe Relevanz der Anwen dung gefragt um diese nutzen zu wollen wie genannt greift eine mobile Interaktion ein in die pers nliche Welt des Benutzers Deshalb m ssen Inhalte und Aktivit ten gew nscht sowie an gefordert werden Ei
280. ware Komponente anbietet Mittels Rack werden HTTP Anfragen in einer sehr einfachen uniformen API im minimalster Form auch durch eine einzige Zeile gekapselt Als Inspiration f r die Erstellung des Entdeckungskonzeptes diente die neue Technologie namens RESTdesd die die ma gebliche REST Beschreibung von Fielding insb hinsichtlich der Benutzung von Hypermedia sowie vorhandener Semantic Web Technologie wie Notation3 N3 Konzepte aus DBPedia oder Reasoners verwendet Weiterhin zeigen aktuelle Forschungsrichtungen wie LG12 dass die fehlende Unterst tzung von Hypermedia und die Benutzung vieler verschiedener Repr sentationen der Ressourcen was nicht mit den RESTful Prinzipien bereinstimmt zu zerbrechlichen Architekturen f hrt Damit werden vorhandene REST Architekturen nicht mit der Datenexplosion die mit der Entwicklung des Internet of Things Konzeptes zu erwarten ist Schritt halten k nnen In der genannten Arbeit wird JSON LD vorgestellt eine Repr sentation der Ressourcen die Konzepte der Semantic Web Welt unterst tzt als eine m gliche Methode ein wahrhaftes RESTful Web Service zu entwickeln LD steht f r Linked Data und stammt ebenso aus der Welt der Semantic Web Technologien Die Umsetzung dieses Konzeptes wird in voller Breite weiter in Kapitel 7 3 5 erl utert Die eingef hrten Einzelteile der Architektur beschrieben sicherheitskritische Aspekte wie z B die Austausch von HTTP Mitteilungen welche
281. wendung n mlich das Frontend auszuf hren Die Zielsetzung w re die ben tigten Anpassung des Mieters am neuen Kontext die Wohnung einigerma en zu erleichtern Mit diesem Vorgang der Bef llung der CentralElement Relation anhand der Kommandozeile gesteuerten Angaben zum Profil sind weitere Seed bzw Bef llungsvorg nge verkn pft dieser Aspekt wird im Paragraph behandelt AttributeSet Im Fall der AttributeSet Klasse wurden ein paar beispielhaften Attribute vorhandener Kate gorien vergeben Der Vorgang startet mit dem Auslesen der daf r zust ndige Datei welche in einem YAML Dateiformat bereitgestellt wird YAML Yet Another Markup Language ist eine vereinfach te Auszeichnungssprache engl markup language die vielen blichen Datenstrukturen serialisieren kann Ein mit Ruby mitgelieferten Softwarepaket ist bei dem Auslesen der YAML Datei benutzt Die Umwandlung erfolgt entsprechen danach wo z B nach einer bestimmten Vereinbarung gesucht wird ein optionaler Attribut ist im Text mit einem Asterisk markiert Nachdem wird versucht die vorhandene Wert als einen bekannten Datentyp wie z B Integer oder Float zu interpretieren Wenn diese Umwandlung nicht m glich ist wird die angegebene Wert f r eine allgemeine Zeichenkette String gehalten Die Umwandlung ist fertig sobald die ausgelesenen Schl ssel und dazugeh rigen Werten wie z B anzahl St hle 2 f r die Kategorie Tisch in einen Datenmodell kon
282. werden SQL Befehle der Typ DDL verwendet um die Datenbank f r die Benutzung von der Wohnungs mieter sowie eigent mer Anwendunge vorzubereiten Data Definition Language DDL ist eine Sprache mit einer Programmiersprache hnlichen Syntax womit Datenstrukturen insb Datenbank schematas definiert werden k nnen Die Steuerung des Initialisierung Vorgangs erfolgt per Komman dozeile notwendig daf r ist nur der interne Name der Datenbank wie z B HomeSharingDB1l wenn aber keinen Namen eingegeben wird wird automatisch ein generischer Name angewendet Die Initialisierung wird dadurch ausgepr gt dass mehrere DDL Befehle ber die Verbindung aus gef hrt werden womit die ggf bestehende Datenbank gel scht und neu erstellt wird Weiterhin er folgt eine erneute Erstellung der genannten pro Datenbank verf gbaren Rollen der Datenbankad ministrator und die eingeschr nkten Datenbankbenutzer ein Datenleser Benutzer und ein Daten Lese Schreiben Benutzer Wie der Name es schon eindeutet beh lt der Datenleser nur Lese Rechte w hrend der Lese Schreiben Benutzer dazu Schreiben Rechte auf dem entsprechenden Datenbank beh lt Letztendlich kann der Datenbankadministrator die erstellte Datenbank verwalten das hei t Benutzer Relationen und andere Elemente einf gen bearbeiten oder l schen Bevor die Beschreibung fortgesetzt wird m ssen einige Details hinsichtlich der Umsetzung der im Abschnitt aufgestellten Sicherheitkonzept
283. werden sollte 132 Evaluation 8 7 Zusammenfassung Am Ende der Analyse k nnten die folgenden Aussagen hinsichtlich der aufgestellten Forschungs frage getroffen werden Eigenschaft des Kontext Modells Erweiterbarkeit Flexibilit t Unterst tzung durch die prototypische Umsetzung Das Kontext Modell kann mit eigenen Kategorien und Gegen st nde erweitert werden Die Evaluation zeigte dass die Erfas sung mehrerer Metadaten die in dem urspr nglichen Konzept nicht miteinbezogen sind auch erw nscht ist Eine weitere Ent wicklung des Modells k nnte in dieser Hinsicht die Funktionalit t enthalten weitere Metadaten zu erfassen Allgemeinheit Das Kontext Modell ist spezifisch f r das Home Sharing Sze nario aufgelegt Die Evaluation zeigte dass die damit erfassten Datenbest nde auch f r weitere Szenarien rund um die Wohnung angewendet werden k nnen Erh htes Sicherheitsgrad Das Kontext Modell verf gt ber Zugriffs und Rechtekontrolle die jeweils im Laufe der Evaluation implizit von den Probanden benutzt worden sind Eine Frage bez glich der von der Softwa rel sung geleisteten Datensicherheit kann auch als Grundlage f r den Bedarf einer umfassenden Sicherheitspolitik verwendet wer den und zeigt zudem die Interesse der Benutzer an dieser Thema tik Echtzeit F higkeit Das Kontext Modell wurde nicht explizit anhand seiner Perfor manz getestet Trotzdem zeigen Kennzahlen aus der
284. xperience die im Mittelpunkt der Gestaltung aller Benutzungoberfl chen stehen sollte Diese Prinzipien wurden beachtet bei der Definition des gesamten User Experience Konzeptes die in vorgestellt wird 2 2 1 Smart Objects Das im Rahmen der Ambient Intelligence eingef hrten Paradigma n mlich die Einbettung von minimalen Rechnersystemen in der Umgebung kennt eine Auspr gung durch den Forschungsfeld na mens Smart Objects Gem dieser Vision werden allt gliche Objekte wie z B ein Spiegel welcher personalisierte Nachrichten oder den aktuell gemessenen Energieverbrauch des Hauses darstellt mit Intelligenz anreichert KLNO8 Dieses Konzept n hert die Prinzipien der verwandten Forschungsdom ne namens Internet of Things siehe auch 2 6 jedenfalls mit dem Unterschied dass die Intelligenz normalerweise nicht direkt im Objekt vorhanden ist die meiste Programm Logik die Entscheidungstreffen sowie die Wahrnehmung der Umgebung ist auf einem zentralen System die Infrastruktur gelagert KLNO8 Das Objekt selber dient zur Identifikation Verfolgung und Teilung s u ein Beispiel eines Smart Ob jects sind einzelne Produktbestandteile im Kontext der allgemeinen Fertigung die mit RFID Radio Frequency Identification Ein Tag erm glicht die automatische Identifizierung und Lokalisierung von Gegenst nden und erleichtert damit die Erfassung von Daten Tags vorgesehen werden Weiterhin lassen sich diese Smart Ob
285. zesses in der Mietphase dem Wohnungsmieter wird ein neuer Kontext die Wohnung Umgebung und anderen Aspekte neuen Situationen begegnen und daf r ist zu erwarten dass eine Eingew hnung n tig wird da der Mieter versucht die Wohnung kennenzulernen Eine technologische Unterst tzung dieser Ver suches w re sinnvoll dabei zu beachten ist dass die einfache Bereitstellung bzw Darstellung aller Informationen der Wohnung berlastend w re beispielsweise w rden Tipps zur Vorbereitung einer Tasse Kaffee im Fall von nicht Kaffee Trinker berfl ssig w hrend eine Benachrichtigung um 20 Uhr in der auf eine wichtige Hausregel zur ckgegriffen wird die erst ab 23 Uhr gilt unn tig ist In dieser Hinsicht wird es versucht eine Situations bzw Kontext abh ngige Anpassung zu ge w hrleisten z B anhand der aktuellen Lokation des Mieters werden nur Informationen aus seiner N he dargestellt Diese Anpassung am Kontext engl Context Adaptation ist zu einer alternativen 1 3 Problemstellung 5 Definition von Kontext aus GL08 zusammengefasst wo Kontext als die F higkeit nderungen der u eren Umgebung verstehen und darauf reagieren zu k nnen beschrieben wird Die bertragung dieser Sichtweise in der Dom ne von Home Sharing bedeutet dass die Woh nungsmieter sich mit der Umgebung die neue Wohnung vertrauen werden m ssen Es gibt keine eindeutig anwendbaren Strategie zur Kontext Anpassung da der Umfang der m glich
286. zierten Paragraph Die genannten Einstellungen werden dank einem Feature von Ruby automatisch durchgef hrt bei der Vererbung der Klasse BaseAPI von einer spezialisierten Klasse Wie bei einer normalen Ver erbung bleiben die Einstellungen der Vater Klasse bestehen w hrend die spezialisierte Klasse eine eigene REST API definiert Weitere Details zur Spezialisierung werden in einem kommenden Ab schnitt gegeben werden Definition einer erweiterten API f r die Einkapselung beliebiger Bestandteile des Da tenmodells Die Spezialisierung der BaseAPI Klasse wird durch die Bestandteile des Datenmodells siehe auch 7 2 ausgepr gt und ist in der Basis Klasse BaseModelAPI zusammengefasst Zum Beispiel 108 Umsetzung des Prototyps erlaubt die AssetCategory Klasse Teil des Datenmodells die Definition einer Route f r eine GET tree Anfrage welche die Baum Struktur der einzelnen Kategorien von Gegenst nden zu r ckliefert Die Art und Weise in der dies erm glicht wird liegt im Fokus dieses Abschnittes Der erste Schritt ist das Laden der Modell Spezifikation ein rake Task namens model rest steht daf r bereit und erwartet als Parameter die Namen der einzelnen Datenmodelle Rake Ruby make hnlich zum make Werkzeug aus der Programmiersprache C ist ein Werkzeug zur Verwaltung von Software Aufgaben Tasks die normalerweise routinem ig ausgef hrt werden m ssen wie z B die Durchf hrung von Tests oder die Erstellung eines Buil

Download Pdf Manuals

image

Related Search

Related Contents

EHD60030P doc tech    Ingenico 7780 User's Manual    Regolazioni della funzione KARMA  RCA 29240 Telephone User Manual  î?zÇ>unusm - Whaley Food Service  

Copyright © All rights reserved.
Failed to retrieve file