Usability-Test für mobile Java-Anwendungen



Ähnliche Dokumente
Programmierung mobiler Kleingeräte

MOBILE ENTERPRISE APPLICATION PLATFORM (MEAP)

MOBILE ON POWER MACHEN SIE IHRE ANWENDUNGEN MOBIL?!

2 Ein Streifzug durch die JavaME

Einsatz von Java-fähigen GPRS-Terminals

Eclipse Equinox als Basis für Smart Client Anwendungen. Christian Campo, compeople AG, Java Forum Stuttgart 2007

Java Entwicklung für Embedded Devices Best & Worst Practices!

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

Java für Embedded Systems

SEW Übung EMFText. 1 Aufgabe. 2 Domänenbeschreibung. 3 Installation von Eclipse/EMFText. 4 Schritt-für-Schritt Anleitung. 4.

MOBILE ENTERPRISE APPLICATION PLATFORM (MEAP)

Mobile Betriebsysteme

NetBeans Installation für Handy-Programmierung

Abschlussarbeiten für StudentInnen

Themen. Software Design and Quality Group Institute for Program Structures and Data Organization

Mobile Apps in a Nutshell. Martin Straumann, Stv. BU Leiter Microsoft Technologien

Daniel Warneke Ein Vortrag im Rahmen des Proseminars Software Pioneers

Agile Testautomatisierung im XING Mobile Team

Speaker. Dominik Helleberg. Mobile Development Android / Embedded Tools.

Andreas Mösching Senior IT Architekt Hewlett-Packard (Schweiz) GmbH HP Banking Service Center Bern

Comparing Software Factories and Software Product Lines

Testen von graphischen Benutzeroberflächen. 26. Juni 2013

Echtzeit-Sendungsverfolgung mittels Mobile Java und GPRS

Java Wireless Toolkit (JWT) Bei der Programmierung von Anwendungsprogrammen für mobile Endgeräte eignet sich die Verwendung des Java Wireless Toolkit.

Mobile Development in.net mit Xamarin

Mobile Apps mit DSLs. und entfernter Codegenerierung. Codierst Du noch oder generierst Du schon? Powered by

Generisch entwickelte Software-Werkzeuge anpassbar wie ein Chamäleon

Next generation open source BPM JBoss jbpm 4. Java Forum Stuttgart

Informatik Sommercamp 2012

Android Testautomatisierung mit dem Framework Robotium

Remote Eclipse RCP Management

ActiveCharts. Verknüpfung von Modellen und Code bei der modellgetriebenen Softwareentwicklung mit UML 2.0

Model Driven Development im Überblick

Naviki GPS-Anwendungsentwicklung für Mobiltelefone

Architektur von Business Apps

Eclipse 3.0 (Windows)

GUI Programmierung in Java

Überblick über Java-Umgebungen auf Embedded-Plattformen

Microsoft SharePoint. share it, do it!

Endgeräteunabhängige Schlüsselmedien

Java in der Welt der Handys. Matthias Hemetsberger Joseph Erlinger Erwin Schwab Rudi Dittrich

Softwareengineering. Schwerpunkt Software Engineering Ausbildung

Agile Testautomatisierung im XING Mobile Team

Model Driven Architecture (MDA)

RESTful Web. Representational State Transfer

MDA auf der Grundlage der OMG Konzepte

AK Medientechnologien Hello World. Josef Kolbitsch

OSGi. The Next Generation Java Service Platform. SOA - The Java Way or My classpath is killing me. Michael Greifeneder

Vorteile von Java und Konvergenz Service Creation mit JAIN Network Management mit JMX Fazit

Smartphone Entwicklung mit Android und Java

Cross-Platform Mobile mit.net

SAP NetWeaver Gateway. 2013

Das System sollte den Benutzer immer auf dem Laufenden halten, indem es angemessenes Feedback in einer angemessenen Zeit liefert.

Die Programmiersprache Java. Dr. Wolfgang Süß Thorsten Schlachter

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

Jörg Neumann Acando GmbH

MDA MDA mit mit Open-Source-Software Eine Eine Bestandsaufnahme

App Entwicklung mit Hilfe von Phonegap. Web Advanced II - SS 2012 Jennifer Beckmann

Modellgetriebene Entwicklung einer Eclipse RAP-Anwendung unter Verwendung des Eclipse Modeling Frameworks

Zentrale Informatik. Cross-platform Apps. Andrea Grössbauer David Meier. 11/11/15 Lunchveranstaltungen HS16 - Crossplatform Apps 1

Moderne Benutzeroberflächen für SAP Anwendungen

Mit OSGi Webanwendungen entwickeln Was geht, was nicht?

Mit Cloud Power werden Sie zum

Design Patterns 2. Model-View-Controller in der Praxis

Model Driven Architecture

Generatives Programmieren

Übersicht. Eclipse Foundation. Eclipse Plugins & Projects. Eclipse Ganymede Simultaneous Release. Web Tools Platform Projekt. WSDL Editor.

Web Service Architekturen im Praxisbeispiel

Software Engineering II

CAIRO if knowledge matters

Auswahl alter Klausuraufgaben aus einer ähnlichen Vorlesung Maßgeblich für die Prüfung sind die Vorlesungsinhalte!

JUnit 5 Die Plattform. Johannes Link

Spring Dynamic Modules for OSGi Service Platforms

Datenhaltung für Android Model First Christian Ingenhaag, Frederik Götz, Carl Steeg

Open Source als de-facto Standard bei Swisscom Cloud Services

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

Lessons Learned: Mobile CRM Integration

Minimales V-Modell NavSpace

Mobile App development mit Xamarin. Christian Hassa Andreas Willich TechTalk Software AG

Cloud und Big Data als Sprungbrett in die vernetzte Zukunft am Beispiel Viessmann

Eclipse Plugins für die komfortablere Verwendung von ibatis SQLMaps

Übung: Verwendung von Java-Threads

Transkript:

Usability-Test für mobile Java-Anwendungen Problemstellung / Abgrenzung Usability Engineering / Patterns Usability Test Tool-Kette Fazit Roland Petrasch Usability-Test für mobile Java-Anwendungen Problemstellung / Abgrenzung: Usability for mobile apps Spezielle Anforderungen an die Ergonomie, z.b. Navigation, HW/SW-Verbindung (WIMP) Weniger Probleme: Screen-Layout, Nebenläufigkeit Projektumfeld nicht im consumer-bereich, sondern Behörden und Organisationen mit Sicherheitsaufgaben (BOS) Kompromiss: - formale Ansätze (Markov models, GOMS...): Nutzbarkeit? - Standards / Produkte: UML, Eclipse, Java (Open Source) Ziele: einfacher Einstieg, sofortige Umsetzung möglich, keine Kosten, Erlernbarkeit, Produktivität... Beispiel: Navigation auf mobile Device (Löschen einer Adresse) 1

Usability Engineering: Usability-Regel (?): Nav-Action: rechts Usability Engineering: Usability-Regel: Nav-Action: rechts 2

Usability Engineering: Usability-Diskussion #1: Yes: links oder rechts? Usability Engineering: Usability-Diskussion #2: OK: auch links? 3

Usability Engineering: Usability (Design) Patterns: Feedback Pattern Ziel: Diskussionswürdige Bereiche eliminieren (verdecken) Usability (Design) Pattern: Wiederverwendbarkeit Übersichtlichkeit Einheitlichkeit (Un-)Diskutierbarkeit 4

Usability Design Patterns Ziel: Generative SW-Entwickung betreiben MDA: Model driven architecture Templates Generator Architectural Patterns Design- Entscheidungen Metamodel public class DeleteEntry extends MIDlet implements CommandListener { private Command exitcommand; // The exit command private Display display; // The display for this MIDlet public DeleteEntry() { display = Display.getDisplay(this); exitcommand = new Command("Yes", Command.SCREEN, 2); } public void init() { TextBox t = new TextBox("...", 256, 0); t.addcommand(exitcommand); t.setcommandlistener(this); display.setcurrent(t); } Usability Test Test #1: Referenzimplementierung als Test-Orakel MDA: Model driven architecture Architectural Patterns Generator Templates Design- Entscheidungen Metamodel C A B public class DeleteEntry extends MIDlet implements CommandListener { private Command exitcommand; // The exit command private Display display; // The display for this MIDlet public DeleteEntry() { display = Display.getDisplay(this); exitcommand = new Command("Yes", Command.SCREEN, 2); A: Referenzimplementierung (manuelle Progr.) B: Templates erstellen C: Generierung (Test gegen die Ref.-Impl.) 5

Usability Test Test #2: herkömmliche Usability Tests / Evaluationen Software-ergonomische Anforderungen z.b. ISO 9241-10: Steuerbarkeit, Fehlertoleranz... Conf. Test Cogn. Walktrough Evaluation Tool-Kette: Upper-Case, IDE, MDA, Emulator Upper-Case: UML-Tool XMI-Schnittstelle, z.b. Poseidon CE 6

Tool-Kette: Upper-Case, IDE, MDA, Emulator IDE: Eclipse 3.1 OpenGenerator Framework (http://architectureware. sourceforge.net) diverse Java ME-Plugins Wireless Toolkits, z.b. SMTK Fazit Rollen: MDA-Nutzer (SW-Entwickler), Metamodellierer (MDA-Spezialist + Tester) Metamodelle & Templates für den Generator entwickeln Usability Patterns entdecken und anwenden Tool-Integration verbessern: MDA = Forward Engineering Java: RTSJ, Java ME -> SE, EE-Anbindung, Produkte Konkrete Anwendung, z.b. Berliner Polizei 7

Real-time Specification for Java (RTSJ) Connected Device Configuration (CDC): für mobile applications (auf personal mobile devices mit wenig Resourcen: ~2 MB RAM, ~2.5 MB ROM, compatibility mit J2SE APIs, CDC: Foundation Profile, Personal Basis Profile, Personal Profile. Connected Limited Device Configuration (CLDC) für sehr geringe Resourcen, ~128 KB - 512 KB RAM, CLDC enthält das Mobile Information Device Profile (MIDP) für GUI MIDP + CDLC = Mobile Phone / PDA Java ME Wireless Toolkit: Java Technology for the Wireless Industry (JTWI) Roadmap 1 specification, support for Wireless Messaging API (WMA) 2.0 (JSR 205), Mobile Media API (MMAPI) 1.1 (JSR 135), PDA Optional Packages (JSR 75), Java API's for Bluetooth (JSR 82), Mobile 3D Graphics (JSR 184), and J2ME Web Services API (JSR 172) Mobile Information Device Profile (MIDP): User Interface APIs für wireless devices (Minimum: 96 Pixel breit * 54 Pixel hoch), Elemente: List, Alert / Text Box, Form... MIDP + CDLC = Mobile Phone / PDA Java ME Wireless Toolkit: Java Technology f h Wi l I d (JTWI) 8

Performance: 2 Plattformen für RT Java UCI: jrate und GCJ (Gnu Compiler for Java), ahead-of-time-compilation into native code, RTSJ Services: GC, RT Threads... TimeSys: RTSJ Reference Implementation (Basis: J2ME JVM), interpreted execution mode (kein JiT-Compiler) Quelle: Corsaro et al.: Evaluating Real-Time Java Features and Performance for Real-time Embedded Systems Quelle: Corsaro et al.: Evaluating Real-Time Java Features and Performance for Real-tim 9