Software Engineering Oberflächenentwurf (update: 11.6.)

Ähnliche Dokumente
Software Engineering

Mit der Maus im Menü links auf den Menüpunkt 'Seiten' gehen und auf 'Erstellen klicken.

Tipps & Tricks im CRM

Outlook 2000 Thema - Archivierung

Urlaubsregel in David

Kleines Handbuch zur Fotogalerie der Pixel AG

In diesem Tutorial lernen Sie, wie Sie einen Termin erfassen und verschiedene Einstellungen zu einem Termin vornehmen können.

Bitte melden Sie sich als Administrator des Betriebssystems oder als Benutzer mit ausreichenden Installationsrechten an Ihrem PC an.

Leitfaden Kontenrahmenumstellung

Hilfe zur Dokumentenverwaltung

Handbuch zum Excel Formular Editor

Import, Export und Löschung von Zertifikaten mit dem Microsoft Internet Explorer

Faktura. IT.S FAIR Faktura. Handbuch. Dauner Str.12, D Mönchengladbach, Hotline: 0900/ (1,30 /Min)

1 Einleitung. Lernziele. Dokumente vergleichen. Änderungen mit Überarbeitungsfenster bearbeiten Lerndauer. 4 Minuten.

Erste Schritte. Lavid-F.I.S. Faktura. Erste Schritte

Diese Ansicht erhalten Sie nach der erfolgreichen Anmeldung bei Wordpress.

Meldung Lokale Anwendung inkompatibel oder Microsoft Silverlight ist nicht aktuell bei Anmeldung an lokal gespeicherter RWE SmartHome Anwendung

Ordner Berechtigung vergeben Zugriffsrechte unter Windows einrichten

12. Dokumente Speichern und Drucken

Lavid-F.I.S. Ablaufbeschreibung für. Arbeitszeiterfassung. Lavid-F.I.S.

Bedienungsanleitung. Matthias Haasler. Version 0.4. für die Arbeit mit der Gemeinde-Homepage der Paulus-Kirchengemeinde Tempelhof

Folgeanleitung für Fachlehrer

Einfache und effiziente Zusammenarbeit in der Cloud. EASY-PM Office Add-Ins Handbuch

Outlook - CommuniGate Pro Schnittstelle installieren. Outlook - Elemente freigeben. Outlook - Freigegebene Elemente öffnen

CALCOO Lite. Inhalt. 1. Projekt anlegen / öffnen. 2. Projekt von CALCOO App importieren

Hilfe zur Urlaubsplanung und Zeiterfassung

TTS - TinyTimeSystem. Unterrichtsprojekt BIBI

Handbuch zur Anlage von Turnieren auf der NÖEV-Homepage

DIE ZUKUNFT BEGINNT JETZT: ELEKTRONISCHE UNTERSCHRIFT

AUTOMATISCHE -ARCHIVIERUNG. 10/07/28 BMD Systemhaus GmbH, Steyr Vervielfältigung bedarf der ausdrücklichen Genehmigung durch BMD!

Folgeanleitung für Klassenlehrer

1. Einschränkung für Mac-User ohne Office Dokumente hochladen, teilen und bearbeiten

Wichtige Hinweise zu den neuen Orientierungshilfen der Architekten-/Objektplanerverträge

Outlook Web App 2010 Kurzanleitung

KURZANLEITUNG MSDAS DMS SYSTEM - SILVERDAT II SCHNITTSTELLE

OutlookExAttachments AddIn

teischl.com Software Design & Services e.u. office@teischl.com

Lizenzen auschecken. Was ist zu tun?

SANDBOXIE konfigurieren

Sie möchten einen neuen Termin im Kalender anlegen:

Angaben zu einem Kontakt...1 So können Sie einen Kontakt erfassen...4 Was Sie mit einem Kontakt tun können...7

Übersicht... 2 Dateiupload... 3 Administratorfunktionen... 4

Handbuch B4000+ Preset Manager

Das Modul Hilfsmittel ermöglicht den Anwender die Verwaltung der internen Nachrichten, Notizen, Kontakte, Aufgaben und Termine.

SafeRun-Modus: Die Sichere Umgebung für die Ausführung von Programmen

Vorgehensweise für die Umstellung von Quicken-Konten bei Bargeldbuchungen auf ein Wertpapierkonto

TempusCapio Erste Schritte

MSDE 2000 mit Service Pack 3a

Arbeiten mit dem Outlook Add-In

VR-NetWorld Software Sicherheitsprofilwechsel - RDH 2 auf RDH 10

Leitfaden zur ersten Nutzung der R FOM Portable-Version für Windows (Version 1.0)

1. Allgemeines. Mit der Vertragsverwaltung können u.a.

Installation des Zertifikats. Installationsanleitung für Zertifikate zur Nutzung des ISBJ Trägerportals

Sicherer Datenaustausch zwischen der MPC-Group und anderen Firmen. Möglichkeiten zum Datenaustausch... 2

Lieferschein Dorfstrasse 143 CH Kilchberg Telefon 01 / Telefax 01 / info@hp-engineering.com

Software Engineering Klassendiagramme Assoziationen

(Eine ausführliche Beschreibung der Batch-Umbenennen-Funktion finden Sie in der Anleitung [Link zur Anleitung m4 irfanview_batch].

WordPress. Dokumentation

Das nachfolgende Konfigurationsbeispiel geht davon aus, dass Sie bereits ein IMAP Postfach eingerichtet haben!

Datenaustausch mit dem BVK Data Room

KNX BAOS Gadget. Installations- und Bedienanleitung. WEINZIERL ENGINEERING GmbH. DE Burgkirchen Web:

Microsoft Access 2013 Navigationsformular (Musterlösung)

Berechtigungen im Kalender Anleitung für die Rechtevergabe im Outlook Kalender FHNW, Services, ICT

Seriendruck mit der Codex-Software

ClubWebMan Veranstaltungskalender

BSV Software Support Mobile Portal (SMP) Stand

GEORG.NET Anbindung an Ihr ACTIVE-DIRECTORY

Einrichtung des Cisco VPN Clients (IPSEC) in Windows7

teamsync Kurzanleitung

Anleitung ftp-zugang Horn Druck & Verlag GmbH Bruchsal

Anleitung für den Zugriff auf Mitgliederdateien der AG-KiM

ÖKB Steiermark Schulungsunterlagen

K. Hartmann-Consulting. Schulungsunterlage Outlook 2013 Kompakt Teil 1

Tipps und Tricks zu Netop Vision und Vision Pro

Internet online Update (Internet Explorer)

OUTLOOK-DATEN SICHERN

Informationen zur Bedienung des Anrufbeantworters

Überprüfung der digital signierten E-Rechnung

Partitionieren in Vista und Windows 7/8

Seriendruck mit der Codex-Software

Einstellungen im Internet-Explorer (IE) (Stand 11/2013) für die Arbeit mit IOS2000 und DIALOG

Installation des Zertifikats

Kostenstellen verwalten. Tipps & Tricks

über das Tastaturkürzel <Alt-C> angelegen bzw. bearbeiten

Anleitung zum Upgrade auf SFirm Datenübernahme

Erstellen eines Formulars

Alerts für Microsoft CRM 4.0

eduvote Ein Umfragesystem für Lehrveranstaltungen - PowerPoint Add-In -

Starten der Software unter Windows 7

Wie räume ich mein Profil unter Windows 7 auf?

Erste Schritte Stand: 03/2010

1. Einführung. 2. Die Mitarbeiterübersicht

Fotos in die Community Schritt für Schritt Anleitung

Mediumwechsel - VR-NetWorld Software

MORE Profile. Pass- und Lizenzverwaltungssystem. Stand: MORE Projects GmbH

TopKontor - Kurzleitfaden

Favoriten sichern. Sichern der eigenen Favoriten aus dem Webbrowser. zur Verfügung gestellt durch: ZID Dezentrale Systeme.

Anleitung. Serienbrief - Outlook 2010 (Stand: Mai 2014)

Installieren und Verwenden von Document Distributor

Kennen, können, beherrschen lernen was gebraucht wird

Transkript:

Software Engineering Oberflächenentwurf (update: 11.6.) Prof. Adrian A. Müller, PMP, PSM 1, CSM Fachbereich Informatik und Mikrosystemtechnik 1

Inhalte Begriffe und Beispiele GUI Dialog Menü Interaktionselemente Darstellung Dialogstruktur Visualisierung von Klassen Relationen Beziehung Vorgehen zum GUI-Entwurf Entwurf von Benutzungsoberflächen Allgemeines Paradigmen Style Guide, Look and Feel Gestaltungsregeln Anhang 8 Goldene Regeln von Ben Shneiderman Entwurfsgrundsätze 2

Benutzungsoberfläche Benutzungsoberfläche = Graphical User Interface (GUI) Dialog-Komponente: Bedienungsabläufe E/A-Komponente: Gestaltung der Informations-Darstellung GUI-System Software-System Verwaltet GUI Wickelt Kommunikation mit Anwender ab Beispiel: Microsoft Windows Prototyp der Benutzungsoberfläche: Realisiert Fenster, Menüs und globale Dialogführung Keine Daten und keine Funktionen 3

Dialoge: Selbstbeschreibungsfähigkeit 4

Dialog (1) Dialog Interaktion zwischen einem Benutzer und einem Dialogsystem, um ein bestimmtes Ziel zu erreichen Benutzer Mensch, der mit dem Dialogsystem arbeitet Dialogarten Primärdialog Wird beendet, wenn die zu bearbeitende Aufgabe fertig gestellt ist Beispiel: Hauptfenster von Microsoft Word Sekundärdialog Dient zur Erfassung zusätzlicher Informationen Nach Beendigung des Sekundärdialogs wird der Primärdialog fort gesetzt Beispiel: Drucken aus Word - Fenster zur Erfassung von Druckparametern 5

Dialoge: Robustheit 6

Dialog (2) Dialog-Modi Modaler Dialog Muss beendet sein, bevor ein anderes Fenster aktiviert werden kann Beispiel: Druck-Dialog in Word Nicht-modaler Dialog Kann unterbrochen werden, d. h. man kann in einem anderen Fenster weiter arbeiten, während der Dialog noch offen ist Beispiel: Such-Dialog in Word Verwendung nicht-modaler Dialoge erhöht die Handlungsflexibilität des Benutzers Unterscheidung von Anwendungen nach gleichzeitig bearbeitbaren Dokumenten: Single Document Interface (SDI) Zu einem Zeitpunkt kann nur ein Dokument bearbeitet werden Beispiel: Microsoft Wordpad Multiple Document Interface (MDI) Gleichzeitige Bearbeitung mehrerer Dokumente möglich, zwischen denen gewechselt werden kann Beispiel: Microsoft Word 7

Angemessenheit der Aufgabe 8

Möglichkeiten der Dialog-Gestaltung Objektorientierte Bedienung mit direkter Manipulation Beispiel: Drag & Drop in Windows Explorer und Anwendungen Objektorientierte Bedienung mit Menüs und Fenstern Beispiel: Markieren einer Datei im Explorer oder eines Text-Ausschnitts in Word. Die Rechte Maustaste öffnet dann ein Kontextmenü mit allen für dieses Objekt möglichen Funktionen. Ebenso können über den Menu Bar-Eintrag Bearbeiten die entsprechenden Funktionen ausgewählt werden. Funktionsorientierte Bedienung mit Menüs und Fenstern Beispiel: Über Menu-Bar Datei Öffnen wird zunächst die Funktion ausgewählt, anschließend das Objekt (die zu öffnende Datei) Meist werden diese Möglichkeiten parallel angeboten 9

Dialoge: Lernförderlichkeit 10

Beispiele für Steuerelemente Je nach Datentyp und darzustellendem Inhalt, z. B.: Strings oder Zahlen: Textfeld Aufzählungstypen: Listenfeld, Drop Down-Liste, Combobox Boolean: Checkbox, Radiobutton Zugeordnete Objekte mit mehreren Attributen: Tabelle Auslösen von Aktionen Schaltfläche (Button) Und viele mehr 11

Interaktionselemente Quelle: Sommerville, Abb. 16.8 12

Benutzungsoberflächen im Web-Browser Möglichkeiten variieren je nach eingesetzter Technologie, z. B. Thin Clients: Reines HTML, ggf. JavaScript Nutzung von Frames, ggf. mehrere Browser-Fenster Nutzung von Plug-Ins Starke Einschränkungen z. B. hinsichtlich direkter Manipulation, Pull-Down-Menüs, nichtmodaler Dialoge etc. Zu berücksichtigen sind außerdem Unterschiede in den Browser-Versionen, verschiedene Sicherheitseinstellungen u. ä. Fat Client / Rich Client: Anwendungslogik des GUI auf dem Client ausgeführt (z. B. mit Hilfe von Java oder ActiveX) Hier besteht die Möglichkeit, mit Hilfe entsprechender Klassenbibliotheken eine Fensteroberfläche ähnlich Windows etc. zu realisieren Probleme: Ladezeiten, Sicherheitsaspekte AJAX: Asynchronous JavaScript and XML Mischform kein komplettes Laden von Anwendungen, kein Plug-In erforderlich, keine synchrone Kommunikation mit dem Server Für "Web 2.0"-Anwendungen eingesetzt Generell existieren für Web-Oberflächen sehr große Freiheitsgrade Dies macht es andererseits sehr schwierig, wirklich benutzerfreundliche Oberflächen zu entwickeln 13

Vorgehen zum GUI-Entwurf 1. Skizzieren der benötigten Fenster und ihrer gegenseitigen Interaktion (Bsp. oben links: scribbles mit Dialogstruktur) 2. Festlegen, aus welchen Bestandteilen ein Fenster besteht (s. mockup r.) Aufbau des Anwendungsfensters Aufbau der Unterfenster Aufbau der Dialogfenster Aufbau der Mitteilungsfenster 3. Festlegen, auf welche Benutzerereignisse wie reagiert werden soll Zustandsdiagramm mit den in jedem Fenster möglichen Benutzeraktionen als Ereignissen 4. Umsetzung des Dialogkonzepts in einen Entwurf in der benutzten Sprache 5. Programmierung der Dialogschnittstelle 14

Beispiel einer Dialogstruktur OK Abbrechen Löschen Liste Artikel Entfernen Übernehmen Liste Neu Ändern Artikel Neu OK Abbrechen Neu Lieferant (aus Artikel) Auswählen Auswählen Abbrechen Liste Auswahl Lieferant Neu Neu Lieferant (aus Auswahl) OK Abbrechen Liste 15

Was muss in der Oberfläche möglich sein? Man muss alle benötigten Funktionalitäten und alle Inhalte erreichen können Es müssen alle Use Cases durchführbar sein Dabei müssen die benötigten Objekte mit den zu pflegenden Attributen und Beziehungen angelegt und bearbeitet werden können 16

Mögliche Navigationsstruktur bei system-basierten Entwurf Oberste Ebene Thematische Oberbegriffe zur Gliederung der Funktionen Z. B. können alle Funktionen zur Bearbeitung von Kunden zusammengefasst werden Zweite Ebene Aufrufbare Funktionen Diese können Use Cases entsprechen Es ist auch möglich Use Cases aufzuteilen oder zusammenzufassen, wenn dies für die Bearbeitung sinnvoll ist Dritte Ebene Einzel-Dialoge für die gewählte Funktion 17

Menü-basierte Navigation im Hauptfenster (Fallbeispiel Geräteverwaltung) Alternative wäre z. B. ein Navigationsbaum auf einer Website. Angezeigte Einträge können entsprechend den Benutzerrechten angezeigt oder verborgen werden. Oder: Verschiedene Oberflächen für verschiedene Rollen. 18

Neues Objekt anlegen Nicht jedes Attribut ist vom Benutzer einzugeben, z. B. automatische Personalnummernvergabe (Textfeld ist read-only) Für jedes zu vom Benutzer zu pflegende Attribut ein geeignetes Steuerelement Außerdem kann es Attribute geben, die für den Benutzer unwichtig sind und gar nicht angezeigt werden. 19

Objekt suchen In welchen Attributen soll gesucht werden? Exakte Übereinstimmung erforderlich? Kann man auch Teile eines Worts eingeben? Kontextmenü Welche Attribute der Suchergebnisse werden angezeigt? Filter-und Sortiermöglichkeiten? Zum Dialog Mitarbeiter bearbeiten Wie werden große Treffermengen dargestellt? 20

Objekt bearbeiten Ähnlich dem Anlegen eines Objekts. Unter Umständen dürfen gewisse Attribute nicht mehr geändert werden und sollten daher read-only sein. 21

Anderes Objekt zuordnen bei Multiplizität mit Obergrenze 1 Auswahl des zugeordneten Verlags Es muss auch die Möglichkeit geben, kein Verlag auszuwählen, da die Untergrenze der Multiplizität 0 ist. Im vorliegenden Fall wird nur der Name angezeigt, u. U. kann es erforderlich sein, mehr Informationen anzeigen. Drop Down-Feld bei kleineren Mengen von Verlagen geeignet. Bei einer größeren Zahl von Verlagen: Eigener Auswahldialog. Zum Anlegen eines neuen Verlags, der anschließend hier ausgewählt ist. 22

Andere Objekte zuordnen bei Multiplizität mit Obergrenze * Tabelle mit den Attributen des Autors, die hier nützlich sind Zum Dialog Autoren auswählen (weiter hinten) Speichern geht nur, wenn mindestens ein Autor eingetragen ist (wegen Untergrenze 1 bei Multiplizität) Zu Dialog Autor anlegen Entfernt selektierten Eintrag. Es muss mindestens ein Eintrag bestehen bleiben, da die Unter-grenze der Multiplizität 1 ist. 24

Navigierbarkeit auf der Oberfläche Soll man beim Buch den Verlag anzeigen und zuordnen können oder beim Verlag die Bücher? Oder beides? Oder auf der einen Seite zuordnen und auf der anderen Seite nur ansehen? Hängt davon ab, welche Möglichkeiten fachlich und vom Arbeitsablauf her sinnvoll sind. 25

Zugeordnete Objekte auswählen Auswahl aus Liste für kleinere Mengen an Autoren sinnvoll, bei großen Mengen: Suchfunktion. Gewünschte Autoren selektieren Die selektierten Autoren werden in die Tabelle in Buch anlegen übernommen. Zurück zu Buch anlegen 27

Hierarchie - Explorer Alternative Darstellung der Hierarchie Kategorie-Gerätetyp-Gerät als Tree-View Ggf. Unterscheidung durch Icons Dialoge zum Anlegen und Bearbeiten über Kontextmenü erreichbar Zuordnungen per Drag & Drop Vgl. Methode navigieregeraetehierarchie() in Klasse Geraeteverwaltung. 28

Anhang 29

Dialoge bei Vererbung Dialoge für konkrete Klassen: 30

Dialoge bei Vererbung Variante Untergliederung des Dialogs entsprechen den verschiedenen Aspekten, die von den beteiligten Klassen repräsentiert werden. 31

Dialoge bei Vererbung Zweite Variante Untergliederung mit Hilfe von Registern (Tabs) 32

Noch einmal betrachtet: Fallbeispiel Geräteverwaltung 33

Fallbeispiel Geräteverwaltung Kategorie anlegen Wieso nicht Auswahl vorhandener Objekte bzw. Entfernen aus der Liste? Die Multiplizität 1 erfordert, dass jeder Gerätetyp genau einer Kategorie zugeordnet ist. Daher gibt es überhaupt keine Gerätetypen ohne Kategorie, die man hier zuordnen könnte. Ebenso kann man einen Gerätetypen nicht einfach von einer Kategorie lösen. Man könnte höchstens noch eine Abfrage einbauen, ob man bei dem Gerätetyp die alte Kategorie zur neuen ändern will, bzw. ein Auswahlmenü für die neue Kategorie. Einfacher: Man erledigt dies beim Gerätetypen. 34

Gerätetyp anlegen Hier wird nun die Kategorie ausgewählt. Wegen der Multiplizität 1 gibt es keinen Eintrag Keine Kategorie, d. h. es muss immer eine Kategorie ausgewählt sein. 35

Gerät anlegen Neue Räume und neue Geräte werden gemäß Use Case-Diagramm nicht im Zusammenhang mit Geräten angelegt, daher keine entsprechenden Schaltflächen. Dynamische Anpassung: Wenn Gerät ist ausleihbar gewählt ist, wird der Abschnitt Feste Gerätezuordnung inaktiv oder komplett ausgeblendet. 36

Gerätetyp reservieren Automatisch vergeben Steht fest: der eingeloggte User. 37

Aufgabe Erstellen Sie einen Dialog zum Anlegen eines Auftrags (inkl. Zuordnung von Produkten) 38

Entwurf von Benutzungsoberflächen Style Guide, Look and Feel Überblick Paradigmen der Mensch-Maschine Kommunikation Beispiele GUI Design Pattern Moderne GUI Konzepte Gestaltungsregeln 8 Goldene Regeln von Ben Shneiderman Entwurfsgrundsätze (Sommerville) 39

40

Anhang: 8 Goldene Regeln von Ben Shneiderman Konsistenz Berücksichtige unterschiedliche Erfahrungen Rückmeldungen auf Aktionen des Benutzers Abgeschlossene Operationen Fehler verhindern Einfache Rücksetzmöglichkeiten Benutzerbestimmte Eingaben Geringe Belastung des Kurzzeitgedächtnisses Vgl. Sommerville, Abbildung 16.1: Grundsätze für den Entwurf von Bedienoberflächen Designing the User Interface, 1997 41

Anhang: Wichtige Aussagen Entwurfsgrundsätze bei der Formulierung von Meldungen Quelle: Sommerville, Abbildung 16.10: 42