Ein minimales Vorgehensmodell zur benutzerzentrierten Entwicklung ergonomischer Web-Anwendungen mit dem Schwerpunkt Navigation Roland Petrasch FH NORDAKADEMIE Slide Inhalt & Vorstellung des Vorgehensmodells : ecommerce-anwendung WebTravelOffice : Zusammenfassung & Diskussion Motivation Komplexität von Web-Applikationen, Qualitätsdefizite Transformation: Ergonomie-Forderungen Merkmale Minimales V-Modell für Web- / ecommerce-projekte (Übergang von Analyse zu Design) Benutzerzentrierte Entwicklung (Prototyping) mit UML Slide 2
für das V-Modell Definition SW-Qualität [ISO 842, 994], [Akao, 992] Ergonomie-Anforderungen, e.g. Steuerbarkeit [ISO 924-] Ergonomische Merkmale, e.g. mouse-over effect [Sun, 999], [Open, 997] Defizite: (Web-)Usability, Qualitätsnachweis SW- Produkt hat OK gilt für Merkmal erfüllt Bug? Feature erfüllt? ESC Slide 3 für das V-Modell Ergonomische Software hat die richtigen Merkmale für verschiedene Benutzer(-gruppen) gemäß deren Anforderungen. User Interface hat Element gilt für Anforderung erfüllt User-Profil + Nav. Space Benutzerprofile [Hansen, 97], [Mayhew, 999] Anforderung Steuerbarkeit Ergonomie- UI- Navigationsraummodelle [Hennicker, Koch, 2] UML für Web- Anwendungen [Conallen, 999] Slide 4 2
Transformationsschritte Use Cases Story Boards Konzeptmodell... Software (user interface) Anforderungsanalyse Design Implementation Slide 5 Anforderungen Anforderungen an ein minimales V-Modell Navigationsraum- Modell Re-Engineering Prototyp Software (user interface) Navigationsraum- Benutzerprofil Modell Prototyp Klassenmodell Navigationsraum- Modell Generierung, z.b. HTML Prototyp Software (user interface) Navigationsraum- Modell Round-Trip- Engineering Prototyp Software (user interface) Slide 6 3
anwendung WebTravelOffice use-cases concept/context model user profile requirements analysis navigation space model prototype design application (user interface) implementation Slide 7 anwendung WebTravelOffice OOA: Anforderungen (Use Cases, Konzepte ) * Flugreise suchen Flug auswählen <<extends>> Flugdetails anzeigen << include >> Kunde.. Flug buchen << include >> Kundendaten eingeben Es gibt keine benutzerspezifischen Informationen. Wie kann ergonomische Qualität entstehen? Slide 8 4
anwendung WebTravelOffice Ergonomie: Benutzergruppen und Benutzerprofile Gruppe Steuerbarkeit Aufgabenangemessenheit Urlauber Vielflieger Restriktive Steuerung der Anwendung Sequentielle Schritte, keine/wenige Verzweigungen Verzweigungsmöglichkeiten (max. Flexibilität) Keine Restriktionen bzgl. der Navigation Teilung der Aufgabe in mehrere einfache Teilbereiche (Dialoge) Minimum an Interaktionselementen in Dialogen Komplexe Dialoge mit maximaler Funktionalität Effiziente Eingabe & minimale Erläuterungen Wie können die Profile berücksichtigt werden? Slide 9 anwendung WebTravelOffice Flugreisen Mo.Di. Mi. Abflugdatum 2 3 4 5 8 9 Heimat- Ort NavSpace Modell für Benutzergruppe Urlauber Zielflughafen Urlaubsland 2..* Hinflug <<info>> Hinflug i..* Slide 5
anwendung WebTravelOffice Vielflieger NavSpace Modell für Benutzergruppe Vielflieger Airport 2..*.. Flug * Stop-Over Airport? 2..* Flug <<info>> Flugreise i..* Slide anwendung WebTravelOffice Flugreisen Heimatort und Ziel Optionen Mo.Di. Mi. Abflugdatum 2 3 4 5 8 9 Mo.Di. Mi. Rückflugdatum 8 9 2 3 4 5 Slide 2 6
anwendung WebTravelOffice Flugreisen Heimatort und Ziel Optionen Mo.Di. Mi. Abflugdatum 2 3 4 5 8 9 Mo.Di. Mi. Rückflugdatum 8 9 2 3 4 5 Slide 3 anwendung WebTravelOffice Flugreisen Heimatort und Ziel Optionen Mo.Di. Mi. Abflugdatum 2 3 4 5 8 9 Mo.Di. Mi. Rückflugdatum 8 9 2 3 4 5 Slide 4 7
anwendung WebTravelOffice Vielflieger Airport 2..*.. Flug * Stop-Over Airport? Slide 5 Zusammenfassung & Diskussion Im Zentrum stehen Navigationsraummodelle Anforderungsanalyse & UI Design Konstruktives QS für Usability Strukturelle (statische) Informationen über das UI (class model) & basieren auf Geschäftsprozessen kein State Transition oder Sequence Diagram, z.b. [Wassermann, Shewmake, 985] Nicht für alle Aspekte, Fokus auf Aufgabenangemessenheit, Steuerbarkeit, Lernförderlichkeit Voraussetzung: Requirements (Use Cases ), User Profiles und Konzeptmodell (Class Model) Slide 6 8
Zusammenfassung & Diskussion Wozu ein neues Vorgehensmodell? NavSpace eigentlich nicht neu, aber Ansätze sind komplex, z.b. [Mayhew, 999], [Koch, 2] haben anderen Schwerpunkt, z.b. [Nielsen, 993] berücksichtigen nicht UML, z.b. [Beyer, Holtzblatt,998] behandeln Modellierung anders, z.b. [Shneiderman, 998] bieten keine Toolunterstützung vereinfachtes Vorgehen mit UML & Tooleinsatz für Roundtrip-Engineering (Fokus: Komplexe UIs) Slide 7 Zusammenfassung & Diskussion Vorteile der Vorgehensweise NavSpace Brücke von Requirements zum SW-Produkt Zwang, Profile & Navigation für verschiedene Benutzergruppen zu entwicklen Einsatz der UML und ggf. Prozeßstandards, z.b. RUP, V-Modell 97, SPICE Frühe & einfache Messung der Usability, z.b. Anz. Interaktionsschritte (Click Stream), Basis für Automatisierung: UI-Generierung & Re-Engineering existierender UIs Slide 8 9
Zusammenfassung & Diskussion Vorteil: Requirements Tracking Komplexe Dialoge, viele Interaktionsmöglichkeiten Interaktionselemente für effiziente Eingabe Steuerbarkeit Aufgabenangemessenheit Verzweigungsmöglichkeiten bei der Steuerung EIngabe des Airports als IATA-Code Eingabe des Departure oder der Arrival-Datums Eingabe von Zwischenlandungen Feature Bug Anforderungen Merkmale Software-Produkt Slide 9 Zusammenfassung & Diskussion Problembereiche YEMTU-Effect ( yet another model to understand ) Noch keine Toolunterstützung (CASE, CAST, IDE) Nur für einige SW-Typen / Application Domains: Existenz von Prozessen, keine doc / spread-sheet apps UI mit komplexen Szenarien, z.b. ecommerce B2B / B2C Spez. Requirements an das UI (Bennutzergruppen) Ausblick Abgleich mit anderen Techniken, z.b. [Kreitzberg, 996] Analytische QS: Test von NavSpace Models Web-Controlling: Qualitätsmessung von e-commerce Automatische Generierung des UI & Re-engineering Slide 2
Fragen & Anworten Verschiedene User Interfaces. Individualisierung? Entwicklung zu teuer? Wer versteht NavSpaces? Was ist mit ad-hoc Processen? Nein (Nielsen) Nein (OO,Components) Jede(r) mit UML-Kenntnissen Problem der Funktionalität (OOA) Was ist zu tun, wenn user profiles nicht verfügbar sind? Ist ein NavSpace hilfreich auf der I-Elementebene? Kein UI entwickeln Nein! Slide 2 Thank you for your attention! Contact Prof. Dr. Roland Petrasch petrasch@nordakademie.de www.softwarequality.de Slide 22