Home

entwicklung eines wiederverwendbaren frameworks zur

image

Contents

1. 74 6 1 die wichtigsten Packages mit ausgew hlten Klassen 81 6 2 loaderPackage mit den asynchronen Requests Ausschnitt 85 6 3 drei Screenshot Ausschnitte des Androidprototypen 88 6 4 Klassendiagramm des InfoBallons 89 6 5 zwei Screenshot Ausschnitte des Androidprototypen 90 71 gefundene Usability Probleme in Bezug auf Anzahl der Testpersonen siehe Nie00 99 124 Abbildungsverzeichnis TABELLENVERZEICHNIS 2 1 Klassifizierung der betrachteten Dienste nach Bla07 GNSW0O6 GFDTO5 19 3 1 Vergleich der popul rsten LBS Communities 49 5 1 Farbdefinition fur zeichenbare Objekte 73 71 Ergebnisse der SUS Fragen 2 22 2 a 101 72 Ergebnisse der allgemeinen 102 125 126 Tabellenverzeichnis CODEBEISPIELE 21 OWS REQUGSt u can E un ee ated Gok eee 24 2 2 Ausschnitt der aktivierten Filter aus dem GetCapabilities Response 26 2 3 Request mit DWithin Filter des WEG 27 24 DWithin Filter des WFS 27 3 1 Google Data Protocol Request nach der Ressource myFeed 38 3 2 Google Data Protocol Response f r den Request 3 1 38 3 3 Google Data Protocol Einf gen eines Eintrags
2. 113 Aufgaben und Fragen der Abschlussevaluation 116 AA Protokoll der 119 lee e a ae nk ee 121 Inhaltsverzeichnis 11 12 Inhaltsverzeichnis 1 EINF HRUNG 1 1 Location Based Services begegnen uns unserem Alltag vielen Stellen Ob es die Suche nach einem ge ffneten Gesch ft oder die Navigation zur n chsten Sehensw rdigkeit ist wir nutzen die ortsbezogenen Dienste meist ohne sie direkt wahrzunehmen Viele Services werden noch ber das Internet vom Desktop PC abgefragt Die Verbreitung des mobilen Internets und damit der Ausbau der Location Based Services f r unterwegs schreitet aber weiter voran Der aktuelle Nutzen ist mit der SMS Abfrage des Busfahrplans schon fast veraltet da die Smartphoneverbrei tung rasant w chst Auch zahlreiche entwickelte Apps vereinfachen die Nutzung verschiedenster Dienste immer mehr Trotz der vielen M glichkeiten die sich den Nutzern erschlie en sind die Dienste bisher nur im Outdoor Bereich angesiedelt Es gibt kaum Ans tze welche die gut entwickelten Funktionalit ten auf den Innenraum von Geb uden bertragen haben An dieser Stelle lohnt es sich anzusetzen und Forschungsarbeit zu betreiben 1 2 PROJEKT MAPBIQUITOUS Das MapBiquitous Projekt der Technischen Universitat Dresden ist dabei die Grundlage zur Ent wicklung e
3. Ob und welche Hilfestellungen bei der Nutzung gegeben werden mussten e Wie lange sich der Tester mit der App vertraut machte und wie hoch die gesamte Testzeit war e F r jede Aufgabe wurden Eingabefehler und die Effizienz der Ausf hrung bewertet Sonstige Bemerkungen sowie Logeintr ge bei Programmabst rzen wurden ebenfalls auf gezeichnet Als Bewertungsgrundlage der Usability wird die System Usability Scale SUS angewendet Bei SUS nach Bro96 handelt es sich um eine einfache zehn Punkte Likert Scale siehe Lik32 mit deren Hilfe sich eine aussagekr ftige Kennzahl ableiten l sst Diese Kennzahl errechnet sich aus den Werten der Skala und befindet sich im Wertebereich zwischen O und 100 Laut Bro96 kann mit dieser Wertung auch die Benutzbarkeit verschiedener Softwareprodukte verglichen werden Sie dient ebenfalls hervorragend zur begleitenden Untersuchung der Entwicklung einer Nutzer oberfl che Zu diesem Zweck sollte dieselbe Befragung mit den n chsten Entwicklungsstufen der App erneut ausgef hrt werden Die Verbesserung oder Verschlechterung der Usability kann so ber einen gr eren Zeitraum festgestellt werden Die Aussagen des Originaltests wurden minimal modifiziert und bersetzt um den Anforderun gen der Testkonfiguration zu gen gen Ich w rde die App ofter nutzen 2 Ich fand die App unn tig komplex 3 Es war einfach die Anwendung zu nutzen 4 Ich ben tige Hilfe um die App richtig zu
4. 39 3 4 Google Data Protocol Freitextsuche in der Ressource 39 3 5 Google Data Protocol Ergebnis der Suche 3 4 mit einem Ergebnis 40 3 6 Google Places Ortssuchanfrage 41 3 7 Google Places 3 41 3 8 Google Places Ortsdetailanfragen 41 3 9 Google Places 8 41 3 10 Google Geocoding Adressanfrage 42 3 11 Microsoft Bing Location Ressource 44 3 12 Yahoo Placefinder Ergebnisliste mit einem Eintrag 45 6 1 Ausschnitt aus der config xml a a a 83 127 6 2 GetFeature Request mit POST Daten 6 3 Initialisierung und Konfiguration des InfoBallonOverlay appendix javadoc xml 128 Codebeispiele LITERATURVERZEICHNIS AM11 And09 And11 5 8 08 Bla07 BNO6 Bri08 Bro96 Bur97 Com08 Anas Aloudat and Katina Michael Toward the regulation of ubiquitous mobile gover nment a case study on location based emergency services in australia Electronic Commerce Research 11 31 74 2011 10 1007 s10660 010 9070 0 Christine Andrae Spatial Schema ISO 19107 und ISO 19137 vorgestellt und erkl rt Wichmann Heidelberg 2009 Christine Andrae Web portrayal services OpenGIS Web Map Service Styled Laye
5. Zuerst werden die mitgegebenen Suchparameter ausgewertet und angelegt Danach wird der 6 2 Schnittstellen 85 festgelegte Handler f r die Ergebnisdaten dem Callback mitgegeben ber die Elternklasse AsyncLBSTask Abbildung 6 2 wird die Suche als aktuell ausgef hrte Suche im core regi striert Der Task selber startet beim Aufruf der executeTask Methode Hierbei wird die Url f r den Request generiert und gepr ft Zus tzlich werden bei jedem Request die Parameter entwe der als GET oder POST Parameter an den Request bergeben POST http carlos inf tu dresden de 8080 geoserver tud_poi wfs amp SERVICE wfs amp VERSION 1 0 0 amp REQUEST GetFeature lt wfs GetFeature service VWWFS version 1 0 0 outputFormat GMI2 xmins wfs http ww opengis net wfs xmins ogc http ww opengis net ogc xmins gml http www opengis net gml xmiIns xsi http waan w org 2001 XMLSchema instance xsi schemaLocation http ww opengis net wfs http schemas opengis net wfs 1 0 0 WFS basic xsd gt lt wfs Query typeName tud_poi poi gt lt ogc Filter gt lt ogc Or gt lt ogc PropertylsLike wildCard singleChar escapeChar gt lt ogc PropertyName gt gml name lt oge PropertyName gt lt ogc Literal gt Sitz lt ogc Literal gt lt ogc PropertylsLike gt lt ogc Or gt lt oge Filter gt lt wfs Query gt lt wfs GetFeature gt Code 6 2 GetFeature Request mit POST Daten Mit de
6. detaillierter und stellt weitere Informationen f r die Anzeige des Punktes bereit Dieser Wert wird ebenfalls als String in der DB abgelegt floor ist die zweistellige Zeichenkette welche die Etage repr sentiert oder null wenn der POI au erhalb eines Geb udes ist Mit dieser Information lassen sich POI s auf der Nutzerober fl che etagenweise anzeigen geb_id hnlich der floor Eigenschaft dient die geb_id Integer dazu einen Verweis auf ein Geb ude zu speichern Dabei handelt es sich um eine ID die als Fremdschlusselbeziehung genutzt werden kann geometry codiert einen gm Point nach OpenGIS der zum Speichern der Koordinaten des POI verwendet wird last_update stellt ein Datum dar welches die letzte Aktualisierung des POI s speichert So kann die Aktualit t der Informationen berpr ft werden Als Zeitstempel wird die Unixzeit nach dem Standard Com08 verwendet create_date stellt das Erstelldatum des Punktes dar Auch bei diesem Attribut wird die Unixzeit nach dem Standard Com08 verwendet uid bietet eine eindeutig identifizierbare ID Sie kann verwendet werden um den POI unabhan gig s mtlicher anderer Voraussetzungen referenzieren zu k nnen Die UUID wird nach dem Standard Fou05 gebildet und als String gespeichert gid stellt eine Geo ID der PostGIS Datenbank dar Sie wird automatisch durch PostGIS erzeugt und verwaltet Die gid dient dem Aktualisieren oder L schen der Geodaten Alle einzuf
7. 5 KONZEPTION DES FRAMEWORKS Das folgende Kapitel beschreibt das Konzept bezuglich der umzusetzenden Anforderungen Ka pitel 4 Dabei wird die theoretische Vorgehensweise fur die Entwicklung des Frameworks fest gelegt Ziel soll es sein mit Hilfe der vorangegangenen Untersuchungen ein Framework fur integrierte Indoor Outdoor Location Based Services zu entwickeln Das Konzept welches als Ergebnis dieses Kapitels entsteht ist Grundlage fur die weitere Entwicklung des MapBiquitous Prototypen Es soll unter 6 Implementierung umgesetzt und damit berpr ft werden Um die Konzeption m glichst umfassend zu gestalten werden drei Bereiche gesondert betrach tet und jeweils spezielle L sungen entwickelt Der erste Bereich Abschnitt 5 1 legt die n tigen nderungen an der Datenstruktur von Datenbank und Client fest Nachfolgend werden in Ka pitel 5 2 die Package Architektur und Schnittstellen des Frameworks definiert Zum Abschluss wird die neue Nutzeroberfl che durch entsprechende Interaktionsmuster und Untersuchungen in Abschnitt 5 3 detailliert beschrieben Datenerfassung Datenhaltung verwaltung Datenausgabe Datenabfrage Verarbeitung Abbildung 5 1 allgemeine Ablaufe in MapBiquitous 57 Einen Gesamt berblick ber das System zeigt die Grafik 5 1 Als zentraler Bestandteil ist die Datenhaltung bzw Datenverwaltung anzusehen Informationen k nnen ber die Datenerfassung ei
8. un 1 Frfat a Suchergebnisse ersitat intrale ratung e Technische Universit t 7 2 y Dresden 3 Kaubler Petra Miller s ge 2 18 Autohaus Tross Ee Fern Kartenausschnitt mit einem Er gebnis Technische Universitat Dresden Mommsenstr 9 01069 Dresden r 0351 4630 Erfahrungsberichte www tu dresden de N 9 4 Karte Route Anruf Mehr Fotos A kel E Weitere Fotos Hier einchecken Foto hinzuf gen Bewerten Erfahrungsberichte c Detailansicht Abbildung 3 3 drei Screenshots der Google Maps Android App im Screenshot 3 2b zu sehen ist kann der Nutzer in der Etagenwahl scrollen wenn mehr Etagen als verf gbarer Platz vorhanden sind Im IndoorBereich ist das Anwahlen der einzelnen R ume nicht m glich Ebenfalls ist eine Navigation zwischen R umen nicht implementiert F r die Kar tierung weiterer Geb ude existiert ein Workflow bei dem digitalisierte Etagenpl ne in Google Maps automatisiert eingepasst werden Anschlie end werden R ume erkannt und es k nnen Informationen hinzugef gt werden 3 2 1 Android App Die App verf gt ber unterschiedliche Funktionen und Ansichten um dem Nutzer Informationen darzustellen Die wichtigsten werden nachfolgend erl utert Suche dabei werden passende Suchtreffer in der Umgebung mit Markern angezeigt siehe Screens hot 3 3b Wenn zu viele Suchtreffe
9. dabei eines der wichtigsten aktuellen Forschungsthemen da sich bisher nur wenige Abhandlun gen finden lassen bedeutet in diesem Zusammenhang dass die Funktionalit ten und Vorteile des jetzigen Entwicklungsstandes auch auf Gebaude Ubertragen werden sollen Andere ber lange Zeit aktuelle Themen sind die der Datensicherheit und Datenkontrolle siehe AM11 Sie betreffen alle Arten von LBS Anwendungen da f r die Dienste immer pers nliche Daten in hohem Ma e versendet und ausgewertet werden Es gilt hier die richtige Abw gung zwischen freigegebenen Daten und Vertrauen bzw Risiko des Dienstes zu finden und die Risiken soweit m glich zu minimieren Um eine umfassende Zusammenarbeit der einzelnen Dienstanbieter zu erm glichen sind eindeu tige Standards notwendig Durch sie werden Schnittstellen zur Verf gung gestellt und Protokolle definiert Das Vorhandensein einer einheitlichen Standardisierung macht es ebenfalls m glich neue Netzwerktechnologien und ger te zu entwickeln und mit ihnen kompatible Software zu im plementieren vgl KUp05 Einige der wichtigsten Unternehmen und Organisationen welche an den Standardisierungsverfahren beteiligt sind sind 3GPP und 3GPP2 3rd Generation Partnership Project welche die Entwicklung von technischen Empfehlungen f r GSM und UMTS auf internationalem Gebiet unterst tzen OMA und Parlay Open Mobile Alliance und Parlay group die sich auf dem Gebiet der Entwick lung vo
10. 3 1 2 Wichtige Funktionen 2 2 2 nn 35 3 1 3 Fazit 35 Ee ee VE a ee E 36 2251 ANOJ taper ee ae ess 37 22272 DESKIOPVERSION EE 38 32 3 Developer ABI gea ti a 38 32 2 91 at ar er ER 43 31 Aelia ee pe 43 3 3 2 Developer API ces en eee he 44 3 4 sYahoo MapsSes aae e ee POPES OOM ER tle te RY 45 lee Dee KEEN 45 3 94 27 Developer APh s hort ee aa 46 UNE 46 3 5 11 Konzeption er ee a a 47 3 6 OpenstreetMap fied a ke ANAS REE 48 3 6 17 lt 2 2202 al en ee LEE es 48 3 7 COMMUNITIES ov wa SS a Ek ae EE 48 S S KIKER cin cat ott atl Pah cates en el ar cea 50 Anforderungen 51 4 1 technische Umsetzung 51 AAA ZUSAMMeMTASSUNG k al E ed Se 52 Inhaltsverzeichnis 4 2 Schnittstelle zum Server Dienstdefinition 53 4 2 1 7 2 2 22 2 2 54 43 Uldes Clients Darstellung 4 54 43 1 Zusammenfa
11. Beim Testen und Erf llen der Aufgaben lie en sich alle Teilnehmer mehr als 25 Minuten Zeit Sie waren bem ht alle Funktionalit ten zu verstehen und generierten eigene Testf lle SUS Frage P1 P2 P4 P5 P7 Ps P9 P10 1 4 4 4 4 5 4 5 2 4 4 2 2 1 1 1 3 1 2 3 3 2 3 4 4 4 4 4 5 4 3 3 4 4 3 4 3 2 4 1 4 5 3 3 5 4 4 4 5 5 4 4 3 3 5 6 2 2 2 1 1 1 1 4 2 1 7 4 4 4 4 5 3 5 3 4 5 8 2 2 2 2 2 2 1 3 3 2 9 4 3 4 2 3 3 4 3 4 4 10 2 3 2 1 4 1 2 4 3 1 SUS 72 5 675 75 80 70 82 5 80 375 60 82 5 Tabelle 7 1 Ergebnisse der SUS Fragen 71 44 Auswertung der System Usability Scale Pro Testperson wird aus den zehn beantworteten SUS Fragen ein Wert berechnet der zwischen 0 und 100 liegt Dieser Wert berechnet sich wie folgt Alle angekreuzten Werte immer zwischen 1 und 5 der ungeraden Fragen werden mit 1 subtrahiert Die Werte der anderen Fragen werden 71 Ul Test 101 von 5 abgezogen Die zehn Ergebnisse werden aufsummiert und mit 2 5 multipliziert Nach Sauro Sau11 liegt die durchschnittliche SUS Kennzahl bei 68 Die Auswertung in Tabelle 71 belegt dass der Score fur MapBiquitous mit 70 75 Punkten leicht Uber dem Durchschnitt liegt Durch die Untersuchungen von BKMO8 kann dieser SUS Kennzahl das beschreibende Attribut gut bedienbar zugeordnet werden Diese Einordnung zeigt jedoch auch dass es durchaus verbesserungswurdige Bereiche gibt Die durchschnittlich beste Bewertung erhielt die Frage sechs gefolgt von den Fragen
12. Heidelberg 2006 Jana Hesselbarth Katharina Papendick Matthias C Schroeder and Annekathrin Gr ninger Usability quartett 2011 International Organization for Standardization Geographic Information Spatial Schema 2003 International Organization for Standardization Geographic Information Rules for application schema 2005 JESS3 geosocial universe 2 0 jess3 com 2011 Iris A Junglas and Richard Watson Location based services 51 3 March 2008 Christoph Ke ler Konzeption und umsetzung einer geb ude bergreifenden indoor outdoornavigation f r das mapbiquitous system Master s thesis Technische Universit t Dresden Dresden May 2011 Klaus Komenda Location Based Services am Beispiel eines mobilen Lokalf hrers VDM Verl Dr M ller Saarbr cken 2008 Axel K pper Location based services fundamentals and operation John Wiley amp Sons Ltd Chichester 2005 130 Literaturverzeichnis Lar02 Lik32 LMKO8 001 Ope05 PW11 Sau11 Sch09a SchO9b Spr11 SS10 Tod11 TS04 VVWvw10 Craig Larman Applying UML and patterns an introduction to object oriented analysis and design and the unified process Prentice Hall Professional 2002 R A Likert A technique for the measurement of attitudes Archives of Psychology 1932 Miguel A Labrador Katina Michael and Axel Kupper Advanced location based ser vices Computer Co
13. glichkeiten der Gamification erweiterbar sind Das hei t dass Wanderrou ten mit Spielen wie Schnitzeljagd oder Geocaching f r die Touristen anreizvoller gestaltet werden k nnen Zus tzlich besteht die Option die Software mit Extrafunktionen f r andere Ur laubsregionen auszustatten Als besondere Eigenschaften einer Route wird dem Nutzer Folgendes angezeigt das H henprofil sowohl als Diagrammansicht Abbildung 3 6c als auch in der 3D Karte die Schwierigkeit der Strecke als Bewertungshinweis Abbildung 3 6b und die Eignung f r die drei verschiedenen Nutzergruppen Abbildung 3 6b http www apemap de Zugriff am 03 11 2011 3 5 ape map 47 3 6 OPENSTREETMAP OpenStreetMap ist ein Open Source Projekt welches frei nutzbare Geodaten fur alle Nutzer zur Verf gung stellt Durch die Zusammenarbeit vieler Unterst tzer kann der Datenbestand st n dig verbessert und aktuell gehalten werden Zu den gepflegten Daten geh ren nicht nur Stra en und Orte sondern auch alle f r LBS relevanten ortsbezogenen Informationen Die Daten des OpenStreetMap Projektes werden in Postgre Datenbanken gespeichert Den Zugriff und da mit auch die Darstellung der Karten erfolgt mit Hilfe vieler verschiedener Softwareprojekte Die eigentliche API ist aber ber das OpenStreetMap Projekt definiert Durch den Open Source Charakter des Projektes ist die Analyse der API hinsichtlich dem Einf gen von Daten besonders interessant 3 6 1
14. nnen die Grundrisse beschriftet sein um eine Grundinformation f r den Nutzer bereit zu stel len Das Zoomlevel entscheidet dabei ab welcher Gr e die Umrisse eingeblendet werden da es wenig Sinn macht beim Rendern eines Landes die einzelnen Geb ude einzublenden Das bisherige Zoomlevel ist 16 Die Stufe wurde gew hlt da bei einem h herer Zoom bereits deutlich erkennbare Grundrisse gezeichnet werden k nnen Gleiches gilt f r das n chste Detaillevel Sobald die Zoomstufe f r das Anzeigen einzelner R ume erreicht ist werden diese innerhalb des bereits vorhandenen Grundrisses gerendert Abbildung 5 11b Wenn die Position des Nutzers auf Grund der Einstellungen und der vorhandenen Sen soren erkannt werden kann wird der Standort mit einem Pfeil angezeigt Durch diesen Hinweis 5 3 Darstellung 69 gelingt die Orientierung innerhalb des Gebaudes Der Pfeil zeigt sofern es moglich ist auch die Orientierung in Bezug auf die Blickrichtung an Sobald die R ume erkennbar sind k nnen diese per tap gew hlt werden Mockup 5 11 Sie erscheinen danach markiert und es k nnen Kurzinformationen angezeigt werden Diese haben die gleiche Darstellung und den gleichen Inhalt wie die bereits beschriebene Infodarstellung Beispielhaft ist das Verhalten in Abbildung 5 13a erkennbar und wird im Abschnitt des Suchens genauer beschrieben all 05 27 PM aBc3G 05 27 PM 05 18 PM EINSTELLUNGEN SUCHE Suche n
15. pinch Abbildung 5 9b oder spread Abbildung 5 9c erm glicht Der tap Abbildung 5 10a ist das kurze Ber hren des Screens dou ble tap demzufolge zwei aufeinander folgende kurze Ber hrungen Pich bezeichnet das Zusam menziehen eines Rechtecks mit zwei Fingern wohingegen spread das Gegenteil bedeutet Beim 66 Kapitel 5 Konzeption des Frameworks double tap pinch and spread drag and move Kontextmen on in der Karte press Zusatzinformation tap on Suche Kartendarstellung Suchergebnisse in Extraview mit Suchparametern und Ergebnisliste wenn vorhanden tap on details zur ck tap on Listenelement Abbildung 5 8 m gliche Nutzerinteraktionen in MapBiquitous m DSH He a double tap b pinch c spread Abbildung 5 9 Touchscreen Pattern aus VWW10 double tap wird die Karte immer vergr ert Die beiden anderen Aktionen k nnen den Karten ausschnitt vergr ern spread oder verkleinern pinch Beim Vergr ern der Karte kleinerer Ausschnitt wird das Anfragen neuer Daten nur notwendig wenn ein neues Level of Detail erreicht wird Das kann passieren wenn ein Zoomlevel erreicht wird welches das Einblenden genauerer Informationen erlaubt oder die Kartenkacheln in einer h heren Aufl sung nachgela den werden m ssen Das Verkleinern der Karte fordert in den meisten F llen ein Nachladen von Kartendaten da bisher nicht geladene Kartenausschnitte visualisiert w
16. Anzahl an Konfigurationen bereit gestellt werden um die Anwendung nicht un bersichtlich erscheinen zu lassen Als Eingabem glichkeiten sollten die Grundfunktionen des Mobilger tes ausgesch pft werden Dabei gilt es die Funktionalit t im Framework so zu gestalten dass Interaktionen auf verschiedenen Plattformen hnlich genutzt werden k nnen Kapitel 4 Anforderungen 4 3 1 Zusammenfassung A3 1 grafische Umsetzung der Schnittstellen durch Eingabem glichkeiten A3 2 Darstellung der Karte A3 3 Darstellung der Suchergebnisse in der Karte A3 4 Darstellung der Suchergebnisse als Liste A3 5 Darstellung eines Suchergebnisses als Detailansicht A3 6 Ul nutzerfreundlich und bersichtlich gestalten 7 UX beachten 8 einfache Konfigurationsm glichkeiten und Personalisierungsoptionen 4 4 ZIELGRUPPE Da es sich in erster Linie um die Entwicklung eines Frameworks handelt muss auf die sorgf ltige Dokumentation geachtet werden Funktionen m ssen nach g ngigen DocStyle Regeln beschrie ben werden Um die Nutzbarkeit zu Evaluieren ist eine Analyse mit Testpersonen in der Rolle von Entwicklern sinnvoll Eine weitere Zielgruppe stellen die zuk nftigen Nutzer des angewand ten Frameworks dar Hier sind Usability Tests notwendig um die Nutzbarkeit der entwickelten Software zu analysieren 4 4 1 Zusammenfassung A4 1 Dokumentation f r Entwickler 4 2 Usability Tests f r Nutzer 4 5 ZUSAMMENFASSUNG Abschlie end lassen si
17. Anzahl von Antworten beschr nkt um den Probanden zu einer tiven oder negativen Bewertung zu dr ngen Eine neutrale Enthaltung der Testpersonen war daher ausgeschlossen Die Farbvarianten ber die entschieden werden musste sind im An 5 3 Darstellung 73 hang 2 dargestellt Jedes einzelne Bild wurde etwa 30 Sekunden an eine Leinwand projiziert Diese Zeit war ausreichend um die Bewertung im Fragebogen anzukreuzen Dieses Testverfah ren wird als AB Test bezeichnet Der AB Test wie er in HPSG11 vorgeschlagen wird dient in der Entwicklungs und Konzeptionsphase dem Vergleich verschiedener Produktversionen Bei der Evaluation wurden insgesamt 28 Studenten in der Vorlesung Application Development for Mo bile and Ubiquitous Computing mit Hilfe dieses Tests befragt Durch den Vorlesungshintergrund waren alle Befragten mit dem Thema der Anwendungsentwicklung speziell auf mobilen Ger ten und der Konzeption von Nutzeroberfl chen vertraut Sie stellten daher ideale Testpersonen dar Die Reaktionen der Probanden auf unterschiedliche Versionen einer Darstellung wurden erfasst und ausgewertet Die Designvorschl ge stellten in diesem Fall jeweils verschiedene Farbgebun gen von Grundrissen und Raumvisualisierungen dar siehe Anhang A 1 und A 2 100 90 80 70 60 trifft nicht zu 50 E trifft eher nicht zu 40 a trifft eher zu E trifft zu 30 20 10 0 Bild 1 Bild 2 Bild 3 Bild 4 Bild 5 Bild 6 Abbildung 5 15 Diagra
18. Developer API Die aktuelle Version der ist v0 6 Die zeichnet sich durch die M glichkeit aus alle Informationen und Elemente einer angegebenen Boundingbox zu erhalten Das Konzept von re lations erm glicht das Wiedergeben aller Wegpunkte oder anderweitig verkn pften Elemente Eine einfache Suche nach selbst definierten Begriffen wird durch die erschwert Das System ist mit Hilfe von st rker auf die Pflege create change delete der Daten ausge legt Dadurch wird jede nderung am Datenbestand mit einem Kommentar und dem Ersteller markiert hnlich eines Versionierungssystems 3 7 COMMUNITIES LBS sind nicht nur bei den vorgestellten Kartenanbietern und Anwendungen immer popul rer geworden Auch und vor allem die unterschiedlichsten Communities versuchen mit ihren Ange boten m glichst viele Nutzer zu binden Das Prinzip ist dabei immer sehr hnlich Der Nutzer meldet sich mit seinem aktuellen Standort bei der jeweiligen App an und bekommt im Gegenzug Verg nstigungen oder Sonderangebote von H ndlern in der unmittelbaren Umgebung Opttp wiki openstreetmap org wiki DE Main_Page Zugriff am 03 11 2011 http wiki openstreetmap org wiki API_v0 6 Zugriff am 03 11 2011 48 Kapitel Verwandte Arbeiten Dienst Service Qype foursquare Groupon Gowalla Yelp Facebook Places Suche x x x x x x erweiterte Suche Checkin x x x x x Posten auf anderen x x x Pla
19. Ergebnisse nicht neu geladen werden Um die Requests auszuf h ren stehen spezialisierte Klassen im Loader zur Verf gung Sie werden je nach Notwendigkeit vom Loader erstellt Dieses Vorgehen entspricht dem Factory Entwurfsmuster GHVJO9 Die Factory oder auch Fabrik ist ein Erzeugungsmuster Es wird genutzt um in Abh ngigkeit des zu l senden Problems das passende Objekt zu erzeugen Die unterschiedlichen Request Klassen welche erzeugt werden k nnen werden in Kapitel 5 2 3 genauer erl utert Bei der Erzeugung des Requests wird ebenfalls entschieden welche Art Ergebnis erwartet wird Das hei t dass ein Parser Objekt erzeugt wird welches die Serverantwort analysieren und in ein Objekt berf h ren kann Die erzeugten Ergebnisobjekte werden als Antwort des Loaders an den DataManager geliefert Der Loader ist mit diesem Aufbau flexibel an alle Schnittstellen des Geb udeservers anpassbar Es ist auch m glich externe Anbieter auf diese Weise einzubinden und je einen Par ser zur Ergebnisauswertung zu definieren Die Fehlerauswertung wird f r den Fall ausgef hrt dass das Parsen oder der Request fehl schl gt Die Requests und die Parser dieser Architektur implementieren das Adapter Entwurfsmuster GHVJ09 Dieses Muster stellt die Verbindung zwischen zwei unterschiedlichen Schnittstellen dar Im beschriebenen Fall ist es die RESTful API des Servers die mit Requests bedient werden muss und XML Dateien als Responses sendet sowie die Obj
20. Evaluation ausreichend Es 58 Kapitel 5 Konzeption des Frameworks fehlen aber noch Daten zu POI s au erhalb von Geb uden Da die Suche auch solche Daten be r cksichtigen soll sind entsprechende Testdaten notwendig Dazu muss der Datenbestand um das Layer der Points of Interest erweitert werden Es k nnen Beispieldaten wie etwa Papier k rbe Fahrradst nder oder Sitzgelegenheiten auf dem Campus aufgenommen werden Da die Einbindung externer LBS wie zum Beispiel der Daten aus OpenStreetMap geplant ist kann von Anfang an darauf geachtet werden dass sich die Beispieldaten nicht doppeln sondern gegenseitig gt Locatableltem PointOfinterest SJ AA L MobileDevice Person gt WLANAccessPoint ce erg nzen Building Abbildung 5 2 Client side Modells Ausschnitt 5 1 2 Client seitige Erweiterungen Das im vorherigen Abschnitt 5 1 1 beschriebene Datenmodell spiegelt sich auch auf der Client Seite wieder In Kapitel 2 4 wurde die aktuelle Struktur an Hand der Abbildung 2 5 beschrieben Dieses Modell wird wie in Abbildung 5 2 erweitert PointOfinterest POI ist dabei die neu einge f gte Unterklasse des Locatableltems Die Architektur erm glicht es auf dem Client eine einheit liche Darstellung von interessanten Punkten zu generieren So l sst sich auch ein Raum welcher einen besonderen Service anbietet beispielsweise ein Kopierraum zu einem POI transformie ren Alle Ergebnisse einer Suche oder Abfrage k nnen s
21. MapBiquitous Projekts aus Sch09a Das LOD3 sch pft de meisten M glichkeiten des Ortsmodells Abbildung 2 5 nach SchO9b und Sch09a aus Im Modell sind alle Geometrien und m glichen Gebaudeteile enthalten Jede dargestellte Geometrie erbt von tem Sie hat so zusatzlich alle geometrischen Attribute eines GeoObjects Die Geometrieeigenschaften erm glichen das korrekte Einzeichnen auf der Karte Die Unterklassen speziell von Locatableltem erm glichen es Metadaten zur jeweiligen Geome trie zu speichern Diese Metadaten enthalten Zusatzinformationen zur Nutzung oder Raum und Geb udebezeichnung Das Userinterface UI ist mit einer zentralen Kartenansicht einfach gehalten Um Daten nach zuladen sind immer Nutzerinteraktionen notwendig So werden die Etagenpl ne erst geladen wenn der Nutzer den entsprechenden Grundriss ber hrt und im folgenden Pop Up Men die Etage w hlt Durch erneutes Ber hren der R ume erscheint ein hnliches Pop Up Men aus dem man weitere Informationen erh lt oder zur Etagenwahl navigieren kann ber dieses Men l sst sich hnlich der Etagenwahl eine Liste aller verf gbarer R ume anzeigen und ausw hlen Gew hlte R ume werden farblich hervorgehoben Zoomen ist in der Kartenansicht ber zwei Buttons zum Vergr ern des Kartenausschnittes und zum Verkleinern oder intuitiv ber das Spreizen oder Zusammenf hren zweier Finger m glich 30 Kapitel2 Grundlagen 2 5 ZUSAMMENFASSUNG Or
22. Modell lassen sich sowohl die vorhande nen Locatableltems abbilden als auch die neuen POI s Der gew nschte Vorteil tritt ein da alle Suchergebnisse auch die der externen Anbieter gleich behandelt und dargestellt werden k nnen Um die Crowdsourcing Idee umzusetzen und Daten mit Hilfe des Clients zu erstellen wurde der Geoserver als neuer Geb udeserver eingerichtet Der in der Konzeption geplante Aufwand wurde deutlich berschritten siehe 6 1 2 Die beschriebene Einrichtung mit Hilfe von Namensr umen und den weiteren Einstellungen war notwendig um die m gliche Skalierbarkeit im Framework einzuplanen Geb ude und Etagen k nnen dadurch getrennt verwaltet werden auch wenn sie sich noch auf dem physisch gleichen Server befinden Als einzige Funktion der in Abschnitt 5 2 3 konzipierten wurde das L schen von POI s noch nicht implementiert Dieser Vorgang besitzt bis auf die gesendeten POST Daten sehr viele Parallelen und kann daher innerhalb kurzer Zeit nachgezogen werden Das Konzept eines erweiterbaren Frameworks mit gekapselten Funktionalit ten wie es in Kapitel 5 2 mit der Hilfe wichtiger Designpattern beschrieben wurde konnte im Prototypen erfolgreich implementiert werden Dazu mussten die bisherigen Strukturen aufgebrochen und neu sortiert werden Das Ergebnis wird deutlich wenn man die klare Struktur der Implementierung mit dem Ausgangszustand beschrieben in Kapitel 2 4 vergleicht Der Vorteil dieser Neuordnung ist dass die e
23. Touch gesture reference guide LUKEW IDEATION DESIGN 2010 http www lukew com ff entry asp 1071 Literaturverzeichnis 131 132 Literaturverzeichnis DANKSAGUNG Ich m chte mich an dieser Stelle bei allen bedanken die mich in den letzten sechs Monaten bei meiner Diplomarbeit unterst tzt haben Ganz besonderer Dank gilt dabei meinem Betreuer Thomas Springer da er immer hilfreiches Feedback geben konnte Die regelm igen Treffen und Diskussionen haben mir sehr geholfen Mein Dank gilt dabei auch Sina Grunau und Christoph Ke ler die die Entwicklung des Frameworks begleitet haben und durch ihre eigenen Arbeiten einen gro en Teil zum MapBiquitous Projekt beitragen Der aktive Austausch und die gegenseitige Hilfestellung hat zur L sung mancher Pro bleme beigetragen Ich danke auch allen Lehrstuhlmitarbeitern Kommilitonen Freunden und Freiwilligen die bei der Evaluation mitgemacht und wertvolle Kritiken ge u ert haben An diesem Punkt m chte ich auch die jahrelange Unterst tzung meiner Familie w hrend meines Studiums erw hnen und f r die Geduld und das vermittelte Vertrauen Danke sagen Abschlie end danke ich Karina und Georg die sich trotz der Geburt Jariks um die vielen fehlenden Kommas und einen besseren Ausdruck in meiner Arbeit bem ht haben 133 134 Literaturverzeichnis ERKLARUNG Ich erkl re dass ich die vorliegende Arbeit selbst ndig unter Angabe aller Zitate und nur unter Verwendung der angegebe
24. Vergleichsfolien des AB Tests 113 gt Le gL Ea 8 1 81 snoynbigdew uonsenb snounbigdeyy snoynbigdeyy DV uonsenb 4 72 uonsenb 2 a6e14 uolsenb J aBel4 2 4 L 114 Anhang A Evaluation snoynbigdeyy LV 4 1 snounbigdeyy LV uolsenb 4 snojnbigdew d be snounb gdeyy Py uonsenb uonsenb e6e14 115 2 Vergleichsfolien des AB Tests AUFGABEN UND FRAGEN DER ABSCHLUSSEVALUATION 116 Anhang A Evaluation Evaluation des Mapbiquitous Userinterface Alter Geschlecht TT m nnlich weiblich Kennen Sie Kartendienste aus dem Internet Wenn ja welche Besitzen Sie ein Smartphone oder haben Sie ein Smartphone schon intensiver genutzt Wenn ja haben Sie Kartendienste bereits auf einem Smartphone genutzt ja nein Kennen Sie das MapBiquitous Projekt der TU Dresden Wenn ja haben Sie den Prototypen dieses Projekts bereits bedient 0 0 Einf hrung Diese Umfrage dient der Untersuchung des MapBiquitous Pro
25. angebunden werden Der Geoserver wurde in der Version 2 1 3 im Tomcat des carlos Servers deployed Er ist somit unter der Url http carlos inf tu dresden de 8080 geoserver f r den Client erreichbar Da dieser Server neu aufgesetzt wurde und die Funk tion der bisherigen Geb udeserver bernehmen sollte musste die Einrichtung von Grund auf erfolgen Die Konfiguration spiegelt die Architektur des Gesamtsystems wieder und wird des halb in den n chsten Paragrafen Schritt f r Schritt beschrieben Arbeitsbereiche engl workspaces werden vom Geoserver verwendet um verschiedene Na mensraume engl namespaces voneinander zu trennen Im MapBiquitous Projekt wird diese M glichkeit genutzt um unterschiedliche Geb udeserver zu simulieren und ber jeweils eindeu tige Urls anzusprechen Die Konvention pro Geb ude einen Geb udeserver und damit einen Namensraum zu nutzen unterst tzt den Gedanken der Skalierbarkeit Das System ist damit ohne Weiteres auf beliebig viele Geb ude erweiterbar Im Fall des aktuellen Datenbestandes wurden f nf Namensr ume angelegt tud_bar tud_hsz tud_inf tud_m13 und tud_poi Um die dadurch entstehenden virtuellen Geb udeserver zu erreichen bildet man die Url nach dem Mu ster http carlos inf tu dresden de 8080 geoserver namespace Datenquellen engl stores stellen die Geodaten f r den Geoserver zur Verf gung Um die Idee der Namensr ume konsequent zu verfolgen wird f r jeden Namensraum eine Datenque
26. board Abbildung 5 14 Mockups zur Kartenansicht Die Navigation ist hnlich der Suche ber das Men erreichbar Da es sich hierbei ebenfalls um ein Formular handelt welches Start und Ziel der Navigation aufnehmen muss ist die Dar stellung ebenfalls an die Suche angelehnt siehe Abbildung 5 14a und 5 14b Zus tzlich besitzt jedes der beiden Texteingabefelder einen Button der den Nutzer vordefinierte Standorte durch einen einfachen tap ausw hlen l sst Dazu z hlt zum Beispiel der aktuelle Standort sofern dieser ermittelt werden kann eine Liste von Favoriten auf welche zur ckgegriffen werden kann und eine M glichkeit zur direkten Auswahl eines Ortes im Geb ude oder auf der Karte Zus tzliche Nutzerfreundlichkeit schafft die Autocompletefunktion welche beim Schreiben in die Textfelder ausgel st wird Wenn in beiden Feldern ein g ltiger Standort eingetragen ist kann die Berechnung zur Navigation durch einen Start Button angesto en werden Das Ergebnis der Berechnung wird nachfolgend in die Kartenansicht gezeichnet Die Navigation kann dann gestartet werden Die Dateneingabe wurde bereits aus architektonischer Sicht im Kapitel 5 2 3 beschrieben Um die Schnittstellen zu bedienen und damit die Datenbest nde aktualisieren zu k nnen ist eine Eingabeoberfl che f r den Nutzer notwendig siehe Anforderung A3 1 F r das Bearbeiten be stehender POI s wird ein Men punkt angelegt der zu einem Formular mit m glichen POI Eigen
27. das Framework geschaffen werden kann Zus tzlich zu allgemein g ltigen Usability Konventionen wurde mit Hilfe von Mockups Paper Prototyping siehe HPSG11 betrieben und eine Evaluation zur Farbgestaltung Kapitel 5 3 3 angestrengt Die entstandenen Konzepte wurden am Prototypen umgesetzt um auch sie auf Tauglichkeit und Nutzbarkeit pr fen zu k nnen Sie werden in den nachfolgenden Abschnitten beschrieben 6 3 1 Interaktionsm glichkeiten Die in Kapitel 5 3 1 zur Nutzung vorgeschlagenen Interaktionsm glichkeiten wurden auf ihre ak tuelle Verwendung gepr ft Es konnte festgestellt werden dass bereits einfache Interaktionen mit der Karte m glich waren So funktionierten das Zoomen und drag and move ohne weiteres Zutun Zus tzlich existierten standardisierte Zoom In und Zoom Out Buttons am unteren Rand der Kartendarstellung Um das Konzept umzusetzen wurden daher noch die tap und die press Touchscreen Pattern implementiert Der tap auf ein Geb ude oder Geb udeteil wurde dabei genutzt um schnell wichtige Informa tionen in der Karte anzuzeigen Zus tzlich werden dem Nutzer dadurch weitere Funktionen und Men punkte er ffnet Weitere Informationen und Implementierungsdetails werden im Abschnitt 6 3 2 erl utert Das Ergebnis eines taps ist im Screenshot 6 3a in Form des Infoballons zu sehen 6 3 Darstellung 87 tud_inf TUD_INF 023 Unterrichtsgro raum mit RLT Search Navigation a Ballon mit Informationen zum
28. den Nutzern zur Verbesserung aufgef hrt Als Extra Feature k nnte die Zeit bis zum Erreichen des Ziels angezeigt werden Der press auf die Karte sollte durch ein haptisches Feedback deutlich gemacht werden In der Diskussion stand auch dass der erscheinende Ballon nicht erst beim loslassen sondern nach der abgelaufenen Mindestzeit des press angezeigt werden k nnte Bei kleineren Zoomstufen wurde eine bessere Abgrenzung der einzelnen R ume gew nscht Wenige R ume in einer Etage verhindern zudem den Etagenwechsel Die Auswahl einer anderen Etage sollte m glich sein auch wenn auf einen Teil des Grundrisses ohne eingezeichneten Raum geklickt wird Es fiel auf dass die Liste bei Raum oder Etagenwahl nicht immer einheitlich sortiert war Als zus tzliches Feature k nnte an dieser Stelle ein Autocomplete Feld oder ein Filter w hrend der Eingabe die Nutzbarkeit verbessern Nach dem Erstellen eines Points of Interest sollte dieser direkt angezeigt werden Andere POI s die durch die Suche gefunden wurden ben tigen noch die Funktion zum Anzeigen ihrer Details Zur Verbesserung der Suche wurde zus tzlich der Vorschlag eingebracht direkt auf die gefunde nen Ergebnisse zu zoomen 7 2 FRAMEWORK Die Implementierung der neuen Location Based Services ist bereits als Evaluierung der Praxis tauglichkeit des Frameworks anzusehen Im entstandenen lauffahigen Prototypen konnten die Konzepte umgesetzt und getestet werden Dieser Umstand spricht f
29. der Parameter entscheidet dabei wie die Anfrage behandelt wird und welche Ergebnisse geliefert werden Interessant dabei ist die Angabe eines Quality Wertes der angibt welche Suchinformationen zu dem jeweiligen Ergebnis gef hrt haben Im Codebeispiel 3 12 bedeutet der zur ckgegebene Wert 87 dass die Adressinformation der Suchanfrage zu diesem Ergebnis gef hrt hat 3 5 APEMMAP ape map ist eine von Onyx Technologie OG hergestellte Outdoor Navigations Software EJ10 Sie wurde als Nischenprodukt f r die Navigation speziell f r Wanderer Skifahrer und Mountain biker entwickelt Die Anwendung wird hinsichtlich ihrer Flexibilit t und besonderen Funktionalit t in diesem Kapitel analysiert Shttp developer yahoo com geo placefinder guide requests html Zugriff am 30 10 2011 46 Kapitel Verwandte Arbeiten Q u 13 23 u 13 28 GD 4 Toureninfo Drei T ler 229 QO Sobri Y EN 4 1375 5 2 1325 275 494HM 2225 49 36km d 2Std 15 Min 2175 125 FTE 00 100 200 300 40 0 Drei T ler deswegen da die Tour durch das Geschw 0 00 km h i Seidewitztal M glitztal und Lockwitztal f hrt PE ipei i Si Die Stra enbeschaffenheit ist gut bis sehr gut Zeit 13 27 58 1 Die StraBen sind bis wenig befahren Sonntags kann man schon fast von Autofrei 227 466 u
30. die Layer Daten abzufragen und schlie lich dem Nutzer zu visualisieren 6 1 3 Modellstruktur Eine der Hauptzielstellungen der Arbeit ist die Einf hrung einer stabilen und effektiven Frame workstruktur In der Konzeption aus Kapitel 5 2 wurden daf r eine Reihe an Designpattern und Implementierungskonzepte vorgestellt und angewandt Dabei ist deutlich geworden dass die Kapselung der Aufgabenbereiche eine besonders wichtige Rolle spielt Die Trennung verschiede ner Funktionen erm glicht erst die gew nschte Erweiterbarkeit und Flexibilit t des entstandenen 80 Kapitel 6 Implementierung Frameworks Das MVC Pattern hat sich bei der Untersuchung und anschlie enden Konzeption als beste M glichkeit zum Gliedern des Frameworks erwiesen In diesem Abschnitt wird erl utert wie es im aktuellen Prototypen zur Anwendung kommt und welche Ver nderungen sich daraus ergeben Packages sind in Java ein g ngiges Mittel um durch unterschiedliche Namensr ume Javaklas sen voneinander zu trennen Ein Package kann gesondert komprimiert werden und auch in an deren Projekten als Bibliothek importiert werden blicher Weise verbindet die Klassen eines Packages eine hnliche Funktionalit t oder die gleiche logische Einteilung Sie sind damit genau das Mittel um Funktionalit ten im MapBiquitous Framework festzulegen de tud android mapbiq loader locator renderer LocalDataManager Loader PositionManager Map Router LocationModelAPI DirectoryRequest p
31. durchsucht werden soll Das Feld zur Geb udewahl ist ein Autocomplete Feld welches bereits alle erreichbaren Geb ude geladen h lt Der Nutzer erh lt daher direkt nach dem Tippen der ersten Buchstaben eine gefilterte Auswahl an Geb uden Der genaue Ablauf nach dem tap auf den Search Button wurde in Kapitel 6 2 1 beschrieben Dabei wurde auch erw hnt dass die Suchparameter im core gesichert sind Sobald die SearchView das n chste Mal geladen wird wird sie mit den gesicherten Parametern initialisiert Zus tzlich wird berpr ft ob Ergebnisse der letzten Suche vorliegen Ist das der Fall werden sie in einer Liste unter den zwei Textfeldern eingeblendet Dadurch kann der User sich neben der Darstellung der Punkte in der Kartenansicht auch die Ergebnisse als Liste ansehen F r die Kartenansicht gilt dass diese nach erfolgreicher Suche automatisch aktualisiert wird und die Ergebnisse als Punkte oder bei gefundenen R umen als Polygone einzeichnet Da im Inneren von Geb uden die Suchergebnisse auf mehreren Etagen liegen k nnen wird ein Hinweis auf die Anzahl und die betroffenen Etagen im oberen Bereich der Karte eingeblendet siehe Screenshot 6 5b Sofern f r das Geb ude keine Etage geladen wurde und nur der Grundriss sichtbar ist wer den alle Ergebnisse gerendert um einen berblick ber deren Verteilung zu geben POI s m ssen nicht zwingend eine Etage enthalten Wenn dieser Fall eintritt werden sie immer unabh ngig der geladenen Eta
32. eine Al ternative gefunden werden Anforderung A1 3 Die Entscheidung fiel auf den GeoServer in der Inttp mapserver org Zugriff am 11 12 2011 http mapserver org oge wfs_server html Zugriff am 10 01 2012 5 2 Schnittstellen Architektur 63 Version 2 1 33 Der GeoServer gilt als Referenzimplementierung und unterst tzt damit alle stan dardisierten Features in der Geodatenverarbeitung Darunter auch die entscheidenden WSF WSFT und das Filter Encoding Positionsbestimmung A kann auf dem Client Positionsermittlung aber auch unabh ngig IClient Gebaudeserver lerfolgen 1 1 1 J Sensordaten Koordinaten Koordinaten Find me GML Daten 1 1 y What is around Koordinaten der Suche Radius Won et 1 1 Find nearest Suchanfrage Radius LEE Abbildung 5 6 Feature Request an den Server und Response 5 2 3 Kommunikation mit dem Server Die Kommunikation mit dem Server geht prinzipiell vom Client aus Zu Serveranfragen kommt es wenn Aufgaben gel st werden m ssen die mit den aktuellen Client Daten nicht gel st werden k nnen Die Funktionen aus Abbildung 5 6 gehen aus der Analyse von Kapitel 4 2 hervor und sind die wichtigsten Anwendungen f r Serveranfragen Die Anforderungen die dies betrifft sind A2 1 bis A2 7 und A2 9 Wenn die Sensoren des Clients nicht zur Positionsbestimmung herangezogen werden k nnen ist dies die erste und grundlegende Funktionalit t Anf
33. entstandene Framework angewendet werden 7 1 UI TEST Wie in den einleitenden Worten dieses Kapitels erl utert sind Usability Tests mit Nutzern sehr wichtig um die Funktionalit t und Einsetzbarkeit zu berpr fen Anschlie end wird der durchge f hrte Test kurz f r das allgemeine Verst ndnis erkl rt danach werden die gewonnenen Ergeb nisse ausgewertet und interpretiert 7 1 1 Testaufbau Das Zusammenarbeiten von Client und Server wurde in den bisherigen Kapiteln ausf hrlich be schrieben siehe Kapitel 5 und 6 Es wurde auch f r die Nutzertests nicht ver ndert Das hei t dass Directory Service Geoserver und letztlich die PostGIS Datenbank die Anwendungsdaten be reitstellen und aufarbeiten Das Client Ger t war bei allen Tests das Galaxy Nexus von Samsung Als Betriebssystem dient Android 4 0 2 mit der Kernel Version 3 0 8 2611 Internetzugang erhielten die Testpersonen ber WLAN 7 1 2 Testmethoden Um die in der Einf hrung genannten Qualit tsmerkmale anhand einer Nutzerbefragung zu ber pr fen wurde ein Test aus verschiedenen Methoden entwickelt Die erste Methode stellt das Task Based Testing dar Dabei werden den Testpersonen typische Aufgaben f r den Umgang mit der Software gestellt Um diese zu l sen sollten m glichst alle zu berpr fenden Funktionen der App in den Aufgaben enthalten sein Dieses Vorgehen erm glicht dem Nutzer die App ausf hrlich zu testen und sich ein breites Bild ber die Funk
34. ge b Lupe und Zoom Buttons am Bild Anwendungsmen w hlten Raum schirmrand Abbildung 6 3 drei Screenshot Ausschnitte des Androidprototypen Mit dem tap werden blicherweise alle Buttons aktiviert und deren Funktion ausgel st Um einen schnellen und unkomplizierten Zugriff auf die Suchfunktionalit t zu erhalten wurde am unteren Kartenrand ein Button eingef gt Dieser ist im Screenshot 6 3b als Lupe zu erkennen Das Aktivieren des Buttons f hrt den Nutzer zur Suchansicht der App Das Hinzuf gen des neuen Bedienelements hat es aus gestalterischer Sicht erforderlich gemacht auch die Standard Zoom Buttons optisch anzupassen Neben der Ansicht der Suche ist auch die Navigation als neue Funktion der App hinzugekommen Das App Men wurde dahingehend erweitert dass diese neuen M glichkeiten f r den Nutzer jederzeit ber die Men taste erreichbar sind Das aufger umte neue Men ist in Androidanwen dungen standardisiert am unteren Bildschirmrand zu finden Screenshot 6 3c 6 3 2 Metainformationen und Zusatzfunktionen Der bereits kurz erw hnte Infoballon ist ein Overlay Element welches an einer bestimmten Po sition direkt in die Karte gezeichnet werden kann Er zeigt sprechblasenartig auf den zu beschrei benden Punkt siehe Screenshot 6 3a Der Ballon ist so konfiguriert dass er die Bildschirmbreite nicht berschreitet und sich damit sehr gut in das Kartenlayout einpasst Die Javaklasse nfoBalloonOverlay wurde entw
35. gefundenen Elemente repr sentieren um weitere Anfragen zu erm glichen So werden wie im Codeausschnitt 3 7 dar gestellt nur die wichtigsten Metadaten eines Ergebnisses zur ckgeliefert Der Response einer Detailanfrage enth lt Details wie genaue Adresse Telefonnummer und rating des Ortes Zu s tzlich werden Typen und nahe gelegene Orte pro Ergebnis angegeben um die Einschr nkung und Verfeinerung der Suche zu erm glichen Der Codeauszug 3 9 zeigt am Beispiel der ad dress_component deutlich dass die Detailtiefe bei gut gepflegten Daten sehr hoch sein kann GET http google com maps api geocode xml address 1600 Amphitheatre Parkway Mountain View CA amp sensor true_or_false Code 3 10 Google Geocoding Adressanfrage Google Geocoding Die Geocodierung ist der Vorgang der Konvertierung von Adressen z B 1600 Am phitheatre Parkway Mountain View siehe 3 10 in geografische Koordinaten z geografische Breite 37423021 und geografische L nge 122 083739 Zus tzlich k nnen Sie mit dem Service den Umkehrprozess die Umwandlung von Koordinaten in Adressen ausf hren Shttp code google com int1 de DE apis maps documentation geocoding Zugriff am 29 10 2011 42 Kapitel 3 Verwandte Arbeiten Geocoding hat damit die Funktion nach einer vorgegebenen Adresse zu suchen dabei werden detaillierte Adressinformationen und genaue Koordinaten als Ergebnis zur ckgeliefert Der Re spon
36. handelt bei dem der Entwickler die Option hat die Funktionen zu nutzen sie aber nicht zwingend in seiner Software einbinden muss Auf Grund der berschaubaren Projektgr e und der eher geringen Zahl an Entwicklern wird eine Aufteilung der Kernfunktionen auf verschiedene API s wie es bei Googles 3 2 3 Developer API praktiziert wurde nicht notwendig sein Interaktionsm glichkeiten Um die bereits beschriebene Plattformunabh ngigkeit zu gewahr leisten und einen einheitlichen Zugriff auf das Framework zu erm glichen muss der Zugriff auf die Funktionalit ten ber wohl definierte Schnittstellen geschehen Dem Entwickler werden die entsprechenden Methoden zur Verf gung gestellt so dass er sich selbst nicht um die Anbindung der Services k mmern muss Die initiale Konfiguration des Frameworks sollte durch ausgelagerte Settings realisiert werden Das erleichtert das Anbinden anderer Services und f gt wichtige Gr undeinstellungen in einer zentralen Datei zusammen 4 1 1 Zusammenfassung A1 1 die Konzeption sollte plattformunabh ngig sein 52 Kapitel 4 Anforderungen A1 2 Entwicklungen eines Prototypen fur Androidplattformen A1 3 Geb udeserver einrichten und konfigurieren A1 4 Datenhaltung f r LBS anpassen A1 5 Datenstruktur eines Informationspunktes anpassen Erweiterung nach Sch09al A1 6 Kernfunktionalit ten implementieren 1 7 Ul als Teil des Frameworks integrieren 1 8 Settings unabh ngig und separat konfigurierbar
37. her wird die Qualit t des angebotenen Services DVLK11 Ein weiterer Faktor der die Popularit t der LBS unterst tzt ist die Verbreitung von Low cost GPS Ger ten und die dadurch verf gbare computergesteuerte Navigation im Endnutzerbereich nach DHdLD10 Diese technischen Weiterentwicklungen machten ortsbasierte Dienste fur die breite Masse zug nglich Letztendlich wird der Markt f r Location Based Services sogar als Kille App siehe JWO8 im mobilen Umfeld bezeichnet Als Begr ndung f r diese besondere Stellung in der aktuellen Softwareentwicklung wird das exponentielle Wachstum von 2006 bis 16 Kapitel 2 Grundlagen the geosocial universe Brought to you by JESS3 Windows Live Hotmail HOO Qzone kees ER 25 En e Gmail 5 3bn Cell Phones Friendstere _ 5 Dadoo D OpenTable 22 vg 7 brightkite Ze D D orkut 10 Google Latitude mixi yelp myspace AMOUNT ACTIVE USERS OO SES Abbildung 2 1 Verbreitung von Mobiltelefonen und mobilen Anwendungen JES11 2010 herangezogen Am Beispiel Europa ist in diesem Zeitraum eine Umsatzsteigerung von 191 Millionen Dollar auf 622 Millionen Dollar zu verzeichnen Die weltweite Verbreitung von Mobil telefonen und im Vergleich die Nutzung sozialer Netze wird aus der Abbildung 2 1 deutlich Da bei nutzen die gezeigten Plattformen in unterschiedlichem Ma e bereits ortsbezogene Dienste Netzwerke wie Fac
38. r eine gute Konzeption und Planung Dass bei der Softwareentwicklung Hindernisse auftreten siehe Kapitel 6 4 ist dem fortlaufenden Entwicklungsprozess geschuldet und damit v llig normal Alle geschilderten Schwierigkeiten sind l sbare Aufgaben die in und mit dem Framework behoben werden k nnen Die teilweise angegebenen L sungsvorschl ge belegen dies deutlich 72 Framework 103 Als weitere positive Entwicklung ist die zunehmende Codedokumentation zu werten Sie erlech tert dem Entwickler die Arbeit und den Einstieg in das Framework Weitere Entwickler sollten die strikte Einhaltung des JavaDoc Styles beibehalten Die JavaDoc s wurden in Eclipse via Ant Build generiert und dem Projekt beigef gt In der dazu notwendigen javadoc xm sind alle zu dokumentierenden Packages und classpath s angegeben Die ausgef hrte Konfiguration ist im Anhang A 5 beigef gt Projektspezifische Pfade m ssen nat rlich ersetzt werden Die Dokumen tation des Projektes ist damit vollst ndig aufgearbeitet und an Entwicklungsstandards angepasst Da das Framework prototypisch in Android umgesetzt wurde stehen mit den Android Developer Tools weitere Validierungsmechanismen zur Verf gung Ein hilfreiches Tool ist dabei Android Lint seit ADT 164 Lint berpr ft das Projekt auf Fehler und gibt dem Entwickler Hinweise zu deren L sung Es werden unter anderem Fehler im Manifest Layoutprobleme ungenutzte Ressourcen und eventuelle Usability Probleme aufged
39. schaften in Form von Eingabefeldern weiterleitet Diese Felder sind mit den aktuellen Werten gef llt und k nnen vom Nutzer korrigiert werden Ein hnliches unausgef lltes Formular erh lt der Anwender wenn ein neuer POI angelegt werden soll Bei diesem Szenario muss er zusatz lich die Position durch einen tap auf die Karte w hlen k nnen Alle Informationen werden nach erfolgreicher Validierung an den Server gesendet Die Antwort des Servers best tigt den Erfolg der Aktion und beendet das Erstellen bzw Bearbeiten 72 Kapitel 5 Konzeption des Frameworks Das Datenformular wird so flexibel gestaltet dass auch andere Eingabemoglichkeiten als Erwei terung denkbar sind Dazu z hlen zum Beispiel die Datenerfassung via OR Code oder die M g lichkeit einen Fingerprint der aktuellen Sensordaten als Geotag einzutragen 5 3 3 Farbgestaltung Bei der Farbgestaltung muss einerseits auf eine ausreichende Kontrastwirkung zwischen Karten darstellung und gerenderten Geb uden geachtet werden andererseits sollten sich alle Farben harmonisch in das Gesamtbild der App einf gen Um diese Konsistenz auch f r Erweiterungen des Frameworks zu erhalten werden die Farben und ihr Anwendungsbereich in der Konfiguration der Anwendung global definiert Anforderung A1 8 und A3 8 Der Entwickler greift dann beim Zeichnen eines Objektes auf die entsprechende Farbkonstante zu Die Auslagerung der Farbde finition erlaubt ebenfalls eine schnelle und unkomplizierte Anp
40. sendet die erhaltenen Ergebnisse in Form einer GML Liste an den Client zur ck F r den dritten Anfragefall Find nearest steht Anforderung A2 4 und 2 5 Vorausgesetzte Parameter sind ebenfalls die aktuellen Standortkoordinaten und der Radius Diesmal z hlen nur die Koordinaten des Nutzers da die nachstmogliche Einrichtung gefunden werden soll Zus tzlich werden Suchparameter mitgesendet nach denen der Server filtert Die erhaltenen POI s werden ebenfalls als GML Liste an den Client geliefert Der Filter des Servers arbeitet nach den Spezifi kationen des WFS aus Kapitel 2 3 4 Datenpflege wie sie in den Anforderungen A2 3 und A2 9 gefordert ist muss in drei F lle aufge teilt werden In allen drei Varianten findet die Kommunikation erneut zwischen Client und Server statt siehe Abbildung 5 7 Zum Einf gen von noch nicht vorhandenen Daten Insert sendet der Client die GMLDaten des neu zu erstellenden Geoobjektes an den Gebaudeserver Dieser validiert die erhaltenen Daten Ist die Validierung erfolgreich wird auf dem Server das Geoobjekt mit einer eindeutigen ID einem Zeitstempel und den gelieferten Daten erstellt Der Status der Transaktion wird an den Client zur ck gesendet Die zweite Transaktion besteht darin dass vorhandene Geoobjekte ge ndert werden k nnen das sogenannte Update Hierzu sind zwei Anfragen des Clients n tig In der ersten fragt der Client die Ressource vom Server ab Wenn er die Daten fehlerfrei
41. zeigt die Anforderungen im Bereich der Architektur und Datenverwaltung Es werden die analysierten Probleme aufgezeigt und entsprechende Anforderungen formuliert um alle notwendigen Daten erfassen zu k nnen Datenstruktur Der wichtigste Punkt und Grundvoraussetzung f r die erweiterte Einbindung von LBS ist die Anpassung der aktuellen Architektur Dazu m ssen die gewonnenen Erkennt nisse zur erforderlichen Datenstruktur umgesetzt werden Das hei t die Haltung der Daten auf den Geb udeservern muss berpr ft und angepasst werden Da die aktuelle Spezifikation auf den Standards von OpenGIS beruht und sich dieses Web Service Framework als beste Plattform grundlage durchgesetzt hat soll auch das konzipierte Framework zu diesen Standards konform sein Die aktuelle Datenstruktur eines Informationspunktes geht aus dem Sch09al vorgestell ten Schema hervor und muss entsprechend angepasst werden Das Einpflegen von Testdaten bzw das Migrieren der vorhandenen Daten ist Grundvoraussetzung um das System anschlie end evaluieren zu k nnen und den Datenstand zu erhalten 51 Plattformunabhangigkeit Auf Grund der Umfangreichen Nutzungsm glichkeiten des zu ent wickelnden Frameworks soll es plattformunabhangig konzipiert werden Das hat den Vorteil dass f r die Vielzahl der existierenden mobilen Endger te eine entsprechende Implementierung der MapBiquitous App angestrebt werden kann Dieser Umstand r umt auch die M glichkeit weite rer zus
42. zum Konzept und zur Befragung wurde ein schlichtes gew hlt Die unterschiedlichen vorhandenen Icons konnten im Sinne des Gesamtbildes ersetzt werden Zusammenfassend lie sich das erarbeitete Konzept sehr gut umsetzen Einige nderungen wurden gemacht da sie sich als unpraktisch oder nicht notwendig erwiesen Sehr wenige Funk tionen wurden nicht implementiert deren Umsetzung ist aber m glich und kann bei eintretendem Bedarf nachgeholt werden 6 5 Zusammenfassung 95 96 Kapitel 6 Implementierung 7 EVALUIERUNG Vor dem Hintergrund der immer gr er werdenden Verbreitung spielt die einfache Bedienung von Smartphones eine gro e Rolle Die mehr als 800 000 weltweit neu aktivierten Ger te pro Tag verdeutlichen die Wachstumsraten eindrucksvoll Ein weiteres Kennzeichen der starken Verbrei tung ist die riesige Zahl von teils konkurrierenden Apps welche alle um die Nutzerschaft werben Eine kostenpflichtige App kann im Android Market innerhalb von 15 Minuten zur ck gegeben wer den Der Nutzer hat also weniger als 15 Minuten Zeit um sich f r oder gegen eine Anwendung zu entscheiden Ein unverst ndliches oder wider den Erwartungen reagierendes Userinterface kann dabei schnell zur Deinstallation und damit zur R ckgabe f hren An diesem Beispiel ist er kennbar wie hoch der Druck auch aus wirtschaftlichen Perspektiven f r den Entwickler ist eine gute Software zu liefern Ausgereifte Usability und Userexperience sind d
43. 9 GNSWO6 HPSG11 103 105 5111 JW08 Ke 11 Kom08 K p05 vices 9 1 2010 Robert Deng Jari Veijalainen Shiguo Lian and Dimitris Kanellopoulos Editorial spe cial issue on ubiquitous electronic commerce systems Electronic Commerce Rese arch 11 1 4 2011 10 1007 s10660 010 9071 z Roman Egger and Mario Jooss mTourism mobile Dienste im Tourismus Gabler Wiesbaden 1 aufl edition 2010 Open Software Foundation Information technology open systems interconnection remote procedure call rpc 2005 International Organization for Standardization Software engineering product quality part 1 Quality model 2001 Kostas Gratsias Elias Frentzos Vasilis Delis and Yannis Theodoridis Towards a ta xonomy of location based services In Ki Joune Li and Christelle Vangenot editors Web and Wireless Geographical Information Systems volume 3833 of Lecture Notes in Computer Science pages 19 30 Springer Berlin Heidelberg 2005 Erich Gamma Richard Helm John Vlissides and Ralph Johnson Entwurfsmuster Elemente wiederverwendbarer objektorientierter Software Addison Wesley Publis hing Company 2009 Michael Grossniklaus Moira Norrie Beat Signer and Nadir Weibel Putting location based services on the map In James Carswell and Taro Tezuka editors Web and Wireless Geographical Information Systems volume 4295 of Lecture Notes in Com puter Science pages 1 11 Springer Berlin
44. Anzeigen der Lokaleigenschaften werden die Bewertungen aller Nutzer gemittelt Die Tatsache dass die Nutzer registriert sein m ssen verhindert Spam und schr nkt gravierend falsche Anga ben ein Es werden dadurch auch Mehrfachbewertungen verhindert Diese Konzeption gibt dem Nutzer die M glichkeit seine Bewertung bei einem sp teren Besuch anzupassen 34 Kapitel 3 Verwandte Arbeiten 3 1 2 Wichtige Funktionen Die Anwendung verf gt ber verschiedene Funktionen um die Ergebnisse zu suchen und mit Filtern einzugrenzen Am Anfang aber steht die M glichkeit ein Lokal anzulegen welche im n chsten Abschnitt erl utert wird Darauf folgend wird noch auf weiteren interessanten und n tzlichen Funktionsumfang eingegangen Lokale eintragen Ebenso wie das Bewerten ist das Eintragen von Lokalen auf einen bestimm ten Nutzerkreis beschr nkt zum Beispiel auf Administratoren Sie k nnen auch nderungen vornehmen Beim Eintragen k nnen alle Lokaldetails siehe 3 1 1 ber cksichtigt und entspre chend festgelegt werden Vollst ndigkeit ist bei allen Eintr gen grunds tzlich erw nscht aber keine Voraussetzung f r das Erstellen einer Lokalit t Dazu sind lediglich die wichtigsten Details wie Kategorie und Adresse notwendig Listen und Favoriten Die analysierte Anwendung stellt dem Nutzer zwei verschiedene M g lichkeiten f r die Verwaltung bekannter Lokale zur Verf gung Einerseits existiert eine History in der alle zuletz
45. Karte eingeblendet Als weiterer Schritt ist es m glich f r den entsprechenden Punkt weitere Detailinformationen anzufordern Dazu gelangt man auf einen neuen Screen der diese Metainformationen darstellt Der Zur ck Button erm glicht zu jeder Zeit den Wechsel zur Kartenansicht Das gleiche Verhal ten wird beim Ausw hlen eines Raumes angestrebt Wenn die Ber hrung des Displays auf die 68 Kapitel 5 Konzeption des Frameworks Koordinaten eines eingeblendeten Raumes oder Gebaudeumrisses zur ckgef hrt werden kann sollen die verf gbaren Metadaten des Objektes eingeblendet werden 5 3 2 Mockups Um die in Abschnitt 5 3 1 beschriebenen Interaktionen zu verdeutlichen werden in diesem Kapitel Mockups genutzt Mockups sind Skizzen der Nutzeroberfl che Auf ihnen ist die Struktur der Anwendung erkennbar Sie dienen nicht der Beschreibung des exakten Designs sondern der Verdeutlichung einzelner Szenarien Die bereits beschriebenen M glichkeiten werden so bildlich untermalt und k nnen dadurch schneller verstanden und umgesetzt werden ull 06 26 PM gt wil ABC 3G 05 27 PM wil 3G 05 27 PM a Ansicht mit Geb udegrundrissen b Raumansicht bei h herer Zoom Auswahl eines Raums stufe Abbildung 5 11 Mockups zur Kartenansicht Die Kartenansicht wurde als Einstiegspunkt f r den Nutzer gew hlt und ist in Abbildung 5 11a schematisch dargestellt Man erkennt die Geb udeumrisse eingebettet in der Karte Zus tzlich k
46. Ortsmodell des MapBiquitous Projekts aus 0 30 Google Maps Desktopversion Kartenausschnitt 36 zwei Kartenausschnitte mit verschiedenem Zoomlevel auf IndoorKartierungen 36 drei Screenshots der Google Maps Android App 37 zwei Screenshots der Bing Maps Android App 43 drei Screenshots der Yahoo Android App 45 drei Screenshots der ape map Android App 47 allgemeine Abl ufe in MapBiquitous 57 Client side Modells Ausschnitt 59 Darstellung des MVC Pattern als Teil der Architektur 60 Package Architekt r 00 atada m RR a 61 Anwendungsfall 63 123 5 6 Feature Request den Server und Response 64 5 7 Feature editieren und den 5 65 5 8 m gliche Nutzerinteraktionen MapBiquitous 67 5 9 Touchscreen Pattern aus MOT 67 5 10 Touchscreen Pattern aus MIO 68 5 11 Mockups zur Kartenansicht 2 2 22 Coon nn 69 5 12 Mockups zu Men Einstellungen und Suche 70 5 13 Mockups zur Karten Listen und Detailansicht 71 5 14 Mockups zur Kartenansicht nn 72 5 15 Diagramm Auswertung Frage 2 74 5 16 Diagramme
47. Suchanfrage nach den umge benden verf gbaren Location Based Services Punkt 1 der Abb Dazu ist als erstes die genaue aktuelle Position des Nutzers notwendig Punkt 2 der Abb Wenn keine aktuelle Position vom DataManager verwaltet wird wird der Locator angewiesen eine Position zu bestimmen Darauf folgend werden die Suchparameter mit der Position und der Art der Anfrage vom Loader an den Server gesendet Punkt 4 der Abb Zeitgleich zum generierten asynchronen Request wird der Parser f r das erwartete Ergebnis registriert Der Parser erwartet den Response und erh lt so wie in Punkt 6 direkt vom Server die Daten Er analysiert anschlie end die erhaltene XML Ist er erfolgreich werden die Informationen in POI s umgewandelt und ein Layer mit den gefundenen Ergebnissen generiert Dieses Layer wird dem DataManager bergeben Punkt 7 der Abb Der Renderer erh lt eine Notification ber die ge nderte Schicht und stellt diese auf der Karte dar Die Anfrage des Nutzers ist somit bearbeitet und die Ergebnisse sind sichtbar in der Karte markiert 5 2 2 Konfiguration des Servers Auf den Geb udeservern l uft aktuell die Version 5 2 1 siehe Kapitel 2 4 des MapServers Das aktuelle Release 6 0 1 bietet zwar weitere Fixes im Umgang mit XML Dateien und einige neue Features ist aber weiterhin nicht transaktional Da das Implementieren der WFS T Funktionalit ten laut offizieller Roadmap auch nicht geplant ist muss f r die Auslieferung der Geodaten
48. TECHNISCHE UNIVERSITAT DRESDEN Fakult t Informatik Institut f r Systemarchitektur Lehrstuhl f r Rechnernetze Diplomarbeit ENTWICKLUNG EINES WIEDERVERWENDBAREN FRAMEWORKS ZUR IMPLEMENTIERUNG VON INDOOR OUTDOOR LOCATION BASED SERVICES MIT MAPBIQUITOUS Kay Werner Mat Nr 3247807 Betreut dur ch Prof Dr rer nat habil Dr h Alexander Schill und Dr Ing Thomas Springer Eingereicht am 14 M rz 2012 ZUSAMMENFASSUNG Aktuelle Betrachtungen im Bereich der Location Based Services zeigen den gro en Nutzen und Zuspruch im OutdoorBereich Soziale Netzwerke stellen diese Dienste ihrer Nutzergemeinde zur Verfugung und auch andere Plattformen integrieren sie immer weiter in ihr Angebot In dieser Arbeit wird anfangs ein berblick ber die notwendigen Grundlagen gegeben Es wer den vorhandene Dienste vorgestellt und deren Features untersucht Diese Analyse macht deut lich dass die Umsetzung der Dienste f r den Indoor Bereich bisher kaum erfolgte Es werden Anforderungen an eine solche Umsetzung definiert und begr ndet Mit diesen Erkenntnissen wird anschlie end ein Framework konzipiert und implementiert welches bestehende Services mit neuen Indoor Location Based Services verbindet Die Grundlage f r das Framework bietet das MapBiquitous Projekt Dieses Forschungsprojekt enth lt bereits Komponenten zur Indoor Positionierung und Navigation die im entstehenden Framework ber cksichtigt werden Die praktische Um
49. Umsetzung weiterer Funktionen client und serverseitig unab dingbar ist um ein flexibles Framework f r Location Based Services umzusetzen Dementspre chend muss auch die Struktur der Datenhaltung angepasst werden Anforderung 1 4 und A1 5 Im folgenden Kapitel wird auf die notwendigen nderungen eingegangen 5 1 1 Erweiterung der Datenbank Die vorhandene PostGIS Datenbank stellt weiterhin alle Geodaten zur Verf gung Sie bietet die beste und aktuellste M glichkeit die anfallenden Daten serverseitig zu verwalten Der Zugriff auf die Datenbank wird ber den entsprechenden Geb udeserver konfiguriert siehe Kapitel 5 2 2 Es sind daher keine direkten Schnittstellen zwischen dem Client und der Datenbank notwen dig Dieses Vorgehen hat den Vorteil dass jederzeit die Datengrundlage ausgetauscht werden kann Es ist ebenfalls mit einfachen Mitteln m glich einen Datenbank Dump zu erstellen Die ses Abbild kann als Sicherung oder als Datengrundlage auf anderen Servern eingespielt werden F r den Fall dass die Datenbanktechnologien weiter entwickelt werden oder aus Lizenzgr nden andere Datenspeichermechanismen eingesetzt werden m ssen kann dies unabh ngig von der restlichen Architektur geschehen Die aktuelle Datenbank enth lt bisher Testdaten f r vier Geb ude des Universitatscampus in Dresden Sie umfassen Geodaten f r alle Etagen und R ume der Geb ude Die somit vorhan denen Koordinaten und damit verbundenen Metadaten sind f r die
50. aher aus vielerlei Hinsicht sinnvoll Um die Usa bility zu berpr fen und m gliche Verbesserungspunkte aufzuzeigen wird in diesem Kapitel eine Evaluierung durchgef hrt f r welche zun chst die festgelegte Methode beschrieben wird Zu s tzlich werden in der ISO IEC 9126 fS01 Merkmale definiert welche die Produktqualit t einer Software sichern sollen Die folgenden Qualit tsmerkmale nach 501 sind dabei von entschei dender Bedeutung Funktionalit t legt fest ob die Funktionen die geforderten Aufgaben erf llen Zuverl ssigkeit l sst sich daran erkennen dass die Software ihr Leistungsniveau unter definier ten Bedingungen ber einen bestimmten Zeitraum aufrecht erh lt Benutzbarkeit wird durch die Beurteilung einer Nutzergruppe festgelegt Effizienz zielt auf die verbrauchten Ressourcen in Vergleich zur erreichten Funktionalit t http www nzZ ch nachrichten digital 850000_android geraete_werden_taeglich_aktiviert_1 15337611 html Zugriff am 03 03 2012 http support google com androidmarket bin answer py hl dekanswer 113515 amp topic 1046718 amp ctx topic Zugriff am 03 03 2012 97 Wartbarkeit beschreibt den Anderungsaufwand der Software welcher fur Korrekturen Verbes serungen usw notwendig wird Ubertragbarkeit meint den Aufwand der zu betreiben ist um die Software in eine andere Um gebung zu bertragen Auch diese Merkmale sollen in der Evaluierung betrachtet werden und in Abwandlung auf das
51. android mapbiq loader processing org placelab eventsystem org placelab spotter de tud android mapbig utils de tud android mapbiq locator processing combi de tud android mapbiq locator test de tud android mapbiq utils Jama util de tud android mapbiq de tud android mapbiq core wfs de tud android mapbiq locator positioning de tud android mapbiq locator input de tud android mapbiq renderer de tud android mapbiq utils Jama de javagis jgis util de tud android mapbiq locator processing inertial de tud android mapbiq locator processing wlan source 1 6 sourcepath gen src splitindex true use true gt lt link href file C PATH_TO_SDK android sdk docs reference I gt lt link href file C PATH_TO_PROJECT MapBiquitous doc gt lt link href file C PATH_TO_SDK android sdk add ons addon_google_apis_google_inc_8 docs reference gt lt javadoc gt lt target gt lt project gt A 5 javadoc xml 121 122 Anhang Evaluation ABBILDUNGSVERZEICHNIS 2 1 2 2 2 3 2 4 2 5 3 1 3 2 3 3 3 4 3 5 3 6 5 1 5 2 5 3 5 4 5 5 Verbreitung von Mobiltelefonen und mobilen Anwendungen LUES 17 UML Klassendiagramm des FilteeSchemas 26 Architektur des MapBiquitous Projekts aus Spr11 28 Layermodell der Fakult t Informatik TU Dresden aus 5 11 29
52. assung des kompletten Farbsche mas Bezeichnung Hex Farb Code Erklarung Grundriss FF9367 der Grundriss des Gebaudes im LOD2 Grundrissumrandung FF533C die Umrandung des Grundrisses Innenhof FCF6A4 der Innenhof eines Gebaudes Raum FF9367 7 7 die Fl che eines Raumes im LOD3 Raumumrandung keine die Umrandung eines Raumes ausgew hlter Raum 005C60 ein vom Nutzer ausgew hlter Raum Umrandung des aus keine die Umrandung des ausgew hlten Raumes gew hlten Raums Sonderraum 8374B5 ein speziell hervorgehobener Raum z B WC s Umrandung des keine die Umrandung spezieller R ume Sonderraums POI Markierung 8374B5 die Markierung eines Suchergebnisses Standortmarkierung 05A1CD e die Markierung des Nutzerstandortes Route 89ECFF der Navigationspfad Start der Route 98E79A ein ausgew hlter Startraum oder Startpunkt Ziel der Route FF9099 ein ausgew hlter Zielraum oder Zielpunkt Tabelle 5 1 Farbdefinition f r zeichenbare Objekte Die geplanten Funktionen fordern Farbdefinitionen f r verschiedene Bereiche welche in der Ta belle 5 1 inklusive einer Erkl rung aufgelistet sind Die Bereiche haben sich aus der Untersuchung der aktuellen App und einer unterst tzenden Evaluation ergeben Der entwickelte Fragebogen ist im Anhang A 1 zu sehen Er ist so konzipiert dass zu jeder Frage mehrere Bilder mit einer vierstufigen Skala bewertet werden sollten Diese sogenannte Likert Skala nach Lik32 wurde bewusst auf eine gerade
53. atei Die Kommunikation mit dem Server wird in der Regel stateless gef hrt Das hei t dass alle Informationen und Parameter bei jedem Request gesendet werden m ssen Es existieren un terschiedliche Web Services f r verschiedene Aufgaben unter Anderem der Web Map Service WMS welcher als Response Kartenausschnitte zur ck liefert Web Coverage Services 1 5 liefern hingegen Rasterdaten an den Client aus Nachfolgend wird der Web Feature Service WFS beschrieben da er in dieser Arbeit besondere Bedeutung hat GET http hostl post pfad namel wertl amp Code 2 1 OWS Request Alle OpenGIS Web Services haben folgende Gemeinsamkeiten Sie sind in der Regel stateless Die bereitgestellten Services stellen ihre Dienste ber eine HTTP Schnittstelle zu Verf gung Von allen OWS wird die Operation GetCapabilities zur Verf gung gestellt Dar ber k n nen die Funktionen des jeweiligen Dienstes abgefragt werden Als Antwort wird ein Dokument generiert und an den Client gesendet GetResourceBylD wird ebenfalls von allen OWS definiert ber diese Funktion wird der Zugriff auf die Metainformationen erlaubt Pflichtparameter jedes Aufrufes sind SERVICE REQUEST und VERSION e Als Antwort wird vom Server die in der jeweiligen Norm festgelegte Antwort oder eine ent sprechende Fehlermeldung gesendet Fehlermeldungen haben den MIME Type text xml Die Syntax einer einfachen GET Anfrage ist im Codebeispiel 2 1 da
54. auslagern 4 2 SCHNITTSTELLE ZUM SERVER DIENSTDEFINITION Das Kapitel umfasst alle Anforderungen die an Schnittstellen des Servers gestellt werden Sie werden abgeleitet aus den Funktionen die zum Abfragen der Dienste ben tigt werden Mit Hilfe der definierten Anforderungen soll eine RESTful API f r die Geb udeserver entstehen Schnittstellenerweiterung der Geb udeserver Die MapBiquitous Geb udeserver besitzen in ihrer aktuellen Konfiguration bereits Schnittstellen um grundlegende Funktionen eines WFS zur Verf gung zu stellen Diese Konfiguration muss berarbeitet und erg nzt werden Ziel ist es dass die verschiedenen ortsbezogenen Dienste die korrekte Schnittstelle des Servers ansprechen und die aufgearbeiteten Ergebnisdaten XML Format zur Verf gung gestellt bekommen Positionsbestimmung F r den Ansatz die Positionsbestimmung des Clients mit der Finger printing Methode durchzuf hren ist eine Schnittstelle notwendig Sie nimmt die Parameter des Verfahrens entgegen und gibt als Ergebnis die Positionsberechnung zur ck Der Client kann diese Position f r die Darstellung oder f r weitere Anfragen verwenden Um diesen Ansatz zur Ortung des Clients zu verbessern wird eine Schnittstelle ben tigt die sowohl Fingerprinting Parameter als auch die Position entgegen nimmt Das Interface zur Kommunikation mit einem Server sollte so generisch wie m glich angelegt werden um anderen Verfahren die einen externen Server zur Positionsbestim
55. bgeben wenn er sich am Standort angemeldet hat Deals sind Verg nstigungen oder Sonderangebote die dem Nutzer angeboten werden Bilder helfen hnlich wie ein Kommentar und die Bewertung den Standort zu beschreiben Belohnungen werden dem Nutzer f r bestimmte Aktionen Anzahl von Checkins verliehen und erweitern die Community mit einem Spiel und Level Up Charakter 3 7 Communities 49 Es stellt sich heraus dass alle untersuchten Communities neben der notwendigen Suche auch Bilder und Kommentare der Nutzer zum Beschreiben der Orte und Angebote verwenden Aber auch die anderen Dienste werden von fast allen angeboten so dass nur wenige kleine Unter schiede im Gesamtbild entstehen 3 8 KRITIKEN Die bisherigen Losungen zeigen umfangreiche Moglichkeiten fur den Einsatz von Location Based Services Im OutdoorBereich gibt es eine Vielzahl von Funktionen die dem Nutzer die gege benen Geodaten bestm glich aufbereiten Die Plattformen und Softwarel sungen hneln sich gr ten Teils Gemeinsamkeiten sind die Suchfunktionen f r die aktuelle Position des Nutzers das Erkunden ausgew hlter Umgebungen und Zusatzfunktionen wie Navigation sowie Checkins bei bekannten Orten Signifikante Unterschiede zwischen Desktopimplementierungen und An wendungen f r mobile Ger te existieren kaum Das Problem der bestehenden Anwendungen ist dass sie keine Integration f r Indoor LBS bie ten Es existieren weder Suchfunktionen noch andere weiter gehende Funk
56. bilden sie die Model Objekte des MVC Pattern Wie die in den Modells gespeicherten Daten an die unterschiedlichen Komponen ten ausgegeben werden oder von ihnen aktualisiert werden entscheidet der DataManager Die Singleton Implementierung siehe 7504 GHVJO9 stellt sicher dass keine Objekte doppelt im Speicher gehalten werden Zus tzlich dient auch der DataManager zum Cachen oder Freigeben von Speicherbereichen In Bezug zu den anderen Programmteilen stellt er die Implementierung des Entwurfsmusters Fassade siehe 7504 und GHVJO9 dar Die Fassade ist die beste M g lichkeit in diesem Zusammenhang eine universelle Schnittstelle f r die Subkomponenten des Gesamtsystems darzustellen nach LarO2 Der Locator wird in seiner Rolle als unabh ngiges Positionierungsmodul best rkt Er implemen tiert das Entwurfsmuster der Strategie um immer die bestm gliche Positionierung an den Data Manager zu liefern Auf diese Weise stellt der Locator in regelm igen Abst nden die Position 5 2 Schnittstellen Architektur 61 fest und kann dabei auf verschiedene eigene Module zur ckgreifen Das Strategie Muster erm g licht dass dem Locator unterschiedliche Algorithmen zur Verf gung stehen um seine Aufgabe zu erf llen nach GHVJO9 Zum Beispiel kann bei vorhandenem GPS Signal die Ortung ber eben dieses erfolgen Im Indoor Bereich kommen Verfahren der WiFi Lokalisierung hinzu die eine h here Genauigkeit liefern Die Nutzung anderer Sen
57. bnisse als Liste c Details eines POI bzw Sucher mit Suchergebnissen gebnisses Abbildung 5 13 Mockups zur Karten Listen und Detailansicht Die Ergebnisse der Suche konnen auf verschiedene Art und Weise angezeigt werden Initial wird dazu wie in Mockup 5 13a die Anzahl der Ergebnisse f r den Nutzer dargestellt Zus tzlich wer den alle Ergebnisse die im aktuellen Kartenausschnitt darstellbar sind angezeigt Der tap auf ein solches Ergebnis welches durch ein spezielles Icon repr sentiert wird zeigt dem Nutzer die Info darstellung Sofern weitere Details gefragt sind kann der Nutzer entweder die Detaildarstellung direkt am Ergebnis aufrufen und gelangt auf eine Ansicht hnlich Abbildung 5 13c oder er ruft zuerst die Liste der Suchergebnisse auf Abbildung 5 13b Diese erlangt er mit einem erneuten tap auf die Suchfunktion In der Listenansicht kann er sich dann ein Ergebnis w hlen und gelangt ebenfalls zur Detailansicht Er kann auch die Parameter welche zur Suche f hrten ndern und damit die Suche erneut starten 5 3 Darstellung 71 oe Favoriten oder ABC KG NAVIGATION aktuellen Standort NAVIGATION Bitte geben Sie Start Bitte geben Sie Start Startort aktueller Standort und Ziel ein und Ziel ein H e beim Ausf llen abbrechen los geht s 070 00 00 00 0 05000080008 2109000020 ef Formular zum Starten der Navigation b Navigationsformular mit Softkey
58. ch die Anforderungen und die damit notwendig werdenden nderungen wie folgt zusammenfassen Aus architektonischer Sicht sollte ein Framework entstehen welches die bestehenden Geb u dedaten verwalten und verarbeiten kann Das Entwickeln neuer Komponenten zur Anbindung weiterer Dienste sollte so einfach wie m glich gestaltet werden Geb udeserver und client seitige Modells m ssen f r die neue Struktur vorbereitet und konfiguriert werden Dabei werden Konstanten an zentraler Stelle ausgelagert um eine flexible Anpassung zu erm glichen 4 4 Zielgruppe 55 Das Zusammenspiel zwischen dem Client und dem Server wird Uber Schnittstellen definiert und gesteuert Sie sollten die diskutierten Abfragemoglichkeiten realisieren und ebenfalls zur Da teneingabe geeignet sein F r jede der besprochenen Suchen wird eine separate Schnittstelle erstellt wobei doppelte Implementierungen zu vermeiden sind Da die Nutzeroberfl che die meisten der neuen Funktionen visualisieren muss ergeben sich auch in diesem Bereich umfassende Anforderungen Schnittstellen m ssen bedient und teil weise durch Nutzereingaben bef llt werden F r alle neuen Informationen welche dem Nutzer als Ausgaben pr sentiert werden werden Konzepte f r die Darstellung ben tigt Dabei sollten Usability und Design Standards beachtet und angewandt werden Am Ende der Konzeption und Entwicklung steht eine Evaluation um die Ergebnisse der Arbeit zu pr fen 56 Kapitel4 Anforderungen
59. chzeitiger Zugriffe auf den Datenbestand ist es notwendig Features w hrend der Bearbeitung zu sperren Dieses Vor gehen gew hrleistet die Konsistenz der Daten und wird mit der Operation LockFeature durch gef hrt Alternativ kann auch die Funktion GetFeatureWithLock verwendet werden Nach erfolgreicher Transaktion kann die Sperre wieder aufgehoben werden lt ogc Filter_Capabilities gt lt ogc Spatial_Capabilities gt lt ogc Spatial_Operators gt lt ogc Equals gt lt ogc Disjoint gt lt ogc Touches gt lt ogc Within gt lt ogc Overlaps gt lt ogc Crosses gt lt oge Intersect gt lt oge Contains gt lt oge DWithin gt lt gt lt oge Spatial_Operators gt lt oge Spatial_Capabilities gt lt oge Scalar_Capabilities gt lt ogc Logical_Operators gt lt ogc Comparison_Operators gt lt oge Simple_Comparisons gt lt ogc Like gt lt ogce Between gt lt oge Comparison_Operators gt lt ogc Scalar_Capabilities gt lt oge Filter_Capabilities gt Code 2 2 Ausschnitt der aktivierten Filter aus dem GetCapabilities Response N ScalarOperator LogicalOperator Abbildung 2 2 UML Klassendiagramm des Filte Schemas SpatialOperator ComparisonOperator 26 Kapitel 2 Grundlagen 2 3 5 Filter Encoding In der OpenGIS Filter Encoding Specification siehe Ope05 wird definiert wie Filterkriterien im XML Format angelegt und bermittelt werden Mit Hilfe die
60. den Einstellungen festgelegt die f r die Verarbeitung der Daten auf dem Client entscheidend sind So wird die Kodierung der XML und die Interpretation der GML Versionen bereits auf dem Server eingestellt Zus tzlich werden Uber das Service Level die transaktionalen F higkeiten des WFS aktiviert Diese werden sp ter zum Einf gen und ndern von Geodaten ben tigt Globale Einstellungen existieren ebenfalls Sie legen die Zeichenkodierung und die Genauig keit der ausgegebenen Koordinaten fest Ersteres sollte konsistent zur DB Einstellung UTF8 sein Die Nachkommastellen der Koordinaten wurden auf Grund der bisherigen client seitigen Projekteinstellung auf sechs Stellen festgelegt Directory Service Neben dem Geoserver existiert der Directory Service DS Er reagiert auf Anfragen des Clients und verteilt die Urls der Geb udeserver Da sich die Urls auf Grund des neu eingerichteten Geoservers ge ndert haben und auch die Namensr ume eingef hrt wurden ist es notwendig die neuen Daten in den DS einzupflegen Die bisherigen Namen der Geb ude erhalten den Namensraum als Pr fix in der Form namespace building name Die Url zum WFS ndert sich auf die beschriebene Adresse der Form http carlos inf tu dresden de 8080 geoserver namespace wfs amp SERVICE wf s amp VERSION 1 0 0 Durch diese Anpassungen sind die Gebaudedaten wie bisher Uber den DS erreichbar Die ausgelieferten Adressen werden auf dem Client genutzt um Uber den WFS
61. den ebenfalls vom renderer entgegen genommen und dann via Intents oder durch direktes Speichern in den core an andere Programmkomponenten weitergereicht Da es notwendig wurde die Darstellung anzupassen ha ben sich viele nderungen in der LODOverlay Klasse ergeben Au erdem sind die beiden Views EditPoiView und SearchView hinzugekommen Mit ihnen k nnen POl s angelegt und ge ndert bzw gesucht werden Sie dienen vorrangig dazu dem Nutzer die n tigen Eingabem glichkeiten zur Verf gung zu stellen Weitere Details im Hinblick auf die angepasste Darstellung werden im Kapitel 6 3 erl utert Das router Package ist hnlich wie der locator eine Komponente an der parallel zu dieser Ar beit geforscht und gearbeitet wird Sie wurde komplett neu in das umstrukturierte Framework eingef gt Dieser Programmteil stellt einen weiteren Location Based Service zur Verf gung Es handelt sich dabei um die integrierte Indoor und Outdoor Navigation Start und Zieldaten werden nach dem Konzept dieser Arbeit bereits ber den core verwaltet und mit Hilfe des Renderers dar gestellt Auch dieses Package unterst tzt daher die Kapselung von Funktionen Es greift ebenfalls auf den loader zu um eine Schnittstelle zu externen Routingservices zu etablieren Das utils Package bietet eine Menge an hilfreichen Funktionen In dieses Package wurden Funktionalit ten ausgelagert die von verschiedenen anderen Klassen verwendet werden Die Auslagerung in ein extra geschaffe
62. e zu Lieblingsrestaurants Zwischenstop GET myFeed Code 3 1 Google Data Protocol Request nach der Ressource myFeed 200 OK lt xml version 1 0 encoding utf 8 gt Shttp code google com intl de DE apis gdata docs 2 0 basics html Zugriff am 29 10 2011 38 Kapitel 3 Verwandte Arbeiten lt feed xmlins http ww ws org 2005 Atom xmIns gd http schemas google com g 2005 gd etag W COOBRXcycSp7ImMA9WxRVFUk gt lt title gt Foo lt title gt lt updated gt 2006 01 23T 16 25 00 08 00 lt updated gt lt id gt http ww example com myFeed lt id gt lt author gt lt name gt Jo March lt name gt lt author gt lt link href myFeed rel self gt lt feed gt Code 3 2 Google Data Protocol Response fur den Request 3 1 So wird im Codeausschnitt 3 1 eine Ressource mit Hilfe der bekannten URI abgerufen Dazu wird ein HTTP GET Request an den Server gesendet Der Server wiederum antwortet mit der abgefragten Ressource siehe 3 2 Dieser Response enth lt den Status 200 OK und gibt damit an dass kein Fehler w hrend der Abfrage aufgetreten ist Des Weiteren enth lt er die Metadaten der Ressource Hier ist zu beachten dass keine Eintr ge in der Ressource gespeichert sind Es werden daher nur allgemeine Daten wie author title oder Informationen zur Versionierung hier gd etag und Datum des letzten Updates zur ck geliefert POST myFeed lt xml version 1 0 encoding
63. ebook bieten LBS als Teilfunktionalitat an wobei yelp ausschlie lich auf LBS aufbaut Auf die detaillierten Funktionen der Plattformen wird im Kapitel 3 eingegangen Dass die Entwicklung in diesem Ma e voranschreitet war 1966 noch nicht abzusehen als die ersten Voraussetzungen f r ortsbasierte Dienste in den USA geschaffen wurden Durch den als En hanced 911 bekannten Beschluss wurden die Forderungen gesetzt dass eingehende Notrufe mit einer m glichst hohen Genauigkeit geortet werden sollen siehe PW11 und DVLK11 Die infrastrukturellen Anpassungen erfolgten dann ab Anfang der 80er Jahre Seit den 90er Jahren gibt es in weiten Teilen der Erde hnliche Beschl sse Dass das Thema der LBS noch immer ein aktuelles Forschungsthema ist liegt an den immer neuen M glichkeiten die sich erschlie en lassen So werden f r private Nutzer das real time mapping searchable directions und POl contents nach LMKO8 PW11 und DVLK11 im mer interessanter Das bedeutet dass der Nutzer sich unter anderem mit mobilen Endger ten aktuelle Kartenpositionen anzeigen lassen und umgebende rtlichkeiten nach seinen Interes sen durchsuchen kann Weiterhin werden immer noch leistungsf hige Middleware Frameworks entwickelt um die Software effektiver und entwicklerfreundlicher zu gestalten LMKO08 Das Gebiet der Indoor Location Based Services mit dem sich diese Arbeit umfassend besch ftigt ist 2 2 Location Based Services 17
64. eckt Bei der berpr fung von MapBiquitous wurden keine schwerwiegenden Fehler entdeckt 7 3 FAZIT Zusammenfassend soll am Ende der Evaluierung ein Fazit gezogen werden Dazu werden die anf nglich in Kapitel 4 entwickelten Anforderungen aufgegriffen Die Gruppe der Anforderungen A1 und A2 wurden durch die in Abschnitt 72 beschriebene Eva luierung berpr ft Die festgelegten Anforderungen zur Architektur und technischen Umsetzung wurden komplett w hrend der Konzeption A1 1 und Implementierung erf llt Sie waren die Grundvoraussetzung f r einen lauff higen Prototypen A1 2 Die Datenverwaltung auf der Ser verseite A1 3 A1 4 wurde mit Hilfe des Geoservers bew ltigt Die dadurch hinzukommenden WFS Funktionen konnten auf dem Client umgesetzt und getestet werden A1 5 bis A1 6 Dazu geh rt auch das Implementieren der neuen Package Struktur der erweiterten Konfigurationsm g lichkeiten A1 8 und der Userinterface Kapselung A1 7 Durch die beschriebenen Framework tests wurde eine fehlerfreie Arbeitsweise nachgewiesen Die Anforderungen ab A2 1 definieren den Datenaustausch zwischen dem Server und dem Client Sie wurden client seitig implemen tiert und letztlich durch die Framework und Nutzerevaluierung getestet Es konnten als externe Dienstanbieter A2 2 Google Places und OpenStreetMap integriert werden Das Suchen und Ein f gen von Daten wie es in den Anforderungen A2 3 bis A2 7 bzw A2 9 beschrieben ist wurde umgesetzt Einz
65. eginn am Einzureichen am Dr Ing Thomas Springer Prof Dr rer nat habil Dr h Alexander Schill Institut fur Systemarchitektur Rechnernetze 15 September 2011 14 Marz 2012 gd E L Unterschrift des verantwortlichen Hochschullehrers Verteiler 1 HSL 1 x Betreuer 1 x Student INHALTSVERZEICHNIS 1 Einf hrung 1 1 Motivations 4 4 e ee 85 aaa N eRe pee eee ee hE de A 12 Projekt MapBiquitous 13 Nutzungsbeispiele 2 Grundlagen 2 1 Begrifflichkeiten 22044444 kee eee ee oP PEELE EEG 2 2 Location Based 2 2 1 Anwendungsbereiche 2 2 2 Kl ssifizief ng 42242 54 da Be a a 2 3 OpenGlS 8558 a EEA 2 331 Geodata e isa a at a a AE E ap E e aa E aaa a a Eie dde ie Saa a 2 3 2 Geography Markup Language 2 33 a a aci nn re 2 3 4 23 5 Alter ENCOANG aist a e e a oh we HE eS 2 4 23 27 28 4 8 2 5 7 0 2 2 2 2 2 2222 22 31 Verwandte Arbeiten 33 3 1 Location Based Services am Beispiel eines Lokalfuhrers 33 327 Lokaldetall8 EE EE A AUDA ee nn 33
66. eitere Erleichterung bei der Arbeit mit Ko ordinaten Sie gibt die maximale Ausdehnung eines Objektes an Boundingboxen dienen zur Erkennung von Kollisionen oder fungieren als Entscheidungskriterium ber die Sichtbarkeit im ak tuellen Kartenausschnitt Der EntityType dient zur Klassifizierung des Ergebnisses Dabei ist die Menge aller Typen auf eine festgelegte Liste mit 192 Eintr gen begrenzt Shttp msdn microsoft com en us library ff701715 aspx Zugriff am 29 10 2011 44 Kapitel Verwandte Arbeiten 3 4 YAHOO MAPS Der dritte Anbieter von Karten und damit verknupften Informationen ist Yahoo LBS werden uber die sogenannte Lokal Suche f r den Desktopnutzer zur Verf gung gestellt Die offensichtli chen Funktionen unterscheiden sich dabei nicht von den bisher vorgestellten Es gibt zusatzliche Einschr nkungsm glichkeiten und Filter f r die Suche welche die Ubersichtlichkeit verbessern sollen Zusatzlich existiert auch fur Yahoo eine eigenstandige Android App die nachfolgend kurz beschrieben wird 14 40 13 15 MAY 13 16 Yahoo Yahoo suche Q Alle Q tu dresden Web Regen Zi Sonne oder Regen A 4 Foto bnde Wochenende Technische Universitat Dresden kal _ Dresden 01062 Loka i Kart Lokale Ergebnisse arte 03 51 46 30 Nachrichten rtseite Aktuelles Dresden SN 01067 Andern en Seiten der TU Abbrechen 0 ms Universitatss
67. eitszeit zur Verf gung stellen Point of Interest ist ein interessanter Ort Diese Orte bezeichnen besonders markante Punkte zu denen weitere Informationen in einer Karte verf gbar sind API engl application programming interface ist eine Programmierschnittstelle Sie erm glicht es dem Entwickler Funktionen und Dienste anderer Programme zu nutzen Service ist ein Dienst der von einem Server zur Verf gung gestellt wird 15 Client bezeichnet in dieser Arbeit den Nutzer eines Services Request Response ist die Anfrage an einen Server bzw die Antwort des Servers an den Client UI engl user interface oder auch Benutzeroberflache Sie stellt den sichtbaren Programmteil fur den Nutzer dar Der Nutzer interagiert mit der Benutzeroberflache UX engl user experience ist die Erfahrung die der Nutzer mit einem Programm macht Sie ist von der UI abzugrenzen Ein Programm mit ausgereifter UI sollte aber auch eine gute UX bieten d h der Nutzer sollte sich bei der Nutzung wohlfuhlen App ist die Kurzform von Applikation engl Application oder Anwendung Damit ist im Rah men der Arbeit eine bedienbare Software oder ein Programm gemeint welche auf einem Computer lauft Smartphone wird gleichbedeutend fur die Bezeichnung mobiles Endgerat genutzt Das Smart phone ist dabei eines von vielen m glichen mobilen Ger ten Da die Unterscheidung in den vorliegenden Fallen nicht von Bedeutung ist werden die Begriffe gleichberechtigt verwe
68. ektmodell Architektur des Clients Der Adapter transformiert die Daten zwischen beiden Seiten Die letzte Komponente des Frameworks ist der Router Er dient zur Navigation und Routenbe rechnung Wie alle anderen Komponenten ist er eng mit dem DataManager verkn pft und erh lt ber ihn die Daten Die Berechnung der Routen innerhalb von Geb uden erfolgt ber einen Rou ting Service Zus tzlich besteht die M glichkeit dass Routen geb ude bergreifend berechnet 62 Kapitel 5 Konzeption des Frameworks werden Da zur OutdoorNavigation verschiedene Anbieter zur Verfugung stehen sollten diese genutzt werden Der Router greift auf einen der externen Routing Services zu und nutzt vorhan dene Funktionalit ten Sobald ihm alle Teilrouten vorliegen die innerhalb und die au erhalb von Geb uden setzt er sie zusammen und bergibt sie dem DataManager Die Entwicklung weiterer Systemkomponenten ist durch die beschriebene Architektur verein facht Das System kann daher stets effektiv weiter entwickelt und an aktuelle Forschungsschwer punkte angepasst werden 2 getPosition 5 generate Parser Buildingserver 6 XML Response Abbildung 5 5 Anwendungsfall Locator 1 find LBS 4 generate Request Loader 8 notify Renderer me 7 generate POI s Ein Anwendungsfall soll die komplexe paketorientierte Architektur f r ein besseres Verst nd nis beschreiben dargestellt in Abbildung 5 5 Der Nutzer stellt eine
69. ement x Waren und G tertracking Suchdienst medizinische berwachung Spiele ortsspezifische News x X X Personentracking Katastrophenmanagement Notruf und Rettungswesen Warndienste Parkraumverwaltung x Personaleinsatzplanung Dokumentation Workflowmanagement x ortsspezifische Information Tourismus Gelbe Seiten Diebstahlverwaltung x Navigation x x x Tabelle 2 1 Klassifizierung der betrachteten Dienste nach Bla07 GNSWO6 GFDTO5 Unternehmensanwendungen engl Business Services sind Softwarel sungen welche die Organisation der Unternehmensprozesse durch den Einsatz ortsbasierter Dienste erleichtern Die Dienste sind meist auf das spezielle Unternehmen zugeschnitten So k nnen zum Beispiel beim Warentracking effektiv Lagerbest nde berwacht werden Die Lagerung wird damit g nstiger und die Verwaltung einfacher Endnutzeranwendungen engl Consumer Services beschreiben Dienste die den privaten Nutzer in seinem Alltag unterst tzen Darunter z hlt ebenfalls Unterhaltungssoftware die Kern funktionalit ten von ortsbasierten Diensten nutzt Die h ufigste Verwendung tritt in diesem Be reich bei den ortsbasierten Suchdiensten auf Sie werden von vielen Nutzern zum Finden ver schiedener Informationen oder rtlichkeiten in der unmittelbaren Umgebung genutzt Ein typi sches Beispiel f r die Nutzung von Unterhaltungssoftware sind ortsbasierte Spie
70. ementen um Das Ergebnis des Codebeispiels ist ein Ballon mit Titel kurzer Beschreibung und einem oder wenn die if Anweisung erf llt ist zwei But tons Die OnClickListener werden auf den OnClickListener der aktuellen Klasse umgeleitet und dort verarbeitet 6 3 Darstellung 89 26 results found Look at floor 01 02 03 1 00 What do you want to do in this place a Ballon mit add POI Funktion b Hinweis auf die Suchergebnisse Abbildung 6 5 zwei Screenshot Ausschnitte des Androidprototypen 6 3 3 Datenmanagement Das press Pattern also ein l nger andauernder tap wurde genutzt um der Anwendung weitere spezialfunktionen hinzuf gen zu k nnen Am Beispiel des Einf gens von POI s wird die Im plementierung hier erkl rt F hrt der Nutzer den press auf einer Stelle der Karte aus bekommt er den gewohnten Ballon mit Informationen zur aktuell gew hlten Position Diese sind auf Grund der Interaktion verschieden von denen die ein tap nach sich gezogen h tte Dem User wird dies im Text des Ballons verdeutlicht und er bekommt andere Auswahlm glichkeiten f r weitere In teraktionen Im Beispielscreenshot 6 5a ist das die M glichkeit einen Point of Interest an der gew hlten Stelle in die Karte einzupflegen hnlich k nnte verfahren werden um einen POI zu editieren Nimmt der Nutzer diese M glichkeit war wird er auf eine neue Activity weitergeleitet welche ihm ein Formular zur Dateneingabe bereitstellt Folge
71. en mit Soft keyboard in ein Inputfeld eingetragen Das ausgef llte Formular wird an den Server gesendet Die Antwort enth lt die Geodaten welche wiederum in der Karte dargestellt werden Wurde die Suche erfolgreich ausgef hrt existiert neben der Kartendarstellung mit eingezeichne ten Ergebnissen auch eine Listenansicht Diese kann angezeigt werden wenn der Nutzer das Suchformular erneut aufruft Er sieht die Parameter welche zur aktuellen Suche gef hrt haben und nachfolgend die Ergebnisse als scrollbare Liste Bei der Wahl eines Ergebnisses ffnet sich die Detailansicht des Ergebnisses ber den Zur ck Button gelangt man wieder zur Kartenansicht mit eingeblendeten Ergebnissen Navigation ist ein weiterer Men punkt ber ihn erreicht der Nutzer ein Formular das die Eingabe von Start und Ziel erm glicht Um die Berechnung zu starten dr ckt der Nutzer den OK Button und gelangt zur Kartenansicht mit den Navigationshinweisen Einstellungen hei t der letzte Men punkt Er f hrt zu einem Screen welcher die Personalisie rung der Application erm glicht Damit wird die Anforderung A3 8 an einer zentralen Stelle der Anwendung erf llt Nach dem T tigen der Einstellungen wird der Men punkt durch Dr cken der Zur ck Taste wieder verlassen Es erscheint erneut die Kartenansicht Kurzinfos und Details lassen sich anzeigen indem auf einen POI oder ein Suchergebnis ge tippt wird Dabei wird zuerst eine Zusatzinformation direkt am Punkt in der
72. er Feature Types Informationen zur Datenbasis Verweis auf externe Metadaten optional Format der Antwort Transferformate optional DescribeFeatureType Die ber GetCapabilities zur Verf gung gestellten Metadaten reichen un ter Umst nden f r eine korrekte Anfrage nicht aus Aus diesem Grund gibt die Funktion Descri beFeatureType weitere Informationen zur Struktur der Daten zur ck Sie wird n tig um gezieltere Anfragen und Analysen ausf hren zu k nnen Dazu geh ren e Properties der Features Beziehung zwischen den Features e Datentypen der einzelnen Properties e Wertebereich der Datentypen Die Antwort auf die DescribeFeatureType Anfrage bildet einen Ausschnitt aus dem Anwendungs schema der Geodaten GetFeature Die GetFeature Operation erm glicht dem Client die Abfrage von bestimmten Geo objekten Die Auslieferung der Features erfolgt in einem GML Dokument Mit der Anfrage k nnen Filter und Parameter die Menge der Features eingrenzen und somit gezielte Zugriffe auf den Geo daten ausgef hrt werden Es ist auch m glich einzelne Features per ID auszugeben 2 3 OpenGIS 25 Transaction Transactions werden vom Client genutzt um die Geodaten zu ndern Es gibt wie bei jeder Datenbankabfrage die M glichkeiten Einf gen von Daten Updaten bzw ndern von Daten und L schen von Daten Der Status der Anfrage wird in einem XML Response ausgegeben LockFeature Auf Grund der verteilten Arbeitsweise und mehrfacher glei
73. er Arbeit Ideen zur Erweiterung vorgestellt werden Es gibt viele M glichkeiten das Framework auszubauen und zu optimieren Dabei sind Optimierungen eher ein Gewinn f r die Stabilit t des Systems wie zum Beispiel das Schreiben von Tests Unit Tests oder andere Methoden der Funktionspr fung sind ein fester Bestandteil jeder Softwareentwicklung Der fehlenden Zeit und der Komplexit t des Testthemas ist es geschuldet dass im Rahmen dieser Arbeit noch keine Entwicklungen in dieser Richtung stattgefunden haben Es w rde sich in jedem Fall als Gewinn f r das Framework erweisen wenn in regelm igen Abst nden und nach dem Implementieren neuer Funktionen Standardtests ausgef hrt werden k nnten Diese w rden den gleichbleibend hohen Qualit tsanspruch zus tzlich sichern Auch Fehler in neuen Funktionen k nnten dadurch schnell und effektiv entdeckt werden In der Zeit immer gr er werdenden Datenaustauschs ist auch die Datensicherheit ein zu beleuch tender Punkt Durch diese Arbeit wurden dem Prototyp bereits M glichkeiten zum Crowdsour cing gegeben Viele Nutzer k nnen den Datenbestand kontinuierlich vergr ern und aktualisie ren Diese M glichkeiten m ssen vor Missbrauch gesch tzt werden Die Ans tze um Zug nge zu sch tzen und Datenstr me zu verschl sseln sind vielf ltig Zugriffsrechte auf bestimmte Funktio nen sind denkbar und auch eine damit verbundene Nutzerverwaltung k nnte dem MapBiquitous Projekt einen Mehrwert geben Z
74. erPackage mit den asynchronen Requests Ausschnitt 6 2 1 Beispiel Find nearest In Kapitel 5 2 3 wurden die drei haupts chlichen Location Based Services und deren Kommunika tion mit den Servern beschrieben Die Kommunikationswege und das Bilden der Ergebnismenge wird in diesem Abschnitt am Beispiel des station ren LBS Find nearest siehe Grundlagenkapi tel 2 2 2 gezeigt Durch die vier implementierten Requests ist die Integration von internen und externen LBS im MapBiquitous Prototypen umgesetzt F r die Suchanfrage ffnet der Nutzer die SearchView der App und gibt den Suchterm und das zu durchsuchende Geb ude an Im Hintergrund werden zus tzlich Positionsdaten ermittelt Alle Parameter werden der LocationModelAPI gesichert um sie auch zu einem sp teren Zeitpunkt wieder abfragen zu k nnen Beim Start der Suche setzt die Activity einen Intent mit dem Type onGetSearchResult ab Wenn dieser vom Loader empfangen wird beginnt das Initialisieren der asynchronen Requests siehe Abbildung 6 2 Die vier Tasks f r die Suche im Geb ude nach POI s ber Google Places und auf OpenStreetMap werden vom Loader in einem Bundle von Re quests zusammengefasst Dieses Bundle erh lt einen zus tzlichen Callback um die Fertigstellung aller Requests zu pr fen Anschlie end wird das Bundle mit dem execute Aufruf alle Tasks so weit m glich parallel ausf hren Jeder einzelne Task durchl uft beim Aufruf seines Konstruktors folgende Schritte
75. erden m ssen Verschieben des Kartenausschnittes geschieht mit drag and move Abbildung 5 10c Der Nut zer kann durch einfaches Anfassen und ziehen den Kartenausschnitt ndern In diesem Anwen dungsfall m ssen ebenfalls die neu angezeigten Kartenausschnitte nachgeladen werden Sofern POI s oder Suchergebnisse bereits f r den Nutzer angezeigt werden m ssen diese ebenfalls auf ihre Position berpr ft und eventuell nachgeladen werden Suchen eine der Hauptfunktionalit ten die dem Nutzer Extrainformationen bereitstellen Um die Aktion auszul sen gibt es zwei verschiedene M glichkeiten Die erste interaktive Variante 5 3 Darstellung 67 tap Dress drag and move Abbildung 5 10 Touchscreen Pattern aus VWW10 besteht darin das press Pattern nach VWVWV10 siehe Abbildung 5 106 anzuwenden Es beruht darauf dass der Nutzer einen Punkt in der Karte l ngere Zeit mit dem Finger ber hrt Nach dem entscheidenden Zeitraum wird f r den ber hrten Kartenpunkt die passende Information nachgeladen Anschlie end wird die Info direkt in der Karte dem Punkt zugeh rig eingeblendet Der press erm glicht somit das Hinzuf gen eines Kontextmen s mit weiteren Funktionen und Suchm glichkeiten an einen bestimmten Kartenpunkt Die zweite Suchm glichkeit ist die direkte Suche ber das Men erreicht der Nutzer den Screen der ihm eine Suchmaske zur Verf gung stellt Die Parameter wie zum Beispiel der Suchterm wer d
76. ere lt string gt weitere Konfigurationen lt resources gt Code 6 1 Ausschnitt aus der config xml Ressourcen sind in jedem Android Projekt unabh ngig des Javacodes definiert Zu solchen Ressourcen z hlen unter anderem alle verwendeten Bilder und Icons die Layouttemplates wel che f r die Darstellung der Views ben tigt werden und s mtliche Konstanten und Texte Diese Umsetzung wird in allen androidbasierten Developer Guides als Paradigma festgelegt wurde aber im bisherigen Prototypen kaum eingehalten Bei der Strukturierung des Frameworks wur den diese Gegebenheiten beachtet und beispielsweise vorhandene Strings an die entsprechende Stelle ausgelagert Die Ressourcen bieten auch die M glichkeit mit einfachsten Mitteln Konstan ten projektweit zu definieren Da dies auch eine der Anforderungen war sind Einstellungsm g lichkeiten in der config xm vereinheitlicht und zentral zusammengefasst Im Codebeispiel 6 1 ist ein Ausschnitt dieser Konfigurationsdatei dargestellt Er soll zeigen wie verschiedene Datentypen definiert werden Einfache Datentypen wie Strings Booleans und Integer stehen dabei zur Verf gung Auch String Arrays sind einfach in Form von Listen definierbar Mit diesen XML Definitionen sind alle ben tigten Konstanten abbildbar F r weitere Typen steht die Androiddokumentation zur Verf gung http developer android com guide topics resources available resources html Zugriff am 01 02 2012 84 Kapitel 6 Imple
77. erf Sie sind als Vektorgrafiken vorhanden und k nnen an das g ltige Farbschema angepasst werden Vorhandene Icons aus dem Projekt wurden gegen neue passendere ausgetauscht Damit wird der Gesamteindruck der App verbessert und das Design gefestigt 6 4 PROBLEME W hrend der Implementierung traten unterschiedlichste Probleme auf welche an dieser Stelle erw hnt werden und nicht komplett im Rahmen dieser Arbeit behoben werden konnten Ihnen sollte besondere Aufmerksamkeit gelten wenn das Projekt in die n chste Entwicklungsphase geht 6 4 1 Client seitig Auch in diesem Kapitel bietet sich die Einteilung in Client und Serverseite an Nachfolgend werden die festgestellten client seitigen Probleme erl utert Intents dienen dem Datenaustausch zwischen verschiedenen Programmkomponenten und Ser vices Sie sind Grundlage des Android SDK s und somit Mittel der Wahl beim Aufrufen und Be nachrichtigen von anderen Klassen mit Hilfe von Broadcasts Leider wurden diese Aufrufe und Benachrichtigungen codeseitig kaum oder gar nicht dokumentiert So fiel die Einarbeitung in den anfangs fremden Code sehr schwer und das Nachvollziehen von Abl ufen war kaum m glich Die Dokumentation wurde an wichtigen Stellen nachgebessert Hundertprozentige Vollst ndigkeit kann aber auf Grund der begrenzten Zeit und der Projektgr e noch nicht gew hrleistet werden Services laufen im Hintergrund und f hren verschiedenste Datenverarbeitungen aus Act
78. erhalten hat kann er daraus die ID des Geoobjektes isolieren Alle Attribute welche aktualisiert werden sollen m ssen zusammen mit der ID als GML Objekt kodiert und an den Geb udeserver gesendet werden Wieder f hrt der 5 2 Schnittstellen Architektur 65 Server eine Validierung mit einer anschlie enden Versionierung durch Durch die Versionierung werden Nutzer und Zeitstempel mit dem neuen Datensatz verkn pft und machen alle nderun gen an einem Geoobjekt nachvollziehbar Wenn der Prozess fehlerfrei abl uft wird der OK Status an den Client gesendet hnlich l uft die dritte m gliche Aktion Delete ab Nach der Abfrage der Geodaten wird die ID inklusive dem Befehl zum L schen des Objekts an den Geb udeserver gesendet Die Sta tusmeldung ber den Erfolg der Transaktion wird wiederum an den Client gesendet und kann ausgewertet werden 5 3 DARSTELLUNG Die Anforderungsanalyse hat eine Reihe an Funktionen ergeben die f r die Umsetzung auf gra fischer Ebene von Bedeutung sind Sie sind im Abschnitt 4 3 1 aufgelistet Dabei kommt der Kartendarstellung eine besonders gro e Bedeutung zu Alle Aktionen welche der Nutzer vorneh men kann und Darstellungen mit denen er interagieren kann werden ber die Karte erreichbar sein Die Grundvoraussetzung der Anforderung 2 ist daher mit dem Einbinden von Karteninfor mationen im Hauptansicht der Anwendung erf llt Mit einem Screen oder einer Ansicht wie sie in diesem Kapitel b
79. erkennen Mit der zweiten Aufgabe soll der Nutzer R ume identifizieren lernen und Etagen ausw hlen Wie viele R ume hat der Barkhausenbau tud_bar TUD_BAR in der 5 Etage Die dritte Aufgabe beinhaltet die Nutzung der Suche und das Ausw hlen von R umen um Infor mationen zu erhalten Suchen Sie in der Fakult t Informatik tud_inf TUD_INF Raum 023 und schrei ben Sie die angegebene Nutzung des Raumes auf Aufgabe Nummer vier bringt dem Nutzer die aktuell implementierte Navigationsfunktion n her Der Tester durchl uft dabei den kompletten Navigationsprozess W hlen Sie den Raum E023 als Start f r die Navigation aus W hlen Sie danach die Alte Mensa tud_m13 TUD_M13 als Ziel aus und starten Sie die Navigation Lassen Sie sich Schritt f r Schritt zum Ziel navigieren Die letzte Aufgabe komplettiert den Funktionsumfang mit dem Einf gen eines Points of Interest 71 Ul Test 99 Fugen Sie durch einen _ longClick langes Ber hren einer Stelle der Karte einen er dachten Point of Interest in die Karte ein Die Tests erfordern in ihrer Vollstandigkeit die Beobachtung nach BNO6 sowie Protokollierung der Nutzeraktivit ten Die sogenannte protokollierte Nutzung erm glicht es Verhalten und Fehl verhalten der Testperson nach einem einheitlichen Protokoll aufzuzeichnen Die Vereinheitlichung macht das Vergleichen der Ergebnisse m glich Es wurden folgende Fakten bei jedem Probanden festgehalten
80. erschiedenem Zoomlevel auf Indoor Kartierungen Ab Version 6 0 0 wurde der App ein neues Feature hinzugef gt In Kooperation mit American Mall IKEA und einigen Flugh fen hat Google den USA die Innenraume der Geb ude kar tiert und f r die Nutzer der App freigeschalten Ab einem nicht n her definiertem Zoomlevel in dem das Geb ude deutlich identifizierbar ist werden Indoor f hige Geb ude in einer anderen Schattierung dargestellt siehe Abbildung 3 2a Vergr ert der Nutzer den Ausschnitt weiter er h lt er automatisch die Ansicht des Erdgeschosses mit allen eingetragenen R umen Abbildung 3 2b ber den Buttons zum Zoomen wird eine Wahlleiste f r die Etagen eingeblendet Wie Thttp googleblog blogspot com 2011 11 new frontier for google maps mapping html Zugriff am 06 01 2012 http maps google com help maps starthere index html Zugriff am 06 01 2012 36 Kapitel 3 Verwandte Arbeiten 18 26 e al 18 09 Q al 18 04 universitat Entfernung Bewertung Leibniz Institut f r Polymerfo Hohe Stra e 6 01069 Dresden 4 1 Erfahrungsbericht A Technische Universitat Dresd iv IMU Institut Berlin GmbH Le ZZ Hochschule f r Musik Carl Wettiner Platz 13 01067 Dresden in der N he von Budapester Stra e 33 Mommsenstr 9 01069 Dresden 4 Erfahrungsberichte Kaitzer Stra e 18 01069 Dresden
81. ert als eine Einrichtung ein geografischer Standort oder ein besonders interessanter Punkt Bei Ortsanfragen werden Standorte anhand von Breitengrad Langengrad Koordinaten angegeben Anttp code google com intl de DE apis maps documentation places Zugriff am 29 10 2011 40 Kapitel Verwandte Arbeiten GET http maps google com maps api place search xmiI location 40 717859 73 957790 amp radius 1600 amp client client d amp sensor true_or_false amp signature SIGNATURE Code 3 6 Google Places Ortssuchanfrage lt PlaceSearchResponse gt lt status gt Ok lt status gt lt result gt lt name gt WV illiamsburg lt name gt lt type gt locality lt type gt lt type gt political lt type gt lt icon gt http maps gstatic com mapfiles place_api icons geocode 71 png lt gt lt reference gt CkRAAAAAUNZG YyOb4 sd1zCUu9P8 lt reference gt lt result gt lt result gt Attribute lt result gt weitere results lt PlaceSearchResponse gt Code 3 7 Google Places Antwort auf 3 6 GET http google com maps api place details xml reference REFERENCE_ID amp client clientld amp sensor true_or_false amp signature SIGNATURE Code 3 8 Google Places Ortsdetailanfragen lt PlaceDetailsResponse gt lt status gt OkK lt status gt lt result gt lt name gt Peter Luger Steakhouse lt name gt lt vicinity gt Broadway Brooklyn lt vicinity gt lt type gt restaurant lt
82. es geometrische Formen zu erhalten die sich berschneiden oder zum Beispiel gegenseitig enthalten Durch weitere Funktionen sind alle geometrischen Be ziehungen zwischen zwei Objekten abgedeckt Der GET Request im Codebeispiel 2 3 zeigt die Anwendung des DWithin Filter Er gibt alle Geodaten als Ergebnismenge zur ck die im Umkreis von 100m der angegebenen Koordinate definiert sind Da der Filter in XML spezifiziert ist kann er wie im Codeauszug 2 4 auch bersichtlicher dargestellt werden Man erkennt deutlich den Filter um den es sich handelt als erstes Element Im DWithin Filter sind drei Parameter angegeben Der erste PropertyName ist in jedem Filter vorhanden um zu definieren auf welche Eigenschaft der Filter angewandt wird Der zweite Parameter ist der Punkt und der dritte legt den Abstand fest mit dem gesucht wird Die Scalar_Capabilities stellen Attributfilter und logische Filter zur Verf gung Damit lassen sich einfache Attribute vergleichen und durchsuchen sowie mehrere Filter und Vergleiche miteinander verkn pfen 2 3 OpenGIS 27 2 6 MAPBIQUITOUS MapBiquitous ist ein Forschungsprojekt der TU Dresden welches die Umsetzungsmoglichkei ten fur integrierte Indoor und OutdoorLBS untersucht vgl Ke 11 Es wird der Ansatz eines integrierten Systems f r die Verarbeitung von Geb udedaten und Karten verfolgt Ziel ist es eine Anwendung zu erstellen die existierende Techniken der etablierten Outdoor LBS mit den M
83. eschrieben wird ist eine Nutzeransicht gemeint Die Applikation enth lt meh rere verschiedene Ansichten welche den Programmstatus f r den Nutzer pr sentieren Zwischen den Screens kann gewechselt werden wenn zum Beispiel statt der Kartendarstellung ein Einga beformular visualisiert werden soll Im aktuell vorliegenden Prototyp hat sich die Google Maps Karte als bevorzugte Kartenansicht bew hrt Sie hat im Vergleich zu OpenStreetMap ein bes seres Zoomverhalten und eine h here Darstellungsgenauigkeit im Satelitenmodus erreicht Alle zus tzlichen Informationen werden als Layer auf dieser Karte gerendert Layer k nnen beliebig hinzugef gt und entfernt werden wobei der Geb udegrundriss ab der festgelegten Zoomstufe immer sichtbar ist Er bildet damit die Orientierungshilfe und Grundlage zum Darstellen weiterer POI s f r den Nutzer 5 3 1 Interaktionsm glichkeiten Wie in der Einf hrung des Kapitels bereits erw hnt gilt es die meisten der Funktionen f r den Anwender ausgehend von der initialen Kartenansicht umzusetzen Aus diesem Grund ist in der Abbildung 5 8 die Kartendarstellung zentraler Teil des Zustandsdiagramms Nach jeder Interaktion des Nutzers muss die Karte neu gerendert werden um die abgefragten Daten in einem Layer darzustellen Die Abbildung enth lt konform zu den Anforderung A3 6 und A3 7 die zu nutzenden Design Pattern als Aktivit ten nach Tod11 und VWW10 Zoomen wird in der Karte durch double tap Abbildung 5 9a
84. eutlichen werden die genannten Packages kurz beschrieben ihre enthaltenen Funktionalit ten genannt und wenn n tig die Herkunft ihrer Elemente geschildert 6 1 Datenstruktur 81 Das core Package bildet den Hauptbestandteil der App Direkt im core findet die LocationMo delAPI und der LocalDataManager seinen Platz Die LocationModelAPI hat die Funktion den Gro teil der Daten zu speichern Werden aufwendigere Verarbeitungsmechanismen oder Zu griffsmethoden benotigt finden sich diese im LocalDataManager wieder So wird zum Beispiel das Caching ber den LocalDataManager abgewickelt Diese beiden Klassen speichern und ver walten damit den Kern der Anwendung Andere Komponenten k nnen ber sie die Modells und Informationen fur den Programmablauf anfordern Des Weiteren sind unter core models alle Klas sen aus Abschnitt 5 1 2 zusammengefasst Sie dienen der Abbildung von Daten und werden von anderen Klassen initialisiert hnliches gilt f r die Klassen aus core wfs Diese Klassen bilden die WEG Services und Layer ab und sind ber die LocationModelAPI erreichbar Der loader Package kapselt alle Funktionalit ten zur Kommunikation mit dem Geoserver und anderen externen Diensten Er enth lt berwiegend asynchrone Tasks welche ber die Loa der Klasse initialisiert und ausgef hrt werden Die Loader Klasse wird im Androidprototypen als Service implementiert und kann so auch Intents anderer Komponenten abfangen und darauf rea gieren Ist ein Reque
85. exibel erweitert oder ausgetauscht werden k nnen So ist die Positionsbestimmung mit verschiedenen Technologien immer an die aktuelle Verf gbarkeit von Sensoren und Accesspoints angepasst Die aktuelle Konfiguration ist so angelegt dass die Posi tionierung per GPS oder WLAN funktioniert Verfahren wie RFID und weitere Sensoren aktueller 28 Kapitel2 Grundlagen Smartphones befinden sich im Untersuchungsstatus Der Renderer empf ngt die stetigen Aktualisierungen der Position Die Komponente wertet die empfangenen nderungen aus und fordert bei Bedarf beim Loader weitere Geodaten an Beim Darstellen der Daten wird das Konzept der Overlays verfolgt Es werden die Geometrien als wei tere Schicht ber der Karte gezeichnet Verschiedene Detailstufen werden in unterschiedlichen Layern repr sentiert Sie k nnen einzeln oder berdeckend gerendert werden wobei immer die oberste Schicht f r den Nutzer zuerst sichtbar ist Der Loader bernimmt die Kommunikation mit den Geb udeservern Sobald eine Anfrage des Renderers nach weiteren Geb udedaten vorliegt zum Beispiel nach dem Laden einer weiteren Detailschicht l dt die Komponente dynamisch die geforderten Daten nach Der Loader f hrt die Requests an den Server aus und verarbeitet den Response Wenn die Anfrage ohne Fehler beantwortet wird werden die erhaltenen XML Daten geparsed und das Ortsmodell berf hrt Sie stehen dann dem Renderer zur Darstellung zur Verf gung third
86. floor second floor first floor ground floor basement building outline Abbildung 2 4 Layermodell der Fakult t Informatik TU Dresden aus Spr11 Das Ziel der Client Anwendung ist es eine nutzerfreundliche Oberfl che zu schaffen welche die vom Geb udeserver erhaltenen Daten in ansprechender Weise pr sentiert ber das Userinter face werden ebenfalls zur Verf gung gestellte Funktionen des Geb udeservers f r den Nutzer verwendbar gemacht In Abbildung 2 4 sind alle m glichen Layer am Beispiel der Fakult t Infor matik dargestellt Die unterste Schicht das building outline stellt den Grundriss dar und wird geladen sobald der Grundriss f r den Nutzer sichtbar wird F r den Fall das weitere Details des Geb udes angefordert werden muss der Nutzer sich f r die entsprechende Etage entscheiden Sie steht dann als weiteres Layer zur Verf gung Um Unkenntlichkeiten zu vermeiden wird im 2 4 MapBiquitous 29 mer nur eines der Layer ber der Karte geladen Die Etagen stellen den h chsten Detailgrad das Level of Detail 003 dar Hier k nnen die R ume angew hlt werden um Zusatzinformationen zu erhalten Coordinate Building Name Address Phone Number AccessPoin MAC Address OD Entity Subtype inheritance of attributes gt Assignment Attribute Entities to describe semantics Entities to describe geometry Abbildung 2 5 Ortsmodell des
87. ge angezeigt 6 3 5 Navigation Am Beispiel der Navigation l sst sich erkennen wie gut sich eine neue Programmkomponente mit zus tzlichen Funktionen in das Gesamtprojekt integrieren l sst Die Navigation an sich ist nicht Teil dieser Arbeit sie wurde aber in enger Zusammenarbeit und Planung von Anfang an ber cksichtigt Das Grundger st f r die Architektur und die Einbindung der Routerkomponente wurde vom Fra meworkkonzept vorgegeben Auch die Farbgebung der verschiedenen Elemente wie Startpunkt Zielpunkt und Routenverlauf sind durch das Konzept festgelegt worden Durch diese gestalte rischen Vorgaben war es einfach die neu hinzukommenden Oberfl chenelemente in das Ge samtbild einzuf gen Die Ballons sind bereits auf Auswahloptionen zur Start und Zielfestlegung vorbereitet Die Buttons m ssen aber noch mit entsprechenden ClickHandlern belegt und auf die bereits beschriebene Art und Weise eingeblendet werden Ebenfalls ist im Men ein Navigati onseintrag vorhanden ber welchen weitere Einstellungen vorgenommen werden k nnen 6 3 Darstellung 91 6 3 6 Layout Was sich bei der Navigation als vorteilhaft erwiesen hat soll auch fur kunftige Entwicklungen er halten bleiben und fortgefuhrt werden Aus diesem Grund wurde neben dem einheitlichen Farb konzept aus Kapitel 5 3 3 auch eine einheitliche Icongestaltung festgelegt Die zu verwendenden Icons stehen zur freien Nutzung f r private und kommerzielle Projekte jeglicher Art zur V
88. genden Zeichenketten sind in UTF amp kodiert Das ist allgemeiner Standard und er leichtert den Datenaustausch und die Darstellung auf dem Client Die Geodaten der vorhande nen R ume und Geb ude wurden bisher im Koordinatenformat EPSG 4326 mit dem zugeh rigen geod tischen Referenzsystem WGS 84 angezeigt Folglich wird diese Vereinbarung auch bei den neu hinzugekommenen POI s eingehalten 78 Kapitel 6 Implementierung Einige Testdatensatze wurden direkt mit QuantumGIS 1 6 0 in die erstellte Datenbanktabelle eingef gt Die Vorgehensweise sei hier nur der Vollst ndigkeit halber kurz erw hnt Der erste Schritt ist die Einbindung vorhandener Geodaten in QuantumGIS um eine grundlegende Orientierung zu erhalten Die Daten k nnen aus der PostGIS Datenbank oder aus Shape Dateien geladen und dargestellt werden Als n chstes sollte die neu erstellte poi Tabelle geladen und zur Bearbeitung markiert werden Nun k nnen mit dem Zeichenwerkzeug Punkte in das neue Layer gesetzt werden Jeder Punkt hat die in der Tabelle angegebenen Attribute Diese sollten einzeln vervollst ndigt werden Zum Schluss der Bearbeitung werden die Daten direkt in die PostGIS DB gespeichert und stehen ab sofort als Ausgangsdaten zur Verf gung 6 1 2 Serverkonfiguration In der Konzeption Abschnitt 5 2 2 wurde der Geoserver als Server zur Verwaltung der Geo daten festgelegt Dieser existierte bisher nicht und musste an die vorhandene und bereits er weiterte Datenbank
89. glichkeiten innerhalb von Geb uden vereint Renderer Directory Service Building data Loader Locator Building Server wfS Locator Modules MapBiquitous Client Abbildung 2 3 Architektur des MapBiquitous Projekts aus Spr11 Grundlage der Anwendung ist eine Client Server Architektur wie sie in Abbildung 2 3 dargestellt ist siehe Spr11 Serverseitig ist die Architektur auf dezentralisierte Geb udeserver aufgebaut Sie verwalten jegliche Daten und kommunizieren ber Web Feature Services und Directory Ser vices mit dem Client Alle ben tigten Dienste werden vom MapServer in der Version 5 2 1 bereitgestellt Die Datenhaltung erfolgt Standard konform in einer PostGIS Datenbank weitere Informationen unter SS10 Zu den gespeicherten Daten geh ren Informationen zu Geometrien der einzelnen Geb ude sowie deren Etagen Zus tzlich werden f r jede Etage WLAN Access Points mit ihren genauen Koordinaten gespeichert Alle Geodaten verf gen ber weitere Me tadaten die zur Navigation und f r andere Verarbeitungs und Darstellungsschritte verwendet werden k nnen Die Client Seite ist wiederum in drei Komponenten unterteilt den Loader den Renderer und den Locator Um die Funktionsweise der Architektur zu verstehen werden die Hauptkomponenten nachfolgend genauer beschrieben nach Spr11 Der Locator enth lt verschiedene Module welche die Positionierung gew hrleisten Er ist so konzipiert dass die Module fl
90. gt da man in jeder Ansicht die M glichkeit hat den aktuellen Inhalt zu teilen oder zu posten Ergebnisse der Suche werden wie von anderen Apps gewohnt mit Adresse und wenigen Details angezeigt Abbildung 3 5b Sofern eine Telefonnummer vorhanden ist kann diese per Button gew hlt werden lt xml version 1 0 encoding UTF 8 gt http de local yahoo com Zugriff am 30 10 2011 3 4 Yahoo Maps 45 lt ResultSet version 1 0 gt lt Error gt 0 lt Error gt lt ErrorMessage gt No error lt ErrorMessage gt lt Locale gt us_US lt Locale gt lt Quality gt 87 lt Quality gt lt Found gt 1 lt Found gt lt Result gt lt quality gt 87 lt quality gt lt latitude gt 37 416275 lt latitude gt lt longitude gt 122 025092 lt longitude gt lt offsetlat gt 37 416397 lt offsetlat gt lt offsetlon gt 122 025055 lt offsetlon gt lt radius gt 500 lt radius gt weitere Attribute lt Result gt lt ResultSet gt Code 3 12 Yahoo Placefinder Ergebnisliste mit einem Eintrag 3 4 2 Developer API Die API welche die wichtigsten ortsbezogenen Funktionen f r einen Entwickler bereitstellt wird Yahoo PlaceFinder genannt und bietet im Vergleich zu den der Abschnitte 3 2 3 und 3 3 2 einen weiteren beachtenswerten R ckgabewert ber eine umfangreiche Auswahl von location parameter ist es m glich sowohl Suchanfragen als auch Adress und Koordinatensuchen durchzuf hren Die Angabe
91. h tzte Marke welche den gesamten Standardisierungsprozess f r Geoda ten verarbeitende Software beschreibt Es wurde von dem Open Geospatial Consortium OGC geplant und wird durch diese gemeinn tzige Organisation weiterhin entwickelt Ziel von OpenGIS ist es Informationen aus raumbezogenen Daten mit Hilfe verschiedener verar beitender Methoden zu gewinnen Raumbezogene Daten oder Informationen nennt man die Fak ten die in einer beliebigen Form mit einem bestimmten Ort oder Gebiet in Verbindung gebracht werden k nnen Dabei kann es sich sowohl um die Koordinaten eines Hauses oder eines Weges als auch um die Bev lkerungsdichte eines Gebiets handeln Um Softwarekomponenten zu ent wickeln die dieses Ziel unterst tzen und untereinander kompatibel sind werden im OpenGIS Prozess standardisierte Datenmodelle und Standard Schnittstellen spezifiziert vgl AndO9 Es soll erm glicht werden dass Programme die OpenGIS konform programmiert sind ber die Schnittstellen kommunizieren und Daten austauschen k nnen 2 3 OpenGIS 21 2 3 1 Geodaten Geodaten sind raumbezogene Daten de als Grundlage fur alle Geoinformationssysteme dienen Sie werden in Geodatenbanken oder Dateisystemen gespeichert und verarbeitet Dabei kann es sich um einfache 2D Vektordaten oder auch komplexe Geometrien handeln Es sind ebenfalls ge oreferenzierte Rasterkarten XML basierte Geodaten oder topologische Datenmodelle unter die sem Begriff zusammengefasst Geodate
92. hTask fragt hnlich dem AsyncGoogleSearchTask Suchergebnisse von externen Servern ab siehe 3 6 AsyncPoiSearchTask sucht nach POI s welche nicht ber den Gebaudeserver erreichbar sind Das locator Package stellt f r die Anwendung eine weitere grundlegende Funktionalit t zur Verf gung die Positionierung des Nutzers Da die Sensoren welche zu einer genauen Indoor Position f hren k nnen immer zahlreicher werden ist der locator in weitere Unter Packages auf geteilt Dazu z hlen unter anderem locator processing fingerprinting oder locator processing wlan 82 Kapitel 6 Implementierung Diese Komponente der Anwendung ist zur Zeit noch der Entwicklung um die bestmogliche Po sitionierung zu untersuchen Sie hat aber bereits ihre finale Kommunikationsschnittstelle mit dem core Sobald eine neue Position verf gbar ist wird diese in der LocationModelAP gesichert und ist ber getPosition auslesbar Dadurch wird auch an dieser Stelle des Projektes deutlich dass die Zusammenarbeit der unterschiedlichen Komponenten durch Neuentwicklungen und Erweite rungen durch die neue Struktur nicht blockiert wird Das renderer Package ist f r alle Ausgaben an den Nutzer der App verantwortlich Im renderer Package wurden alle Klassen zusammengefasst die mit dem Zeichnen von Overlays auf die Kartenansicht oder anderen Views in Verbindung stehen Damit ist die komplette Ausgabe auf dem Screen ber den renderer zu verwalten Nutzereingaben wer
93. heint in der aktuellen Version noch Fehler aufzuweisen Um solche grundlegenden Probleme in Zukunft zu vermeiden muss ein Leitfaden zur Einrichtung erstellt werden und die aktuelle DB auf Fehleranf lligkeit und PostGIS Kompatibilit t berpr ft werden 6 5 ZUSAMMENFASSUNG In diesem Kapitel wurden die Implementierungen und damit die nderungen am aktuellen MapBiquitous Projekt beschrieben Um einen abschlie enden berblick zu geben und einen Vergleich zum Aus 6 5 Zusammenfassung 93 gangszustand herzustellen werden die Anderungen kurz zusammengefasst Es wird dabei auf die Konzeption verwiesen und eventuell abweichende Designentscheidungen werden erkl rt Grundlage der meisten nderungen war dass neue Daten in Form von Points of Interest ver waltet werden Die Datenhaltung ist im Konzept in der PostGIS Datenbank vorgesehen siehe 5 1 1 Dabei wurden noch keine Tabelleneigenschaften festgelegt Die Entscheidung f r die Tabellenstruktur wie sie in Abschnitt 6 1 1 beschrieben wurde ist aus Diskussionen mit den aktu ellen Projektverantwortlichen und den Untersuchungen aus dem Kapitel 3 Verwandte Arbeiten hervorgegangen Dabei sind die Attribute der Tabelle jeder Zeit erweiterbar und nicht auf den implementierten Stand beschr nkt da der Client beliebig viele Attribute parsen und verwalten kann Zu diesem Zweck wurde im Client das Modell PointOfInterest hinzugef gt welches wie konzipiert vom Locatableltem erbt ber dieses neue
94. hleingaben 1 2 3 1 Aufgabe oO 2 Aufgabe 3 Aufgabe 4 Aufgabe U OF O 5 Aufgabe Wie viele Fehler wurden w hrend der Ausf hrung gemacht Waren sie fatal wurde Hilfe ben tigt Wie oft musste in der Aufgabe neu begonnen werden Fehleingaben fatal Neustarts 1 Aufgabe 2 Aufgabe 3 Aufgabe 4 Aufgabe 5 Aufgabe Sonstige Beobachtungen 120 Anhang A Evaluation 5 JAVADOC XML lt xml 1 0 encoding UIF 8 standalone no gt lt project default javadoc gt lt target name javadoc gt lt javadoc access public author true classpath libs XStream jar libs jaxen 1 1 3 jar libs sgfilter_v1_2 jar libs microlog4android 1 0 0 jar libs ImpOpenGis jar libs dom4j jar libs AndroidAWT jar PATH_TO_SDK android sdk platforms android 8 android jar C PATH_TO_SDK android sdk add ons addon_google_apis_google_inc_8 libs maps jar destdir doc nodeprecated false nodeprecatedlist false noindex false nonavbar false notree false packagenames de tud android mapbiq locator processing fingerprint org placelab mapper org placelab client tracker org placelab util placelab core org placelab org placelab collections de tud android mapbiq router de javagis jgis geometry de tud android mapbiq core models de tud android mapbiq locator de ug android mapbigq loader de tud
95. hreiben Der Aufbau des Frameworks wurde an Hand von neu konzipierten Packages erkl rt und in verschiedenen Abbildungen verdeutlicht Die neuen Funktionen f r Ser verkommunikation und Einbindung weiterer LBS wurden so beschrieben dass die Umsetzungen klar definiert sind Dazu z hlt haupts chlich der neu zu konfigurierende Geb udeserver in Form des Geoservers und die damit entstehenden M glichkeiten zur Datenabfrage und Datenpflege Im letzten Abschnitt 5 3 Darstellung wurde das neue Konzept f r die Nutzeroberfl che vorge stellt Hier wurden gebr uchliche Interaktionsmuster und deren Einsatzgebiete beschrieben Es 5 4 Zusammenfassung 75 wurde festgelegt welche Funktionen uber welche Menustrukturen und Nutzerinteraktionen er reichbar sein sollen F r die Nutzeransichten wurden Mockups erarbeitet Sie stellen die m g lichen Ansichten dar und geben klare Vorgaben f r die konzipierte Umsetzung Abschlie end wurde das Farbschema der Anwendung durch eine Nutzerbefragung definiert Die dadurch erar beitete Farbgebung aller m glichen Designelemente wurde detailliert aufgelistet Um das Konzept in seiner vorgestellten Version zu testen muss es im folgenden Kapitel 6 Im plementierung umgesetzt werden Die reine Konzeption erfolgte ohne Spezialisierung auf eine bestimmte Plattform Die Umsetzung und Implementierung wird mit Android erfolgen da der vor handene MapBiquitous Prototyp eine gut geeignete Ausgangsbasis hierf r bietet Anschl
96. icht von einander Eine weitere Klassifizierung kann man erarbeiten wenn man die Dienste nach der Art des Auf rufes einteilt siehe GFDTO5 Hier werden in hnlicher Weise station re und mobile Services gegeneinander abgegrenzt 20 Kapitel2 Grundlagen Station re LBS dienen dem Erkunden der aktuellen Position und hneln damit einer Mischung aus Impliziten und Expliziten LBS Zum besseren Verst ndnis der Dienste kann man mit den folgenden Fragen bzw Aussagen entscheiden ob es sich um einen Station ren LBS handelt e What is around e Find the nearest Find me Die Aussagen dienen dem Erkunden der aktuellen Umgebung Das ist generell und ohne Ein schr nkung oder als direkte Suche nach dem n chsten gew nschten Punkt m glich Eine weitere grundlegende Funktion ist das Suchen der eigenen Position Mobile Services hingegen kommen zur Anwendung wenn sich der Nutzer zum Zeitpunkt der Abfrage bewegt In dieser Klassifizierung spielt der Navigationscharakter eine gro e Rolle Es gibt auch hierzu entsprechende Aussagen welche der Einordnung dienen Guide me e Get together Navigation and Routing Diese Einordnungshilfen zielen darauf ab von einem aktuellen Ort zu einem anderen zu gelangen Dazu z hlt auch das Zusammentreffen mit einem anderen mobilen Ziel Der Endpunkt einer Navigation muss dabei eingegeben werden Treffpunkte k nnen automatisch ermittelt werden 2 3 OPENGIS OpenGIS ist die gesc
97. ickelt um m glichst vielseitige Darstellungsm g lichkeiten zu bieten Sie ist in der Abbildung 6 4 des Klassendiagramms mit allen Attributen und Operationen gezeigt Prinzipiell wird mit Hilfe des Ballons ein Titel ein Snippet und eine Reihe an Interaktionsschaltfl chen dargestellt Die Attribute title und snippet werden bei der Initialisierung aus dem bergebenen tem ausgelesen Die Buttons welche ber die Enumera tion Buttons festgelegt sind lassen sich ber Methodenaufrufe zum Beispiel einzeln einblenden setButtonVisible btn Buttons oder auch alle ausblenden setAllButtonsHidden Sicht bare Schaltfl chen k nnen ber den Aufruf setButtonClickListener btn Buttons OnClick Listener eine Funktionalit t zugewiesen bekommen Dieses Vorgehen wird im Prototypen zur Etagen oder Raumwahl genutzt InfoBalloonOverlay lt Overlayltem gt balloonView new InfoBalloonOverlay lt Overlayltem gt mapView getContext 0 88 Kapitel 6 Implementierung InfoBalloonOverlay layout LinearLayout selectFloor LinearLayout enumeration Buttons selectRoom LinearLayout SELECTFLOOR addPoi LinearLayout SELECTROOM editPoi LinearLayout ADDPOI search LinearLayout EDITPOI startNav LinearLayout SEARCH endNav LinearLayout SINE title TextView ENDNAV snippet TextView lt lt create gt gt InfoBalloonOverlay context Context balloonBottomOffset int setupView context Context parent ViewGroup vo
98. id setData item Item void setBalloonData item Item parent ViewGroup void setButtonVisible btn Buttons void setButtonHidden btn Buttons void setAllButtonsHidden void setButtonVisibility btn Buttons visibility int void setButtonClickListener btn Buttons OnClickListener void Abbildung 6 4 Klassendiagramm des InfoBallons balloonView setData oltem balloonView setAllButtonsHidden balloonView setButtonClickListener Buttons SELECTFLOOR this balloonView setButtonVisible Buttons SELECTFLOOR if floorSelected balloonView setButtonClickListener Buttons SELECTROOM this balloonView setButtonVisible Buttons SELECTROOM Code 6 3 Initialisierung und Konfiguration des InfoBallonOverlay Das Vorgehen ist beispielhaft am Codeauszug 6 3 dargestellt Die erste Zeile erstellt einen neuen BalloonViewOverlay indem der Typ des Items festgelegt wird und der aktuelle Kontext dem Kon struktor bergeben wird Die zweite Zeile setzt die darzustellenden Daten und bergibt mit dem Overlayltem gleichzeitig die Position an welcher der Ballon gerendert werden wird Die Zeilen drei f nf und acht sorgen daf r dass die gew nschten Buttons sichtbar gemacht werden und alle anderen versteckt bleiben Buttons bestehen aus einem Icon und einem Label und werden nacheinander in einer Zeile angezeigt Ist die maximale Ausdehnung des Ballons erreicht bricht die Zeile hnlich floatenden HTML div El
99. ie end wird zus tzlich eine Nutzerevaluierung durchgef hrt Sie dient der berpr fung der entworfenen Konzepte auf der Nutzeroberfl che 76 Kapitel 5 Konzeption des Frameworks 6 IMPLEMENTIERUNG Das folgende Kapitel beschreibt ausf hrlich die implementierten nderungen am MapBiquitous Prototypen Die praktische Umsetzung der im Kapitel 5 erarbeiteten Konzepte ist aus Entwickler sicht die beste Variante eben diese zu testen und zu evaluieren Um einen schl ssigen Vergleich zwischen der Konzeptstruktur und den verwirklichten Funktionen zu ziehen ist das Kapitel hn lich gegliedert Zu Beginn wird die Neukonfiguration der Geb udeserver und die sich dadurch ndernde Datenstruktur beschrieben Anschlie end werden die ge nderte Architektur und die implementierten Schnittstellen erl utert Der dritte Abschnitt behandelt die nderungen der Nut zeroberfl che und somit das angepasste Bedienkonzept Den Abschluss des Kapitels bilden die aufgetretenen Probleme und weitere nderungen die bisher noch nicht eingeordnet wurden 6 1 DATENSTRUKTUR Das Konzept sieht in den Abschnitten 5 1 1 und 5 1 2 die Anpassung der vorhandenen PostGIS Datenbank und die Erweiterung der client seitigen Modellstruktur vor Die weitreichenden Ver nderungen auf beiden Seiten der Architektur sollten das Zusammenspiel zwischen Client und Server jedoch nicht beeintr chtigen Die gew nschten zus tzlichen Funktionalit ten forderten Ver nderungen im Programmab
100. ige Einschr nkung ist die bisher nur case sensitive Suche auf Geb udeserver daten An der Navigation A2 8 wird im Rahmen einer weiteren Diplomarbeit gearbeitet Die Implementierung ist daher noch nicht abgeschlossen Die Umsetzung der Anforderungen unter konnte durch die Nutzerevaluation in Abschnitt 71 belegt werden Die Ausnahme bildet hier A3 5 Detailansicht eines Suchergebnisses Diese Darstellung wurde noch nicht implementiert da die bisher in den Datengrundlagen vorhandenen Informationen effektiver direkt in der Karte angezeigt werden konnten Infoballon siehe 6 3 2 Die Anforderung ist dadurch nicht hinf llig da zuk nftige Daten zum Beispiel Fotos durchaus eine gesonderte Darstellung verlangen Bei der Evaluation ergaben sich f r die Anforderungen Anttp tools android com tips lint Zugriff am 05 03 2012 104 Kapitel 7 Evaluierung A3 6 und A3 7 Ul und UX neue Features die den nachsten Projektversionen implementiert oder berichtigt werden sollten Es handelt sich dabei um notwendige Verbesserungen fur eine ausgeglichenere Usability Die Personalisierungsoptionen unter A3 8 wurden bisher nur auf Basis statischer Konfigurationsm glichkeiten implementiert An dieser Stelle sollte gesondert entschie den werden welche dynamischen Anpassungen der Nutzer in der App selber vornehmen k nnen sollte Am Ende des Kapitels 4 Anforderungen wurden zwei verschiedene Zielgruppen in A4 festgelegt Die Entwickler konnten du
101. ines umfangreichen Systems zur Implementierung von Location Based Services im Indoor Bereich Wichtig ist dabei dass besonders auf die Integration zwischen Indoor und Outdoor Services geachtet wird Ein flie ender f r den Nutzer kaum wahrzunehmender bergang sollte dabei im Fokus stehen Das Projekt wird nicht nur f r den Nutzer die Vorteile der integrierten Dienste bereitstellen sondern auch f r Entwickler die Arbeit erleichtern Zuk nftige Entwicklun gen und Forschungen werden auch weiterhin das MapBiquitous Projekt nutzen und erweitern Es muss daher zukunftssicher konzipiert und prototypisch an die Gegebenheiten angepasst werden Weitere Informationen zum aktuellen Projektstand werden im Kapitel 2 4 aufgezeigt 1 3 NUTZUNGSBEISPIELE Um die angestrebten Ziele besser verstehen zu werden hier zwei kurze Anwendungs beispiele prasentiert Eines aus Sicht des Nutzers der die entstandenen Services zu seinen Gunsten verwenden will Eines aus Sicht des Entwicklers welcher das entstehende Framework als Entwicklungsgrundlage nutzen will Der Nutzer ist in diesem Beispiel ein neuer Student in einer fur ihn unbekannten Stadt Er hat seinen ersten Tag an der fremden Universitat gerade begonnen und benotigt nun dringend Hilfe um den Vorlesungssaal zu finden Die Zeit dr ngt andere Erstsemester k nnen ihm nicht helfen Gl cklicherweise hat er sein Smartphone mit der MapBiquitous App dabei Die Suche nach der Vorlesung zeigt ihm als E
102. ionsm glichkeiten 87 6 3 2 Metainformationen und Zusatzfunktionen 88 6 3 3 Datenmanagement nn 90 6 3 4 Suche und Ergebnisanzeige 91 6 3 5 Navigati n m a ar 91 6526 EE oo e ae tn ie Re PG a ee EES 92 6 42 Probleme g ua ee ee AE AE AE 92 6471 CleNESEINIG rr ee a len 92 64 2 toh 93 6 5 Z sammentas Le Be Gok 93 Evaluierung 97 LAL SNIPES ta RE Week eas Re ee ae ee ae 98 ana a ee ae 98 7 2 u a NE eee Da a ee aS 98 4 1 33 SAUSWERLUNG eh hate es 101 71 4 Auswertung der System Usability Scale 101 71 5 Bewertung der einzelnen Bestandteile 102 71 6 Kritikpunkte und Verbesserungsvorschlage 103 7 2 Gelee EE 103 RE WE RR 2 Pe a 104 Zusammenfassung und Ausblick 107 ZUSAMIMEMTASSUNGh urn EE ora nae 107 Inhaltsverzeichnis 8 2 FAUSBIICK 2 2 3 2 3 21 02 u 38 ee A ee 108 Evaluation 111 Fragebogen AB Test 111 A 2 Vergleichsfolien des AB
103. itstellung dieser Funktionalit t als wiederverwendbares Framework ben tigt das es Entwicklern in einfacher Weise erm glicht MapBiquitous in ihre Anwendungen einzubinden Dies betrifft die Aspekte des Zugriffs auf Geb udedaten die Integration mit Outdoor Diensten die Funktionalit t zur Positionsbestimmung die Visualisierung von Indoor und Outdoor Daten sowie die Position von Nutzern und weiteren Ressourcen und die Erzeugung und Speicherung anwendungsspezifischer Daten Geotags KML Ziel der Arbeit ist die Erarbeitung eines entsprechenden Konzeptes f r die MapBiquitous Plattform Dazu sollen bestehende L sungen wie Google Maps Bing Maps etc hinsichtlich der bereitgestellten Funktionalit t und ihrer Struktur untersucht werden um einerseits die Anforderungen f r das MapBiquitous Framework und andererseits wiederverwendbare L sungskonzepte zu identifizieren Darauf aufbauend soll ein plattformunabh ngiges Konzept f r ein wiederverwendbares MapBiquitous Framework entwickelt und prototypisch umgesetzt werden Die erarbeiteten Konzepte sind zu evaluieren und zu bewerten SCHWERPUNKTE e Analyse existierender Frameworks f r Location based Services e identifikation der Anforderungen das MapBiquitous Framework e Konzeption eines plattformunabh ngigen wiederverwendbaren Frameworks e Prototypische Implementierung Evaluation und Bewertung der L sung Betreuer Verantwortlicher Hochschullehrer Institut Lehrstuhl B
104. ivi ties sind Bildschirmoberfl chen mit denen der Nutzer agiert Beide k nnen sich f r bestimmte Systemereignisse registrieren und darauf reagieren Sie m ssen aber auch zu gegebenen Zeit punkten beendet werden und sich als Eventempf nger wieder abmelden Dieses Vorgehen war kaum oder fragw rdig umgesetzt und wurde zu Teilen nachgezogen Um stabile Programmlauf zeiten zu erhalten muss die korrekte Reaktion der App beim Starten Beenden und Wechsel zwischen den Activities noch ausf hrlich getestet werden Shttp www smashingmagazine com 2011 12 29 freebie free vector web icons 91 icons Zugriff 29 12 2011 http www augustinteractive com Zugriff 24 02 2012 92 Kapitel 6 Implementierung Das LODOverlay ist die Klasse welche in der aktuellen Version alle darzustellenden Geoob jekte enthalt Fur jedes geladene Gebaude existiert ein Overlay auf der Karte Dieses Konstrukt hat sich als nachteilig bei der Behandlung von Touchevents auf der Karte herausgestellt Grund s tzlich sollte die Performance getestet werden da alle Overlays auf Eingaben reagieren obwohl sie nicht im Interaktionsradius des Nutzers liegen Das hei t dass unter Umst nden Metho denaufrufe und Requests fter als n tig ausgef hrt werden Das wiederum f hrt teilweise zu unabsehbaren Reaktionen und umst ndlichen Workarounds Um die beste Implementierung zu finden gilt es die Overlays zu evaluieren und hnliche Probleme und deren L sungsans tze aus fi
105. kipedia the free encyclopedia The Technische Universitat Dresden usually 9 translated from German as Dresden University of Be Technology and abbreviated TU Dresden or TUD is the largest institute of Q 2 O en wikipedia org wiki 2 Dresden_University_of_Technology 5 Kartenausschnitt mit mehreren b Detailansicht mit weiteren Such Ergebnissen ergebnissen Abbildung 3 4 zwei Screenshots der Bing Maps Android App 3 3 1 Android App Nichts desto trotz existiert eine von Microsoft entwickelte Android App in der Version 1 01 309 Sie umfasst neben allen Kartenanwendungen auch die normalen Funktionen der Bing Suche Die Funktionen die unter 3 2 1 beschrieben wurden sind in komplettem Umfang auch bei Bing Maps zu finden Die Benennung ist teilweise abweichend die Ergebnisse der einzelnen Suchanfragen und die aufgelisteten Details eines Ortes unterscheiden sich jedoch wie in den Screenshots 3 4 erkennbar ist kaum 3 3 BingMaps 43 Zusatzfunktionen die dem Nutzer ein effektiveres Interagieren erm glichen sind aber deutlich erkennbar So kann der User schon bei angezeigter Kurzinformation auf ein Telefonie oder Navigationssymbol klicken Abbildung 3 4a und erspart sich damit den Umweg ber die De tailansicht des jeweiligen Ergebnisses 3 3 2 Developer API Auch die Schnittstellen f r den Entwickler unterscheiden sich wenig in ihrer Grundfunktion von denen der G
106. kt f r zus tzliche Komponenten ausbauf hig und f r die Entwicklung bersichtlicher Die Implementierung Kapitel 6 stellte im n chsten Abschnitt den sogenannten Proof of Con cept die berpr fung der praktischen Umsetzung dar Die meisten der konzeptionell ausgearbeiteten Ideen wurden mit Hilfe des MapBiquitous Prototypen umgesetzt und getestet Schwierigkeiten wurden aufgedeckt und L sungsans tze ausprobiert Dadurch wurden dem Pro jekt w hrend der Implementierungsphase die wichtigsten Location Based Services hinzugef gt Die gew nschte Integration von Indoor und Outdoor Services wurde erreicht Um diese auch in der Nutzeroberfl che widerzuspiegeln wurden Interaktionselemente neu angeordnet und einge f gt Die folgende Evaluierung best tigte die Konzeption in ihrer umgesetzten Art und Weise Die Untersuchung umfasste einerseits Nutzertests welche die Usability der Anwendung bewerte ten und andererseits die Beurteilung des implementierten Codes und dessen Dokumentation als Teil des Frameworks Die Ul Tests k nnen weiterhin als Vergleichswert f r zuk nftige Entwick lungsversionen dienen Die erfolgreichen Strategien zur Dokumentation und zur Erweiterung des Frameworks sollten ebenfalls in den n chsten Versionen des Projektes Anwendung finden um kontinuierlich gute Entwicklungsarbeit leisten zu k nnen 8 2 AUSBLICK Da die Entwicklung eines Frameworks nie wirklich abgeschlossen ist sollen in diesem Kapitel d
107. lauf sowie in der grundlegenden Datenbereitstellung welche im Folgenden aufeinander aufbauend beschrieben werden 6 1 1 Datenbank Als Grundlage f r weiterf hrende LBS und zum Bef llen der Modells des Clients wurde in Kapi tel 5 1 1 der Point of Interest als Datencontainer eingef hrt Die Datenpunkte sollten ebenfalls auf den Geb udeservern abrufbar sein und f r den Nutzer wichtige Services und Informationen innerhalb und au erhalb von Geb uden zur Verf gung stellen Um diese neuen Daten zu spei chern wurde die Erweiterung der Datenbank als beste M glichkeit herausgestellt Bereits in 77 Related Works Kapitel 3 wurden notwendige Attribute zum Speichern der Informationen untersucht und anhand der gewonnen Ergebnisse diskutiert Im Ergebnis dieser Uberlegungen ist ein neuer Tabelleneintrag in der PostGIS Datenbank konzipiert und umgesetzt worden Die entstandene Tabelle enth lt folgende Daten name stellt den Anzeigenamen des POI s dar Er dient dem Nutzer zur ersten Einordnung und groben Beschreibung Es handelt sich dabei um eine String Repr sentation in der Daten bank type ist ein Integer der den POI in eine Kategorie einordnet Die Kategorisierung findet derzeit client seitig statt Dabei wird dem Integer ein Kategoriename zugeordnet Die Entschei dung einen Typ f r jeden POI einzuf hren ist auf die Untersuchung in Kapitel 3 1 zur ckzu f hren description beschreibt den
108. le Es kann sich dabei etwa um virtuelle Schnitzeljagden wie Geocaching handeln Die LBS Nutzung im Endnut zerbereich hat mit dem zunehmenden Einsatz von Smartphones stark zugenommen 2 2 Location Based Services 19 ffentliche Dienste engl Government Services sind die Dienste welche von der Regierung oder ffentlichen Einrichtungen zur Verf gung gestellt werden Es handelt sich hierbei h ufig um spezielle Warnsysteme f r die Bev lkerung Das lteste System stellt der Notruf dar Hier ist schon seit Mitte des 20 Jahrhunderts eine m glichst hohe Genauigkeit angestrebt um den Anrufenden und seinen Notfall orten zu k nnen In gef hrdeten Gebieten werden Warndienste f r Erdbeben die die Bev lkerung fr hzeitig informieren immer popul rer Bereichs bergreifende Dienste betreffen wie bereits erl utert mindestens zwei der drei An wendungsbereiche So kann eine Personaleinsatzplanung einem Unternehmen aber auch einer ffentlichen Einrichtung oder einem Rettungsteam erhebliche organisatorische Vorteile verschaf fen Die Diebstahlverwaltung also das Orten und Beobachten wertvoller Gegenst nde kann im privaten Sektor aber auch im Unternehmensbereich sinnvoll eingesetzt werden Zuletzt ist die Navigation ein Service der in allen Bereichen h ufig genutzt wird um Wege zu verk rzen und Transporte zu optimieren 2 2 2 Klassifizierung Nachdem im Kapitel 2 2 1 LBS nach Einsatzgebieten unterschieden wurden kann man die Ser vices a
109. lich erkennbar Are the buildings clearly visible ja yes nein no Welche Darstellung hebt die Grundrisse besser hervor Which representation points out the floor plans in a better way Bild picture 1 Bild picture 2 2 Frage question Beurteilen Sie die Aussage Karte und Grundrisse wirken harmonisch zueinander Evaluate the statement Map and floor plans are harmonious with each other trifft zu trifft eher zu triffteher trifft nicht zu strongly agree nicht zu strongly agree disagree disagree Bild picture 1 Bild picture 2 Bild picture 3 Bild picture 4 Bild picture 5 Bild picture 6 3 Frage question Beurteilen Sie die Aussage Sonderr ume sind gut erkennbar Evaluate the statement Special rooms are easily recognizable trifft zu trifft eher zu trifft eher trifft nicht zu strongly agree nicht zu strongly agree disagree disagree Bild picture 1 Bild picture 2 Bild picture 3 Bild picture 4 4 Frage question Beurteilen Sie die Aussage Der ausgew hlte Raum ist deutlich von den anderen zu unterscheiden Evaluate the statement The selected room is clearly distinguishable from the other trifft zu trifft eher zu trifft eher trifft nicht zu strongly agree nicht zu strongly agree disagree disagree Bild picture 1 Bild picture 2 112 Anhang A Evaluation 2 VERGLEICHSFOLIEN DES TESTS A 2
110. lle angelegt Eine Datenquelle stellt im MapBiquitous Projekt jeweils alle Daten f r ein Geb ude zur Verf gung Das hei t die Datenquelle ist die bereits besprochene PostGIS Datenbank Layer engl Layers dienen zum Darstellen der Daten einer Etage oder eines Grundrisses Ein Layer erh lt im Geoserver alle seine Daten aus einer Datenquelle Diese Daten k nnen da es sich bei den definierten Datenquellen um Datenbanken handelt mit SOL Befehlen eingeschr nkt und Thttp carlos inf tu dresden de 6 1 Datenstruktur 79 vorselektiert werden Durch diese Abfrage werden ebenfalls die Attribute des Layers festgelegt Zus tzliche Metainformationen wie das Koordinatenreferenzsystem die geografische Ausdeh nung des Layers und der Typ der Geodaten m ssen angegeben werden um die problemlose Bearbeitung der Geodaten zu gew hrleisten Am Beispiel der Informatikfakult t wurde also ein Arbeitsbereich mit zugeh riger Datenquelle angelegt Weiterhin wurden f nf Etagen inklusive Keller durch je einen Layer dargestellt F r vier der Etagen existieren Positionen der WLAN Accesspoints die zus tzlich als je ein Layer eingef gt wurden Zuletzt wurde f r die allgemeine Ansicht des Geb udes der Grundriss als Layer im Geoserver konfiguriert Alle aufgez hlten Layer haben da sie ein Geb ude repr sentieren den selben Namensraum Der WFS des Geoservers muss angepasst werden um die gesamte Funktionalit t freizuschal ten An dieser Stelle wer
111. mentierung 6 2 SCHNITTSTELLEN Da das Konzept so angelegt ist dass die Kommunikation zur Datenabfrage ber den Loader ge steuert wird wurden einige der geschaffenen nderungen bereits im Abschnitt 6 1 3 erw hnt Da die nderungen f r die gesamte App entscheidend und auch in der Konzeption einen besonderen Stellenwert haben wird an dieser Stelle die beispielhafte Implementierung noch genauer erl u tert Es werden auch Codeausschnitte gezeigt an welchen das Vorgehen nachvollzogen werden kann So soll auch f r weitere Entwicklungen der Leitfaden verdeutlicht werden AsyncDataLoadTask DirectoryRequest LOADER m_DataManager LocalDataManager m_iDebu t 4 ncLBSTask sy OD2Task AsyncLOD3Task ncLOD3Task n_szDebug St FilterLoaded AsyncL OD2Task n_CallbacksFilterLoaded List lt Callbacl z m_XMLHandler XMLHandler AsyncOpenStreetMapSearchTask AsyncPoiSearchTask IN m_Receiver LoaderBroadcastReceiver AsyncTaskBundle m_CurrentWindow Extent AsyncLayerBasedTask AsyncLOD1Task AsyncHttpRequest m_szURLDirService String Callback AsyncGeoserverSearchTask AsyncGoogleSearchTask filter String filter String filter String filter String propertyNames ArrayList lt String gt position Coordinate searchBoundingBox Extent propertyNames ArrayList lt String gt layerlDs ArrayList lt String gt radius int layerlD String key String Abbildung 6 2 load
112. mm Auswertung Frage 2 100 100 90 90 80 80 70 70 60 60 E trifft nicht zu 50 50 E trifft eher nicht zu 40 40 E trifft eher zu 30 30 E trifft zu 20 20 10 10 0 0 Bild 1 Bild 2 Bild 3 Bild 4 Bild 1 Bild 2 a Auswertung Frage 3 b Auswertung Frage 4 Abbildung 5 16 Diagramme der Faroschemaevaluation Die Ergebnisse der Evaluation sind in der folgenden Auflistung ausformuliert und in der Tabelle 5 1 konkret festgelegt Grundrisse sind deutlicher erkennbar wenn ein Umriss im selben Farbton aber geringerem Hel 74 Kapitel 5 Konzeption des Frameworks ligkeitsanteil und hoherer Sattigung die eigentliche Gebaudeflache umrahmt Diese Mei nung wird im Auswertungsdiagramm 5 15 deutlich 33 vertraten diese Ansicht voll 36 sagten dass diese Aussage eher zutrifft Der Innenhof passt sich am besten in das Gesamtbild ein wenn er heller und mit weniger S tti gung als das Geb ude dargestellt wird Ein extra Umriss f r den Innenhof ist nicht notwen dig Sonderr ume sollten mit Kontrastfarben zu den brigen R umen dargestellt werden bzw m s sen eine deutliche Abstufung zu den anliegenden Farben aufweisen Umrandungen sind in der Darstellung der R ume nicht f rderlich Diese Schlussfolgerung l sst sich aus der Auswertung der dritten Frage ziehen Die entsprechende Farbkombination in Bild 2 wurde von 18 trifft zu und 50 trifft eher zu der Befragten als die beste gew hlt siehe Diagra
113. mm 5 16a Ausgew hlte R ume sollten genau wie Sonderr ume durch Kontraste hervorgehoben werden Diese Entscheidung teilten etwas mehr als die H lfte 54 aller Testpersonen Auswer tungsdiagramm 5 166 5 4 ZUSAMMENFASSUNG Am Ende des Kapitels werden die wichtigsten Punkte der Konzeption zusammengefasst und die n chsten Schritte erl utert Dadurch sollen die konzipierten nderungen verdeutlicht werden Der Abschnitt 5 1 beschreibt die n tigen nderungen an der Datenstruktur Es wurde deutlich ge zeigt dass sowohl auf Datenbankseite als auch auf dem Client zus tzliche Tabellen bzw Modells geschaffen werden m ssen Die Erweiterungen werden n tig um die neuen Informationen eines POI s abbilden zu k nnen Es wurde festgelegt was die zus tzlichen Elemente erf llen m ssen Dazu z hlt unter anderem die Vererbungsstruktur zwischen dem neuen PointOflnterest und dem Locatableltem welche auf dem Client die beste Flexibilit t f r die neue Klasse garantiert F r die Architektur des Clients wurde die Frameworkstruktur mit Hilfe von Designpattern aus der Softwareentwicklung beschrieben Abschnitt 5 2 Das MVC Pattern ist dabei das beste Mittel um die einzelnen Komponenten des Frameworks zu trennen Die Aufspaltung der Funktionsbe reiche in Model View Controller Packages ist die wichtigste nderung des Frameworks Hinzu kommen weitere Pattern welche die Implementierung erleichtern da sie dem Framework logi sche Strukturen vorsc
114. mmunications 31 6 1053 1054 2008 Advanced Location Based Services Jakob Nielsen Why you only need to test with 5 users http useit com alertbox 20000319 html 2000 Open Geospatial Consortium OpenGIS Filter Encoding Implementation Specifica tion 2005 Krassie Petrova and Bin Wang Location based services deployment and demand a roadmap model Electronic Commerce Research 11 5 29 2011 10 1007 s10660 010 9068 7 Jeff Sauro Measuring usability with the system usability scale sus http www measuringusability sus php 2011 Jan Scholze Entwicklung eines integrierten ansatzes zur indoor und outdoor positionsbestimmung auf basis einer f deration von geb udedatenservern Masters thesis Technische Universit t Dresden Dresden Sep 2009 Jan Scholze Entwicklung eines konzeptes zur integration von geb udeinformationen in mit gis systemen Master s thesis Technische Universitat Dresden Dresden Feb 2009 Thomas Springer Mapbiquitous an approach for integrated indoor outdoor location based services 2011 Jan Scholze and Thomas Springer Dokumentation und benutzerhandbuch zum pro jekt campus range location system 2010 Tim R Todish Not your parent s mobile phone Ux design guidelines for smartpho nes Smashing Magazine 2011 Carsten Thelen and Jan Philipp Seng Entwurfsmuster in java Master s thesis Aachen 2004 Craig Villamor Dan Willis and Luke Wroblewski
115. msetzungen wird nicht doppelt eingegangen damit am Ende des Kapitels ein umfassender berblick der verschiedensten aktuellen Systeme und deren Funktionen gew hrleistet ist 3 1 LOCATION BASED SERVICES AM BEISPIEL EINES LOKALF H RERS In der Arbeit von Komenda Kom08 wurden die sich neu er ffnenden M glichkeiten der zuneh menden Mobilit t eines Nutzers untersucht Verschiedene Strategien und Techniken in Verbin dung mit LBS konnten vorgestellt werden um letztendlich daraus ein Konzept f r einen Lokal f hrer zu entwickeln Der gesetzte Schwerpunkt lag dabei auf der innovativen Umsetzung der Software und der damit verbundenen Verkn pfung von herk mmlichen Internetdiensten und den neu ergr ndeten mobilen M glichkeiten Entstanden ist eine umfangreiche Plattform zur Erstellung Bewertung und Lokalisierung von Re staurants im weitesten Sinne Mit Hilfe dieses Systems werden dem mobilen Nutzer alle M g lichkeiten zum Suchen und Finden des n chsten oder eines bestimmten Restaurants gegeben Auf Kernfunktionalit ten und genaue Strukturierung der Anwendung wird in den n chsten Abs t zen eingegangen 3 1 1 Lokaldetails Alle aufgenommenen Lokale werden jeweils durch verschiedene Informationen repr sentiert Diese Informationen dienen zur Beschreibung eines Lokals und um effektiv nach den Lokalen 33 suchen und sie filtern zu Aus vielen evaluierten Details haben sich die folgenden als wichtigste fur die Umsetzung de
116. mung heranziehen den Datenaustausch zu erm glichen Sofern der Client seine aktuelle Position durch ein anderweitiges client seitiges Ortungsverfahren erh lt ndert sich nichts an den definierten Schnittstellen Suche und Abfrage von Diensten Auf dieser Grundlage entstehen die weiteren Anforderun gen Funktionen zum Auffinden von Diensten in der n heren Umgebung definiert durch einen Radius m ssen genauso bereitgestellt werden wie das Suchen an einem entfernten Ort Da bei entstehen jeweils zwei M glichkeiten Das direkte Suchen mit und ohne einem eingegebe nen Suchterm Das Suchen ohne Stichw rter entspricht dabei der Auflistung aller Services im festgelegten Radius Ungeachtet des Radiuses sollten globale Informationen zum gew hlten Geb ude jederzeit abfragbar sein Dazu geh ren zum Beispiel der Name und die Adresse des Geb udes 4 2 Schnittstelle zum Server Dienstdefinition 53 Datenerfassung Die Analyse hat gezeigt dass durch Crowdsourcing die Datenaktualitat we sentlich verbessert wird und detailgetreue Informationen zur Verfugung stehen Dieses Potential muss genutzt werden dem ber eine Schnittstelle auch Datens tze hinzugef gt und bear beitet werden k nnen Diese Schnittstelle verdient besondere Sicherungsma nahmen um den Datenmi brauch zu verhindern 4 2 1 Zusammenfassung A2 1 Schnittstellenerweiterung nach Sch09a A2 2 Schnittstellen zum Datenaustausch mit externen Anbietern welche die Positio
117. n det Mit diesem Begriff wird durchgangig ein Gerat bezeichnet welches fur Endnutzer frei verf gbar ist und daher keine spezielle Forschungs oder Messhardware einschlie t 2 2 LOCATION BASED SERVICES Location Based Services oder kurz LBS existieren schon seit langerer Zeit Sie haben in den letz ten Jahren durch die Entwicklung neuerer Techniken aber sprunghaft an Bedeutung gewonnen Allgemein bersetzt man LBS im Deutschen als ortsbasierte Dienste Die Begriffe Location Based Services und ortsbasierte Dienste werden daher als Synonyme verwendet Nach JW08 bezeichnen LBS die Gesamtheit aller Dienste welche die geografische Lage eines oder mehrerer Objekte nutzen und verarbeiten Dabei k nnen die Objekte menschlicher oder nicht menschlicher Natur sein Es kann sich also beispielhaft um die Position von Personen oder die Lage von Gegenst nden jeglicher Art handeln In einem ortsbasierten Dienst sind immer zwei Orte involviert Beide haben einen relativen Abstand voneinander der ohne Weiteres berechnet werden kann Das bedeutet dass sowohl das anfragende den Dienst nutzende Objekt als auch das gesuchte Objekt durch den Service in Verbindung gebracht werden Die Objekte k nnen sich unabh ngig voneinander in Bewegung befinden oder statisch an einem Ort verharren Sobald sich mindestens ein Objekt bewegt werden st ndige Aktualisierungen der Position f r den Dienst wichtig Je h her die Genauigkeit der Positionsbestimmung ist um so h
118. n Er definiert wie die geometrischen Attribute angegeben werden m ssen siehe AndO9 1 103 Durch die Fest legung der geometrischen und topologischen Klassen ist es m glich die Geometrie direkt im Feature zu beschreiben Sie kann aber auch als Referenz angelegt auf unabh ngige Geome trieobjekte verweisen Diese Variante erm glicht auch die Mehrfachnutzung in unterschiedlichen Features 2 3 4 Web Services Ein Web Service oder auch Web Dienst wird f r den Datenaustausch zwischen Dienstnutzer und Dienstanbieter verwendet Die Kommunikation erfolgt mit Hilfe von Webtechnologien wie z B dem HTTP Protokoll Jeder Service besitzt eine eindeutig definierte Uniform Resource Identifier URI und damit eine Schnittstelle um angesprochen werden zu k nnen Eine solche serviceori entierte Architektur stellt gemeinsam genutzte Funktionalit t zur Verf gung 2 3 OpenGIS 23 In Bezug auf OpenGIS haben Services mit der Verarbeitung raumlicher Informationen zu tun Die OpenGIS Spezifikationen normieren diese Schnittstellen und erm glichen verschiedenen Kom ponenten die einheitliche Kommunikation vgl And11 Nicht alle OpenGIS Services sind Web Services sondern nur eine Teilmenge Um einen OpenGIS Web Service OWS zu nutzen muss die anfragende Komponente der Cli ent eine HTTP Request senden Um die Anfrage zu spezifizieren k nnen verschiedene Para meter mitgesendet werden Der Response des Servers ist meist eine Bilddatei oder XML D
119. n beschriebenen Initialisierungen und Klassen bzw Methodenaufrufen sind die Requests an die jeweiligen Server gesendet worden Am Beispiel des Geoservers stellt sich der einge hende Request so dar ber die Url und den angegebene Namensraum ist die Datenquelle auf welche sich die Abfrage bezieht identifizierbar Der Dienst ist in allen F llen als WFS angege ben dadurch kann der Server bereits auf das Ausgabeformat der Daten schlie en Des Weiteren spezifiziert der Parameter REQUEST den Typ der Anfrage In den F llen der Suche ist dies Get Feature Da der GetFeature request mit Filterparametern nicht bersichtlich in der Url angegeben werden kann wird das Senden von POST Daten genutzt Der Request Body enth lt eine valide XML Definition mit den verf gbaren OGC Funktionen zum Filtern der Geodaten Im Codebei spiel 6 2 ist ein Request dargestellt der nach POI s sucht Im wfs Query Tag ist der Featuretype festgelegt und anschlie end der ogc Filter definiert Dieses Beispiel zeigt einen Filter der mit verschiedenen Wildcards das Attribut gm name des gew hlten Typs durchsucht Ein Ergebnis ist dann gefunden wenn der String Sitz in dem Attribute vorkommt Mehrere Vergleiche k nnen mit ogc Or Funktion logisch verbunden werden Mit den gefilterten Ergebnissen erstellt der Geoserver eine wfs FeatureCollection im angegebenen GML2 Format Sie enth lt die einzelnen gmi featureMember welche wiederum die tud_poi poi Elemente mit ihren At
120. n erkennbar ist F r die Einstellungen stehen verschiedene M glichkeiten zur Verf gung Checkboxen die eine zus tzliche Funktion aktivieren 70 Kapitel 5 Konzeption des Frameworks Dropdowns mit denen zwischen Standardwerten gew hlt werden kann Buttons welche auf einen weiteren Screen verweisen um komplexere Einstellungen vorzuneh men Optiongroups werden eingesetzt wenn eine bersichtliche Zahl von Auswahlmoglichkeiten dargestellt werden muss Die Suche kann der Nutzer wie erw hnt ber das Men erreichen Er erh lt dann ein Formular Abbildung 5 12c welches alle Parameter der Suche aufnimmt Darin werden die freien Such terme des Nutzers per Softkeyboard eingegeben Standardwerte aus den Einstellungen werden angezeigt k nnen aber auch bei Bedarf ge ndert werden ber Buttons l sst sich die Suche starten oder abbrechen ull 05 27 PM Treppenaufgang ull 3G 05 27 PM 05 28 2 Treffer f r Treppe gefunden Diese Treppe verbindet die erste und zweite Etage Lorem ipsum dolor sit amet consetetur sadipscing elitr sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat sed diam voluptua IX 01 01 10 Aktualisiert 01 12 11 ull reppenauf gang Etage Treppenhaus ull keine Beschreibung vorhanden Treppenaufgang verbindet erste und zweite Von Superuser a Ansicht der Gebaudegrundrissen b Sucherge
121. n technischen Spezifikationen zum Datenaustausch engagieren Sie haben beispiels weise Protokolle f r den Austausch von Positionsdaten zwischen zwei Partnern entwickelt IETF und W3C Internet Engineering Task Force und World Wide Web Consortium die sich um die Integration von LBS und ben tigter Daten in Web basierten Anwendungen bem hen OGC Open Geospatial Consortium welches Standards f r den Umgang mit Geodaten ent wickelt Da die Vielfalt der Standards zu gro ist um auf alle einzugehen werden im Kapitel 2 3 die f r diese Arbeit wichtigsten genauer beschrieben 2 2 1 Anwendungsbereiche Die Anwendungsbereiche der LBS sind sehr umfassend und vielseitig So lassen sich die unter schiedlichen Services im Unternehmensbereich direkt f r den privaten Endanwender aber auch im ffentlichen Sektor sinnvoll einsetzen Alle drei Bereiche sind mit jeweiligen Beispielen in der Tabelle 2 1 aufgezeigt Es wurden dabei Beispiele gefunden die speziell auf einen Bereich zugeschnitten sind aber auch bergreifend und in unterschiedlichen Bereichen einsetzbar sind nach Bla07 IGNSWO6 und GFDTO5 Um Zusammenh nge zu verdeutlichen werden nach folgend aus den spezialisierten und aus den verallgemeinert einsetzbaren L sungen Beispiele beschrieben 18 Kapitel 2 Grundlagen Dienst Service Unternehmens Endnutzeran ffentlicher anwendung wendung Consu Dienst Govern Business Service mer Service ment Service Flottenmanag
122. n werden zur Verarbeitung und Darstellung zwischen den Programmen ausgetauscht Analyse Such und topologische Verschneidungsfunktionen auf den Daten werden durch de Geodatenbanken zur Verf gung gestellt vgl 08 Die Datenhaltung kann auf verteilten Datenquellen beruhen Der Zugriff erfolgt ber einem Ser ver welcher die verschiedenen Datenquellen verwaltet Den Anwendungsprogrammen stehen so die Geodaten unabh ngig der Herkunft in aktueller Qualit t zur Verf gung Zus tzlich ist wie bei jedem Datenbanksystem die Integrit t der Daten sicher gestellt Auf die verschiedenen Ab fragem glichkeiten und die Struktur der Daten wird in den nachfolgenden Kapiteln eingegangen Geodaten besitzen nach Bri08 besondere Eigenschaften die f r die Modellierung von Bedeu tung sind Diese sollen hier kurz vorgestellt werden um den ganzheitlichen berblick zu wahren Geometrische Eigenschaften beschreiben die Lage und Ausdehnung der gespeicherten Ob jekte Dies erfolgt ber Koordinaten die einen genauen Punkt definieren Mit mehreren Punkten oder der Angabe der Ausdehnung werden Fl chen repr sentiert Topologische Eigenschaften erm glichen die Beschreibung der r umlichen Beziehung zwischen Objekten Die wichtigsten sind dabei Nachbarschafts berlappungs und Inklusionsbezie hungen Die mathematischen Grundregeln einer Topologie gelten auch hier Sie ist also zum Beispiel bei Skalierungen und Rotationen bez glich eines Transformati
123. n zu programmieren 14 Kapitel 1 Einf hrung 2 GRUNDLAGEN 2 1 BEGRIFFLICHKEITEN In dieser Arbeit werden viele Fachbegriffe verwendet die sich dem Leser nicht auf Anhieb er schlie en Dieser Abschnitt dient der Erl uterung der Begriffe welche im gesamten Text Verwen dung finden und f r das Verst ndnis relevant sind Um die Bedeutung aller Ausdr cke einheitlich zu kl ren und dem Leser von Anfang an ein Grundwissen zu vermitteln folgt eine Auflistung grundlegender Termini Sie sind nach ihren Zusammenh ngen miteinander geordnet LBS ist die Abk rzung f r Location Based Service siehe 2 2 Position wird in der Arbeit gleichbedeutend mit den Koordinaten eines Ortes verwendet Wenn von Positionsbestimmung oder hnlichen in Zusammenhang stehenden Begriffen die Rede ist wird davon ausgegangen dass die Koordinaten des beschriebenen Ortes bestimmt werden Location Lage wird als quivalent zu Position oder Ort verwendet Sofern ein allgemeiner Ort wie etwa ein Marktplatz oder ein Restaurant gemeint ist wird dies im Text verdeutlicht Fingerprinting ist eine Methode zur WLAN Positionierung Mit Hilfe von vorher kartierten WLAN Signalst rken kann zur Laufzeit ein Vergleich mit aktuellen Messwerten erfolgen Die beste bereinstimmung mit den vorhandenen Daten l sst dann R ckschl sse auf die Position zu Crowdsourcing bezeichnet das Generieren von Daten durch viele Nutzer Die Nutzer sind meist Freiwillige die ihre Arb
124. nde Felder kann er ausf llen um den Geotag zu erstellen name stellt ein einzeiliges Textfeld f r die Bezeichnung des POI s dar type wird als Dropdownliste dargestellt und gibt dem Nutzer in der config xml vordefinierte Auswahlm glichkeiten building ist ein Autocomplete Feld in welchem die aktuell geladenen Geb ude zur Verf gung stehen floor stellt die Etage dar und ist ebenfalls als Dropdown bereits vorkonfiguriert description wird als mehrzeiliges Textfeld angezeigt da der User hier eine umfassendere Be schreibung einf gen kann Diese Felder entsprechen der jeweiligen Repr sentation in der POI Datenbanktabelle siehe Ab schnitt 6 1 1 Die weiteren Daten wie die geografische Position und Datumsangaben kann der Nutzer nicht ndern Sie werden automatisch ermittelt 90 Kapitel 6 Implementierung 6 3 4 Suche und Ergebnisanzeige Uber welche Schnittstellen und auf welchen Datengrundlagen die Suche ausgef hrt wird ist in den vorangegangenen Kapiteln bereits beschrieben worden Dieser Abschnitt verdeutlicht noch einmal die neu hinzugekommenen Nutzerschnittstellen Wie bereits erw hnt ist die Suche direkt ber einen Button in der Karte oder ber das Men erreichbar Beide Interaktionen f hren zur selben Ansicht Sie ist ebenfalls als Formular von Eingabefeldern designt Es handelt sich hierbei aber nur um zwei Felder Das erste dient zum Erfassen des Suchterms das zweite zum Festlegen des Geb udes welches
125. ndig zu machen Ein erster Ansatz ware die Nutzung von ItemizedOverlays Sie halten jeweils nur ein gezeichnetes Element und k nnen auch gesondert via tap press angesprochen werden Da die Raumdarstellung mitunter aber sehr viele zu zeichnende Objekte generiert ist eine Eva luation diesbez glich dringend notwendig 6 4 2 Serverseitig Die Probleme die auf dem Server auftraten sind auf die jeweiligen Serverinstanzen zur ckzuf h ren und dementsprechend erkl rt Der Directory Service DS ist mit einer Nutzeroberfl che ausgestattet die noch nicht fehlerfrei arbeitet Er kann in der jetzigen Version zum Ausspielen der Geb uderserver Urls genutzt wer den bietet aber keine fehlerfreie M glichkeit diese zu bearbeiten Es ist zu berlegen ob eine zentrale Geoserverinstanz die Aufgabe des DS bernehmen kann Dies k nnte ein Geoserver sein welcher nur Url s und deren zugeh rige Koordinaten verwaltet Diese Arbeit hat gezeigt wie m chtig die Filterfunktionen des WFS sein k nnen und wie sie umgesetzt werden Die Geoserverstabilit t sollte Lasttests unterzogen werden Beim Implementieren der ver schiedenen Requests trat zweimal beim Geoserver ein schwerwiegender Fehler auf Dieser f hrte zum Speicher berlauf des Tomcatserver und legte so das gesamte System lahm Die Feh ler konnten nicht eindeutig reproduziert werden Daher w re ein gut konzipierter Stresstest f r alle Serverkomponenten sinnvoll Die PostGIS Datenbankeinrichtung sc
126. neben einfachen geometrischen Objekten sogenannte Simple Features auch komplexe Geometrien abgebildet werden 2 3 3 Features Unter einem Feature versteht man in OpenGIS die grundlegende Repr sentation eines Objektes Es dient wie in der objektorientierten Programmierung ein Modell zur Abbildung eines realen Gegenstandes in die Programmiersprache Das Feature ist also die Abstraktion eines realweltli chen Ph nomens mit all seinen r umlichen Eigenschaften vgl 009 Da der objektorientierte Ansatz auch hier grundlegend ist k nnen wir dem Feature eine Objektklasse zuordnen den so genannten Feature Type Feature Types k nnen frei definiert werden und unterliegen in dieser Hinsicht keiner Beschr n kung So kann nach dem Feature Konzept ein Feature auch aus anderen Features bestehen oder durch eine Geometrie repr sentiert werden Des Weiteren k nnen sie die unter 2 3 1 beschriebe nen Eigenschaften besitzen ISO 19109 Geographic information Rules for application schema definiert die Regeln f r das Erstellen von Anwendungsschemata siehe And09 Int05 und da mit f r das zugrunde liegende objektorientierte Datenmodell In dem ISO 19109 Standard werden die m glichen Elemente eines Feature Types genau beschrieben Der Standard legt ebenfalls fest wie die Beziehungen und Vererbungshierarchien im Anwendungsschema angegeben wer den k nnen Als weiterer wichtiger Standard ist ISO 19107 Spatial Schema zu nenne
127. nen Literatur und Hilfsmittel angefertigt habe Dresden 14 M rz 2012 Literaturverzeichnis 135 136 Literaturverzeichnis
128. nes Package hat den Vorteil dass der bestehende Code von doppelten Algorithmen befreit wurde nderungen an grunds tzlichen Berechnungen sind damit nur noch an einer einzigen Stelle im Projekt notwendig und ziehen sich nicht mehr durch viele Klassen hindurch Dieses Vorgehen vermindert auch die Fehleranf lligkeit des Codes im Allge meinen Zu den utils geh ren berwiegend geometrische Berechnungen die Inklusionstests und hnliches durchf hren Es sind ebenfalls Umrechnungsmethoden f r Punktkoordinaten und standardisierte Algorithmen in dieser Komponente zu finden lt xml version 1 0 encoding utf 8 gt lt resources gt lt add and change here all settings to configure the project gt lt bool name use_building_contoures gt true lt bool gt lt positioning settings gt 6 1 Datenstruktur 83 lt bool name use_sensor_positioning gt false lt bool gt lt bool name dummy_positioning gt true lt bool gt lt general search options gt lt item name searchRadius type integer gt 500 lt item gt lt options for searching the geoserver have to be available in all layers gt lt string array name searchPropertiesGeoserver gt lt the room number gt lt item gt id lt item gt lt item gt nutzung lt item gt lt string array gt lt options for searching with google places gt lt string name googlePlacesApikey gt insert your Google Places key h
129. ngef gt werden und stehen ab diesem Zeitpunkt allen anderen Diensten zur Verf gung Durch eine einfache Abfrage k nnen gezielt Geodaten aus der Datenbank gewonnen werden Sie wer den ausgeliefert und durchlaufen die Verarbeitung zum Beispiel bei der Darstellung Eine andere M glichkeit besteht indem der Datenbestand durchsucht wird Ergebnisse der Suche werden vom Geb udeserver zur ck gegeben und stehen zur Verarbeitung bereit W hrend und nach der Verarbeitung kann es notwendig werden weitere Daten anzufordern Das ist der Fall wenn nach einer Suche Details geladen werden sollen oder sich der dargestellte Kartenausschnitt ndert und weitere Geb udeteile abgerufen werden m ssen Es entsteht eine Art Kreislauf Auch Daten die abgefragt und aktualisiert wurden k nnen ber die Datenerfassung dem System wieder zuge f hrt werden Sie stehen ab diesem Zeitpunkt dem System in aktualisierter Version wieder zur Verf gung 5 1 DATENSTRUKTUR Die Datenstruktur des bisherigen Projektes ist ausschlie lich auf das Laden und Darstellen von Etagen und Geb udegrundrissen ausgelegt Serverseitig werden die Geodaten in einer PostGIS Datenbank verwaltet und ber den Geb udeserver an den Client ausgeliefert Jedes Geb ude verf gt dabei prinzipiell ber eine eigene Url und damit ber einen eigenen Geb udeserver Der Client erh lt die angefragten Daten und stellt sie f r den Nutzer dar Die Anforderungsanalyse Kapitel 4 hat ergeben dass die
130. nsbestim mung z B durch Fingerprinting erm glichen A2 3 Schnittstelle um Daten per Crowdsourcing einzuf gen A2 4 Auffinden einer Einrichtung POI A2 5 Suchen mit und nach Mustern A2 6 Was ist in der N he von mir oder einem definierten Ort A2 7 Informationen zum aktuellen Gebiet oder Geb ude 2 8 Eingabem glichkeiten zum Navigieren von Punkt zu Punkt zum POI A2 9 Eingabe und Erstellen von Daten 4 3 UI DES CLIENTS DARSTELLUNG Nicht zuletzt m ssen alle getroffenen Anforderungen an den Server und die Datenstruktur auf dem mobilen Endger t widergespiegelt werden k nnen Dazu muss das Framework einfache Methoden bereitstellen die die erhaltenen Daten f r die Darstellung aufbereiten Andererseits muss die Eingabe der Client Position und der Suchterme erfolgen und noch auf dem Client auf die bermittlung zum Server vorbereitet werden Ein wichtiges Element wird die Darstellung der Karte sein Sie muss intuitiv bedienbar sein und nach einer erfolgreichen Suche die Ergebnisse enthalten Alle Geb udeinformationen die ohne erfolgte Suche dem Nutzer pr sentiert werden m ssen strukturiert ohne Verz gerung in die Karte eingebettet werden um eine User Experience zu erhalten Zus tzlich zur Kartendarstellung ist eine Detailansicht und eine Listenansicht der gefundenen Dienste sinnvoll Um den Nutzer gewisse Personalisierungsm glichkeiten zu erlau ben ist ein Men mit Grundeinstellungen notwendig Es soll aber nur eine begrenzte
131. ntstandenen Komponenten unabh ngig voneinander weiterentwickelt oder ausgetauscht werden k nnen Die Design Pattern wie zum Beispiel das MVC Pattern wurden mit dem Android Design Guide in Einklang gebracht und umgesetzt Ein Beispiel f r die erfolgreiche Umsetzung ist das samtliche Kommunikation in der neuen Implementierung aus dem loader Package heraus passiert Das erarbeitete Oberfl chendesign wurde ausf hrlich in Kapitel 5 3 beschrieben Die zu nutzen den Touchscreen Pattern wurden erl utert und deren Nutzung begr ndet Bis auf wenige Feinhei ten konnten sie wie in der Konzeption umgesetzt werden Das Zoomen in der Karte funktionierte bereits durch die verwendete MapActivity Diese Ansicht wurde aber vom Layout angepasst um das Erscheinungsbild abzurunden Der double tap zum Vergr ern wurde nicht extra implemen tiert da es sich um eine redundante Bedienungsart handelt und das zoomen bereist ber Buttons pinch und spread funktioniert Es geht daher keine Funktionalit t verloren F r den Zugang zur Suche waren zwei M glichkeiten im Konzept vorgesehen Die eine ber das Men wurde ge nau so umgesetzt Die andere ber einen press wurde noch weiter optimiert Statt eines press gen gt nun ein simpler tap auf ein Such Icon am unteren Kartenrand Das macht das ffnen 94 Kapitel 6 Implementierung der Suche intuitiver wenn der Nutzer die Funktion der langen BildschirmberUhrung nicht kennt Weiterhin erm glicht das Vorgehen a
132. nutzen 5 Ich fand die verschiedenen Funktionen des Systems gut in die Anwendung integriert 6 Es gibt zu viele Inkonsistenzen in der App 7 Ich denke dass die meisten Personen die Nutzung des Programms schnell erlernen 8 Die Anwendung war sehr umst ndlich zu verwenden 9 Beim Nutzen der App habe ich mich sicher gef hlt 100 Kapitel 7 Evaluierung 10 Ich musste viel lernen um de App nutzen zu k nnen Die Berechnung der Usability Kennzahl wird im Auswertungskapitel 71 3 beschrieben 7 1 3 Auswertung Die befragten Personen waren alle zwischen 22 und 39 Jahren alt Sie wiesen durchweg gute Kenntnisse im Umgang mit Kartendiensten im Internet auf und konnten mindestens zwei ver schiedene Anbieter nennen Bei der Wahl der Testpersonen wurde darauf geachtet dass sowohl Smartphone Besitzer als auch in diesem Bereich unerfahrene Nutzer angesprochen wurden In der Gesamtheit ergab sich eine Verteilung von 60 zu 40 zwischen Smartphonebesitzern und unerfahrenen Nutzern Von den erfahrenen Nutzern sind alle an die Verwendung von Karten Apps gew hnt Die H lfte der Probanden hatte bereits etwas Uber das MapBiquitous Projekt geh rt Es wurde trotzdem allen Teilnehmern eine kurze Einf hrung ber Umfang und Ziele des Projekts gegeben Die Aufgaben welche zum Kennenlernen der Anwendung dienten wurden von allen Teilnehmern korrekt gel st Viele der Personen w nschten sich eine Erkl rung und kurze Hinweise zu den einzelnen Funktionen
133. o dem Nutzer konsistent pr sentiert und dargestellt werden 5 2 SCHNITTSTELLEN ARCHITEKTUR Das folgende Kapitel gibt Aufschluss dar ber wie die Architektur des MapBiquitous Clients an gepasst wird um Entwurfskonzepte mit hoher Flexibilit t und Funktionalit t zu vereinbaren Die Architektur soll nach Anforderung A1 1 auf andere Plattformen bertragbar sein Dazu ist es not wendig allgemeing ltige Entwurfsmuster in der Konzeption und Programmierung zu verwenden 5 2 Schnittstellen Architektur 59 Eine weitere Forderung die aus dem Framework Gedanken hervorgeht ist die Erweiterbarkeit und Wiederverwendbarkeit des Projektes In den nachfolgenden Abschnitten wird besonderer Wert darauf gelegt die Forderungen zu erfullen und die empfohlenen Entwurfsmuster zu ver wenden 5 2 1 Client Architektur In Kapitel 2 4 wurde deutlich gemacht dass die bisherigen Komponenten des Clients Loader Renderer und Locator berwiegend lose und ungeordnet miteinander kommunizieren und Daten austauschen Dieses Vorgehen erschwert die Pflege des Gesamtsystems Auch die Er weiterbarkeit ist eingeschr nkt da an vielen Stellen nderungen vorgenommen werden m ssen um weitere Funktionalit t oder Komponenten hinzuzuf gen Ziel der Client Architektur ist eine weitgehende Unterteilung in Packages mit festgelegten Aufgabenbereichen Mit einem Package ist der herk mmliche Mechanismus gemeint Javaklassen in Namensr ume engl namespaces einz
134. onspunktes un ver ndert Thematische Eigenschaften entsprechen Sachattributen Darunter z hlt man nominale quali tative und quantitative Eigenschaften Wenn zu einem Geoobjekt mehrere thematische Attribute existieren unterscheidet man verschiedene Ebenen dieses Objekts Ebenen oder auch Layer k nnen unabh ngige Daten enthalten wie zum Beispiel eine Ebene die Bev l kerungsdichte und eine andere die Arbeitslosenquote enthalten kann Temporale Eigenschaften bezeichnen den Zeitpunkt oder Zeitraum f r den die brigen Eigen schaften gelten Die Eigenschaft ist ausschlaggebend um Ver nderungen der Position in Bezug auf die Zeit deutlich zu machen Neben den vorgestellten Eigenschaften finden sich zu Geodaten immer auch Metainformatio nen Metadaten umschreiben immer die eigentlichen Daten und stellen damit zus tzliche Infor mationen zu dem Datensatz bereit Bei Geodaten k nnten dies das Datenformat die Genauigkeit oder die Aktualit t sein Sie erm glichen vor allem eine differenzierte Verarbeitung und Verwen dung der Daten 22 Kapitel 2 Grundlagen 2 3 2 Geography Markup Language Geography Markup Language GML ist die Auszeichnungssprache die OpenGIS zum Aus tausch und zur Modellierung der Geodaten verwendet wird GML ist ein XML Dialekt und durch XML Schemadateien wohldefiniert vgl Bla07 Bri08 GML enth lt eine Vielzahl von Objekttypen die die Beschreibung der Geodaten standardisieren So k nnen in GML
135. oogle API s 3 2 3 Es gibt nichtsdestotrotz einige erw hnenswerte Unterschiede lt Location gt lt Name gt 1 Microsoft Way Redmond WA 98052 lt gt lt BoundingBox gt lt SouthLatitude gt 47 636705672917948 lt SouthLatitude gt lt WestLongitude gt 122 137016420622 lt WestLongitude gt lt NorthLatitude gt 47 6444311080593 lt NorthLatitude gt lt EastLongitude gt 122 1217297861384 lt EastLongitude gt lt BoundingBox gt lt EntityType gt Address lt EntityType gt lt Address gt Adressdetails lt Address gt lt Confidence gt Medium lt Confidence gt lt MatchCode gt Good lt lt MatchCode gt lt GeocodePoint gt Koordinaten lt GeocodePoint gt lt Location gt Code 3 11 Microsoft Bing Location Ressource Locations API ist dabei der Einstiegspunkt f r Entwickler welche ortsbezogene Daten anfor dern wollen Es bestehen auch hier drei verschiedene Moglichkeiten auf Orte zuzugreifen Uber eine eingegebene Adresse Uber die Koordinaten und Uber die Eingabe eines Suchterms Er gebnisse werden als Resources zur ck geliefert und enthalten neben genauen Adress und Koordinatendaten auch ein confidence Level eine Boundingbox und einen Datentyp siehe Co debeispiel 3 11 ber den confidence Wert kann der Entwickler besser und vor allem selber ber die Wichtigkeit eines Suchergebnisses entscheiden und es dementsprechend hervorheben oder anders anordnen Die Boundingbox ist eine w
136. orderung A2 2 welche in Zusammenhang mit einem Server gel st werden kann Als Beispiel daf r ist die Ortung mit Hilfe des Fingerprintingverfahrens zu erw hnen Datenabfragen sind auf drei unterschiedliche Arten m glich Die Geb udeserver dienen dabei dem Client als Lieferant der verschiedensten Geodaten Ein Client Request wird erfolgreich durch das Ausliefern von Geodaten kodiert in GML beantwortet Der zuerst beschriebene Find me Request beruht auf der Anforderung 2 7 Dabei geht es darum dass der Client als Para meter seinen ermittelten Standort zum Server sendet Die Responsedaten die er erh lt sind Daten zu seinem aktuellen Standort und dem Geb ude in dem er sich befindet Der zweite Request What is around beschreibt die Vorgehensweise f r A2 6 Die gesen deten Koordinaten k nnen der eigene Standort oder ein auf der Karte gew hlter Ort sein Ein weiterer Parameter ist der Radius im welchem gesucht werden soll Der Server filtert nach die Shttp geoserver org display GEOS Welcome Zugriff am 10 01 2012 64 Kapitel 5 Konzeption des Frameworks Client Gebaudeserver GML Daten 1 Mar A Insert Datenabfrage isses 1 Update LG 1 ge ndertes GML Objekt Datenabfrage Delete GML Daten kK En En ya a ee 1 Abbildung 5 7 Feature editieren und den Server senden sen Kriterien den Datenbestand und
137. ositioning LODOverlay RouterRequestResult Renderer models AsyncRequests EditPoiView XMLHandler Si Abbildung 6 1 die wichtigsten Packages mit ausgew hlten Klassen processing SearchView Der Namensraum der gesamten Anwendung ist de tud android mapbiq Alle Programmele mente befinden sich damit innerhalb des Haupt Packages mapbiq Die Abbildung 6 1 zeigt die wichtigsten Packages des MapBiquitous Frameworks Es wird nur eine Auswahl der wich tigsten dargestellt und auch wenige Klassen eingezeichnet Das Haupt Package teilt sich wie grundlegend im Kapitel 5 2 1 beschrieben in den core den loader den locator den renderer und den router auf Zus tzlich ist ein Package mit dem Namen utils entstanden Die ehemalige Anwendungsstruktur ist damit hinf llig und nicht mehr vorhanden Neu hinzukommende Anwen dungskomponenten sollten nach dem beschriebenen Konzept in die vorhandene Struktur und in die passenden Packages eingeordnet werden Dieses strikte Vorgehen erh lt die bersichtlich keit des stetig wachsenden Projektes Eine Ausnahme bilden Komponenten die thematisch nicht verortbar sind Dieser Fall kann durchaus eintreten wenn das Framework um spezielle Aufgaben erweitert wird die mit dem heutigen Stand der Technik und Entwicklung noch nicht absehbar waren Eine solche Erweiterung w rde seine Funktionalit ten in einem eigens angelegten neuen Package b ndeln Um die nderungen zu verd
138. portverein TU Dresden e V Regenerative Therapien ziehen heute Freiberger Str 31 tu dresden de 01067 Dresden 1 1 km Studieninteressierte Studium Die Tu 02504 25 58 10 Dresden Studierende Mitarbeiter Suche Service Uni Tag G stehaus der TU Dresden Einsteinstr 9 Technische Universit t Dresden 01069 Dresden 3 41 km mes 03 51 8 76 62 0 i Geschichte Profil und Stellenwert Lage Bauwerke G stehaus der TU Dresden Ww _de wikipedia org wiki TU Dresden Weberplatz 3 BEE Suche amp i A A Startseite Posten Freigeben Mehr Startseite Posten Freigeben Mehr Startseite Posten Freigeben Mehr Auswahlm glichkeiten Filter f r b Suchergebnisse Detailansicht mit Kartenaus die Suche schnitt Abbildung 3 5 drei Screenshots der Yahoo Android App 3 4 1 Android App Die analysierte App liegt zum aktuellen Zeitpunkt in der Version 0 9 4 1 vor Es handelt sich bei dieser App ebenfalls um eine Anwendung die alle Funktionen der Yahoo Suche vereint Die Lokal Suche Auswahlm glichkeit in Abbildung 3 5a ist dabei nur ein Teil der kompletten Anwendung und kann als Filter auf die Suchergebnisse angewandt werden Ein Nachteil der App ist dass Kartenausschnitte nur als statische Kacheln angezeigt werden und wenig interaktiv zu bedienen sind siehe Screenshot 3 5c Es wird berdurchschnittlich viel Wert auf die Verkn pfung mit sozialen Netzwerken gele
139. r Descriptor Symbology Encoding und ISO 19117 portrayal vorgestellt und erl utert Wichmann Berlin Offenbach 2011 Lars Hrsg Bernard Geodateninfrastruktur Grundlagen und Anwendungen Wich mann Heidelberg 2005 Aaron Bangor Philip T Kortum and James T Miller An empirical evaluation of the system usability scale International Journal of Human Computer Interaction 2008 J rg Blankenbach Handbuch der mobilen Geoinformation Architektur und Umset zung mobiler standortbezogener Anwendungen und Dienste unter Ber cksichtigung von Interoperabilit t Wichmann Heidelberg 2007 J rgen Bortz and D ring Nicola Forschungsmethoden und Evaluation f r Human und Sozialwissenschaftler Springer 2006 Thomas Brinkhoff Geodatenbanksysteme in Theorie und Praxis Einf hrung in objek trelationale Geodatenbanken unter besonderer Ber cksichtigung von Oracle Spatial Wichmann Heidelberg 2 berarb und erw aufl edition 2008 J Brook Sus a quick and dirty usability scale Usability evaluation in industry 1996 Ph D Burbeck Steve Applications programming in smalltalk 80 tm How to use model view controller mvc The UIUC Smalltalk Archive March 1997 Portable Application Standards Committee Portable operating system interface 2008 Literaturverzeichnis 129 DHdLD10 Anind Dey Jeffrey Hightower Eyal de Lara and Nigel Davies Location based ser DVLK11 EJ10 Fou05 501 GFDTO5 GHVJ0
140. r Software herausgestellt e Name e Kategorie e Kuche Offnungszeiten e Adresse Preisniveau e Extras Bewertungen Foto Stadtplan Anhand dieser aussagekr ftigen Eigenschaften ist jedes Lokal umfassend beschrieben Auf die Kategorie und die Bewertungen wird n her eingegangen Die brigen Eigenschaften sind selbst erkl rend und dr cken jeweils eine exakt zu beschreibende Lokaleigenschaft aus So ist im Na men die Bezeichnung festgelegt unter Foto findet sich ein ausdrucksstarkes Foto des Gastrau mes oder der Lokalit t Kategorieeinteilung Bei der Einteilung wurde darauf geachtet dass alle m glichen Kategorien aller Lokale abgedeckt werden Hiermit wird also die Art des Lokals zum Beispiel Restaurant angegeben Zus tzlich wurde damit die L nge der Auswahlliste auf eine ausreichende Anzahl von Eintr gen eingegrenzt Die bersichtlichkeit bleibt dadurch gewahrt Ein weiterer Nebeneffekt ist dass der Redakteur welcher das Lokal anlegt die Auswahl genau berdenken muss Die Auswahl der Kategorien ist allgemeing ltig und f r alle Gesch fte passend w hlbar und somit f r jeden Eintrag wiederverwendbar Die Liste der Kategorien muss daher zum sp teren Zeitpunkt und mit zunehmender Anzahl an Eintr gen nicht angepasst werden Bewertungen Jedes Lokal kann von allen registrierten Benutzern bewertet werden Es wird eine Bewertungsskala von der niedrigsten 1 bis zur besten Bewertung 5 bereitgestellt Beim
141. r gt lt link href myFeed rel self gt lt entry 9 CUUEOX47eCp7ImMA9WxRVEKO gt lt id gt http ww example com id 1 lt id gt lt link rel edit href http example com myFeed 1 gt lt updated gt 2006 01 23T 16 26 03 08 00 lt updated gt lt author gt lt name gt Elizabeth Bennet lt name gt lt email gt iz gmail com lt email gt lt author gt lt title type text gt Entry 1 lt title gt lt content type text gt This is my entry lt content gt lt entry gt lt feed gt Code 3 5 Google Data Protocol Ergebnis der Suche 3 4 mit einem Ergebnis Um unbekannte Eintr ge und Ressourcen aufrufen zu k nnen wird eine Suche ben tigt Da die genaue Adresse der Ressource nicht bekannt ist kann die Abfrage nicht analog dem Beispiel 3 1 aufgerufen werden Die einfachste M glichkeit der Suche nach einem Stichwort wird im Code 3 4 exemplarisch gezeigt Die Ressource wird mit dem Parameter g This angefragt Das bedeutet dass alle Eintr ge die This enthalten als Ergebnismenge zur ck geliefert werden Die entsprechende Ergebnismenge mit einem passenden Eintrag ist im Codebeispiel 3 5 zu sehen Neben den Metadaten der Ressource werden im XML Element entry die Eigenschaften und Attribute des Eintrags aufgelistet Google Places Das Google Places ist ein Dienst der mittels HTTP Anfragen Informationen ber Orte zur ck gibt Ein Ort ist im Kontext dieses API s defini
142. r im Kartenausschnitt dargestellt werden m ssen wer den nur die relevantesten mit Markern versehen Die anderen sind durch einen Punkt mar kiert In der N he suchen findet ausschlie lich Suchergebnisse in einem festgelegten Radius wobei die Suche auch weiter entfernte Ergebnisse auflistet Was ist in der N he ist hingegen eine Anfrage die eingetragene konkrete Orte keine Adres sen mit einem maximalen Abstand zum aktuellen Standort auflistet und darstellt Kurzinformationen werden in der Form einer Sprechblase f r verschiedene Orte angezeigt siehe Screenshot 3 3b Diese Orte k nnen durch langes Ber hren des Bildschirms ge ffnet wer den sie k nnen aber auch Marker einer Suche oder Wegbeschreibung sein Die angezeigte 3 2 Google Maps 37 Kurzinformation enthalt maximal den Namen de Adresse des Ortes eine Bewertung in Form von Sternen ein Foto und eine Kurzbeschreibung Die Kurzbeschreibung wird aber auch in der Auflistung der Suchergebnisse wie im Screenshot 3 3a gezeigt verwendet ausf hrliche Informationen erh lt man beim Klick auf eine Kurzinformation Sie beinhaltet eine Vielzahl weiterer beschreibender Eigenschaften siehe Screenshot 3 3c Dazu z hlen bei spielsweise Nutzerkommentare ffnungszeiten weitere Fotos Abfahrtzeiten genaue Adresse Telefonnummern weitere Interaktionsm glichkeiten Zus tzlich werden Verwandte Orte also weitere m gliche Suchtreffer angezeigt Navigation erm glicht da
143. rch die Evaluation des Frameworks bereits ber cksichtigt werden Das hei t es wurde gezeigt dass Anforderung 4 1 durch eine strukturierte Dokumentation des Fra meworks erf llt ist Die Anwender spielten die entscheidende Rolle in den Ul Tests und lieferten desem Rahmen wertvolle Ergebnisse Die Anforderung 4 2 nach Usability Tests ist daher auch erf llt 73 Fazit 105 106 Kapitel 7 Evaluierung 8 ZUSAMMENFASSUNG UND AUSBLICK 8 1 ZUSAMMENFASSUNG Zu Beginn dieser Arbeit wurden Location Based Services vorgestellt und deren aktuelle Verbrei tung beschrieben Die gro e Bedeutung fur die breite Nutzerschaft sowie das Potential welches noch in der Entwicklung steckt wurde deutlich Die Motivation f r die Entwicklung eines in tegrierten Indoor Outdoor Location Based Service Framework war daher schnell gefunden Die Grundlagen die in Kapitel 2 vermittelt wurden sollten helfen die aktuellen Standards zu ver stehen Es wurden wichtige Begriffe und Funktionalit ten erl utert auf die im Verlauf der Ar beit zur ck gegriffen werden konnte Zus tzlich wurde ein Einblick in den aktuellen Status des MapBiquitous Projektes gegeben Damit lie sich die notwendige Entwicklung einsch tzen und letztlich die Anforderungen besser abgrenzen Das Kapitel 3 Verwandte Arbeiten stellte die wichtigsten Projekte und deren Zugang zu Location Based Services vor Es wurden Funktionalit ten analysiert und verglichen Dokumentationen und vo
144. rgebnis sofort den Raum und das Geb ude auf dem Campus der Uni Seinen ebenso orientierungslosen Freunden sendet er noch schnell die Koordinaten bevor er sich auf dem k rzesten Weg zur Vorlesung navigieren l sst Nach der Vorlesung sind noch einige organisatorische Dinge zu kl ren kurz er braucht einen Kopierer den er innerhalb der 20 Minuten Pause erreichen kann Wieder kann ihn die schnelle Umgebungssuche retten Nach der Uni entdeckt der Student mit seinen Freunden bei der Campuserkundung eine gem tliche Sitzecke und wertet mit ihnen den Tag aus Das sonnige Pl tzchen wird gleich in MapBiquitous als Ort zum Entspannen f r alle anderen Nutzer geteilt und dient seither als nachmitt glicher Treffpunkt der Gruppe Der Entwickler verfolgt eine Idee Er will eine Software entwickeln welche die Verwaltung flexibler Arbeitspl tze in einen Gro raumb ro bernimmt Dazu sollen sich die Arbeiter mit ihrem Smartphone am Arbeitsplatz einloggen und diesen damit als belegt markieren Andere neu ankommende Arbeiter suchen sich mit der App den n chsten freien Platz und lassen sich direkt an den Ort leiten So sollen sich auch Kollegen die jeden Tag einen anderen Platz besetzen finden lassen und schnelle Treffpunkte festgelegt werden k nnen F r Ortung Navigation und Suche braucht er daher ein stabiles Framework mit welchem er auch seine zus tzlichen W n sche implementieren kann Er st t bei Recherchen auf MapBiquitous und f ngt sofort a
145. rgestellt Bei der Kodie rung der Anfrage m ssen die URL Spezifikationen IETF RFC 2396 beachtet werden Web Feature Service Wenn die Funktionalit ten eines WMS f r die Anwendung nicht ausrei chend sind besteht die M glichkeit auf WFS zur ckzugreifen Dadurch kann die Software um Analyse und weitere Interpretationsfunktionen erweitert werden Datenlayer lassen sich nicht mehr nur noch darstellen sondern dienen dem Extrahieren und Generieren von Informationen Der Web Feature Service repr sentiert den vom OpenGIS Consortium beschriebenen Feature Case bei dem vom Server Geo Objekte in Form von Vektordaten an den Client gesendet werden Dieser hat dann die M glichkeiten der weiteren Verarbeitung und Darstellung vgl BerO5 24 Kapitel2 Grundlagen Die dem WEG zugrunde liegende Spezifikation definiert funf Operationen die zwei verschiedenen Klassen von WFS zugeordnet werden k nnen Bei den Klassen handelt es sich erstens um den Basic WFS welcher dem Client lesenden Zugriff auf die Geodaten erlaubt und zweitens den Transactional WFS welcher zus tzlich schreibende Zugriffe erm glicht Die Operationen sind folgende GetCapabilities Wie bereits im Abschnitt 2 3 4 beschrieben dient diese Operation dem Aufli sten der eigenen Funktionen Im ausgelieferten XML Dokument sind die folgenden dienstinstanz bezogenen Metainformationen enthalten Version Name Titel Beschreibung Schl sselw rter unterst tzte Operationen und Filt
146. rhalt Eingaben des Nutzers und reagiert mit den entsprechenden Verarbeitungsmethoden Der Controller beeinflusst damit wiederum die Darstellung und bildet die Eingaben auf die Modells ab MapBiquitous Client externer LBS Anbieter locator core lt lt interface gt gt POI Suche PositionManager Loader CT d N vermittelt durch DirectoryRequest Directory Service SearchRequests XML Parser Building Server DataManager Error Log 7 lt lt interface gt gt GeoServer renderer RoutingRequest externer Router Renderer RouteParser lt lt interface gt gt Overlays RoutingService lt lt interface gt gt Fingerprinting Abbildung 5 4 Package Architektur In Abbildung 5 4 ist der Package orientierte MapBiquitous Client abgebildet Zur zentralen Kom ponente wird der DataManager innerhalb des core Packages implementiert Er soll als Singleton w hrend der Initialisierung der App geladen werden und bernimmt die Verwaltung aller anfallen den Daten Durch seine Verwaltungsfunktion kommt er im MVC Pattern dem Controller gleich Die Speicherung der Laufzeitdaten erfolgt derzeit bereits zum Teil in der LocationModelAP I Die ses Konstrukt wird st rker den DataManager gebunden und h lt alle auf dem Client relevanten Daten bereit In der LocationModelAPI werden die meisten der Modells welche die Datenstruk tur der Layer R ume u a abbilden zentralisiert Zusammen
147. rhandene Implementierungen wurden recherchiert und auf ihre Tauglichkeit f r den Indoor Bereich berpr ft Trotz der Vielzahl von Ans tzen und M glichkeiten konnte gezeigt werden dass noch keine ausgereiften IndoorLBS existieren Google Maps hat als Marktf hrer die wei testen Fortschritte gemacht aber auch hier waren noch keine Indoor Services dem Sinne f r die Nutzung verf gbar Dieses Kapitel war die Voraussetzung f r die Entwicklung von sinn vollen Anforderungen im Kapitel 4 Zu den Teilgebieten Architektur Schnittstellen und Userin terface konnten die erforderlichen Funktionen abgegrenzt werden Im folgenden Kapitel wurde die Dreiteilung der Anforderungen aufgegriffen und ein Konzept f r das gew nschte Framework entwickelt Alle gewonnenen Erkenntnisse aus vorangegangenen Kapiteln wurden angewandt um ein Framework zu konzipieren welches aktuellen und zuk nftigen Gegebenheiten gewachsen sein wird Die Projektstruktur wurde komplett berarbeitet und die Nutzeroberfl che in weiten Teilen angepasst Bei der Konzeption wurde auf Softwaredesign und popul re Entwicklungsprin 107 zipien geachtet Es wurden bekannte Design Pattern und neue Interaktionsmuster miteinander verflochten und zu einer Anwendung verschmolzen F r das MapBiquitous Projekt wurde im Rahmen der Arbeit ein flexibles wiederverwendbares Framework definiert Dieses Grundger st erm glicht erstmals die Kapselung der einzelnen Funktionen Es macht das Proje
148. rsion 6 0 3 stellt dem Nutzer zahlreiche Funktionen zur Verf gung Diese reichen vom Auffinden eines Ortes bis zur punktgenauen Navigation zu einer bestimm ten Adresse Dabei werden die nativen Standort und Kommunikationsfeatures des jeweiligen Smartphones vollst ndig ausgesch pft Um einen berblick ber den Funktionsumfang zu erhal ten werden diese hier kurz erl utert Ausgangssituation f r die meisten der Funktionen ist dass die App ann hernd den aktuellen Standort ermitteln kann Diamonds Barnes amp Noble SEA LIFE 28 89 5 D D Minnesota D Jessica McClintock 2 DSW Steve Madden SEO Aquarium ZS gt Entrance Exit Tucci GR papyrus 3 D Mall of America zwet SEALIFE x 8 Minnesota B E Vikings Caribou Coffee Field of Dreams Aquarium B I Locker Room 2 Columbia Sportswear Co 5 Burberry D Columbia Calendar Club T Sportswear 1 Kay Jewelers LEGO Store arlotte Russe Desigual H A Apple Store Rainforest Cafe Bloomingdales A Sg e Fe e Se 5 a Mall of America 5 A g a 8 E P United Rentals RS 2 2 3 9 Ei 200 ft 2 P 100 ft 34 2 _ Ee Jm Ramp South Entrance gt 2m Je 8 a Kartenausschnitt mit Indoor Informationen b Indoor Karte der American Mall Abbildung 3 2 zwei Kartenausschnitte mit v
149. s Navigieren vom aktuellen Standort aus oder das Berechnen einer Route zwischen zwei verschiedenen Punkten 3 2 2 Desktopversion Die Desktopversion unterscheidet sich funktional nicht von der mobilen App Das Bedienkonzept das Layout der Karten und angezeigten Suchergebnisse differenziert sich auf Grund des verf gba ren Platzes aber sehr Zu jedem aktuellen Kartenausschnitt werden n tzliche Hinweise neben der Karte eingeblendet ohne diese zu beeinflussen Die Ermittlung des Nutzerstandortes f llt techno logisch bedingt weg Ihn kann der Nutzer aber bei Umgebungssuchen und Routenberechnungen selber angeben 3 2 3 Developer API Grunds tzlich gliedert sich die API in drei Bereiche Die Bereiche oder besser Frameworks stellen dem Programmierer unterschiedliche Funktionalit ten zur Verf gung Sie k nnen unabh ngig von einander verwendet werden sind aber auch kombinierbar Prinzipiell werden alle Komponenten f r verschiedene Entwicklungssprachen bereitgestellt JavaScript Flash Java u a ohne Ber ck sichtigung der Programmiersprache werden in den nachfolgenden Abschnitten die Schnittstellen und M glichkeiten beschrieben Google Data Protocol Dieses von Google entwickelte Protokoll beschreibt die Grundlagen die in den folgenden API s Anwendung finden Dazu geh ren haupts chlich Abfragen Einf gen ndern und L schen von Eintr gen Diese Eintr ge k nnen verschiedene Objekte sein M glich w ren zum Beispiel Fotos Eintr g
150. se entspricht dem aus Beispiel 3 8 mit der Einschr nkung dass nur formated_adress adress_components und geometry Attribute zur ckgeliefert werden In umgekehrter Rich tung erh lt man f r die Eingabe der Koordinaten die verortete Adresse 3 3 BING MAPS Als weiterer Anbieter von LBS wird in diesem Kapitel auf die Innovationen von Bing Maps ein gegangen Bing ist die von Microsoft entwickelte Internet Suchmaschine hnlich Google stellt Bing seinen Nutzern eine Desktopvariante und eine Application f r mobile Endger te zur Verf gung Hier ist aber zu beachten dass der Fokus der aktuellsten Entwicklungen ganz klar auf Windows Phone liegt Dementsprechend sind auch die zur Verf gung gestellten Developer API s f r Windows Phone Entwickler signifikant besser dokumentiert 20 51 Technische Universitat Dresden WI Schweizer Str 3 Dresden gt 8170 NEUSTADT Bay Sachsen 01069 ee i 582 B97 H 0 08 mi ze skathe Koy 0 Z 0351 64754630 Wal ct f P EO F Blase Directions Save 5 go 1 B170 IA 9 Zeg pa Web Technische Universitat Zellescher Weg 41C Dresd Technische Universitat Dresden Herzlich willkommen auf den Seiten der TU Dresden Nobelpreistr ger Professor Fert spricht an der TU Dresden Am 25 tu dresden de Dresden University of Technology Z s dh he 8172 Wi
151. ser Filter k nnen die Geodaten tiefgr ndiger und detaillierter als durch einfache Abfragen analysiert werden Voraussetzung ist eine wohldefinierte Datenstruktur welche auf Grund der OpenGiIS Festlegungen bereits gegeben ist nach 5 And11 Grunds tzlich k nnen zwei verschiedene Filtertypen auf die Features angewandt werden r umliche und Attributfilter siehe Abbildung 2 2 Welche Filter in der aktu ellen Konfiguration des WFS zugelassen sind l sst sich leicht ber die GetCapabilities Ausgabe erkennen Im Codebeispiel 2 2 kann man alle definierten Filter in den beiden Unterelementen Spatial_Capabilities und Scalar_Capabilities ablesen GET http cgi bin wfs amp VERSION 1 0 0 amp SERVICE WFS amp REQUES T GetFeature amp TYPENAME cities amp Filter lt Filter gt lt DWithin gt lt PropertyName gt Geometry lt PropertyName gt lt gml Point gt lt gml coordinates gt 135 500000 34 666667 lt gml coordinates gt lt gml Point gt lt Distance units m gt 100 lt Distance gt lt DWithin gt lt Filter gt Code 2 3 Request mit DWithin Filter des WFS lt Filter gt lt DWithin gt lt PropertyName gt Geometry lt PropertyName gt lt gml Point gt lt gml coordinates gt 135 500000 34 666667 lt gml coordinates gt lt gml Point gt lt Distance units m gt 100 lt Distance gt lt DWithin gt lt Filter gt Code 2 4 DWithin Filter des WFS XML Syntax Die r umlichen Filter erm glichen
152. setzung der Arbeit wird in einer Android App getestet Zus tzliche Nutzertests mit der entstandenen App evaluieren abschlie end die Funktionalit t 5 UNIVERSITAT DRESDEN Fakultat Informatik Institut fur Systemarchitektur Lehrstuhl Rechnernetze AUFGABENSTELLUNG FUR DIE DIPLOMARBEIT Name Vorname Werner Kay Studiengang Medieninformatik Matr Nr 3247807 Thema Entwicklung eines wiederverwendbaren Frameworks zur Implemenerierung von Indoor Outdoor Location based Services mit MapBiquitous ZIELSTELLUNG MapBiquitous ist eine Plattform zur Bereitstellung integrierter ortsbezogener Dienste f r den Innen und Au enbereich Das Konzept beruht auf einer verteilten Infrastruktur von Geb udeservern die geometrische Daten Geb udestruktur semantische Geb udeinformationen Daten zur Positionsbestimmung im Geb ude und Routinginformationen bereitstellen MapBiquitous Clients laden die ben tigten Geb udedaten dynamisch und verarbeiten diese clientseitig um eine Visualisierung von sowie eine Navigation in und zwischen Geb uden zu erm glichen Aufsetzend auf dieser grundlegende Funktionalit t von MapBiquitous soll es hnlich wie bei Google Maps Bing Maps etc m glich sein Location based Services zu entwickeln Beispiele sind etwa die Suche nach dem n chsten Drucker und die Erstellung vor Geotags Dazu wird ein Konzept zur effizienten Kapselung der Basisfunktionalitat von MapBiquitous und zur Bere
153. soren ist ebenfalls denkbar Der Locator w hlt zu den u eren Gegebenheiten und verf gbaren Sensoren den besten Algorithmus und ermittelt so die Position Wenn die aktuellen Koordinaten erfolgreich an den DatalManager gesendet wur den stehen sie somit auch allen anderen Komponenten zur Verf gung Der Locator hat je nach Verfahren auch die M glichkeit mit anderen Servern zu kommunizieren Der Renderer registriert sich ebenfalls beim DataManager um stets ber Positions und Da tenupdates informiert zu werden Liegen diese vor werden die n tigen Daten an den Renderer gesendet Er kann den Kartenausschnitt f r den Nutzer erstellen und die ausgew hlten Layer anzeigen Der Renderer bernimmt damit alle darstellungsrelevanten Funktionen und bedient im MVC Pattern das View Konzept F r den Fall dass neue Daten zum Darstellen der Geb ude oder zum Ausf hren von Suchanfra gen geladen werden m ssen bernimmt der Loader die Kommunikation mit dem Geb udeser ver Die Anfrage nach den fehlenden Daten wird durch den DataManager ausgel st Dies ist der Fall wenn noch keine Geb udedaten vorliegen diese aber dargestellt werden m ssen Es kann ebenfalls eintreten dass eine Suchanfrage gesendet wird und die Ergebnisse noch nicht vorlie gen Sie m ssen geladen werden und via Parser in Objekte berf hrt werden Wenn die Suche bereits ausgef hrt wurde und sich an den Parametern nichts ge ndert hat muss die Anfrage beim erneuten Anzeigen der
154. sprechen 1 en a Die Strecke beginnt in Heidenau an der Elbe L nge 1 a Von da aus geht es gleich hinauf bis nach a gt 16 8 49 36km Ly Ri 5km i H henver Zur ck lenti mn DN OTe oss Vorschlag fur eine Wanderroute b Detailanzeige eines Markers H henprofil der Wanderroute von ape map Abbildung 3 6 drei Screenshots der Android App 3 5 1 Konzeption Im Vorfeld wurden marktwirtschaftliche Potentiale einer solchen Navigations Software genau stens untersucht Die Zielgruppen wurden auf die drei Urlauberkreise Wanderer Mountainbi ker und Skitourengeher eingegrenzt da das Hauptvermarktungsgebiet die sterreichischen Alpen sind Die Zahlen der inl ndischen und ausl ndischen Touristen waren f r diese Analyse ausschlag gebend Des Weiteren sollte eine kosteng nstige Software entwickelt werden die ohne teure Spezial ger te funktioniert Um einen m glichst gro en Anteil der aktuell eingesetzten Systeme zu be dienen wurde der Marktanteil der aktuell bestehenden Handy Betriebssysteme bewertet Ergebnis dieser Analyse war die anf ngliche Implementierung f r Symbian RIM BlackBerry und Android Sp ter wurde die erfolgreiche Software f r Nokia Sony Ericsson Handys und das iPhone portiert Windows Mobile 7 ist ebenfalls geplant Von Beginn an wurde bei der Entwicklung darauf geachtet dass die eingetragenen Routen mit verschiedenen M
155. ssung Meo At BE dl al ee 55 AA ota De RE 55 AAT Zusammenfassung ouea e a a ae 55 45 gt Zusammenfassung Er ake 55 Konzeption des Frameworks 57 SCH Datenstrukturen came E a tee AN 58 5 1 1 Erweiterung der Datenbank 58 5 1 2 Client seitige Erweiterungen 2 59 5 2 Schnittstellen Architektur aaora oeae ea ee a a a aa 59 52 1 Glient Architekt r ee PE A A AY Oe eh 60 5 2 2 Konfiguration des Servers 63 5 2 3 Kommunikation mit dem Server 64 5 3 Darstellung Kar ae bo BOR Se 66 5 3 1 Interaktionsm glichkeiten 66 53 27 MOCKUDS erst aa a ee ee ee 69 53 8 Barbgesta ltung esol 2 San erde 73 5 4 Zusammenfassung 2 22 2 Con nn 75 Implementierung 77 DT DatenStruktur 77 6 1 1 Datenbank u nn AES 77 6 1 2 Serverk nfiguration u 0 a wenn 79 62 32 Modellsteuktur er Er BE 80 Inhaltsverzeichnis 9 8 10 6 2 Schnittstelleh e op ete Ka Ge ee Eer e ec A a 85 6 2 1 Beispiel Find 5 85 6 3 D rstellung Hr ee EE cae ae an Aalen ten 87 6 3 1 Interakt
156. st erfolgreich wird der vom Loader generierte Callback ausgef hrt und stellt das Ergebnis der LocationModelAPI bzw dem LocalDataManager zur Verf gung Um die asyn chronen Tasks und deren Ergebnisse auszuwerten besitzt jeder Task einen Callback der aus loader processing den entsprechenden Ergebnishandler aufruft Diese Handler sind zu gro en Teilen XML Parser welche die Responses berpr fen und in eine Modellstruktur berf hren Der DirectoryRequest wurde ebenfalls in den loader aufgenommen er mit einem externen Server kommuniziert Zum berpr fen des Erweiterungskonzeptes wurden nachfolgend aufgelisteten Request Klassen implementiert und getestet Die jeweilig zugeh rigen Parser werden nicht extra aufgef hrt sind aber gleicherma en erfolgreich umgesetzt AsyncGeoserverSearchTask er dient zur etagen bergreifenden Suche in einem Geb ude Da bei werden die in Kapitel 2 3 5 erl uterten Filtermechanismen des WFS angewendet AsyncGoogleSearchTask ist ein Aufruf der Google Places API welcher Suchergebnisse in ei nem definierten Radius ausgibt siehe 3 2 3 AsyncLBSTask stellt die berklasse zu den hier beschriebenen Requests dar Er gibt die Struk tur und der erweiternden Location Based Tasks vor Wenn Requests an externe Dienstlei ster und an interne Geb udeserver von diesem Task erben wird sichergestellt dass die erhaltenen Ergebnisse einheitlich verarbeitet und dargestellt werden k nnen AsyncOpenStreetMapSearc
157. t betrachteten Lokale aufgelistet werden So kann man schnell von einem Restau rant zum vorherigen springen Diese Liste wird automatisch ohne Zutun des Nutzers angelegt Andererseits kann der Nutzer eine Favoritenliste selber pflegen Dazu kann er beliebte Lokale merken diese werden erst dann zu den Favoriten hinzugef gt 3 1 3 Fazit Der Zugriff auf die bereit gestellten Informationen erfolgt einerseits ber eine f r den Nutzer komfortable Freitextsuche welche zu jedem gefundenen Ort die selben Informationen 3 1 1 be reitstellt Das macht die Ergebnisse optimal vergleichbar und f r den Nutzer einsch tzbar Der Entwickler kann hingegen immer auf die selben Eigenschaften zugreifen und diese entsprechend bersichtlich angeordnet darstellen Die einheitliche Visualisierung der Ergebnisse ist somit eben falls gew hrleistet Ein anderer Vorteil des fest definierten Umfangs an Metainformationen pro Ort ist die Nutzungsm glichkeit von Filtern Sie erm glichen schnelles Eingrenzen und Durchsu chen der Ergebnisse sowie eine bersichtliche Datenstruktur Die Schnittstellen die zur Datenabfrage und zum Eintragen der Daten genutzt werden sind sehr einfach strukturiert Die Abfrage bzw Suche von Orten wird ber einen GET Request mit entspre chenden Suchparametern gew hrleistet Der Server antwortet mit den im Response enthaltenen Orten und ihren jeweiligen Details Eine weitere Schnittstelle ist zum Einf gen und Aktualisieren von Orten no
158. tionalit t bilden zu k nnen hnliche Tests die das Verhalten des Nutzers bei der Erf llung typischer Aufgaben auswerten sind der Out of the Box Test oder die Feldbeobachtung beide IHPSG11 Die Tests erm glichen eine umfassende Bewertung des implementierten Prototypen Die Anzahl der Testpersonen bel uft sich bei den benannten Test zwischen f nf und 15 Probanden Dass das Testen mit wenigen Personen im Usability Bereich sehr effizient ist best tigt die Untersuchung Shttp en wikipedia org wiki Usability_testing Zugriff am 24 02 2012 08 Kapitel 7 Evaluierung 100 75 4 50 4 25 Usability Problems Found 0 0 3 6 9 12 15 Number of Test Users Abbildung 71 gefundene Usability Probleme in Bezug auf Anzahl der Testpersonen siehe 00 von 001 Das Verh ltnis zwischen der Anzahl der Tester und den gefundenen Problemen stellt Nielsen als Ergebnis seiner Untersuchung in Abbildung 71 dar Man kann erkennen dass mit funf Personen bereits 80 aller Usability Probleme entdeckt werden Bei jeder weiteren Testperson sinkt die Anzahl der neu gefundenen Probleme das Testen wird somit aufwendiger und uneffektiver Die vollstandigen Aufgaben und Fragen des Ul Tests befinden sich im Anhang A 3 Die erste Aufgabe zielt darauf ab die Symbole bzw Grundrisse der Gebaude zu erkennen und durch ihren Namen zu identifizieren Wie viele und welche Gebaude konnen Sie auf dem Campus der TUD
159. tionalit ten Lediglich Google Maps stellt bereits Kartenmaterial f r Innenr ume zur Verf gung Dieses ist nicht f r Softwareentwickler verf gbar obgleich die verf gbaren OutdoorAPI s sehr gut strukturiert sind Die verwendeten Frameworks sind nicht um die n tigen Funktionen erweiterbar um die Aufga benstellung dieser Arbeit zu erf llen Auch die Open Source Ans tze von OpenStreetMap sind von der Datenstruktur her noch nicht auf IndoorServices vorbereitet Der MapBiquitous Prototyp aus Kapitel 2 4 bildet die besten Grundlagen f r das angestrebte integrierte Framework f r Indoor und Outdoor BG Die genauen Anforderungen der Umsetzung werden im Kapitel 4 analysiert 50 Kapitel3 Verwandte Arbeiten 4 ANFORDERUNGEN Ziel der Arbeit ist die Entwicklung eines Frameworks fur Indoor und OutdoorLBS Das konzipierte Framework soll fur das MapBiquitous Projekt implementiert werden um das bereits vorhandene System um die Funktionalitaten von LBS im IndoorBereich zu erweitern Die vorhandenen Ge baudeinformationen werden dazu um weitere Datenstrukturen erg nzt um dem Nutzer eine viel f ltigere und komfortablere Nutzung der Informationen erm glichen zu k nnen Es kommt dabei darauf an dass mit Hilfe des Frameworks Funktionalit ten implementiert werden k nnen die durch Freigabe des aktuellen Standorts die sinnvollsten ortsbezogenen OutdoorDienste f r den IndoorBereich erm glichen 4 1 TECHNISCHE UMSETZUNG ARCHITEKTUR Dieses Kapitel
160. totypen Die Android App stellt verschiedene Geb ude der TU Dresden auf einer Karte dar Nehmen Sie sich ein paar Minuten Zeit um sich mit der Anwendung vertraut zu machen und l sen Sie dann die folgenden Aufgaben Wenn Sie Probleme haben oder in der L sung nicht weiter kommen fragen Sie bitte nach Hinweis zur Smartphonenutzung Die Tastatur blenden Sie mit den Zur ck Button lt aus Das Men der App erreichen Sie ber 8 Aufgaben 1 Wie viele und welche Geb ude k nnen Sie auf dem Campus der erkennen 2 Wie viele R ume hat der Barkhausenbau tud_bar TUD_BAR in der 5 Etage 3 Suchen Sie der Fakult t Informatik tud_inf TUD_INF Raum E023 und schreiben Sie die angegebene Nutzung des Raumes auf 4 W hlen Sie den Raum E023 als Start f r die Navigation aus W hlen Sie danach die Alte Mensa tud_m13 TUD_M13 als Ziel aus und starten Sie die Navigation Lassen Sie sich Schritt f r Schritt zum Ziel navigieren 5 F gen Sie durch einen longClick langes Ber hren einer Stelle der Karte einen erdachten Point of Interest in die Karte ein A 3 Aufgaben und Fragen der Abschlussevaluation 117 Bewerten Sie mit den gewonnen Erkenntnissen de folgenden Aussagen 1 ich stimme gar nicht zu 5 ich stimme voll zu Ich wurde die App ofter nutzen Ich fand die App unn tig komplex Es war einfach die Anwendung zu nutzen Ich ben tige Hilfe um die App richtig zu nut
161. tributen definieren 86 Kapitel 6 Implementierung und darstellen Der auf diese Weise generierte XML Output wird an den Client zur ck gesendet Der Callback des asynchronen Tasks nimmt die Daten entgegen und reicht sie an den festgeleg ten XMLHandler weiter Dieser hat nun die Aufgabe einen neuen PointOfinterest zu initialisieren Er sollte m glichst effektiv die Metadaten des Ergebnisses auf die Attribute der Klasse abbilden und die geografische Position aus den GMLDefinitionen extrahieren Alle Daten die nicht direkt auf Attribute abgebildet werden k nnen werden als temAttribute in den PointOflnterest einge f gt So stehen sie in der sp teren Darstellung als Metadaten weiterhin zur Verf gung Hat das Parsen problemlos funktioniert sendet der Handler die Suchergebnisse an den core und meldet sich als aktive Suche ab Wenn alle Parser durchlaufen sind wird der Callback des Bundles aufgerufen Die Suchergebnisse k nnen ab diesem Zeitpunkt in der Karte und als Liste in der SearchView dargestellt werden 6 3 DARSTELLUNG Die Darstellung und Konzeptionierung einer nutzerfreundlichen Oberfl che nahm einen gro en Teil des Kapitels 5 ein Da bisher kaum auf die M glichkeiten der Touch Bedienung eingegangen wurde wurden die blichen Design Pattern vorgestellt und auf die entsprechenden Anwendungs gebiete bertragen Die Konzeption hat M glichkeiten aufgezeigt mit denen ein ansprechendes und leicht zu bedienendes Interface f r
162. tsbezogene Dienste erfreuen sich auf vielen Plattformen immer gr erer Beliebtheit Von der anf nglichen Konzeption zur Unterst tzung der Rettungsdienste haben sie sich vielf ltig weiter entwickelt und stehen jedem Endnutzer zur Verf gung Die aufgezeigten Fortschritte vollzogen sich bisher weitestgehend im OutdoorBereich Es wurden dazu Anwendungsf lle aus den unter schiedlichsten Sektoren vorgestellt die verdeutlichen dass Location Based Services sowohl f r Unternehmen als auch f r private Anwender Nutzungsvorteile bereitstellen Die Aufgabe dieser Arbeit ist es mit den etablierten OpenGIS Standards eine Integration von vorhandenen OutdoorServices und neu zu konzipierenden Indoor Services herzustellen Das MapBiquitous Projekt dient dabei als Ausgangspunkt Es stellt bereits einfache Funktionen zum Laden und Darstellen von Geb udedaten zur Verf gung Die Voraussetzungen f r erweiterte und integrierte Outdoor IndoorLBS sind noch nicht gegeben Ebenfalls wird ein flexibles Frame work als Grundlage f r eine kontinuierliche Weiterentwicklung und zuk nftige Forschungsschwer punkte ben tigt 2 5 Zusammenfassung 31 32 Kapitel 2 Grundlagen 3 VERWANDTE ARBEITEN Im folgenden Kapitel werden wichtige vorhandene Arbeiten untersucht und marktfuhrende Lo sungen analysiert Dabei sollen die jeweils innovativsten L sungsans tze hervorgehoben wer den um sie abschlie end miteinander vergleichen und bewerten zu k nnen Auf gleichwertige U
163. ttformen Freunde x x x Bewertung Kommentar x x x x x x Deals Bilder x x x x x x Belohnungen x x x 1 http apidocs qype com Zugriff am 03 11 2011 https developer foursquare com docs Zugriff am 03 11 2011 3 http sites google com site grouponapiv2 home Zugriff am 03 11 2011 4 nttp gowalla com api docs Zugriff am 03 11 2011 5 http www yelp com developers documentation Zugriff am 03 11 2011 6 http developers facebook com docs reference api Zugriff am 03 11 2011 Tabelle 3 1 Vergleich der popul rsten LBS Communities In der Tabelle 3 1 sind die wichtigsten Communities und ihre jeweils unterst tzten Dienste auf gelistet Erkl ren lassen sich diese Dienste wie folgt Die Suche meint die M glichkeit durch Angabe von Koordinaten und einem Radius oder einem Ort eine Suchanfrage versenden zu k nnen um Ergebnisse aus der Umgebung zu erhalten Die erweiterte Suche hingegen erm glicht das Suchen mit weiteren Parametern wie zum Bei spiel Kategorien aber auch maximale Anzahl und Sortierung der Ergebnisse Der Checkin ist die Funktion sich an einem Ort anzumelden Das Posten auf anderen Plattformen erlaubt es dem Nutzer seinen Standort direkt auf andere soziale Netze zu bertragen Durch Freunde bzw Kontakte ist die M glichkeit gegeben sich mit ihnen in der jeweiligen Community selbst zu verkn pfen Die Bewertung wird immer f r den jeweiligen Ort generiert Ein Kommentar zum Ort kann der Nutzer a
164. twendig Dieser POST Request muss sowohl die Authentifizierungsdaten des Nut zers die zu aktualisierende oder erstellte Lokalit t und die zugeh rigen Details enthalten Sofern der Nutzer die ben tigten Rechte besitzt und die Validierung der Details erfolgreich verl uft wird der success im Response gesendet 3 1 Location Based Services am Beispiel eines Lokalf hrers 35 3 2 GOOGLE MAPS H gt 5 EN e N 5 X iN ee N Dresden 222 Blasew irn 49 E Johannstadt Seen wem 5 d Dese 5 Sec KS o 2 2 jorstadt West Pirnaische Vorstadt Altmarkt Galerie Dresden Striesen West Seevorstadt West L btau Nord 5 SS Stnesen K btau Abbildung 3 1 Google Maps Desktopversion Kartenausschnitt Google Maps ist einer der derzeitig gr ten Kartendienstleister F r den Nutzer werden auf der Kartenoberfl che Informationen angezeigt und mit Koordinaten verkn pft Dazu wird Google Maps auf den meisten mobilen Endger ten als eigenst ndige Applikation angeboten Aber auch im Browser stehen alle Funktionen und Karten f r den Desktopnutzer zur Verf gung Um Daten auch in anderen Anwendungen darstellen zu k nnen hat Google eine umfangreiche API erarbeitet und ver ffentlicht In diesem Kapitel geht es darum die Funktionen von Google Maps in den drei eben benannten Teilbereichen zu analysieren Die Android App in der Ve
165. type gt lt type gt food lt type gt lt formatted_address gt 178 Broadway Brooklyn New York 11211 United States lt formatted_address gt lt address_component gt lt long_name gt 178 lt long_name gt lt short_name gt 178 lt short_name gt lt type gt street_number lt type gt lt address_component gt lt address_component gt lt long_name gt Broadway lt long_name gt lt short_name gt Broadway lt short_name gt 3 2 Google Maps 41 lt type gt route lt type gt lt address_component gt weitere address components lt geometry gt lt location gt lt lat gt 40 7099090 lt lat gt lt Ing gt 73 9625800 lt Ing gt lt location gt lt geometry gt lt rating gt 3 7 lt rating gt lt url gt http maps google com maps place cid 11421630699047551449 lt url gt lt icon gt http maps gstatic com mapfiles place_api icons restaurant 71 png lt icon gt lt reference gt CkO6AAAAd 4 oT 4Sof9RHoGD4 lt reference gt lt id gt ddf9cee27322c3bf lt id gt lt result gt lt PlaceDetailsResponse gt Code 3 9 Google Places Antwort auf 3 8 Es sind dabei zwei unterschiedliche Anfragen m glich Ortssuchanfragen mit den Parametern location radius sensor client signatur siehe GET Request 3 6 und die sogenannten Ortsdetailanfragen mit der eindeutigen reference eines Ortes siehe GET Request 3 8 Als Antwort auf Ortssuchanfragen erh lt man maximal 20 Ergebnisse die die
166. tzlicher Funktionen und Erweiterungen ein ohne dass eine Entwicklungsplattform aus geschlossen wird Anhand der sich rasant weiter entwickelnden mobilen Betriebssysteme ist dies die einzige M glichkeit auch in Zukunft auf dem Framework aufzubauen und Software f r den Indoor Bereich mit LBS auszustatten Implementierung Um die Funktionalit t des Frameworks zu testen ist eine beispielhafte Im plementierung unabdingbar Sie soll auf dem Androidbetriebssystem umgesetzt werden Die Evaluierung kann somit auf den originalen Daten der aktuellen MapBiquitous App angestrebt wer den Kernfunktionalit t Das entstandene Framework verwirklicht verschiedene neue Funktionen die teilweise in hnlicher Form bereits f r den Outdoor Bereich bestehen Sie m ssen konform zu den aktuellen Nutzergewohnheiten sein um einen Bruch der Usability zu vermeiden Hierzu z hlt dass dem Nutzer aber auch dem Entwickler die in Abschnitt 2 2 2 und Kapitel 3 vorge stellten M glichkeiten zur Verf gung gestellt werden sollen F r den Anwender sind dies die Suchfunktionen nach geeigneten Diensten und Informationen abh ngig von seinem Standort Es z hlen ebenfalls die erlauterten mobilen Services wie Navigation dazu F r den Softwareent wickler werden M glichkeiten zur unkomplizierten Erweiterung des Frameworkes bereitgestellt Schnittstellen f r Datenabfragen stehen zur Verf gung und sind gut dokumentiert Dabei ist dar auf zu achten dass es sich um ein Framework
167. u den Sicherheitsaspekten geh rt aber auch die M glichkeit 108 Kapitel 8 Zusammenfassung und Ausblick Daten zu sichern und Backups durchzufuhren Ein weiterer Aspekt ist die Portierung des Prototypen oder die Implementierung des Frameworks fur andere Plattformen Eine der Anforderungen war es die Konzeption plattformunabhangig durchzufuhren um sich nicht auf eine Art von mobilen Endgeraten festzulegen Nun ist es an der Zeit Losungen zu finden welche die App auf IOS und Windows Geraten lauffahig macht oder eine webbasierte Version des Frameworks zu entwickeln Vorhandene LBS sollten dabei naturlich erhalten bleiben Zum Abschluss des Kapitels steht noch ein Blick fur zukunftige Entwicklungen aus Augmen ted Reality und 3D Technologien sind Schlagworte die immer wieder in der aktuellen Software entwicklung fallen Google Street View stellt reale Aufnahmen als Location Based Service dar und vermittelt dadurch das Gef hl von Dreidimensionalit t hnlich werden durch Augmented Reality bereits jetzt Zusatzinformationen auf besondere Geb ude projiziert Leistungsst rkere mobile Ger te und neue Sensoren erm glichen einen zus tzlichen Funktionsumfang Die Erfor schung dieser M glichkeiten im Indoor Bereich bietet vielf ltige Aufgabenstellungen f r weitere Forschungsarbeiten 8 2 Ausblick 109 110 Kapitel 8 Zusammenfassung und Ausblick EVALUATION A 1 FRAGEBOGEN AB TEST 111 1 Frage question Sind die Geb ude deut
168. uch nach ihrer grunds tzlichen Funktion unterteilen Dabei kommt es darauf an zu wel chem Zeitpunkt und unter welchen Umst nden der Dienst abgerufen wird Ausgehend von dieser Unterscheidung entstehen M glichkeiten des Einsatzes welche bei der Konzeptionierung und Umsetzung der LBS beachtet werden m ssen Implizite LBS nach GNSWOB I zeichnen sich durch Echtzeitortung w hrend der Dienstnutzung aus Das bedeutet dass der Dienst Funktionen zur Verf gung stellt die sich auf den aktuellen Standort des aufrufenden Ger tes beziehen Hierzu z hlen alle Angebote die in der n heren Umgebung dem Nutzer zur Verf gung stehen Der Nutzer hat die M glichkeit diese Menge an Diensten zu durchsuchen Die rtliche N he des Dienstes ist dabei im Allgemeinen auf wenige Kilometer beschr nkt Vorgaben werden in dieser Klassifizierung aber keine gemacht Explizite LBS sind das logische Gegenst ck zu den mpliziten LBS Sie dienen dem Nutzer um Services an einem bestimmten Ort zu erhalten an dem er sich zum Zeitpunkt des Aufrufes nicht befindet Zum Beispiel ist das Antippen einer entfernten Kartenposition ein solcher Service wenn auf Grund dieser gew hlten Position die umliegenden Services dem Nutzer pr sentiert werden Es handelt sich ebenfalls um einen Expliziten LBS wenn eine Ortung aus technischer Sicht nicht m glich ist und die Position manuell gew hlt wird In den gelieferten Ergebnissen unterscheiden sich die beiden Klassifizierungsmethoden n
169. uf konsistente Art und Weise weitere schnell erreichbare Funktionen am Kartenrand anzulegen Der Men punkt der Einstellungen ist ausgeblendet wor den da an dieser Stelle eine Evaluation fehlt welche die richtige dem Nutzer zumutbare Menge an Einstellungen untersucht Es ist durchaus auch denkbar die bestm glichen Konfigurationen in weiteren Testreihen zu untersuchen und sie dann statisch vorzugeben Die entwickelte De tailansicht wurde bisher nicht implementiert da kein Bedarf zur Darstellung ausf hrlicher Daten bestand Alle Informationen konnten in die Karte via Ballon eingebettet werden Sollte sich der Datenhintergrund vergr ern und Bedarf zur Anzeige vieler Metadaten entwickeln kann auf die ses Konzept ohne Weiteres zur ck gegriffen werden hnlich sieht es bei der Men f hrung zur Navigation aus Da diese Kernfunktionalit t noch nicht vollst ndig entwickelt ist gibt es auch noch keine streng nach Konzeption umgesetzte Men f hrung Die Darstellung der Grundrisse und R ume wurde in einer zus tzlichen Befragung erarbeitet Auf eine Beschriftung wie sie urspr nglich zur ersten Orientierung gedacht war wurde abgesehen da die darunter liegende Karte Teilweise die Geb udenamen bereits darstellt Au erdem kann der Nutzer sehr schnell und effektiv durch einen tap auf den Grundriss den Geb udenamen erfah ren Die aus der Umfrage resultierende Farbgebung Kapitel 5 3 3 konnte direkt im Prototypen umgesetzt werden Zus tzlich
170. ur im gew hlten Geb ude C Suche nur auf aktueller Etage Geb ude Standardsuchradius TUD_INF automatische los geht s Positionsbestimmung W hlen Sie diese Option um bkalsiert zu werden d m 000900000 2120800000 Geb ude komplett 2123 space Ba a eingeblendetes Men b Einstellungen in einer Extraan c eingeblendete Suchmaske sicht Abbildung 5 12 Mockups zu Men Einstellungen und Suche Men und Einstellungen dienen dem Nutzer zum Zugriff auf weitere Ansichten und Funk tionen Das Menu ist ber den Menu Button des mobilen Endger tes erreichbar Es wird eingeblendet und erm glicht dem Nutzer die Navigation zu weiteren Screens und Formularen Abbildung 5 12a Die drei beispielhaft gezeigten Eintr ge f r Suche Navigation und Ein stellungen k nnen durch weitere einfach erweitert werden Dazu sollte bei unzureichendem Platz eine zweite Zeile eingef hrt werden Um den Platzverbrauch des Men s zu beschr nken sind alle weiteren Men punkte in einer Liste unterzubringen welche ber einen Men eintrag mit der Bezeichnung mehr zu erreichen ist Der Screen in dem die personalisierten Einstellungen vorgenommen werden k nnen ist im Mockup 5 12b dargestellt Die Einstellungen sind listenartig untereinander angeordnet Es exi stiert bei Bedarf eine Beschreibung die als solche durch Farb und Gr enabstufunge
171. ut und Funk tionsumfang ist in Tabelle 72 dargestellt Wie bereits bei der SUS Auswertung werden Uber sichtlichkeit und Design als sehr gut eingestuft Abz ge gab es bei der Bewertung der tionsfunktion Die Beobachtungen der Testpersonen bestatigen dieses Ergebnis So mussten bei der vierten Aufgabe die meisten Hilfestellungen gegeben werden Die zum Ziel fuhrenden Interaktionen waren den Nutzern nicht intuitiv klar und mussten erklart werden Dabei ist zu be denken dass die Navigationsfunktionalitat sich noch in der Entwicklung befindet Die endgultige Eingliederung in das Userinterface steht also noch aus 102 Kapitel 7 Evaluierung 7 1 6 Kritikpunkte und Verbesserungsvorschlage Durch die Protokollierung sind vor allem Kleinigkeiten aufgefallen die bei der Nutzung eine opti male Bedienung verhinderten Auch die Testpersonen gaben an den vorgesehenen Stellen Feed back zu Verbesserungsmoglichkeiten Die Vorschlage werden hier kurz erlautert Bei der aktuell simulierten Position des Nutzers als auch bei der zuk nftig korrekten Positio nierung sollte an passenden Stellen das Geb ude vorausgew hlt sein Dies betrifft zum Beispiel die Suche oder Navigation Die Wegbeschreibungen der Outdoor Navigation zeigen noch HTML Tags an Dieses Verhalten ist auf ge nderte Parserfunktionen unter Android 4 zur ckzuf hren und muss behoben werden Das bereits angesprochene komplizierte Navigationsmen wurde auch an dieser Stelle von
172. uteilen Die strikte Organisation der einzelnen Programmkomponenten ist auch dahingehend wichtig da bei einem integrierten Indoor und Outdoor BG externe Services als Datenlieferanten hinzukommen ers Abbildung 5 3 Darstellung des MVC Pattern als Teil der Architektur renderer Das MVC Pattern Model View Controller Pattern existiert seit Langem in der Softwareentwick lung und f rdert die eben beschriebene Trennung nach bestimmten Funktionsbereichen Dieses Entwicklungsmuster schreibt in erster Linie die Trennung der drei Objekte die seinen Namen bilden vor und schafft so die Grundlage f r viele Web und Application Frameworks Die soge nannten Objekte sind nicht als einzelne Klassen zu verstehen vielmehr gibt es mehrere Klas sen die die Eigenschaften des Model Objekts bzw des View und Controller Objektes erf llen nach GHVJ09 und Bur97 Es geht hierbei nur um die funktionelle Abgrenzung gegeneinander Das MVC Design ist in Abbildung 5 3 als Ausschnitt der MapBiquitous Architektur dargestellt Das Model steht f r alle Elemente der Software welche Anwendungsobjekte darstellen Sie halten die notwendigen Daten f r den Programmablauf View Objekte bernehmen die Darstellung der Objekte auf der Nutzeroberfl che In MapBiquitous sind dies die Klassen die in Verbindung mit 60 Kapitel 5 Konzeption des Frameworks dem Renderer stehen Der Controller verwaltet den Datenfluss zwischen Modells und Views Er e
173. utf 8 gt lt entry http vww w3 0org 2005 Atom gt lt author gt lt name gt Elizabeth Bennet lt name gt lt email gt iz gmail com lt email gt lt author gt lt title type text gt Entry 1 lt title gt lt content type text gt This is my entry lt content gt lt entry gt Code 3 3 Google Data Protocol Einf gen eines Eintrags Ein wichtiger Aspekt ist die Datengewinnung und damit die Notwendigkeit Daten in eine Res source einzuf gen Im Codebeispiel 3 3 wird ein Eintrag mit den Werten title und content in die Ressource myFeed mittels POST Request eingef gt Verlauft die Anfrage er folgreich meldet der Server 207 CREATED und sendet gleichzeitig die erstellten Daten mit Diese Daten sind um die bereits besprochenen Versionierungsinformationen erweitert Sie wurden vom Server generiert und k nnen beim Einf gen nicht explizit angegeben werden GET myFeed g This Code 3 4 Google Data Protocol Freitextsuche der Ressource myFeed 3 2 Google Maps 39 200 lt xml version 1 0 encoding utf 8 gt lt feed xmins http ww ws org 2005 Atom xmIns gd http schemas google com g 2005 gd etag W SOwCTIpllip ImAOX00Q gt lt title gt Foo lt title gt lt updated gt 2006 01 23T 16 26 03 08 00 lt updated gt lt id gt http vww example com myFeed lt id gt lt author gt lt name gt Jo March lt name gt lt autho
174. zen Ich fand die verschiedenen Funktionen des Systems gut in die Anwendung integriert Es gibt zu viele Inkonsistenzen in der App Ich denke dass die meisten Personen die Nutzung des Programms schnell erlernen Die Anwendung war sehr umst ndlich zu verwenden Beim Nutzen der App habe ich mich sicher gef hlt Ich musste viel lernen um die App nutzen zu k nnen Welche Elemente der Seite haben Ihnen besonders gefallen 1 nicht gefallen 3 keine Meinung 5 gefallen bersichtlichkeit Design Verst ndlichkeit Navigation Beschriftung Men f hrung Haben Sie bei der Nutzung Informationen vermisst Wenn ja welche Lief die Anwendung stabil und ohne Laufzeitfehler Wenn Fehler auftraten welche Haben Sie weitere Verbesserungsvorschl ge f r die Anwendung 118 Anhang A Evaluation o 000000 COD 0 0 0 0000 OOO OOOO OOOOOO0 OOO 0000 v OOOOOO0 OOO 0 0 0 OOOOs OOOOO0 0 0 OOO 0 0 0 OOO0s AA PROTOKOLL DER ABSCHLUSSEVALUATION A 4 Protokoll der Abschlussevaluation 119 Protokoll f r die Beobachtung Mussten Hilfestellungen gegeben werden 0 0 Wenn ja welche Wie schnell kam der Nutzer mit dem Interface zurecht Minuten Wie lange dauerte die gesamte Befragung Minuten Wie Effizient konnte der Nutzer die Aufgaben ausf hren 1 sehr effizient keine Fehleingaben klicks 2 nomal 3 mehrere Fe
175. zwei f nf und sieben Damit wurden Fragen die die Konsistenz und die Integration der Funktionalit t in das Gesamtbild bewerten als sehr gut beurteilt Eine neutrale bzw sehr leicht ablehnende Bewertung erhielten die Fragen neun und vier Bei diesen Fragen ging es um die notwendige Hilfestellung die w hrend der Nutzung gegeben werden musste Das hei t dass die Testperso nen Hilfe in Anspruch genommen haben um die Funktionen zu erlernen Dieser Punkt zeigt eine der deutlich gewordenen Schw chen Die intuitive Nutzung kann und muss noch verbessert wer den Vorstellbar w ren kleine Tipps die beim ersten Gebrauch der App eine Hilfestellung geben blicher Weise wird der Nutzer kein Handbuch lesen und will die Funktionen durch Ausprobieren lernen Das sollte in der weiteren Ul Entwicklung beachtet werden P2 P6 Pi P8 10 Durchschnitt bersichtlichket 4 5 4 5 5 5 5 4 4 5 4 6 Design 5 4 4 2 4 4 5 4 4 5 4 1 Verstandlichkeit 5 3 3 4 4 4 4 3 3 4 3 7 Navigation 5 2 2 4 5 1 2 383 4 3 3 Beschriftung 5 3 4 3 4 3 4 2 2 4 3 4 Menufuhrung 3 4 3 4 5 4 3 2 3 4 3 5 Tabelle 72 Ergebnisse der allgemeinen Fragen 71 5 Bewertung der einzelnen Bestandteile Die Verteilung der Bewertung auf die einzelnen Bestandteile der Anwendung wurde mit sechs weiteren Kategorien abgefragt Dabei kreuzten die Testpersonen auf einer Skala von eins nicht gefallen bis 5 gefallen ihre Wertung an Diese allgemeine Einschatzung zu Layo

Download Pdf Manuals

image

Related Search

Related Contents

American Sensor SA379 User's Manual  Warehouse of Tiffany V8478 Instructions / Assembly  Lenovo S2109A-F User's Manual  第137期定時株主総会招集ご通知 - 三井住友トラスト・ホールディングス  MSDS受領書 FAXNo.052-443-4825  

Copyright © All rights reserved.
Failed to retrieve file