OO Analyse und Entwurf für Anwender XIII. Objektorientierte Benutzeroberfäche Dr. Michael Löwe

Preview:

Citation preview

OO Analyse und Entwurf für Anwender

XIII. Objektorientierte Benutzeroberfäche

Dr. Michael Löwe

13. Benutzeroberfläche

Prof. Dr. Michael Löwe, FHDW, Hannover

4

Objektorientierte Analyse und Entwurf

Inhalt

• Oberflächen in Analyse und Entwurf

• Zusammenspiel Oberfläche – Fachmodell

• Entwurfsregeln anhand von Beispielen

• Ausgewählte Oberflächenelemente– Darstellung von Fachobjekten– Auslösen von Operationen

13. Benutzeroberfläche

Prof. Dr. Michael Löwe, FHDW, Hannover

5

Objektorientierte Analyse und Entwurf

Oberflächen in Analyse

• Kein Ergebnis der Analyse !!!• Sparsamer Einsatz: keine Technik ist ideal• Illustration von

AnwendungsfällenAktivitäten

• Prototypen zum WegwerfenOberflächen zu früh verstellen den Blick für das

Wesentliche: Fachklassen und Aktivitäten

13. Benutzeroberfläche

Prof. Dr. Michael Löwe, FHDW, Hannover

6

Objektorientierte Analyse und Entwurf

Oberflächen im Entwurf

• Ergebnis des Entwurfs

• Einsatz konkret vorhandener Technik– Window-System– Oberflächenwerkzeug

• Erweiterung der Fachklassen– Oberflächenobjekte für Fachobjekte – Oberflächenobjekte für Operationen

13. Benutzeroberfläche

Prof. Dr. Michael Löwe, FHDW, Hannover

7

Objektorientierte Analyse und Entwurf

Oberfläche – Fachmodell: View

Fachobjekte

... Oberflächen ...

13. Benutzeroberfläche

Prof. Dr. Michael Löwe, FHDW, Hannover

8

Objektorientierte Analyse und Entwurf

Oberfläche – Fachmodell: View

• Oberfläche ist eine Sicht auf das Fachmodell

• Oberfläche macht einen Ausschnitt sichtbar

• Oberfläche ist ein Observer des Ausschnitts

• Teile der Oberfläche zeigen Teile des Ausschnitts

• Elemente der Oberfläche sind Observer von Elementen des Ausschnitts

13. Benutzeroberfläche

Prof. Dr. Michael Löwe, FHDW, Hannover

9

Objektorientierte Analyse und Entwurf

Oberfläche – Fachmodell: View

Fachobjekte

Oberflächenobjekte

Systemgrenze

beobachten

13. Benutzeroberfläche

Prof. Dr. Michael Löwe, FHDW, Hannover

10

Objektorientierte Analyse und Entwurf

Oberfläche – Fachmodell: View

• Oberfläche ist Erweiterung des Fachmodells– Durchgängiges Paradigma der Objektorientierung– Entwicklung ist Erweiterung der

• Modelle und• Interaktion

• Oberflächenobjekte beobachten Fachobjekte– Oberfläche von Fachmodell entkoppelt– Gleichzeitig mehrere Views möglich– Änderbarkeit der Oberfläche, Stabilität des Fachmodells

• Anwender beobachtet Oberfläche

13. Benutzeroberfläche

Prof. Dr. Michael Löwe, FHDW, Hannover

11

Objektorientierte Analyse und Entwurf

Beispiel für einen View

RTE

Ordnung

Anteile*

*

hat

enthält

hat

13. Benutzeroberfläche

Prof. Dr. Michael Löwe, FHDW, Hannover

12

Objektorientierte Analyse und Entwurf

Oberfläche – Fachmodell: Controller

Fachobjekte

Oberflächenobjekte

Systemgrenze

handeln

Controller

beobachten

interpretieren und handeln

13. Benutzeroberfläche

Prof. Dr. Michael Löwe, FHDW, Hannover

13

Objektorientierte Analyse und Entwurf

Beispiel für einen Controller

RTE

Ordnung

Anteile*

*

hat

enthält

hat

Controller

Controller

controled

13. Benutzeroberfläche

Prof. Dr. Michael Löwe, FHDW, Hannover

14

Objektorientierte Analyse und Entwurf

Oberfläche – Fachmodell: Controller

• Anwender interagiert mit den Oberflächenobjekten• Controller beobachtet die Reaktionen der Oberfläche

– Genau ein Controller ist stets aktiv– Oberfläche von Fachmodell entkoppelt– Änderbarkeit der Oberfläche, Stabilität des Fachmodells

• Controller interpretiert entsprechend des Fachmodells• Controller ist Erweiterung der Fachmodelle und Views

– Controller ist Adapter– Durchgängiges Paradigma der Objektorientierung

13. Benutzeroberfläche

Prof. Dr. Michael Löwe, FHDW, Hannover

15

Objektorientierte Analyse und Entwurf

Oberfläche: Model – View – Controller

Business Model

View Controller

User-Interface I

View Controller

User-Interface II

13. Benutzeroberfläche

Prof. Dr. Michael Löwe, FHDW, Hannover

16

Objektorientierte Analyse und Entwurf

Entwurfsregeln

• direkt: die Fachobjekte sichtbar machen

• lokal: zusammen zeigen, was zusammen gehört

• übersichtlich: keine Informationsüberflutung

• standard: Style Guides des Betriebssystems beachten

• einheitlich: dasselbe auf dieselbe Art und Weise

• ähnlich: Metaphern setzen und durchhalten

• modusfrei: dieselbe Reaktion auf dieselbe Aktion

• angemessen: Die richtigen Controls auswählen

13. Benutzeroberfläche

Prof. Dr. Michael Löwe, FHDW, Hannover

17

Objektorientierte Analyse und Entwurf

Direktheit: Beispiel

Anteil, keine Textzeile

Nachrichten, die verstanden werden

Ordnung

13. Benutzeroberfläche

Prof. Dr. Michael Löwe, FHDW, Hannover

18

Objektorientierte Analyse und Entwurf

Beziehungen

Lokalität: Beispiel

Objekt Wirkung Teile Locks

Wechseldes Views

zur Ansicht

von RTEs

13. Benutzeroberfläche

Prof. Dr. Michael Löwe, FHDW, Hannover

19

Objektorientierte Analyse und Entwurf

Übersichtlichkeit: Beispiel• Viel Information• Gleichartige

Information• FoKus:

Wie ergeben sichRTE-Attribute

• Ordnung unwichtig• Mit Ordnung zuviel

Information• Keine Lasche „erbt“

13. Benutzeroberfläche

Prof. Dr. Michael Löwe, FHDW, Hannover

20

Objektorientierte Analyse und Entwurf

Standards: Beispiele

13. Benutzeroberfläche

Prof. Dr. Michael Löwe, FHDW, Hannover

21

Objektorientierte Analyse und Entwurf

Einheitlichkeit: Beispiel

Objekt- und View-unabhängige Funktionsweise des Lupenknopfes

13. Benutzeroberfläche

Prof. Dr. Michael Löwe, FHDW, Hannover

22

Objektorientierte Analyse und Entwurf

Ähnlichkeit: Beispiel

Metapher:

RTE

Kumul Vertrag

Risiko

13. Benutzeroberfläche

Prof. Dr. Michael Löwe, FHDW, Hannover

23

Objektorientierte Analyse und Entwurf

Modusfreiheit: Gegenbeispiele

13. Benutzeroberfläche

Prof. Dr. Michael Löwe, FHDW, Hannover

24

Objektorientierte Analyse und Entwurf

Angemessenheit: Spezielle Controls

Darstellung:Container Controls: Fachobjekte in Oberflächenobjekten

Listen, Pop-up-Listen, Tabellen, Bäume etc.

Karteikarten: „alles übersichtlich im Kasten“

Funktionsauslösen:Drop-Down-Menüs: die Dienste einer Anwendung

Werkzeugleiste: das „schnell(e)“ unübersichtliche Drop-Down-Menü

Kontextmenüs: die Dienste eines Objekts

Funktionsknöpfe: das Wichtigste schnell zum Anfassen

13. Benutzeroberfläche

Prof. Dr. Michael Löwe, FHDW, Hannover

25

Objektorientierte Analyse und Entwurf

Zusammenfassung

• Oberflächen sind Entwurfssache• Oberflächen ergänzen das Fachmodell um

– Anzeigeobjekte– Kontrollobjekte

• Oberflächen brauchen Standards• Oberflächen brauchen Metaphern• Guter Oberflächenentwurf ist schwer

• Graphische Oberflächen ohne Maus sind wie Bildschirme ohne Tastatur