Verteidigung Masterarbeit Evaluating the Use of a Web Browser to Unify GUI Development for IDE Plug-ins

Ähnliche Dokumente
Antrittsvortrag Masterarbeit Evaluation einer gemeinsamen Oberfläche für Saros/E und Saros/I mit Testframework

Verteilte Paarprogrammierung mit Eclipse

Ein mobiler Electronic Program Guide

Präsentation zur Vorstellung meiner Bachelor-Arbeit beim BSE- Seminar. Vortrag von Patrick Bitterling

Webseiten mit fragwürdigen Aufrufen von "spy & track" - Unternehmen

Java Applet Alternativen

VO Projektmanagement

Softwaretests in Visual Studio 2010 Ultimate Vergleich mit Java-Testwerkzeugen. Alexander Schunk Marcel Teuber Henry Trobisch

Presse-Information

GOOGLE CHROME 40. BROWSEREINSTELLUNGEN OPTIMIEREN. BMW FINANCIAL SERVICES. Google Chrome 40 Browsereinstellungen optimieren. 1

Worum geht es in diesem Projekt?

AbaWeb Treuhand. Hüsser Gmür + Partner AG 30. Oktober 2008

Informationen zum neuen Studmail häufige Fragen

Menü auf zwei Module verteilt (Joomla 3.4.0)

Herbstsemester cs106 Informatiklabor Teil 4: Partitionierung & Linux Installation. P.Huber@stud.unibas.ch

Vorstellung - "Personal Remote Desktop" für (fast) alle Hardwareplattformen und Betriebssysteme

Erweiterung AE WWS Lite Win: AES Security Verschlüsselung

Umsatz-Kosten-Treiber-Matrix Woodmark Consulting AG

ejgp Webseite Kurzeinführung

Software Engineering. Zur Architektur der Applikation Data Repository. Franz-Josef Elmer, Universität Basel, HS 2015

Was ist das Tekla Warehouse

ACDSee 10. ACDSee 10 Tutorials > Hinzufügen von SendPix-Diashows zu Websites und Blogs. Was ist ACDSee SendPix?

Aktualisierung des Internet-Browsers

Tag des Datenschutzes

Nach der Installation des FolderShare-Satellits wird Ihr persönliches FolderShare -Konto erstellt.

ERSTE SCHRITTE.

Mobile Angebote Strategie einer Verwaltung. Freie und Hansestadt Hamburg Dr. Ursula Dankert

Das Content-Management-System OpenCms im Vergleich mit TYPO3 und Joomla. Seminarvortrag von Wolfgang Neuß

Agentur für Technologie und Netzwerke. Gründung innovativ

Total

Themenschwerpunkt Social SEO

Die derzeit bekanntesten Alternativen zum Browser von Microsoft sind Mozilla Firefox, Google Chrom und Opera.

Ein Blick voraus. des Autors von C++: Bjarne Stroustrup Conrad Kobsch

Installation von NetBeans inkl. Glassfish Anwendungs-Server

Informationssystemanalyse Problemstellung 2 1. Trotz aller Methoden, Techniken usw. zeigen Untersuchungen sehr negative Ergebnisse:

Installationshinweise für OpenOffice Portable auf einem Wechseldatenträger Stand: 27. März 2003 LS Stuttgart, Kaufmännische ZPG

Empirische Softwaretechnik Kosten und Nutzen von UML in der Wartung Dr. Victor Pankratius Andreas Höfer Wintersemester 2009/2010

Vaadin TouchKit. W3L AG

Installations Guide für YAJSW und DTLDAP

Beliebte Content-Management-Systeme im Vergleich (Open-Source)

TEILEN SIE IHREN BILDSCHIRM MIT STUDENTEN, DIE MIT EINEM BROWSER ODER ÜBER DIE NETOP VISION STUDENT-APP EINE VERBINDUNG HERSTELLEN.

Bernadette Büsgen HR-Consulting

Information über die WebServices der Parlamentsdienste

EVENTO-WEB. Handbuch für Dozierende. Version: 1.2 Datum: 20. Dezember 2010 Autoren: BA Schuladministration

Einladung Workshop-Reihe. Projekt BEE-Mobil. Berufliche Bildung im Handwerk in den Zukunftsmärkten E-Mobilität und Erneuerbare Energien

Gussnummern-Lesesystem

Installation SPSS Netzwerkversion (Mac)

1. Den richtige Webbrowser benutzen Einen Vollzugriff auf alle Funktionen von Outlook Web App ist ausschliesslich mit folgenden Webbrowser möglich.

Universität Zürich Informatikdienste. SpamAssassin. Spam Assassin Go Koordinatorenmeeting 27. April

Systemeinstellungen im Internet Explorer für WEB-KAT

FORGE2015 HDC Session 4. Nachhaltige Infrastruktur als technologische Herausforderung. Tibor Kálmán Tim Hasler Sven Bingert

Ein mobiler Electronic Program Guide für Android

Sie haben diese Daten auch mobil dabei und synchron auf anderen Geräten! Sie haben eine Sicherheitskopie dieser Belege in einem Cloud-Speicher.

WebDAV Sync mit GoodSync for Mac OS X

conjectcm Systemvoraussetzungen

Das Handbuch zu Simond. Peter H. Grasch

Daten-Synchronisation zwischen dem ZDV-Webmailer und Outlook ( ) Zentrum für Datenverarbeitung der Universität Tübingen

Erfahrungen mit Hartz IV- Empfängern

Installation OMNIKEY 3121 USB

Produktvorstellung: CMS System / dynamische Webseiten. 1. Vorwort

eridea AG Installation Eclipse V 1.4

> Soft.ZIV. Maple Mathematisches Software System

Netzwerkworkshop der deutschsprachigen OJS-Dienstleister 3./4. Dezember 2015, Berlin DOKUMENTATION

Handball4all AG. Fritz-Walter Weg Stuttgart.

AGROPLUS Buchhaltung. Daten-Server und Sicherheitskopie. Version vom b

Migration von statischen HTML Seiten

Albert Dengg. Graz,

Erste Schritte mit

Anleitung. Lesezugriff auf die App CHARLY Termine unter Android Stand:

Hilfe zu XR PACS ImageproWeb. Inhalt. Windows Updates. IE11 und Windows 7/8

Prof. Dr. Norbert Pohlmann, Institut für Internet Sicherheit - if(is), Fachhochschule Gelsenkirchen. Lage der IT-Sicherheit im Mittelstand

Tritt beim Aufruf ein Fehler aus, so wird eine MessageBox mit dem Fehlercode und der Kommandozeile angezeigt.

4D Server v12 64-bit Version BETA VERSION

Auswertungsbogen Versorgungskapazitäten & Public Health

Verschlüsselung mit PGP. Teil 1: Installation

Organisation des Qualitätsmanagements

ELZPIRATEN EMMENDINGEN

DAS SIND WIR. Kronthalerstraße Königstein phone +49 (0) fax +49 (0) mail web nolinkup.

Datenbank Sonderbauwerke / Erfolgskontrolle

Vision für Mac BENUTZERHANDBUCH

Outlook Web App Kurzanleitung. Zürich, 09. Februar Eine Dienstabteilung des Finanzdepartements

Kostenloser Apple-Softclient zur Nutzung von TeSign

Windows Explorer Das unbekannte Tool. Compi-Treff vom 19. September 2014 Thomas Sigg

ecall sms & fax-portal

Ist Fernsehen schädlich für die eigene Meinung oder fördert es unabhängig zu denken?

Benutzer-Handbuch. Import / Export von Adressen

Informationssystemanalyse Lebenszyklusmodelle 3 1. Lebenszyklusmodelle sollen hauptsächlich drei Aufgaben erfüllen:

LovelyBooks Autorenprogramm

sicherer Datenaustausch made & hosted in germany filezafe ist ein Produkt der SynVation GmbH info@synvation.de

Apps entwickeln mit HTML und Javascript

Mobiler. Vernetzter. Emotionaler. Wie SBG auf die Entwicklung des Internets reagiert

Gebührensatzung zur Satzung der Gemeinde Brechen über die Benutzung der Kindertageseinrichtungen

SCHALTEN SIE DEN DATENSCHUTZ EIN. EINFACH & EFFEKTIV.

quickterm Systemvoraussetzungen Version: 1.1

Keine Kompromisse. Optimaler Schutz für Desktops und Laptops CLIENT SECURITY

ASDI Benchmarking Projekt. Anleitung zum Datenexport

Simon die linke Hand des Handwerks

Die Sicht der EMEA. für Zulassungs-, Therapie- und. Berlin-Brandenburgische Akademie der

Informationen zur Verwendung von Visual Studio und cmake

Transkript:

Verteidigung Masterarbeit Evaluating the Use of a Web Browser to Unify GUI Development for IDE Plug-ins Christian Cikryt Freie Universität Berlin 13.08.2015

Überblick Motivation und Ziele Evaluation des Browser-basierten Ansatzes Auswertung der Prototyp-Implementierung Zusammenfassung und Ausblick Verteidigung Masterarbeit, BSE2015 2

Portierung von Saros nach IntelliJ SWT Swing Verteidigung Masterarbeit, BSE2015 3

Motivation einer HTML-basierten GUI Vermeidung von doppeltem GUI-Code Vereinheitlichung der Oberfläche Erfahrung mit SWT Browser in Eclipse modernere Anzeigetechnologie möglicherweise Performanzvorteile Verteidigung Masterarbeit, BSE2015 4

Ziele dieser Arbeit Bewertung des HTML-basierten Ansatzes: Gegenüberstellung mit getrennter SWT-Swing-Entwicklung Realisierbarkeit durch Prototyp beantworten alle grundlegenden Mechanismen auf technischer Ebene Probleme aufdecken (Stabilität und Kompatibilität) Gerüst für spätere Implementierung vorgeben Testbarkeit der GUI untersuchen Verteidigung Masterarbeit, BSE2015 5

Evaluation Verteidigung Masterarbeit, BSE2015 6

Überblick über anstehende Evaluationsentscheidungen, 1. Browser vs. getrennte Swing und SWT Entwicklung 2. Auswahl der Browserkomponente Verteidigung Masterarbeit, BSE2015 7

Vergleich Browser mit konventionellem Ansatz Kriterium Browser SWT und Swing Aufwand (initial) 0 Evolvierbarkeit ++ Codeduplikation ++ Kompatibilität ++ GUI-Tests + Entscheidung für Browser-basierten Ansatz: Aufwand vertretbar und interessantes Wissen Wartbarkeit und Vermeidung von Duplikation Kompatibilität als Herausforderung für den Prototypen Verteidigung Masterarbeit, BSE2015 8

Mögliche Java-Browser Zwei Java-GUI-Technologien: Swing und SWT Browser muss in beide eingebettet werden Auswahl an Java-Browsern begrenzt: SWT Browser JxBrowser (Swing) JavaFX Webview Native Swing (SWT in Swing) Verteidigung Masterarbeit, BSE2015 9

Björn Kahlerts Erweiterung des SWT Browsers, Motivation: SWT Browser erkennt vollständiges Laden einer Webseite nicht zuverlässig z. B. kritisch bei Benutzung von Javascript-Bibliotheken SWT-Browser-Erweiterung: Erkennung und Verzögerung von Funktionsaufrufen bis definierter Zustand erreicht ist Zusätzlich: verbesserte Log- und Debuggingausgabe, nützliche Methoden (z. B. Look-and-Feel)... Verteidigung Masterarbeit, BSE2015 10

SWT Browser verbreitetster Java-Browser Erfahrung durch Björn Kahlerts Widgets in Swing einbettbar identischer Browser-Code für beide IDEs Zugriff auf installierten Browser abhängig vom Betriebssystem Cross-Browser-Probleme Verteidigung Masterarbeit, BSE2015 11

JxBrowser nativer Swing-Browser basiert auf Googles Chrome keine Cross-Browser Probleme proprietär, aber kostenlos für Saros 200 MB Footprint Browser-Erweiterung wahrscheinlich nötig Verteidigung Masterarbeit, BSE2015 12

JavaFX Browser Teil von Oracles Java Plattform in SWT und Swing einbettbar keine Cross-Browser Probleme ab Java 7 auf allen Plattformen Nicht-Lauffähigkeit unter Java 6 bestätigt Verteidigung Masterarbeit, BSE2015 13

Native Swing Bibliothek rund um die SWT-AWT-Verbindung Browser nicht isoliert Björn Kahlerts Erweiterung nicht verfügbar nicht als separate Alternative betrachtet gegebenenfalls eine Sammlung von Wissen Verteidigung Masterarbeit, BSE2015 14

Vergleich Kriterium SWT browser JxBrowser (nur IntelliJ) Aufwand machbar Einbindung minimal, Erweiterung nötig Codeduplikation gleicher Code Duplikation Stabilität Cross-browser Best-Effort, evtl. ausreichend identischer Aufwand stabil identischer Aufwand Größe ca. 20 MB ca. 200 MB Lizenz Open-Source proprietär, kostenlos Entscheidung für SWT-Browser: SWT-Browser naheliegendste Option in IntelliJ JxBrowser als Fallback eventuell auch nur für ein Betriebssystem Verteidigung Masterarbeit, BSE2015 15

Entscheidung über Benutzung der SWT-Erweiterung Ausgangslage: Nicht 1-zu-1 benutzbar (Mac OS spezifisch) beachtliche Menge an diversen Funktionen Code erfordert Einarbeitung 1. Frage: Neuentwicklung oder Erweiterung? Wie viel Code müsste neugeschrieben werden? Skizze einer Neuimplementierung grundlegende Komplexität ähnlich 2. Frage: Änderungen zurück ins ursprüngliche Projekt? nicht alle Anpassungen übernehmbar (Eclipse-spezifisch) Entscheidung zusammen mit Björn Kahlert Eigenständiges Projekt außerhalb von Saros Vision: generische Bibliothek Verteidigung Masterarbeit, BSE2015 16

Auswertung der Prototyp-Implementierung Identifizierte Risiken & Probleme Verteidigung Masterarbeit, BSE2015 17

Zusammenspiel der Technologien Verteidigung Masterarbeit, BSE2015 18

Identifizierte Einschränkungen des SWT Browsers, Mac OS SWT Browser in IntelliJ verlangt Java 6 IntelliJ unterstützt Java 7 und 8 nur experimentell GNU/Linux Browser funktioniert nicht in Eclipse 3.7 / 3.8 in Ubuntu 14.10 ein Paket nachinstallieren Zukunftssicherheit SWT_AWT Brücke wenig benutzt z. B. ungefixter Bug für Java 7,8 unter Mac OS JavaFX als Nachfolger von Swing SWT wird weiterverfolgt / aktuell ist keines der Probleme gravierend JavaFX im Auge behalten Verteidigung Masterarbeit, BSE2015 19

Zusammenfassung und Ausblick Browseransatz erfolgsversprechend Entscheidung für SWT Browser (vorläufig?) lauffähiger Prototyp für Eclipse und IntelliJ Erweiterung des SWT Browsers vorangetrieben Grundentwurf für GUI-Tests Weiterentwicklung in laufenden Arbeiten von Sieker und Bohnstedt Entwurf der HTML-GUI Benutzbarkeit Verteidigung Masterarbeit, BSE2015 20

Ende Fragen? Verteidigung Masterarbeit, BSE2015 21