Modulare und flexible Entwicklung grafischer Benutzeroberflächen

Größe: px
Ab Seite anzeigen:

Download "Modulare und flexible Entwicklung grafischer Benutzeroberflächen"

Transkript

1 Modulare und flexible Entwicklung grafischer Benutzeroberflächen Sebastian Damm Fachhochschule Aachen Fachbereich Elektrotechnik und Informationstechnik Eupener Straße 70, Aachen Abstract. Die vorliegende Ausarbeitung beschäftigt sich mit der modularen und flexiblen Entwicklung grafischer Benutzeroberflächen. Die Vielfalt an Plattformen, auf denen heutzutage Software zu finden ist, erschwert zunehmend die Softwareentwicklung. Dem soll mittels abstrakter Beschreibungssprachen Abhilfe geschaffen werden, indem die Art der Interaktion ohne Kenntnis über die spätere Implementierung und Zielplattform beschrieben wird. So sollen sich Oberflächen unabhängig von ihrer Zielplattform designen lassen. 1 Einleitung Seit es grafische Benutzeroberflächen (engl. Graphical User Interfaces, kurz: GUIs) gibt, ist deren Gestaltung ein zentraler Aspekt in der Entwicklung von Software. In den Anfängen der GUIs war es noch recht einfach, diese zu designen, da nur einzelne Plattformen (bezüglich Betriebssystemen und Hardwarebauformen) existierten. In den letzten Jahren entstand und entsteht immer noch eine stetig wachsende Zahl von Rechen- und Betriebssystemen sowie insbesondere neuer Geräteklassen. Mit der voranschreitenden Entwicklung fügten sich Mobiltelefone, persönliche digitale Assistenten (PDAs), Smartphones und Tablet PCs als Zielplattformen hinzu (siehe Abbildung 1). Auch Embedded Systeme wie PCs im Auto sind durch ihre abweichenden Displaygrößen und Eingabemöglichkeiten wie z.b. (Multi-)touch als neu anzusehen ([vgl. 2]). Dies hat dazu geführt, dass die Entwicklung von Software zu einem immer komplexeren Prozess wird. Dem Benutzer muss es möglich sein, nahtlos zwischen verschiedenen Geräten zu wechseln und dabei dennoch die gleichen Informationen und Dienste unabhängig von der gewählten Plattform konsumieren zu können (vgl. [5,6]). Die Herausforderung auf Seite der Entwickler besteht darin, ein und dieselbe Applikation in verschiedenen Versionen für unterschiedliche Geräte bereitzustellen. Soll eine Software multiplattformfähig sein, muss dafür gesorgt werden, dass Benutzerschnittstellen auf allen Zielplattformen über eine angemessene Darstellung verfügen. Es ist dabei wichtig, Bildschirmgrößen bzw. Auflösungen hinreichend zu

2 beachten, Farbschemata dem Kontext anzupassen, adäquate Eingabemethoden zu wählen und die gesamte Interaktion auf das genutzte Endgerät optimiert auszurichten. Bei Interaktion müssen nicht nur konkrete Objekte wie Steuerelemente, sondern auch abstrakte Dinge wie der Nutzungskontext betrachtet werden (vgl. [3]). Diese haben eminenten Einfluss darauf, wie eine Benutzeroberfläche zu gestalten ist. Aus der Darstellung einer Software folgen auch unmittelbar Aspekte der Benutzbarkeit (engl. Usability). So spielt zum Beispiel die Erwartungskonformität dabei eine große Rolle (vgl. [4]). Eine Applikation sollte für den Nutzer möglichst intuitiv und nah an dem sein, was er von seiner gewählten Plattform gewohnt ist, wie zum Beispiel native Apps für Apples IOS oder Googles Android, für die es Designrichtlinien und best Practices gibt, deren Einhaltung zu einer homogenen Landschaft an Apps (innerhalb der jeweilige Plattform) führt. Dem Nutzer wird ein hoher Wiedererkennungswert geboten, so dass er sich intuitiv in einer neuen App und deren Bedienkonzept zurechtfindet. Die Konzentration auf eine Zielplattform erweist sich als wenig praktikabel, da nur Teile des Marktes durchdrungen und andere außer Acht gelassen werden. Die individuelle Entwicklung diverser GUIs für die einzelnen Plattformen ist jedoch zeitaufwendig und kostspielig. Es ist von daher erstrebenswert, Oberflächen auf einer abstrakten Ebene zu beschreiben und aus einer solchen Metasprache möglichst einfach in konkrete Oberflächen zu überführen. Natürliche Sprache ist dafür wenig geeignet, da sie vielseitig interpretierbar, lang und ungenau ist. Bei der Nutzung von abstrakten Beschreibungssprachen kommt es darauf an, die Nutzerschnittstellen zu beschreiben ohne eine konkrete Implementierung vorzugeben. Um dies umzusetzen, muss der Code, der die Oberflächen beschreibt möglichst gut von der Applikationslogik getrennt werden (vgl. [1,7,5]). Bei Geräten, die keine Touchinteraktion bieten, macht eine Gestensteuerung wie zum Beispiel Pinch-to-Zoom keinen Sinn. Hingegen könnte ein dedizierter Hardwarebutton dafür existieren, der die Aktion ausführt. Was also in diesem Falle beschrieben werden muss, ist die abstrakte Aktion des Zoomens und nicht deren konkrete Umsetzung. So können auch neue, bisher noch nicht vorhandene/entwickelte Eingabemethoden abgedeckt werden, die in zukünftigen Systemen existieren könnten. Abbildung 1. Auswahl verfügbarer Rechensysteme (Quelle: [12])

3 2 Technologien In diesem Abschnitt werden Ansätze aus der Praxis vorgestellt, welche die in der Einleitung aufgezeigte Problematik angehen und zu lösen versuchen. Bei allen vorgestellten Sprachen handelt es sich um User Interface Definition Languages (UIDLs), welche im XML Format repräsentiert werden. Sie sind maschinenlesbar und dadurch besonders gut zur automatisierten Transformation geeignet. 2.1 UIML Die User Interface Markup Language (kurz: UIML) wurde 1997 in ihrer ersten Version von Abrams et al [1] propagiert. Sie befindet sich immer noch in der Entwicklung und zum Entstehungszeitpunkt dieser Arbeit liegt ihr aktuellster Entwurf in Version 4 als offener Standard der OASIS 1 vor [9]. Mit Hilfe der UIML können Designer die Benutzeroberfläche zunächst abstrakt beschreiben, um sie mittels einer so genannten Style Description auf verschiedene Betriebssysteme, Programmiersprachen und Geräte abzubilden. Dazu muss für jedes Zielsystem ein Renderer (für.net zum Beispiel [10]) existieren, der die abstrakte Beschreibung in eine konkrete transformiert. Der strukturelle Aufbau eines UIML Dokumentes ist dabei wie folgt: <?xml version="1.0"?> <!DOCTYPE uiml PUBLIC "-//OASIS//DTD UIML 4.0 Draft//EN" "http://uiml.org/dtds/uiml4_0a.dtd"> <uiml xmlns='http://uiml.org/dtds/uiml4_0a.dtd'> <head>...</head> <template>...</template> <interface> <structure> <part>...</part> </structure> <style>...</style> <layout>...</layout> <content>...</content> <behavior>...</behavior> </interface> <peers> <presentation>...</presentation> <logic>...</logic> </peers> </uiml> 1 Organization for the Advancement of Structured Information Standards

4 Nach dem XML-Prolog folgt das Root-Element, welches alle anderen Elemente einbettet. In <head> können Metainformationen zum Modell, wie z.b. Author, Erstellungsdatum etc. angegeben werden. Der Tag <template> dient der Wiederverwendung von Elementen, die bereits beschrieben wurden. Das <interface> Element beschreibt (abstrakt) die Benutzeroberfläche. Es wird gegliedert in <structure> für die Struktur der Oberfläche, welche sich wiederum aus einzelnen <part> Elementen zusammensetzt. Die <style> Tags geben den einzelnen Parts bzw. ganzen Klassen/Familien davon verschiedene Eigenschaften und Werte vor, um diese später auf einem Gerät rendern zu können. Dabei wird für jedes Gerät bzw. jede Zielplattform ein neues, spezifisches Stylesheet angelegt. Der <layout> Tag beschreibt abstrakt, wie einzelne Elemente zu einander und im Gesamtkontext positioniert werden (z.b. zentriert, links von, o.ä.) bzw. in welcher Reihenfolge sie auftreten (z.b. bei Sprachinteraktion). Im Bereich <content> können Inhalte hinterlegt werden, wie zum Beispiel strings für Mehrsprachigkeit. Für jede Sprache würde ein eigener (benannter) Content Bereich angelegt werden, in dem die jeweiligen Werte hinterlegt sind (z.b. ja/nein und yes/no ). Die letzte große Untereinheit von <interface> ist <behavior>. Hier werden Regeln festgelegt, welche Aktionen bei Eintritt eines Ereignisses ausgelöst werden sollen. Die Verbindung zur Applikationslogik und einem spezifischen Renderer wird in <peers> hergestellt. Dabei wird zwischen Präsentation und Logik unterschieden. Im <presentation> Element wird die Verbindung zwischen den einzelnen abstrakten <part> und <behavior> (bzw. genauer deren <event>) Klassen sowie ihren Namen und einem konkreten Toolkit einer Programmiersprache in einer Art Wörterbuch erstellt. Diese Vokabulare stehen Teilweise bereits vorgefertigt zur Verfügung und können wie folgt eingebunden werden (am Beispiel von Java AWT 1.3): <presentation base="javaawt_1.3_harmonia_1.0"/> In <logic> werden schließlich die Klassen/Methoden von UIML mit denen der externen Applikationslogik verbunden. Diese kann z.b. bei 3 Schichten Architekturen in einer Middleware vorliegen, in Skripten einer Skriptsprache oder direkten Aufrufen von Objektmethoden.

5 2.2 UsiXML Bei der User Interface extensible Markup Language (kurz: UsiXML [8]) handelt es sich ebenfalls um eine XML-basierte Sprache. Der Ansatz ist jedoch eher an eine modellgetriebene Architektur (englisch: Model Driven Architecture, kurz: MDA) angelehnt. Dabei werden Modelle unterschiedlichen Abstraktionsgrades genutzt und durch Transformationen abstrahiert bzw. konkretisiert. Außerdem können Artefakte auf gleicher Abstraktionsebene mittels Translation auf einen anderen Nutzungskontext abgebildet werden. Man stützt sich dabei auf das Cameleon Reference Framework [12] in einer vereinfachten Version: Abbildung 2. Cameleon Reference Framework (Quelle: [8]) Tasks und Concepts beschreiben Aufgaben die der Benutzer durchführen kann und domänenspezifische Objekte die dafür benötigt werden. Durch Reifikation wird daraus ein Abstract UI erzeugt. Eine solche abstrakte Oberfläche ist unabhängig von ihrem Nutzungskontext und gruppiert (Sub-)Tasks nach vorgegebenen Kriterien, legt den Kontrollfluss fest und wählt abstrakte Interaktionsobjekte (AOIs) aus. Durch weitere Konkretisierung erhält man aus dem Abstract UI ein Concrete UI. Diese zieht nun auch den Nutzungskontext in Betracht, ist jedoch weiterhin unabhängig von der Plattform. Es werden Steuerelemente bzw. deren Typen (Concrete Interaction Objects, kurz: COIs) festgelegt und es entsteht ein genaues Bild der finalen Oberfläche, ohne jedoch die Plattform festzulegen. Schließlich gibt es das Final UI, welches der endgültigen Oberfläche entspricht, so wie sie auf einer konkreten Plattform läuft. Es gibt dabei die Möglichkeit der Interpretation (z.b. durch einen Browser) oder der direkten Ausführung (nach Kompilierung).

6 Zwischen allen benachbarten Modellen kann statt der Reifikation auch eine Abstraktion durchgeführt werden um aus einer konkreteren Darstellung zu einer Allgemeineren zu gelangen (vgl. [8]). In Abbildung 3 sind die Transformationen zwischen den Modellen beispielhaft für den Download einer Datei dargestellt. Abbildung 3. Beispiel der Transformationen (Quelle: [8]) Wie in Abbildung 3 erkennbar, lassen sich die vier Abstraktionslevel jeweils in zwei Sublevel unterteilen. Das FUI ist auf unterster Ebene das Rendering, welches durch Code ausgedrückt wird. Im CUI werden konkrete Interface Objekte dargestellt, sowie genereller deren Typen. Abstrakte Interface Objekte lassen sich beispielsweise konkretisieren zu Soft- und Hardware AIOs. Auf höchster Ebene werden die Aufgaben und die dazugehörigen Objekte dargestellt. An obigem Beispiel lässt sich außerdem gut erkennen, dass man ein Final UI in ein anderes überführen kann, indem man zunächst z.b. vom konkreten HTML Button abstrahiert bis hin zum Control AIO um anschließend zu einem Function Key zu reifizieren, um so eine Umsetzung auf einer anderen Plattform anzugehen. 2.3 XIML Die letzte betrachtete Beschreibungssprache ist die extensible Interface Markup Language (kurz: XIML [3]). Auch sie versucht, Interaktion möglichst allgemein und abstrakt zu repräsentieren. Die erste Version nutzt dazu 5 Grundkomponenten, von denen 3 der Abstrakten Beschreibung und 2 der konkreten Implementierung dienen. Der Task beschreibt einen Business-Prozess oder einen User-Task, den Fluss zwischen diesen, sowie zugehörige Attribute. Dabei werden jedoch nur die Aufgaben betrachtet, die Benutzerinteraktionen benötigen. Beispiele für solche Aufgaben könnten zum Beispiel Karte ansehen oder Datum eingeben sein. Die Domain enthält Datenobjekte und Klassen von Objekten in hierarchischer Struktur, ähnlich einer Ontologie. Sie werden als paare von Attributen und Werten

7 definiert. Relevant sind auch hier nur solche Objekte, die vom Nutzer angesehen oder bearbeitet werden. Die User Komponente ist ebenfalls als Hierarchie strukturiert und enthält Nutzer in Form eines Baumes. Ein Nutzer kann dabei eine einzelner Benutzer oder eine Benutzergruppe sein. Paare von Attributen und Werten charakterisieren die Benutzer, allerdings wird dabei nicht auf geistige Fähigkeiten eingegangen, sondern nur auf für das Design relevante Dinge. Die Presentation enthält Interaktionselemente, also konkrete Elemente, mit denen der Nutzer interagiert, wie zum Beispiel ein Fenster, ein Button oder komplexere Steuerelemente. Allerdings sollte auch hier nach Möglichkeit eine abstrakte Form gewählt werden, um das Rendering komplett dem Zielsystem überlassen zu können. Zuletzt gibt es noch den Dialog, welcher eine Sammlung von Aktionen beschreibt, die dem Nutzer zur Verfügung stehen. Beispiele dafür sind Klick, Geste oder Sprachausgabe. Außerdem beinhaltet der Dialog den Navigationsfluss. Insgesamt ähnelt der Dialog sehr dem Task, ist allerdings im Gegensatz zu diesem nicht abstrakt sondern konkret. Neben den Komponenten existieren in XIML Relationen (Relations) zwischen diesen. Dabei können Relationen zwischen zwei oder mehr Elementen vorkommen und innerhalb einer Komponente, oder zwischen verschiedenen Komponenten vorliegen. Ein Beispiel ist: Datentyp A wird durch Präsentationselement B oder Präsentationselement C dargestellt. (vgl. [3]) Das letzte Konstrukt sind die Attribute (Attributes), welche Merkmale bzw. Eigenschaften von Elementen darstellen. Sie liegen als Key-Value Paare vor. Die Entwicklung für mehrere Zielplattformen wird durch die strikte Trennung von Definition eines Interfaces und seinem Rendering erreicht. Das Rendering ist Plattformspezifisch und wird direkt auf dieser ausgeführt. Neben der Möglichkeit, für jede Plattform einen eigenen Presentation-Abschnitt im XIML Dokument einzufügen, kann man eine Abstraktere Beschreibung wählen und über vordefinierte Relationen automatisch in passende Elemente der Zielplattform zu überführen. Beispielsweise könnte ein Element die aktuelle Position sein. In XIML würde dann Ort als Presentation-Element angelegt und mittels Relationen auf konkrete Darstellungen abgebildet, auf einem PC eine Karte, auf einem Mobiltelefon nur ein Text. (vgl. [3]) Grundsätzlich ist XIML nicht auf die oben angeführten Sprachelemente begrenzt, sondern offen und beliebig erweiterbar. Die Urheber glauben jedoch, dass die Sprache auch ohne Erweiterungen eine ausreichende Mächtigkeit besitzt, beliebige GUIs beschreiben zu können.

8 Eine weitere von XIML gebotene Möglichkeit ist, GUIs laufzeitdynamisch zu gestalten. Abbildung 4 zeigt ein Beispiel, in dem die Darstellung je nach verfügbarem Displaybereich mehr oder weniger Details angezeigt werden, indem die XIML Spezifikation gelesen und die Presentation-Komponente zur Laufzeit ausgetauscht wird: Abbildung 4. Dynamischer Wechsel der Darstellung (Quelle: [3]) Auf die gleiche Weise könnte auch eine Personalisierung vorgenommen werden, indem jedem User eine Presentation zugeordnet wird, welche seine Präferenzen widerspiegelt. 3 Bewertung und Vergleich Im Folgenden werden eine Bewertung und ein Vergleich der vorgestellten Sprachen zur Beschreibung von grafischen Benutzeroberflächen vorgenommen. Zunächst werden die Formate separat betrachtet und einander abschließend in tabellarischer Form gegenübergestellt. 3.1 UIML Die UIML ist der wohl älteste Ansatz für eine allgemeine, abstrakte Beschreibungssprache für grafische Benutzeroberflächen. Mittlerweile liegt sie in Version 4 vor, welche allerdings auf November 2008 datiert ist. Auch mit Informationen bezüglich der Weiterentwicklung ist die Oasis Gruppe sehr sparsam, was daran zweifeln lässt, ob der Ansatz überhaupt noch weiter verfolgt wird, zumal auch die Webseite uiml.org über den Zeitraum der Erstellung dieser Arbeit nicht erreichbar war. Die Softwareunterstützung für UIML existiert in Form diverser Renderer für unterschiedlichste Plattformen wie Java Swing,.NET, Android, Python, Flash, etc. Auch Toolkits zum Erstellen der UIML stehen für unterschiedliche Programmiersprachen

9 zur Verfügung, was jedoch direkt zu einem der größten Mankos an UIML führt, denn die Sprache ist plattformspezifischer, als wünschenswert wäre. 3.2 UsiXML UsiXML und der modellgetriebene Ansatz ist sehr flexibel, da von jeder konkreten oder abstrakten Ebene des Cameleon Frameworks aus in die Entwicklung eingestiegen werden kann. Vorhandene finale Oberflächen lassen sich generalisieren, abstrakte Oberflächendefinitionen können konkretisiert werden, oder eine vorhandene Oberfläche auf eine neue Plattform überführt werden. Die Arbeit an UsiXML wird bis zum jetzigen Zeitpunkt fortgeführt, und die Sprache wurde im Februar 2012 zur Standardisierung durch das W3C 2 eingereicht. Unterstützende Software gibt es auf unterschiedlichen Ebenen. So existiert ein Tool, namens ReversiXML, mit dem sich eine vorhandene Oberfläche einer HTML Webseite in ein Concrete UI oder Abstract UI in UsiXML überführen lässt. Neben der Möglichkeit, UsiXML mit einem XML Editor in Textform zu schreiben, gibt es einen Editor, mit dem sich Oberflächen zeichnen und Concrete Interface Objects platzieren und mit Eigenschaften versehen lassen können. Das Ergebnis wird automatisch in eine UsiXML Spezifikation umgesetzt. Auch Model-to-Model Transformationen sind möglich. 3.3 XIML XIML ist im Gegensatz zu den beiden anderen betrachteten Sprachen vollständig erweiterbar, was sie wiederum nahezu unbegrenzt ausdrucksstark macht. Ob die Arbeit an XIML zurzeit fortgeführt wird, ist schwer zu sagen, da die Webseite, ebenso wie die Oasis Seite zu UIML keine Informationen darüber preisgibt. Zum aktuellen Zeitpunkt existieren für XIML keine frei verfügbaren Werkzeuge zur Modellierung, es wird lediglich ein Validator für XIML Dokumente freigegeben und ansonsten auf XML-Editoren verwiesen. Renderer für verschiedene Sprachen müssen noch entwickelt werden. Die Roadmap des XIML Konsortiums sieht im späteren Verlauf vor, die Sprache standardisieren zu lassen, ob es jedoch so weit kommt, ist ob eines Mangels an aktuellen bzw. neuen Veröffentlichungen zu dem Thema fraglich. Ein weiterer Nachteil an XIML ist, dass jeder Nutzer von XIML kompatibler Software eine Lizenz benötigt. Diese ist zwar kostenlos erhältlich, jedoch muss man sich auf der Webseite des XIML Konsortiums dafür registrieren. 2 World Wide Web Consortium

10 3.4 Vergleich und Übersicht Dieser Abschnitt soll noch einmal die Betrachtungen gegenüberstellen. Dabei wird die Ausdrucksstärke der Sprache betrachtet, also wie gut sich Sachverhalte mit der Sprache modellieren lassen. Wichtig ist auch die Aktualität der Sprache, da es gerade in den letzten Jahren einen rasanten Wandel im Bereich der Geräte und auch Betriebssysteme gegeben hat. Zur Aktualität zählen Veröffentlichungen, die sich mit der jeweiligen Sprache auseinandersetzen und die Pflege der offiziellen Webseiten, da diese aufzeigt, ob der Ansatz noch weiter verfolgt wird. Eine gute Unterstützung durch Tools ist wichtig, um die Sprachen in der Praxis einsetzen zu können. Ohne Tools ist nur ein theoretischer Ansatz vorhanden, der weitere Entwicklung benötigt, um überhaupt umsetzbar zu sein. Die Erweiterbarkeit spielt in so fern eine Rolle, als das dies wichtig für zukünftig neu entwickelte Plattformen ist. Auch diese sollten idealerweise von einer Beschreibungssprache unterstützt werden können. Zuletzt ist noch interessant, ob die Sprachen vollkommen frei eingesetzt werden können, oder ob eine Lizensierung nötig ist. Folgende Tabelle stellt die betrachteten Sprachen noch ein Mal vergleichend dar: Tabelle 1. Ausdrucksstärke Aktualität Toolunterstüz Erwei- Lizenz ung terbarkeit UIML nicht benötigt UsiXML nicht benötigt XIML kostenlos erhältlich auf [11] 4 Zusammenfassung und Ausblick In der vorliegenden Arbeit wurden zunächst die sich aus der zunehmenden Gerätevielfalt ergebenden Probleme für die Softwareentwicklung dargelegt. Es wurde darauf eingegangen, dass plattformübergreifend konsistente Oberflächen für den Nutzer geschaffen werden müssen, ohne dabei jedoch teure Individualentwicklung für jedes einzelne Gerät vorzunehmen. Anschließend wurden zunächst drei ausgewählte Technologien vorgestellt, die sich mittels abstrakter XML-basierter Beschreibungssprachen der Problematik annähern und Ansätze zu deren Lösung bieten. Anschließend wurden diese Technologien Bewertet und vergleichend gegenübergestellt. Alle drei Sprachen befinden sich weiter-

11 hin in der Entwicklung und Evaluation durch Anwender beziehungsweise auf dem Weg zu einer Standardisierung. Die Relevanz des vorgestellten Themas lässt sich auch dadurch erahnen, dass neben der vorgestellten Auswahl eine stetig wachsende Anzahl weiterer Beschreibungssprachen existiert, von denen sich in der Praxis bisher jedoch noch keine wirklich durchsetzen konnte. Aus der Vielzahl an Entwicklungen die bisher existieren, lässt sich jedoch schließen, dass ein hoher Bedarf besteht, die Softwareentwicklung bzw. Methoden im Bereich Multiplattform weiter voranzutreiben. Es stellt sich die Frage, ob es Grundsätzlich möglich ist, eine solche abstrakte und plattformunabhängige Sprache überhaupt so zu entwickeln, dass sie in der Praxis so einsetzbar ist, von automatischen Transformationen profitieren zu können. Unabhängig davon, ob eine solche Transformation möglich ist, wird die Entwicklung von Interaktionspattern und abstrakten Beschreibungssprachen für diese Pattern auch weiter ein wichtiges Forschungsziel in der Informatik bleiben dem es nachzugehen gilt. Literatur 1. Abrams M, Phanouriou C, Batongbacal AL et al. (1999) UIML: an applianceindependent XML user interface language. Computer Networks 31(11-16): Geisler S, Heers R, Wolter S (2012) Analyse von Modellierungssprachen für Infotainmentsysteme. In: Reiterer H, Deussen O (eds) Mensch & Computer 2012 Workshopband. Oldenbourg Verlag, München, pp Hammond K, Gil Y, Leake D et al. (2002) XIML. In: Proceedings of the 7th international conference on Intelligent user interfaces - IUI '02. ACM Press, p Marucci L, Paternò F (2002) Supporting Adaptivity to Heterogeneous Platforms through User Models. In: Paternò F (ed) Human Computer Interaction with Mobile Devices, vol Springer Berlin / Heidelberg, pp Paternò F, Santoro C (1999) One Model, Many Interfaces. In: Proc. ACM 4th International Conference on Intelligent User Interfaces. ACM Press, pp Seffah A, Forbrig P, Javahery H (2004) Multi-devices Multiple user interfaces: development models and research opportunities. Journal of Systems and Software 73(2): Souchon N, Vanderdonckt J (2003) A review of XML-compliant user interface description languages. Lecture notes in computer science 2844:

12 8. Vanderdonckt J, Limbourg Q, Michotte B et al. (2004) UsiXML: a User Interface Description Language for Specifying Multimodal User Interfaces. In: Proceedings of W3C Workshop on Multimodal Interaction WMI 2004, Sophia Antipolis, pp OASIS https://www.oasis-open.org/committees/download.php/28457/uiml-4.0- cd01.pdf 10. Luyten K, Coninx K (2005) UIML.Net: an Open UIML Renderer for the.net Framework. In: Jacob RJ, Limbourg Q, Vanderdonckt J (eds) Computer-Aided Design of User Interfaces IV. Springer-Verlag, Berlin/Heidelberg, pp XIML 12. Calvary G, Coutaz J, Thevenin D et al. (2003) A Unifying Reference Framework for multi-target user interfaces. Interacting with Computers 15(3):

Präsentation Von Laura Baake und Janina Schwemer

Präsentation Von Laura Baake und Janina Schwemer Präsentation Von Laura Baake und Janina Schwemer Gliederung Einleitung Verschiedene Betriebssysteme Was ist ein Framework? App-Entwicklung App-Arten Möglichkeiten und Einschränkungen der App-Entwicklung

Mehr

Java Applet Alternativen

Java Applet Alternativen White Paper Java Applet Alternativen Version 1.0, 21.01.2014 Tobias Kellner tobias.kellner@egiz.gv.at Zusammenfassung: Aufgrund diverser Meldungen über Sicherheitslücken in Java haben in letzter Zeit Browser-Hersteller

Mehr

Architekturen mobiler Multi Plattform Apps

Architekturen mobiler Multi Plattform Apps Architekturen mobiler Multi Plattform Apps Wolfgang Maison & Felix Willnecker 06. Dezember 2011 1 Warum Multi- Plattform- Architekturen? Markt. Apps für Smartphones gehören zum Standardinventar jeder guten

Mehr

Vortrag von: Ilias Agorakis & Robert Roginer

Vortrag von: Ilias Agorakis & Robert Roginer MDA Model Driven Architecture Vortrag von: Ilias Agorakis & Robert Roginer Anwendungen der SWT - WS 08/09 Inhalt Was ist MDA? Object Management Group (OMG) Ziele Konzepte der MDA Werkzeuge Vor- und Nachteile

Mehr

User Interface Design und Icon Library

User Interface Design und Icon Library Clemens Grossmann - TouchingCode GmbH User Interface Design und Icon Library www.apmato.com Auftraggeber TouchingCode GmbH Wir sind spezialisiert auf die Entwicklung von Smartphone Apps und die dazugehörigen

Mehr

Metadata Service Respository (MDS) - Sehen, lernen, verstehen!

Metadata Service Respository (MDS) - Sehen, lernen, verstehen! Metadata Service Respository (MDS) - Sehen, lernen, verstehen! Carsten Wiesbaum esentri AG Schlüsselworte Metadata Service Repository, MDS, Oracle Fusion Middleware Einleitung Früher oder später wird jeder

Mehr

Eine App, viele Plattformen

Eine App, viele Plattformen Eine App, viele Plattformen Anwendungsentwicklung für Mobile Heiko Lewandowski 23.04.2013 EINLEITUNG Festlegung App-Strategie: Welche Ziele möchte ich erreichen? Die Vielzahl der Plattformen und Geräte(hersteller)

Mehr

Java und XML 2. Java und XML

Java und XML 2. Java und XML Technische Universität Ilmenau Fakultät für Informatik und Automatisierung Institut für Praktische Informatik und Medieninformatik Fachgebiet Telematik Java und XML Hauptseminar Telematik WS 2002/2003

Mehr

DCCS Lotusphere Nachlese 2012 Was sind XPages? Mobile Features für XPages

DCCS Lotusphere Nachlese 2012 Was sind XPages? Mobile Features für XPages Wir automatisieren und optimieren Ihre Geschäftsprozesse DCCS Lotusphere Nachlese 2012 Was sind XPages? Mobile Features für XPages Thomas Brandstätter 06.03.2012 www.dccs.at Agenda Theorie Was sind XPages

Mehr

Ein mobiler Electronic Program Guide

Ein mobiler Electronic Program Guide Whitepaper Telekommunikation Ein mobiler Electronic Program Guide Ein iphone Prototyp auf Basis von Web-Technologien 2011 SYRACOM AG 1 Einleitung Apps Anwendungen für mobile Geräte sind derzeit in aller

Mehr

Erfolg ist programmierbar.

Erfolg ist programmierbar. 4578954569774981234656895856512457895456977498 3465689585651245789545697749812346568958561245 9545697749812346568958565124578954569774981234 6895856512457895456977498123465689585612457895 6977498123465689585651245789545697749812346568

Mehr

Ein mobiler Electronic Program Guide für Android

Ein mobiler Electronic Program Guide für Android Whitepaper Telekommunikation Ein mobiler Electronic Program Guide für Android Prototyp für Android Apps 2011 SYRACOM AG 1 Einleitung Apps Anwendungen für mobile Geräte sind derzeit in aller Munde. Durch

Mehr

Embedded Computing Conference 2014 Embedded UI Qt5

Embedded Computing Conference 2014 Embedded UI Qt5 Embedded Computing Conference 2014 Embedded UI Qt5 2 Embedded User Interfaces in the Smartphone Age The Power of Qt5 and the QNX OS Qt Vorstellung 3 Qt ( cute ) Hat eine lange Geschichte (Beginn der Entwicklung:

Mehr

Christian Kurz SWT Projekt WS 07/08

Christian Kurz SWT Projekt WS 07/08 Christian Kurz SWT Projekt WS 07/08 1. Allgemeine Aspekte der generativen GUI- Entwicklung 2. Entwicklung mit Hilfe von GUI-Designern 3. Entwicklung mit Hilfe deklarativer GUI- Sprachen 4. Modellgetriebene

Mehr

Cross-Platform Apps mit HTML5/JS/CSS/PhoneGap

Cross-Platform Apps mit HTML5/JS/CSS/PhoneGap Cross-Platform Apps mit HTML5/JS/CSS/PhoneGap Proseminar Objektorientiertes Programmieren mit.net und C# Florian Schulz Institut für Informatik Software & Systems Engineering Einführung Was hat Cross-Plattform

Mehr

Graphischer Editor für die technologieunabhängige User Interface Modellierung

Graphischer Editor für die technologieunabhängige User Interface Modellierung Universität Augsburg Lehrstuhl für Softwaretechnik und Programmiersprachen Prof. Dr. Bernhard Bauer Praktikum Modellgetriebene Softwareentwicklung SS 2008 Graphischer Editor für die technologieunabhängige

Mehr

Think Mobile Effiziente Entwicklungsstrategien im GIS. Kai Hoffmann, BTC AG

Think Mobile Effiziente Entwicklungsstrategien im GIS. Kai Hoffmann, BTC AG Think Mobile Effiziente Entwicklungsstrategien im GIS Kai Hoffmann, BTC AG Mobile Endgeräte Was ist zu beachten? In dieser Betrachtung Smartphone Tablet Unterschiedliche Hardwareausstattung Bildschirmgröße

Mehr

HTML5 und das Framework jquery Mobile

HTML5 und das Framework jquery Mobile HTML5 und das Framework jquery Mobile Seminarvortrag Naeema Anees Betreuer: Prof. Ulrich Stegelmann Dipl.-Inform. Axel Blum Einleitung Vielfalt an mobilen Geräten Verschiedene Betriebssysteme Verschiedene

Mehr

Kontextbasierte Auflösung von Mehrdeutigkeiten beim iterativen Entwurf von Benutzungsschnittstellen

Kontextbasierte Auflösung von Mehrdeutigkeiten beim iterativen Entwurf von Benutzungsschnittstellen Fakultät Elektrotechnik und Informationstechnik Institut für Automatisierungstechnik Kontextbasierte Auflösung von Mehrdeutigkeiten beim iterativen Entwurf von Benutzungsschnittstellen MoBe-Workshop @

Mehr

Drucken, GUI, Design Pattern,... PDF, Usability, Observer Pattern, MVC

Drucken, GUI, Design Pattern,... PDF, Usability, Observer Pattern, MVC Drucken, GUI, Design Pattern,... PDF, Usability, Observer Pattern, MVC Progwerkstatt Philipp Güttler, Christoph Schied, Nicolai Waniek 01.12.2008 Seite 2 Drucken Drucken ist eigentlich ganz einfach...

Mehr

Whitepaper Industrie 4.0 - Interaktion und Kommunikation mit Webstandards und OPC UA

Whitepaper Industrie 4.0 - Interaktion und Kommunikation mit Webstandards und OPC UA Whitepaper Industrie 4.0 - Interaktion und Kommunikation mit Webstandards und OPC UA March, 2014 2 Einleitung Der Erfolg von Industrie 4.0 wird maßgeblich dadurch bestimmt werden, auf welche gemeinsame

Mehr

Seminarbericht Rechnernetze XML Web Services Schnittstelle zwischen den Welten.NET und Java

Seminarbericht Rechnernetze XML Web Services Schnittstelle zwischen den Welten.NET und Java Seminarbericht Rechnernetze XML Web Services Schnittstelle zwischen den Welten.NET und Java von Christian Brand Kennnummer: 09376 November 2005 Abkürzungen Abkürzungen API - Application Programming Interface

Mehr

J.6 Programmierung eingebetteter Systeme

J.6 Programmierung eingebetteter Systeme Vorteile von C in eingebetteten Systemen: leichter Zugriff auf die Hardware gute Kontrolle über die verwendeten Ressourcen (Speicher, CPU) Probleme mit C: stark eingeschränkte Laufzeitüberprüfungen ISO

Mehr

Einführung in modellgetriebene Softwareentwicklung. 24. Oktober 2012

Einführung in modellgetriebene Softwareentwicklung. 24. Oktober 2012 Einführung in modellgetriebene Softwareentwicklung 24. Oktober 2012 Überblick Was sind die Grundprinzipien der modellgetriebenen Softwareentwicklung? Entwicklung einer MDD-Infrastruktur Modellgetriebene

Mehr

Musterlösung zur Vorlesung Modellbasierte Softwareentwicklung Wintersemester 2014/2015 Übungsblatt 9

Musterlösung zur Vorlesung Modellbasierte Softwareentwicklung Wintersemester 2014/2015 Übungsblatt 9 Prof. Dr. Wilhelm Schäfer Paderborn, 15. Dezember 2014 Christian Brenner Tristan Wittgen Musterlösung zur Vorlesung Modellbasierte Softwareentwicklung Wintersemester 2014/2015 Übungsblatt 9 Aufgabe 1 Codegenerierung

Mehr

Erstinstallation und Verwendung der Software Citrix GoToMeeting für Organisatoren/-innen von virtuellen Besprechungen

Erstinstallation und Verwendung der Software Citrix GoToMeeting für Organisatoren/-innen von virtuellen Besprechungen Erstinstallation und Verwendung der Software Citrix GoToMeeting für Organisatoren/-innen von virtuellen Besprechungen 1 Inhaltsverzeichnis 3 1. Voraussetzungen für die Durchführung von virtuellen Besprechungen

Mehr

Einführung in die Cross-Plattform Entwicklung Das Intel XDK

Einführung in die Cross-Plattform Entwicklung Das Intel XDK Einführung in die Cross-Plattform Entwicklung Das Intel XDK Einführung Dieses Hands-on-Lab (HOL) macht den Leser mit dem Intel XDK vertraut. Es wird Schritt für Schritt die erste eigene Hybrid-App entwickelt

Mehr

Sind Prozessmanagement-Systeme auch für eingebettete Systeme einsetzbar?

Sind Prozessmanagement-Systeme auch für eingebettete Systeme einsetzbar? Sind Prozessmanagement-Systeme auch eingebettete Systeme einsetzbar? 12. Symposium Maritime Elektrotechnik, Elektronik und Informationstechnik, 8.-12. Oktober 2007 Rostock, Deutschland Rostock, Deutschland

Mehr

TechCommToGo (DE) conbody section title TechCommToGo - so einfach wie Kaffee machen. / title / section. section p image / p

TechCommToGo (DE) conbody section title TechCommToGo - so einfach wie Kaffee machen. / title / section. section p image / p (DE) (DE) fm-ditafile concept title (DE) / title title / title conbody section title - so einfach wie Kaffee machen / title / section section p image / p p Immer mehr Unternehmen sind bestrebt Technische

Mehr

Systemdenken und Gestaltungsmethodik System-Modellierung

Systemdenken und Gestaltungsmethodik System-Modellierung Systemdenken und Gestaltungsmethodik System-Modellierung Prof. Dr.-Ing. Stefan Brunthaler TFH Wildau 2008ff Master Telematik Ausgangsbasis Es liegt ein kosten-nutzen-optimales Lösungskonzept vor. Die Architektur

Mehr

Modellgetriebene Entwicklungsprozesse in der Praxis - eine Bestandsaufnahme. Tillmann Schall, anaptecs GmbH

Modellgetriebene Entwicklungsprozesse in der Praxis - eine Bestandsaufnahme. Tillmann Schall, anaptecs GmbH Modellgetriebene Entwicklungsprozesse in der Praxis - eine Bestandsaufnahme Tillmann Schall, anaptecs GmbH : Agenda Grundlagen modellgetriebener Entwicklungsprozesse Schritte zur Einführung Erfahrungen

Mehr

Datenhaltung für Android. Model First

Datenhaltung für Android. Model First Datenhaltung für Android Model First Frederik Götz, Johannes Tysiak 26.05.2011 Unser Ziel! 26.05.2011 Datenhaltung in Android - Model First» Frederik Götz, Johannes Tysiak 2 Agenda Android Quickstart Datenhaltung

Mehr

Webdesign Grundlagen. Michael Kraft, M.A. WS 2012/2013 hawk@herrkraft.de

Webdesign Grundlagen. Michael Kraft, M.A. WS 2012/2013 hawk@herrkraft.de Webdesign Grundlagen Michael Kraft, M.A. WS 2012/2013 hawk@herrkraft.de Bürokratie Termine & Kursliste & http://hawk.herrkraft.de Wer bin ich? michael kraft ba ma 2006 2012 hawk tutor interaction digital

Mehr

MOBILE ENTERPRISE APPLICATION PLATFORM (MEAP)

MOBILE ENTERPRISE APPLICATION PLATFORM (MEAP) MOBILE ENTERPRISE APPLICATION PLATFORM (MEAP) Oliver Steinhauer.mobile PROFI Mobile Business Agenda MOBILE ENTERPRISE APPLICATION PLATFORM AGENDA 01 Mobile Enterprise Application Platform 02 PROFI News

Mehr

Ein Erfahrungsbericht beim Einsatz von generierenden Ansätzen im Vergleich zu generischen Lösungen

Ein Erfahrungsbericht beim Einsatz von generierenden Ansätzen im Vergleich zu generischen Lösungen Ein Erfahrungsbericht beim Einsatz von generierenden Ansätzen im Vergleich zu generischen Lösungen Tom Krauß Agenda Begriffsdefinition Verfahren Praktische Beispiele Vergleich und Bewertung Begriffsklärung

Mehr

PFlow-Editor Entwicklung und Implementierung eines Modellierungswerkzeugs für ein Peer-to-Peer Production Workflow Management System

PFlow-Editor Entwicklung und Implementierung eines Modellierungswerkzeugs für ein Peer-to-Peer Production Workflow Management System PFlow-Editor Entwicklung und Implementierung eines Modellierungswerkzeugs für ein Peer-to-Peer Production Workflow Management System Fortgeschrittenenpraktikum bei Prof. Dr. Martin Wirsing vorgelegt von:

Mehr

Grundlagen. Migration von Benutzeroberflächen

Grundlagen. Migration von Benutzeroberflächen Von Anne Schlitter Grundlagen Dynamic content delivery nach DITA Migration von Benutzeroberflächen Aktueller Stand/Forschungsberichte h mobile Geräte Anwendung, Video, Player PC Bilder, Fernseher Beachtung

Mehr

Firefox Add-ons. Präsentation in WAP WS09/10 von Christoph ASCHBERGER, Andreas BERTOLIN, Robert MUTTER und Yunzhou XU

Firefox Add-ons. Präsentation in WAP WS09/10 von Christoph ASCHBERGER, Andreas BERTOLIN, Robert MUTTER und Yunzhou XU Firefox Add-ons Präsentation in WAP WS09/10 von Christoph ASCHBERGER, Andreas BERTOLIN, Robert MUTTER und Yunzhou XU Agenda Technisches Überblick XUL JavaScript CSS XPI-Pakete Einreichen bei Mozilla Sicherheitsüberlegungen

Mehr

MOBILE ENTERPRISE APPLICATION PLATFORM (MEAP)

MOBILE ENTERPRISE APPLICATION PLATFORM (MEAP) MOBILE ENTERPRISE APPLICATION PLATFORM (MEAP) Oliver Steinhauer Markus Urban.mobile PROFI Mobile Business Agenda MOBILE ENTERPRISE APPLICATION PLATFORM AGENDA 01 Mobile Enterprise Application Platform

Mehr

Inhalt. Motivation Techniken des MDE. Fallbeispiele

Inhalt. Motivation Techniken des MDE. Fallbeispiele ISE-Seminar 2012 Inhalt Motivation Techniken des MDE Computer Aided Software Engineering (CASE) Domain-Specific-Languages (DSL) Model Driven Architecture (MDA) Fallbeispiele Motivation Automatische Codegenerierung

Mehr

GUI-Entwicklung 2: Windows Presentation Foundation

GUI-Entwicklung 2: Windows Presentation Foundation GUI-Entwicklung 2: Windows Presentation Foundation Proseminar Objektorientiertes Programmieren mit.net und C# Sandra Müller Institut für Informatik Software & Systems Engineering Agenda 1. Die WPF 2. Einführung

Mehr

TM1 mobile intelligence

TM1 mobile intelligence TM1 mobile intelligence TM1mobile ist eine hochportable, mobile Plattform State of the Art, realisiert als Mobile BI-Plug-In für IBM Cognos TM1 und konzipiert als Framework für die Realisierung anspruchsvoller

Mehr

Proseminar: Website-Management-Systeme

Proseminar: Website-Management-Systeme Proseminar: Website-Management-Systeme Thema: Web: Apache/Roxen von Oliver Roeschke email: o_roesch@informatik.uni-kl.de Gliederung: 1.) kurze Einleitung 2.) Begriffsklärung 3.) Was ist ein Web? 4.) das

Mehr

Java TV. Seminar Medientechnik. Kristin Doppler 23.06.2003. Übersicht. Einleitung Umgebungen Java TV API - Kategorien. Service- und Selektions-APIs

Java TV. Seminar Medientechnik. Kristin Doppler 23.06.2003. Übersicht. Einleitung Umgebungen Java TV API - Kategorien. Service- und Selektions-APIs Java TV Seminar Medientechnik 23.06.2003 Übersicht Einleitung Umgebungen Java TV API - Kategorien Service- und Selektions-APIs Definitionen Packages Service Selection API Application Lifecycle APIs (Xlets)

Mehr

Einführung in die Cross-Plattform Entwicklung Responsive Webdesign mit dem Intel XDK

Einführung in die Cross-Plattform Entwicklung Responsive Webdesign mit dem Intel XDK Einführung in die Cross-Plattform Entwicklung Responsive Webdesign mit dem Intel XDK Einführung Dieses Hands-on-Lab (HOL) macht den Leser mit dem Intel XDK und dem Responsive Webdesign vertraut. Es wird

Mehr

Das Open Source Content Management System

Das Open Source Content Management System Das Open Source Content Management System Erweiterbarkeit und Individualisierung visions-marketing Unternehmensberatung Alexander Winkler Postfach 950180 81517 München Tel.+Fax: 089 / 38 90 06 53 Mobil.:

Mehr

Was ist EMF? Wie wird EMF eingesetzt? Was ist ecore? Das Generatormodell Fazit

Was ist EMF? Wie wird EMF eingesetzt? Was ist ecore? Das Generatormodell Fazit Was ist EMF? Wie wird EMF eingesetzt? Was ist ecore? Das Generatormodell Fazit EMF ist ein eigenständiges Eclipse-Projekt (Eclipse Modeling Framework Project) EMF ist ein Modellierungsframework und Tool

Mehr

GRAFISCHE BENUTZERSCHNITTSTELLEN

GRAFISCHE BENUTZERSCHNITTSTELLEN Vorlesung 4.4 GRAFISCHE BENUTZERSCHNITTSTELLEN Dr. Philip Mayer # 1 GUIs Grafische Benutzerschnittstellen (GUIs, Graphical User Interfaces) bieten dem Benutzer Zugriff auf ein Anwendungssystem GUIs sind

Mehr

Workshop I. Technische Differenzierung mobiler Kommunikationslösungen am Beispiel NPO/NGO Kommunikation. 7. Juni 2011

Workshop I. Technische Differenzierung mobiler Kommunikationslösungen am Beispiel NPO/NGO Kommunikation. 7. Juni 2011 Workshop I Technische Differenzierung mobiler Kommunikationslösungen am Beispiel NPO/NGO Kommunikation 7. Juni 2011 Übersicht è Native Apps è Web-Apps è Mobile Websites è Responsive Design Mobile Kommunikation

Mehr

Sind Ihre Landing Pages schon fit für die Multi-Screen-Welt? digitalmobil GmbH & Co. KG - Bayerstr. 16a - 80335 München

Sind Ihre Landing Pages schon fit für die Multi-Screen-Welt? digitalmobil GmbH & Co. KG - Bayerstr. 16a - 80335 München Sind Ihre Landing Pages schon fit für die Multi-Screen-Welt? digitalmobil GmbH & Co. KG - Bayerstr. 16a - 80335 München Landing Pages sind Ihre Kampagnenheimat 1 Kampagne Fokus Aktion, Produkt oder Dienstleistung

Mehr

@inproceedings{w2005kml, author = {Thomas Weise}, title = {Entwicklung eines WYSIWYG Editors f{\"{u}}r das Erstellen von Lehrmaterial im XML Format},

@inproceedings{w2005kml, author = {Thomas Weise}, title = {Entwicklung eines WYSIWYG Editors f{\{u}}r das Erstellen von Lehrmaterial im XML Format}, @inproceedings{w2005kml, author = {Thomas Weise}, title = {Entwicklung eines WYSIWYG Editors f{\"{u}}r das Erstellen von Lehrmaterial im XML Format}, booktitle = {Proceedings of Informatiktage 2005}, series

Mehr

InfoPoint vom 9. November 2011

InfoPoint vom 9. November 2011 InfoPoint vom 9. November 2011 Was ist Joomla? Theorie Installation Extensions Administration Demo Joomla ist ein modulares content management system (CMS) Es ermöglicht eine Website zu erstellen und online

Mehr

Einführung in die Cross-Plattform Entwicklung Das Intel App Framework

Einführung in die Cross-Plattform Entwicklung Das Intel App Framework Einführung in die Cross-Plattform Entwicklung Das Intel App Framework Einführung Dieses Hands-on-Lab (HOL) macht den Leser mit dem Intel App Framework vom Intel XDK vertraut. Es wird Schritt für Schritt

Mehr

Bei Truecrypt handelt es sich um ein Open-Source Verschlüsselungs-Programm, das unter folgendem Link für verschiedene Plattformen verfügbar ist:

Bei Truecrypt handelt es sich um ein Open-Source Verschlüsselungs-Programm, das unter folgendem Link für verschiedene Plattformen verfügbar ist: Selbstdatenschutz Dropbox & Co. sicher nutzen "MEO - My Eyes Only" Um Unbefugten (inklusive dem Betreiber des Dienstes) die Einsicht in Dateien in Clouddiensten zu verwehren, sollte man diese verschlüsseln.

Mehr

Web Dynpro / FloorPlanManager / NWBC

Web Dynpro / FloorPlanManager / NWBC Web Dynpro / FloorPlanManager / NWBC Bernd Zehentner TECHNISCHE SAP BERATUNG bze@snapconsult.com snapconsult.com Norbert Prager TECHNISCHE SAP BERATUNG npr@snapconsult.com snapconsult.com 16.06.2014 SNAP

Mehr

Technische Dokumentation

Technische Dokumentation Technische Dokumentation der Ontologie Wärmedämmung des Projekts EcoNavi Erstellt für: Bremer Umweltberatung Hamburg, Juli 2005-1 - Inhaltsverzeichnis Einleitung... 2 Aufbau einer Ontologie... 3 Ontologieeditor

Mehr

Glossar. SVG-Grafiken in Bitmap-Grafikformate. Anweisung Eine Anweisung ist eine Folge aus Schlüsselwörtern, Variablen, Objekten,

Glossar. SVG-Grafiken in Bitmap-Grafikformate. Anweisung Eine Anweisung ist eine Folge aus Schlüsselwörtern, Variablen, Objekten, Glossar Anweisung Eine Anweisung ist eine Folge aus Schlüsselwörtern, Variablen, Objekten, Methoden und/oder Eigenschaften, die eine bestimmte Berechnung ausführt, eine Eigenschaft ändert oder eine Methode

Mehr

Mobile Kartenanwendungen im Web oder als App?

Mobile Kartenanwendungen im Web oder als App? Mobile Kartenanwendungen im Web oder als App? Agenda Anforderungen an eine mobile Kartenanwendung Warum mobile Anwendungen? Mobil ist nicht genug! Knackpunkte bei der Entwicklung mobiler Kartenanwendungen

Mehr

DOK. ART GD1. Citrix Portal

DOK. ART GD1. Citrix Portal Status Vorname Name Funktion Erstellt: Datum DD-MMM-YYYY Unterschrift Handwritten signature or electronic signature (time (CET) and name) 1 Zweck Dieses Dokument beschreibt wie das auf einem beliebigem

Mehr

Mobile Webapps in kürzester Zeit: APEX mobile!

Mobile Webapps in kürzester Zeit: APEX mobile! Mobile Webapps in kürzester Zeit: APEX mobile! Carsten Czarski ORACLE Deutschland B.V. & Co KG Riesstr. 25, 80992 München Schlüsselworte APEX, Mobile Anwendungen, jquery Mobile Einleitung Anwendungen für

Mehr

TEAMWORK App. Erste Schritte

TEAMWORK App. Erste Schritte TEAMWORK App Erste Schritte 1. Die TEAMWORK App Mit der einfachen und intuitiven Oberfläche haben Sie nicht nur Zugriff auf alle Dateien, die Sie über Ihren PC zu TEAMWORK hochgeladen haben, Sie können

Mehr

CONTEXT IS KING AND DEVICE IS QUEEN! IN DER MOBILEN MARKENKOMMUNIKATION. 21TORR Interactive GmbH

CONTEXT IS KING AND DEVICE IS QUEEN! IN DER MOBILEN MARKENKOMMUNIKATION. 21TORR Interactive GmbH CONTEXT IS KING AND DEVICE IS QUEEN! IN DER MOBILEN MARKENKOMMUNIKATION Oliver Zils, Consultant Digital Branding Timo Günthner, Technical Consultant Mobile 21TORR Interactive GmbH Mobile Markenkommunikation

Mehr

Dokumentation von Software

Dokumentation von Software Dokumentation von Software Darwin Information Typing Architecture DITA InfoPoint 12.12.2007 1 Inhalt DITA Namensgebung Geschichte DITA Open Toolkit Zielsetzung Architektur, Elemente Vor- und Nachteile

Mehr

Aktuelles zu ECLISO ICN/RC, Mobile und Cloud Live Vorstellung

Aktuelles zu ECLISO ICN/RC, Mobile und Cloud Live Vorstellung Aktuelles zu ECLISO ICN/RC, Mobile und Cloud Live Vorstellung Viessmann Group, Allendorf 26. November 2015 Carlsen, Andreas, Abteilungsleiter ECM R&D ECLISO Anwendertag 2015 26.November 2015 09:50 10:00

Mehr

Model Driven Architecture (MDA)

Model Driven Architecture (MDA) Model Driven Architecture (MDA) Vortrag im Fach Software Engineering II BA Mannheim / Fachrichtung Angewandte Informatik Torsten Hopp Gliederung Einleitung Motivation Grundzüge der MDA Ziele & Potenziale

Mehr

Erfolg ist programmierbar.

Erfolg ist programmierbar. 45789545697749812346568958565124578954569774981 46568958565124578954569774981234656895856124578 45697749812346568958565124578954569774981234656 58565124578954569774981234656895856124578954569 49812346568958565124578954569774981234656895856

Mehr

Semantic Web Services

Semantic Web Services Semantic Web Services Daniel Fischer TU Chemnitz - WS 2011/12 1 Gliederung (1) Web Services (2) Semantic Web Services: Motivation (3) Ontologien (4) Technologien 1. WSDL 2. SA-WSDL 3. WSMF / WSMO 4. OWL-S

Mehr

PLATTFORMÜBERGREIFENDE ENTWICKLUNG VON APPS

PLATTFORMÜBERGREIFENDE ENTWICKLUNG VON APPS PLATTFORMÜBERGREIFENDE ENTWICKLUNG VON APPS DIPL.-WIRT.INFORM. HENNING HEITKÖTTER PRAKTISCHE INFORMATIK, UNIVERSITÄT MÜNSTER 1 GEGENÜBERSTELLUNG NATIVE VS. PLATTFORMÜBERGREIFENDE ENTWICKLUNG 2 ENTWICKLUNGSANSÄTZE

Mehr

Benutzeroberflächen. Java Teil 4

Benutzeroberflächen. Java Teil 4 Benutzeroberflächen Java Teil 4 Einleitung Eine grafische Benutzeroberfläche (Graphical User Interface) ermöglicht dem Benutzer die Interaktion mit dem Computer über grafische Symbole. Die GUI haben in

Mehr

Mobile Analytics mit Oracle BI - was steckt in den Apps?

Mobile Analytics mit Oracle BI - was steckt in den Apps? Mobile Analytics mit Oracle BI - was steckt in den Apps? Schlüsselworte Oracle BI, OBIEE, Mobile, Analytics Einleitung Gerd Aiglstorfer G.A. itbs GmbH Eching Oracle erweiterte im Laufe dieses Jahres das

Mehr

keimeno CMS Handbuch Stand 06/2012

keimeno CMS Handbuch Stand 06/2012 keimeno CMS Handbuch Stand 06/2012 INHALT Willkommen... 2 keimeno... 3 Der Aufbau... 3 Einrichten... 3 Themen anlegen und bearbeiten... 3 Kategorien... 7 Kategorien anlegen... 7 Kategorien Bearbeiten...

Mehr

Hochschul-App Uni Hohhenheim Case Study

Hochschul-App Uni Hohhenheim Case Study Hochschul-App Uni Hohhenheim Case Study Als Premium Partner von ILIAS unterstützen wir die Weiterentwicklung des Open Source Produktes und stellen so eine langfristig hohe Qualität des Systems sicher.

Mehr

UI Design Patterns. Kapitel: 8. Konzeption Style Guides UI Design Patterns Genres

UI Design Patterns. Kapitel: 8. Konzeption Style Guides UI Design Patterns Genres UI Design Patterns 19 Entwurfsmuster (Design Patterns) Konzept geht zurück auf den Architekten Christopher Alexander (Notes on the synthesis of form, 1964) Systematische Sammlung wiederkehrende Muster

Mehr

UA03 Interaktive Entscheidungsbäume

UA03 Interaktive Entscheidungsbäume UA03 Interaktive Entscheidungsbäume Stuttgart, tekom Jahresstagung 2015 Christian Mäder, Empolis Information Management GmbH Karsten Schrempp, PANTOPIX GmbH & Co. KG Workshop Ziele Wir zeigen, was interaktive

Mehr

XML Extensible Markup Language

XML Extensible Markup Language XML-Praxis XML Extensible Markup Language Jörn Clausen joern@techfak.uni-bielefeld.de Übersicht Woher? Wohin? Warum? Bestandteile von XML XML-Dokumente erstellen und bearbeiten XML-Praxis XML Extensible

Mehr

Model Driven Architecture

Model Driven Architecture { AKTUELLES SCHLAGWORT* / MODEL DRIVEN ARCHITECTURE Model Driven Architecture Martin Kempa Zoltán Ádám Mann Bei der Model Driven Architecture (MDA) bilden Modelle die zentralen Elemente des Softwareentwicklungsprozesses.

Mehr

Webservices. 1 Einführung 2 Verwendete Standards 3 Web Services mit Java 4 Zusammenfassung. Hauptseminar Internet Dienste

Webservices. 1 Einführung 2 Verwendete Standards 3 Web Services mit Java 4 Zusammenfassung. Hauptseminar Internet Dienste Hauptseminar Internet Dienste Sommersemester 2004 Boto Bako Webservices 1 Einführung 2 Verwendete Standards 3 Web Services mit Java 4 Zusammenfassung Was sind Web Services? Web Services sind angebotene

Mehr

INFOnline SZM Integration Guide Alternativlösung Messung hybrider APPs

INFOnline SZM Integration Guide Alternativlösung Messung hybrider APPs INFOnline SZM Mobile Applications INFOnline SZM Integration Guide Alternativlösung Messung hybrider APPs INFOnline GmbH Forum Bonn Nord Brühler Str. 9 53119 Bonn Tel.: +49 (0) 228 / 410 29-77 Fax: +49

Mehr

VL2: Softwareprojekt - Anforderungsanalyse. Inhalt. 1. Struktur eines Softwareprojektes

VL2: Softwareprojekt - Anforderungsanalyse. Inhalt. 1. Struktur eines Softwareprojektes Dozent: G.Döben-Henisch (Version vom 16.April 2005) PPmP VL2 VL2: Softwareprojekt - Anforderungsanalyse Inhalt 1. Struktur eines Softwareprojektes 2. Anforderungsanalyse 1. Struktur eines Softwareprojektes

Mehr

Factsheet. Einbau TOSC4. Version: 4 Letzte Änderung: 19.12.2013 Geändert von: Armin Schanitz

Factsheet. Einbau TOSC4. Version: 4 Letzte Änderung: 19.12.2013 Geändert von: Armin Schanitz Factsheet Einbau TOSC4 Version: 4 Letzte Änderung: 19.12.2013 Geändert von: Armin Schanitz Letzte Änderungen: - Mobile Version - Reverse Proxy - Hinweise Lightbox 0. Inhaltsverzeichnis 0. 1. 2. INHALTSVERZEICHNIS...

Mehr

Smartphone Entwicklung mit Android und Java

Smartphone Entwicklung mit Android und Java Smartphone Entwicklung mit Android und Java predic8 GmbH Moltkestr. 40 53173 Bonn Tel: (0228)5552576-0 www.predic8.de info@predic8.de Was ist Android Offene Plattform für mobile Geräte Software Kompletter

Mehr

Mobile Usability. Mobile Usablity Dr. Eric Fehse 25. September 2014 Folie 1

Mobile Usability. Mobile Usablity Dr. Eric Fehse 25. September 2014 Folie 1 Mobile Usability Mobile Usablity Dr. Eric Fehse 25. September 2014 Folie 1 Eric Fehse Lead Consultant Usability Engineering Studium der (kognitiven) Psychologie mit Nebenfach Informatik Denken, Lernen,

Mehr

Sind Cloud Apps der nächste Hype?

Sind Cloud Apps der nächste Hype? Java Forum Stuttgart 2012 Sind Cloud Apps der nächste Hype? Tillmann Schall Stuttgart, 5. Juli 2012 : Agenda Was sind Cloud Apps? Einordnung / Vergleich mit bestehenden Cloud Konzepten Live Demo Aufbau

Mehr

Immer mehr lebt mobil

Immer mehr lebt mobil Immer mehr lebt mobil mehr als 4.600.000.000 Mobilgeräte breite Verfügbarkeit neuer always-on und Apps Lifestyle 2 Trittsicher auf allen mobilen Pfaden mit HTML5 und jquery Mobile Mike Baird http://flickr.com/photos/mikebaird/482031103/

Mehr

CARL HANSER VERLAG. Erika Horn, Thomas Reinke. Softwarearchitektur und Softwarebauelemente Eine Einführung für Softwarearchitekten 3-446-21300-7

CARL HANSER VERLAG. Erika Horn, Thomas Reinke. Softwarearchitektur und Softwarebauelemente Eine Einführung für Softwarearchitekten 3-446-21300-7 CARL HANSER VERLAG Erika Horn, Thomas Reinke Softwarearchitektur und Softwarebauelemente Eine Einführung für Softwarearchitekten 3-446-21300-7 www.hanser.de Inhalt Vorwort...IX 1 Einleitung... 1 1.1 Software

Mehr

Testen von graphischen Benutzeroberflächen. 24. Juni 2015

Testen von graphischen Benutzeroberflächen. 24. Juni 2015 Testen von graphischen Benutzeroberflächen 24. Juni 2015 Überblick Motivation für das automatische Testen von graphischen Benutzeroberflächen Entwicklungsprinzipien für GUIs Capture / Replay Testmethode

Mehr

WAS IST IEDIT? WOZU BRAUCHE ICH IEDIT?

WAS IST IEDIT? WOZU BRAUCHE ICH IEDIT? IEDIT OVERVIEW WAS IST IEDIT? Mit dem Content Management System iedit kann Ihre Webseite effizient und einfach erstellt und bewirtschaftet werden. Unabhängig, Zukunftssicher und Erweiterbar! Nützen Sie

Mehr

Technologien für zeitgemässe Web- Projekte 2015-04-20, Guido Steenkamp

Technologien für zeitgemässe Web- Projekte 2015-04-20, Guido Steenkamp Technologien für zeitgemässe Web- Projekte 2015-04-20, Guido Steenkamp Kontinuierlicher Relaunch #OMG Permanenter Relaunch 2 Kontinuierlicher Relaunch Wie steht man das durch? 3 Kontinuierlicher Relaunch

Mehr

EoL-Testautomation 2.0. Technische Beschreibung. DI Hans-Peter Haberlandner. Blumatix GmbH

EoL-Testautomation 2.0. Technische Beschreibung. DI Hans-Peter Haberlandner. Blumatix GmbH EoL-Testautomation 2.0 Technische Beschreibung DI Hans-Peter Haberlandner Blumatix GmbH EoL-Testautomation 2.0 Technische Beschreibung Die Herausforderung Die Software spielt im Bereich der Testautomation

Mehr

Easy Mobile Homepage. Nützliche Tipps für die Nutzung der Software. 2011 Die Software ist urheberrechtlich geschützte Freeware - all rights reserved

Easy Mobile Homepage. Nützliche Tipps für die Nutzung der Software. 2011 Die Software ist urheberrechtlich geschützte Freeware - all rights reserved Easy Mobile Homepage Nützliche Tipps für die Nutzung der Software Danke für Ihr Interesse! Danke für Ihr Interesse an unserer neuen Software und wir freuen uns darüber, dass Sie die Tutorials angefordert

Mehr

Vorlesung Donnerstags, 10.00 bis 11.30 Uhr, HS12 Übung Dienstags, 14.00 bis 15.30 Uhr 4-5 ÜbungsbläMer (Programmieraufgaben)

Vorlesung Donnerstags, 10.00 bis 11.30 Uhr, HS12 Übung Dienstags, 14.00 bis 15.30 Uhr 4-5 ÜbungsbläMer (Programmieraufgaben) Komponenten Einführung Organisatorisches 2+1 SWS Vorlesung Donnerstags, 10.00 bis 11.30 Uhr, HS12 Übung Dienstags, 14.00 bis 15.30 Uhr 4-5 ÜbungsbläMer (Programmieraufgaben) Klausur 28. Februar 2013 Unterlagen

Mehr

Model Driven Development im Überblick

Model Driven Development im Überblick Model Driven Development im Überblick Arif Chughtai Diplom-Informatiker (FH) www.digicomp-academy, Seite 1 September 05 Inhalt Motivation Überblick MDA Kleines Beispiel Werkzeuge www.digicomp-academy,

Mehr

Unternehmensportfolio

Unternehmensportfolio Unternehmensportfolio Was wir machen: Cross Plattform Mobile Applications Beispiel ansehen Was wir machen: HTML5 & CSS3 basierte Web Applikationen Beispiel ansehen Was wir machen: Windows 8 & Windows Mobile

Mehr

Semantic Web Technologies I! Lehrveranstaltung im WS10/11! Dr. Andreas Harth! Dr. Sebastian Rudolph!

Semantic Web Technologies I! Lehrveranstaltung im WS10/11! Dr. Andreas Harth! Dr. Sebastian Rudolph! Semantic Web Technologies I! Lehrveranstaltung im WS10/11! Dr. Andreas Harth! Dr. Sebastian Rudolph! www.semantic-web-grundlagen.de Ontology Engineering! Dr. Sebastian Rudolph! Semantic Web Architecture

Mehr

Barrierefreies Webdesign

Barrierefreies Webdesign Fachbereich: Wirtschaftsingenieurwesen Autor: Oliver Strecke / 807064 Barrierefreies Webdesign Datum: 16.12.2005 Inhaltsverzeichnis II Inhaltsverzeichnis 1. Was bedeutet Barrierefreiheit?... 3 1.1. Zugänglichkeit

Mehr

3 Anwendungsarchitektur und Entwicklungsumgebung

3 Anwendungsarchitektur und Entwicklungsumgebung 21 3 Anwendungsarchitektur und Bei den Entwicklern von Web-basierten Dialogsystemen hat sich im Laufe der Zeit eine Vorgehensweise im Design von Anwendungen entwickelt, dies es ermöglicht, flexible Web-Dialoge

Mehr

Übungsaufgaben zur Vorlesung Modellbasierte Softwareentwicklung Wintersemester 2014/2015 Übungsblatt 8

Übungsaufgaben zur Vorlesung Modellbasierte Softwareentwicklung Wintersemester 2014/2015 Übungsblatt 8 Prof. Dr. Wilhelm Schäfer Paderborn, 8. Dezember 2014 Christian Brenner Tristan Wittgen Besprechung der Aufgaben: 15. - 18. Dezember 2014 Übungsaufgaben zur Vorlesung Modellbasierte Softwareentwicklung

Mehr

Visualisierung von Geodaten

Visualisierung von Geodaten Seminar: mobilegis Visualisierung von Geodaten Maria Selzer Agenda Einführung Datenformate Maps APIs Virtuelle Globen Zusammenfassung Einführung Visualisierung: graphische bzw. visuelle Darstellung von

Mehr

Responsive Design & ecommerce

Responsive Design & ecommerce Responsive Design & ecommerce Kassel, 15.02.2014 web n sale GmbH Jan Philipp Peter Was bisher geschah Was bisher geschah oder: Die mobile Evolution früher : - Lokale Nutzung - Zuhause oder im Büro - Wenige

Mehr

Ohne Technik kein Online-Journalismus

Ohne Technik kein Online-Journalismus Ohne Technik kein Online-Journalismus von Frank Niebisch, Redakteur für Technologie- und Medien-Themen ECONOMY.ONE AG - Verlagsgruppe Handelsblatt Online. f.niebisch@t-online.de 0173/2934640 Bochum, 15.05.2002

Mehr