Softwareaspekte in Geo-Informationssystemen (GIS) Prof. Dr.-Ing. Ralf Bill Universität Rostock Agrar- und Umweltwissenschaftliche Fakultät Professur für Geodäsie und Geoinformatik GI-Software © 2016 UNIVERSITÄT ROSTOCK | Geodäsie und Geoinformatik | Prof. Dr.-Ing. Ralf Bill Anliegen Klärung wesentlicher Begriffe Einführung in Systemarchitekturen Was sind wesentliche Softwarekomponenten für die Geoinformatik? GI-Software © 2016 UNIVERSITÄT ROSTOCK | Geodäsie und Geoinformatik | Prof. Dr.-Ing. Ralf Bill 2 Inhalte Software – Begriff Grundsoftware Structured Query Language (SQL) GIS-Architektur GI-Software © 2016 UNIVERSITÄT ROSTOCK | Geodäsie und Geoinformatik | Prof. Dr.-Ing. Ralf Bill 3 Software - Begriff GI-Software © 2016 UNIVERSITÄT ROSTOCK | Geodäsie und Geoinformatik | Prof. Dr.-Ing. Ralf Bill 4 Software - Definition Nach ISO/IEC-Norm 27465 Programme und ggf. die zugehörige Dokumentation und weitere Daten, die zum Betrieb eines Computers notwendig sind. Alle einsetzbaren Programme und Daten zusammengefasst (z.B. Betriebssystem, Programmiersprachen, Graphik, Datenbanken usw.) Der Begriff „Software“ wird in unterschiedlicher Bedeutung genutzt: für konkret benannte Komponenten wie ein Programm, als Sammelbegriff für Mengen von Programmen (z. B. die GIS-Software) oder als Typ-/Gattungsbegriff für unterschiedliche Arten von Software (wie Graphiksoftware, Standardsoftware, Systemsoftware). Im Sinne des Systembegriffs Hardware Software aufgaben-, sinn- oder zweckgebundene Einheit GI-Software © 2016 UNIVERSITÄT ROSTOCK | Geodäsie und Geoinformatik | Prof. Dr.-Ing. Ralf Bill 5 Software-Gliederung - ISO/IEC 2382 Systemsoftware: Anwendungsunabhängige Software, die das Ausführen von Anwendungssoftware ermöglichen bzw. unterstützen (z. B. Betriebssystem sowie Gerätetreiber und Dienstprogramme). Unterstützungssoftware, d. h. Programme, die bei der Entwicklung oder Wartung helfen oder eine nichtanwendungsspezifische Leistung erbringen (z. B. Editoren, Compiler, Virenscanner, Datenbankmanagementsysteme, . . . ). Anwendungssoftware, die den Benutzer bei der Ausführung seiner Aufgaben unterstützt und ihm dadurch erst den eigentlichen, unmittelbaren Nutzen stiftet (z. B. ein GIS-Programm). GI-Software © 2016 UNIVERSITÄT ROSTOCK | Geodäsie und Geoinformatik | Prof. Dr.-Ing. Ralf Bill 6 Grundsoftware GI-Software © 2016 UNIVERSITÄT ROSTOCK | Geodäsie und Geoinformatik | Prof. Dr.-Ing. Ralf Bill 7 Gängige Betriebssysteme für GIS-Software Das Betriebssystem (engl. Operating System) ist die Summe derjenigen Programme, die als residenter Bestandteil einer EDV-Anlage für den Betrieb der Anlage und für die Ausführung der Anwendungsprogramme erforderlich sind. Es verwaltet Betriebsmittel wie Speicher, Ein- und Ausgabegeräte und steuert die Ausführung von Programmen. Server Linux Microsoft Windows – Arbeitsplatzrechner Server Mobile/stationäre Unix-Varianten Clients Microsoft Windows 7/8/10 Mobile personenApple Mac OS X bezogene IuKUnix-Varianten Geräte Linux Windows-CE Windows mobile/phone Android iOS GI-Software © 2016 UNIVERSITÄT ROSTOCK | Geodäsie und Geoinformatik | Prof. Dr.-Ing. Ralf Bill 8 Programmierumgebungen in GIS Eine Programmiersprache ist ein Serverseitige Scriptsprachen künstliches Sprachsystem für die Perl, Python, PHP Erstellung von Programmen für Active Server Pages (ASP) Datenverarbeitungsanlagen. Zur Java Server Pages (JSP) Übersetzung in eine für den Rechner Clientseitige Scriptsprachen verständliche Sprache werden JavaScript Übersetzer (Compiler) oder Interpreter Plug-ins zur clientseitigen für die entsprechende Funktionserweiterung Programmiersprache benötigt. SVG, VRML, PDF Klassische Programmiersprachen Seitenbeschreibungssprache/ Prozedurale Sprachen Auszeichnungssprache - C Objektorientierte Sprachen - Java, C++, C#, Objective C, PHP, Python, Ruby, Perl GI-Software Hypertext Markup Language (HTML), aktuell HTML 5 Extensible Markup Language (XML) © 2016 UNIVERSITÄT ROSTOCK | Geodäsie und Geoinformatik | Prof. Dr.-Ing. Ralf Bill 9 Netzwerke als Infrastruktur für GIS-Anwendungen Computernetzwerke LAN (Local Area Network) WLAN (Wireless Local Area Network) WAN (Wide Area Network) WPAN (Wireless Personal Area Network) Mobilfunknetze GSM, UMTS, LTE Übertragungsraten von kbit/s bis Gbit/s Funkzelle Folgen dem OSI/ISO 7-Ebenenmodell Nutzen TCP/IP als De-factoProtokollstandard Übertragungsraten von Mbit/s bis Gbit/s Sender Empfänger http://de.wikipedia.org Internet 82689_m3t1w525h247q75s1v43387_handynutzer_670.jpg stimmt.de GI-Software © 2016 UNIVERSITÄT ROSTOCK | Geodäsie und Geoinformatik | Prof. Dr.-Ing. Ralf Bill 10 Internet globales Informations- und Kommunikationsnetz Basistechnologie auch im GIS-Bereich Dienste Email zum Versenden und Empfangen elektronischer Nachrichten File Transfer Protocol (FTP) zum Transferieren von Dateien (Files) von einem Computer zu einem andern Internet Trend zum Internet of Things (IoT) = vernetzte miteinander agierende Objekte, bei denen sich bestimmte Funktionalitäten erst aus der Vernetzung der Einzelteile und durch Cloud-Computing ergeben. 3 Kernelemente - Netzknoten (Things): Erfassen von kleinen Datenmengen (Little Data) mithilfe von Sensoren - Middleware: Die Konsolidierung und Vorverarbeitung der in den Netzknoten erzeugten Daten. - Cloud: Übertragung, Speicherung und Analyse großer Datenmengen (Big Data). GI-Software © 2016 UNIVERSITÄT ROSTOCK | Geodäsie und Geoinformatik | Prof. Dr.-Ing. Ralf Bill 11 World Wide Web (WWW) Hypermediasystem zur Erschließung beliebiger Informationen über das Internet Seitenbeschreibungssprache/Auszeichnungssprache Hypertext Markup Language (HTML), aktuell HTML 5 Extensible Markup Language (XML) Kommunikationsprotokoll Hypertext Transport Protocol (HTTP) Suchmaschinen zur gezielten Suche nach Informationen weltweit (auf Serverseite) Google, Yahoo! u.v.a. Browser zur Betrachtung der erschlossenen Informationsbestände (auf Clientseite) Microsoft Internet Explorer (ab Windows 10 Microsoft Edge genannt), Mozilla Firefox, Opera, Safari und Google's Chrome u.v.a. Kann i.d.R. Texte und Bilder darstellen Für alles weitere benötigt der Browser Erweiterungen wie z.B. Plug-ins Web 2.0 => Neue Interaktions- und Kollaborationselemente GI-Software © 2016 UNIVERSITÄT ROSTOCK | Geodäsie und Geoinformatik | Prof. Dr.-Ing. Ralf Bill 12 Location-based Services (LBS) Internet Positionierung Kommunikationsnetzwerk Inhalteanbieter Datenprovider Nutzer/Endgerät GI-Software Diensteanbieter •Restaurantfinder •Navigation •Best friend locator •Stadtführer •Schnäppchenjäger •... © 2016 UNIVERSITÄT ROSTOCK | Geodäsie und Geoinformatik | Prof. Dr.-Ing. Ralf Bill 13 Structured Query Language (SWL) GI-Software © 2016 UNIVERSITÄT ROSTOCK | Geodäsie und Geoinformatik | Prof. Dr.-Ing. Ralf Bill 14 Datenbanksprache SQL Heute sind im GIS-Bereich relationale Datenbanken gängig wie z. B. Oracle, Ingres, Informix, Microsoft SQL Server, MySQL oder PostGreSQL. Diese unterstützen eine standardisierte Datenbankabfragesprache namens Structured Query Language (SQL). seit 1999 als ISO/IEC 9075 genormt und um objektrelationale Konstrukte erweitert und aktuell als SQL 7 oder SQL:2011 verabschiedet. SQL-Erweiterung ISO 9075 SQL Part 15: Multi-Dimensional Arrays lassen sich 1DSensordaten, 2D-Satellitenkarten, 3D-x/y/t-Bild- und Zeitreihen sowie 3D geologische Voxeldaten sowie 4D atmosphärische Daten verwalten. GI-Software © 2016 UNIVERSITÄT ROSTOCK | Geodäsie und Geoinformatik | Prof. Dr.-Ing. Ralf Bill 15 Structured Query Language (SQL) DDL (Data Definition Language - Datenbeschreibung) zur Definition realer und virtueller Tabellen des Datenbankschemas (Befehl: CREATE). DML (Data Manipulation Language - Datenmanipulation) zum Dateneintrag, zur Abfrage, zur Veränderung und zum Löschen von Daten (Befehle: INSERT, SELECT, UPDATE, DELETE). DCL (Data Control Language - Steuerungsverwaltung) zur Festlegung der Transaktionseinheiten, Sperren und Rechte (Befehle: COMMIT, ROLLBACK). Einbindung in gängige Programmiersprachen (Befehle: EXEC SQL, DECLARE, OPEN, FETCH, EXECUTE, CLOSE). DBA (Data Base Administrator - Datenbankadministration), die die Verteilung der Daten überwacht. DBMS (Data Base Management System - Datenbank-Verwaltungssystem), das den Zugriff auf die Daten kontrolliert. GI-Software © 2016 UNIVERSITÄT ROSTOCK | Geodäsie und Geoinformatik | Prof. Dr.-Ing. Ralf Bill 16 Structured Query Language (SQL) Standarddatentypen (Character, Integer, Float usw.), logisch mit Boole'schen Operatoren AND, OR, NOT etc. in WHERE-Klauseln verknüpfbar. Verschiedene Anfragemechanismen (Projektionen, Selektionen, Join, Verschachtelungen (IN-Bedingung)). Standardoperatoren (sogenannte Aggregatfunktionen wie COUNT, AVERAGE, MIN, MAX oder Gruppierungen zur Bedienung der Standarddatentypen). GI-Software © 2016 UNIVERSITÄT ROSTOCK | Geodäsie und Geoinformatik | Prof. Dr.-Ing. Ralf Bill 17 SQL-Beispiel Data Definition Language y 3 2 2 1 125 1 1 5 5 4 126 2 3 4 6 7 6 x Zweispaltige Tabelle Objekt (PNr, Nummer) Zweispaltige Tabelle Polygon (PNr, KNr) Dreispaltige Tabelle Kante (KNR, von, nach) Dreispaltige Tabelle Punkte (Pkt, x, y) CREATE table Objekt (PNr integer not null, Nummer integer); CREATE table Polygon (PNr integer not null, KNr integer); CREATE table Kante (KNR integer not null, von integer, nach integer); CREATE table Punkte (Pkt integer not null, x float , y float ) ; GI-Software © 2016 UNIVERSITÄT ROSTOCK | Geodäsie und Geoinformatik | Prof. Dr.-Ing. Ralf Bill 18 SQL-Beispiel – Data Manipulation Language objekt.dat: polygon.dat: kante.dat: --------------------------------1 125 11 112 2 126 12 223 13 314 14 443 24 535 25 656 26 746 27 punkte.dat: -----------1 0,0 0,0 2 0,0 5,0 3 5,0 5,0 4 5,0 0,0 5 10,0 5,0 6 10,0 0,0 INSERT into Objekt from "objekt.dat"; INSERT into Polygon from "polygon.dat"; INSERT into Kante from "kante.dat"; INSERT into Punkte from "punkte.dat"; SELECT * from Objekt; PNr Nummer 1 125 2 126 SELECT Knr from Polygon where PNr = (SELECT PNr from Objekt where Nummer = 125); Knr 1 2 3 4 GI-Software © 2016 UNIVERSITÄT ROSTOCK | Geodäsie und Geoinformatik | Prof. Dr.-Ing. Ralf Bill 19 GIS-ARCHITEKTUREN GI-Software © 2016 UNIVERSITÄT ROSTOCK | Geodäsie und Geoinformatik | Prof. Dr.-Ing. Ralf Bill 20 Verteilte Systeme Menge von Funktionseinheiten oder Komponenten, die in einer Client-ServerBeziehung zueinander stehen und eine Funktion erbringen, die nicht durch die Komponenten allein erbracht werden kann. Ein solcher Zusammenschluss präsentiert sich für den Benutzer als ein einzelnes System. Für den Benutzer sowie für die Applikation eines verteilten Systems ist die Art der Verteilung nicht relevant und idealerweise auch nicht ersichtlich. Das System verhält sich transparent, als hätte der Nutzer es mit einem Gesamtsystem zu tun (G. Bengel (2004)). Verteilung der graphischen Präsentation, der Benutzeroberfläche (Graphical User Interface (GUI)), der Datenverarbeitung, des Datenmanagements und der persistenten Datenspeicherung zwischen Client und Server (P. Korduan und M.L. Zehner (2008)) in einer mehrschichtigen Architektur. 0-Tier-Modell (Terminalserver) 2-Tier-Modell (Client-Server) Multi-Tier-Modell GI-Software © 2016 UNIVERSITÄT ROSTOCK | Geodäsie und Geoinformatik | Prof. Dr.-Ing. Ralf Bill 21 Three-Tier-Modell Clients (Frontend) Präsentationsschicht Webbrowser, Mail- oder FTP-Clients, desktopbasierte GIS und browserbasierte Mapping-Anwendungen Netzwerk Applikationsserver (Middletier) Kommunikationsschicht standardisierte, weitverbreitete Serverapplikationen (wie HTTP-Server), die der Kommunikation im Netzwerk dienen. Netzwerk Datenbankserver (Backend) Geschäftslogikschicht Für spezifischere Ressourcenanforderungen und Aufgabenverteilung, z.B. DBServer, MapServer. GI-Software © 2016 UNIVERSITÄT ROSTOCK | Geodäsie und Geoinformatik | Prof. Dr.-Ing. Ralf Bill 22 Verteiltes System – Lastverteilung Client-Server Client-Statisch (Thin Client) Client-Dynamisch (Thick Client) Server-Dynamisch Web-Client Web-Client Web-Client Plug-in Viewer JavaScript Andere Internet Internet Internet Web-Server Web-Server Internet Web-Server DB-/Map-Server CGI Servlets Server-API Andere Middleware DB-Server GeoDBMS GI-Software © 2016 UNIVERSITÄT ROSTOCK | Geodäsie und Geoinformatik | Prof. Dr.-Ing. Ralf Bill GeoDBMS 23 Serverarten im GIS-Bereich Web Server Stellt Kontakt zwischen Client (Browser) und Server her und liefert Webseiten an Client File Server Bietet Daten zum Download Map Server Stellt Karten zusammen und liefert diese als Bild an den Webbrowser aus. Feature Server Liefert Objekte aus z.B. in GML (Geometrie und Attributdaten) Datenbank Server Stellt Datenbankzugang her und liefert SQL-Abfrageergebnisse zurück, z.B. über Schnittstellen wie ODBC/JDBC GI-Software © 2016 UNIVERSITÄT ROSTOCK | Geodäsie und Geoinformatik | Prof. Dr.-Ing. Ralf Bill 24 Serverarten im GIS-Bereich E-Commerce Server Stellt Abrechnungsmodelle bereit und organisiert Bestellungen auf Geodaten Application Server Führt Programme zur Geodatenverarbeitung (Analyse) und liefert Ergebnisse aus Terminal Server Ermöglicht schlichte Clients (Browser/Terminal), da sämtliche Aktionen auf dem Server durchgeführt warden. Tauscht Bildschirmzustand, Tastatureingabe und Mausereignisse aus. Service Registry Server Registriert Webdienste wie z.B. WMS, WFS, … und ermöglicht den zugang zu diesen. Authentication Server Ermöglicht verschiedenste Verfahren der Nutzerauthentifizierung Authorization Server Offeriert Information über Zugangsrechte der Nutzer GI-Software © 2016 UNIVERSITÄT ROSTOCK | Geodäsie und Geoinformatik | Prof. Dr.-Ing. Ralf Bill 25 Client-Server-Architektur - mobile Anwendungen Client Zusätzliche Funktionalitäten Web-Browser Grafik Anfrage Mobiles Internet Server Web-Server Web-Map-Server Zugriff GeoDB Datenbank GI-Software © 2016 UNIVERSITÄT ROSTOCK | Geodäsie und Geoinformatik | Prof. Dr.-Ing. Ralf Bill 26 GIS als verteiltes System DB-Server File-Server Processing-Server Map-Server Billing-Server Netzwerk Portal-Server Netzwerk Desktop-GIS GI-Software Mobiles Abfragesystem Mobiles Feldgerät © 2016 UNIVERSITÄT ROSTOCK | Geodäsie und Geoinformatik | Prof. Dr.-Ing. Ralf Bill 27 SERVICE ORIENTED ARCHITECTURE (SOA) GI-Software © 2016 UNIVERSITÄT ROSTOCK | Geodäsie und Geoinformatik | Prof. Dr.-Ing. Ralf Bill 28 Service-Oriented Architecture (SOA) Service-Oriented Architecture (SOA): Ein Satz von Prinzipien und Methoden zur Entwicklung von Software in Form interoperabler Dienste. Diese Dienste bieten klar definierte Funktionalitäten in Form von für viele Zwecke wiederverwendbaren Softwarekomponenten (diskrete Codestücke und/oder Datenstrukturen). SOA definiert wie Dienste zu integrieren sind. Im Unterschied zu einer API (Application Programming Interface) beschreibt SOA die Schnittstellen im Sinne von Protokollen und Funktionalitäten und den Einstiegspunkt. Serviceorientierung benötigt eine lose Kopplung von Diensten mit Betriebssystemen und anderen zugrundeliegenden Technologien. SOA separiert Funktionen in kleine Einheiten oder Dienste, die von Entwicklern über das Netz für Nutzer verfügbar gemacht werden, die diese dann in ihren Anwendungsentwicklungen nachnutzen können. Diese Dienste kommunizieren miteinander, indem sie Daten in einem klar definierten Format oder indem sie Aktivitäten zwischen zwei oder mehr Diensten austauschen. GI-Software © 2016 UNIVERSITÄT ROSTOCK | Geodäsie und Geoinformatik | Prof. Dr.-Ing. Ralf Bill Enterprise Service Layer Domain Service Layer Application Service Layer 29 SOA principle Service oriented architecture (SOA): Publish – find – bind – execute Generelles Vorgehen: Registry service UDDI Service user Bind SOAP Service provider Identifizieren der relevanten Anbieter / Anbieter und Daten / Dienste Eindeutige Beschreibung der Daten durch Metadaten Eindeutige Modellierung von heterogenen Datensätzen mit gleichen thematischen Inhalt Erstellen des Zugriffs auf die Daten über standardisierte Services (Web Service Description Language) Erstellen einer zentralen Infrastrukturkomponente (Registry) als Einstiegspunkt für die Datensuche und Dienste (Universal Description, Discovery and Integration) Kommunikation über das Simple Object Access Protocol (SOAP) Quelle: GDI-DE, Bill (2010) GI-Software © 2016 UNIVERSITÄT ROSTOCK | Geodäsie und Geoinformatik | Prof. Dr.-Ing. Ralf Bill 30 Aktuelle Entwicklungen GI-Software © 2016 UNIVERSITÄT ROSTOCK | Geodäsie und Geoinformatik | Prof. Dr.-Ing. Ralf Bill 31 Cloud-Computing neue Form der Bereitstellung von Rechnerressourcen. Benötigte Ressourcen (Hardware, Datenbanken, Speicher, Rechenleistung etc.) werden bei Bedarf verfügbar gemacht. beruht auf Servervirtualisierung, Webdiensten und verteilter Rechnertechnologie. Unterscheidung nach Betriebs-, Eigentums- und Organisationsaspekten: Private Clouds (für geschlossene Nutzergruppen, Internal Cloud) Public Clouds (für eine große Anzahl verschiedener Nutzer, External Cloud) Hybride Clouds als Kombination von beidem (besonders schützenswerte Daten in der Private Cloud, restliche Anwendungen in der Public Cloud. Quelle: BITKOM (2013) GI-Software © 2016 UNIVERSITÄT ROSTOCK | Geodäsie und Geoinformatik | Prof. Dr.-Ing. Ralf Bill 32 Cloud-Dienste- und -Abrechnungsmodelle Infrastructure as a Service (IaaS): Geschäftsmodell, das entgegen dem klassischen Kaufen von Rechnerinfrastruktur vorsieht, diese on demand zu mieten. => Amazon Elastic Compute Cloud (EC2) oder Dropbox. Platform as a Service (PaaS): Ansatz, eine integrierte Laufzeit- und evtl. auch Entwicklungsumgebung als einen Dienst zur Verfügung zu stellen, für den der Nutzer per use zahlt. => Google App Engine oder MS Azure. Software as a Service (SaaS): Geschäftsmodell, Software nicht länger als Lizenz an einen Benutzer zu verkaufen, sondern lediglich die Benutzung selbiger als Service zur Verfügung zu stellen. => Google Docs, Apple iCloud, Esri ArcGIS Online, Trimble InSphere oder Hexagon Smart M.App. Data as a Service (DaaS) bietet Daten durch einen Dienstleister in Form von OGC-konformen Diensten oder durch spezielle Übertragungstechnologien an. Humans as a Service (HuaaS): Ansatz, bei dem menschliche Intelligenz als Webservice für Arbeiten genutzt wird (z. B. in Crowdsourcing-Projekten). Storage as a Service (StaaS): Anbieter stellt dem Nutzer die benötigten Speicherkapazitäten für die Speicherung, Archivierung und das Back-up bereit. GI-Software © 2016 UNIVERSITÄT ROSTOCK | Geodäsie und Geoinformatik | Prof. Dr.-Ing. Ralf Bill 33 Cloud-Pyramide Über das Internet nutzbare Anwendungen und Dienste Software as a Service (SaaS) Programmierumgebung und Laufzeitplattform für eigene Anwendungen Platform as a Service (PaaS) Virtuelle Rechner mit CPU-Leistung, Datenspeicher, Netzwerk GI-Software Infrastructure as a Service (IaaS) © 2016 UNIVERSITÄT ROSTOCK | Geodäsie und Geoinformatik | Prof. Dr.-Ing. Ralf Bill 34 Geo-Apps spezielle Anwendungssoftware im Bereich mobiler Betriebssysteme und mobiler Endgeräte, sogenannte Mobile Apps oder Web-Apps. zunehmend auch in der Geoinformationsbranche in Form schlanker, einfach zu bedienender Anwendungen, die in Geschäftsprozesse integriert sind (z.B. mobile Erfassungssoftware) GI-Software © 2016 UNIVERSITÄT ROSTOCK | Geodäsie und Geoinformatik | Prof. Dr.-Ing. Ralf Bill 35 Geo-Apps Drei Arten von Apps: Bereitgestellte Apps: Anwendungen, die von einem App-Hersteller im AppStore zur Verfügung gestellt werden, ohne dass der Nutzer die App entwickeln oder konfigurieren muss. Massenmarkt. Apps von GIS-Herstellern sind somit als Ergänzung zu den Produktfamilien und Cloud-Diensten zu verstehen. Web-Apps: Klassische Webanwendungen, die von Webbrowsern auf mobilen Endgeräten dargestellt, meist auf einem Webserver gespeichert und auch größtenteils dort ausgeführt werden. Web-Apps nutzen i.d.R. Mix von verschiedenen Webtechnologien wie HTML5, CSS3 und JavaScript, um eine optimale Darstellung auf den verschiedensten Endgeräten zu ermöglichen. Web-Apps können dem Internetbrowser benutzt werden, daher reicht die Spanne der Endgeräte vom Smartphone über Tablet-PCs und Notebooks bis hin zu Smart TV‘s. Native App: Anwendung, die speziell an die Zielplattform angepasst und sehr leicht über ein herstellerspezifisches Online-Portal bezogen und installiert wird. Klassische Ansatz der App-Entwicklung: Ein Anwendungsprogramm für ein entsprechendes Gerät und auch nur dort ausführbar. Hieraus resultiert ein höherer Entwicklungsaufwand, möchte man die Anwendung auf mehreren unterschiedlichen Plattformen verteilen, denn jede mobile Plattform besitzt ihr eigenes SDK (Software Development Kit). GI-Software © 2016 UNIVERSITÄT ROSTOCK | Geodäsie und Geoinformatik | Prof. Dr.-Ing. Ralf Bill 36 Selbststudium GI-Software © 2016 UNIVERSITÄT ROSTOCK | Geodäsie und Geoinformatik | Prof. Dr.-Ing. Ralf Bill 37 Literaturhinweis Bücher: Bill (2016): Kapitel 2.3 GI-Software © 2016 UNIVERSITÄT ROSTOCK | Geodäsie und Geoinformatik | Prof. Dr.-Ing. Ralf Bill 38