Präsentation herunterladen
Die Präsentation wird geladen. Bitte warten
Veröffentlicht von:Rosa Geiger Geändert vor über 8 Jahren
1
WISE – Eine Methodik für die Entwicklung webbasierter Anwendungen
Im Rahmen des Seminars „Software Engineering" Alexander Hachmann
2
Agenda Einleitung / Motivation Entwicklung in der Praxis
Idee des WISE – Ansatzes Der WISE Ansatz – Eine komponentenorientierte Vorgehensweise Zusammenfassung / Fazit
3
Einleitung / Motivation
seit Einführung des WWW: Anforderungen an webbasierte Anwendungen stark verändert in den Anfängen: reine Vermittlung von Informationen heutzutage: kommerzielle Anwendungen dadurch: steigender Aufwand von Entwicklung und Pflege
4
Motivation / Charakteristika heutiger Webanwendungen
Beinhalten sowohl informationsvermittelnde als auch applikationsorientierte Bestandteile Hohe multimediale Ausprägung Hoher Stellenwert von Besucherrollen Ständige Aktualisierung notwendig (kurzer Lebenszyklus) Bei der Entwicklung: Häufig Mitarbeiter verschiedener Disziplinen beteiligt
5
Entwicklung in der Praxis
Gestiegene Anforderungen an Entwicklung machen den Einsatz von methodischen Vorgehensweisen sinnvoll Dennoch: methodische Vorgehensweise bei der Entwicklung in der Praxis kaum verbreitet Implementierung erfolgt zumeist ad-hoc oder auf Basis unternehmensinterner Modellierungsmethoden Durch Tools wie HTML-Editoren Fokussierung auf Implementierung Gründe für geringe Akzeptanz wissenschaftlicher Methoden: große Komplexität der vorhandenen wissenschaftlichen Methoden geringe Orientierung am Design der späteren Webanwendung
6
Projekt WISE Verbund aus Universitäten und Unternehmen Projektpartner:
Projektträger:
7
Der WISE Ansatz - Ziele Unterstützung aller Entwicklungsphasen in einem Ansatz Automatische Weiterverarbeitung Grafische Entwurfsmodelle Implizite Verständlichkeit der grafischen Modelle Prototyping jederzeit möglich Änderungen und Modifikationen an unterschiedlichen Bereichen der Webanwendung unabhängig voneinander möglich (Daten und Navigation/Design) Dadurch: Neuprogrammierung auch bei grundlegenden inhaltlichen oder grafischen Änderungen nicht notwendig
8
Phasen des Web-Engineering
Quelle: [Wi05] Ziel: systematischer Aufbau, so dass alle relevanten Entwurfsbereiche in einem integrierten Ansatz angeboten werden können
9
Durchgängiges Beispiel
Beispielunternehmen: fiktiver mittelständischer Kraftfahrzeughersteller Produkte: Motorräder und Automobile Beispiel erhebt keinen Anspruch auf genaue Abbildung der Realität Dient der Vermittlung der Methodik
10
Analyse Analyse grundlegender Größen als Basis für die Entwicklung
Definition der Ziele (Was soll mit der Website erreicht werden?) Identifikation relevanter Nutzergruppen Untersuchung der Rahmenbedingungen Festlegung der strategischen Ausrichtung
11
Analyse (im Beispiel) Zielsetzungen: Relevante Nutzergruppen:
Bereitstellung aktueller Informationen für alte und neue Kunden Werben neuer Kunden durch professionelle Außendarstellung Werben neuer Mitarbeiter Interaktionsmöglichkeiten für Besucher Bestellung Kontakt Relevante Nutzergruppen: Kunden Potentielle Mitarbeiter
12
Anforderungsspezifikation
Formulierung wichtiger Anforderungen Darzustellende Themen Informationsstrutkur Funtkionalität Usability Im Beispiel: Kernthemen: Produkte aus den Bereichen Automobil und Motorrad Formulare und Dienste für die Interaktionsmöglichkeiten müssen vorhanden sein
13
Modellierungsphase Kern der komponentenorientierten Vorgehenswese
Unterteilung in 4 Teilschritte Spezifisches (überführbares) Modell für jeden Teilschritt
14
Modellierungsphase Phase 1: konzeptuelles Modell (Themenstruktur)
Quelle: Eine Vorgehensweise zur systematischen Modellierung webbasierter Anwendungen, M. Wissen, 2005 Phase 1: konzeptuelles Modell (Themenstruktur) Phase 2: Navigationsmodell (optische Orientierung am Design der Website) Phase 3: Sichtenmodell (Berücksichtigung von Besucherrollen) Phase 4: Präsentationsmodell (grafische Aspekte)
15
Konzeptuelles Modell Basis für die Inhalte der Website
Informationsbestand im Unternehmen wird in Ontologie aufgearbeitet Ontologie Wissensrepräsentation Informationsbestand wird in Oberthemen (Konzepte) eingeteilt Beziehungen zwischen Konzepten über Assoziationen Vorhandenes Wissen wird übersichtliche und kategorisiert dargestellt Über Assoziationen ist Navigation innerhalb der Ontologie möglich Diese entspricht jedoch nicht zwingend der Navigation innerhalb der Webanwendung Dient vielmehr der systematischen Analyse aller relevanten Themenfelder
16
Konzeptuelles Modell Ontologie (Fortsetzung)
Logische Basis für die spätere Navigationsstruktur In der Wissenschaft gibt es eine Vielzahl von Ansätzen für die Erstellung von Ontologien (hier für Verständnis nicht erforderlich) Hier: Erstellung zu betrachten als manueller Prozess Speicherung der Ontologie: in der Datenbank Ontologie für Website permanent verfügbar
17
Konzeptuelles Modell (Beispiel)
Modell muss für die Navigation erweitert werden
18
Konzeptuelles Modell (Beispiel)
Themenmodell der Ebene 1:
19
Instanzierung der Inhalte
Inhalte in Form von Instanzen in der Datenbank Korrekte Auswahl der Instanzen durch Relationen Quelle: [Wi05]
20
Navigationsmodell Besteht aus 2 Typen von Komponenten
Strukturelle Komponenten Positionierung der Elemente Seitenaufbau Inhaltspezifische Komponenten
21
Navigationsmodell (Struktur)
Alle Inhalte werden in Containern organisiert Verschachtelte Darstellung möglich Quelle: [Wi05] Jeder Container kann Menge von Subcontainern haben Subcontainer werden als eigenständige Container betrachtet Darstellungsformen der Subcontainer: Nur ein Container Sichtbar (Realisierung über XOR-Verknüpfung) Mehrere Sichtbar (Subcontainer als Partitionen ihres Containers)
22
Navigationsmodell (Struktur)
Quelle: [Wi05] Platzhalter als weitere Strukturierungsmöglichkeit
23
Navigationsmodell (inhaltsspezifische Komponenten)
Werden nicht unmittelbar in Containern gehalten Werden durch Modellklassen beschrieben, die Containern zugeordnet sind Container kann neben Subcontainern beliebig viele Modellklassen enthalten Modellklassen Primitive Klassen Inhalte nicht weiter zerlegbar Z.B.: Texte, Bilder Navigationale Klassen Verantwortlich für größere Menüstrukturen Einfache Links können auch für primitive Klassen definiert werden
24
Navigationsmodell (inhaltsspezifische Komponenten)
Quelle: [Wi05] Navigationsrelationen können zusätzlich Broadcasting-Mechanismen auslösen Quelle: [Wi05] Dadurch beispielsweise Zuweisung von Benutzerrollen möglich
25
Navigationsmodell (inhaltsspezifische Komponenten)
Statische und dynamische Inhalte der Modellklassen Statisch: stehen zum Zeitpunkt der Modellierung fest Dynamisch: ergeben sich zur Laufzeit Durch Navigationspfade Durch Eingaben des Benutzers … im Weiteren als Kontext bezeichnet Jeder Container wird mit einem Kontext initialisiert Dadurch Herleitung der dynamische Inhalte möglich (z.B. für navigationale Klassen)
26
Navigationsmodell (inhaltsspezifische Komponenten)
Weitere Klassen: Zustandsklassen Abstrakte Serviceklassen Integration existierender Applikationsmodule oder Web Services (beispielsweise für Suchfunktion)
27
Navigationsmodell (Beispiel)
28
Navigationsmodell (Beispiel)
29
Navigationsmodell (Beispiel)
Darstellung in Indexform Weitere Darstellungsformen möglich (Tabs, Baumstrukturen…) Hier: alle Produkte des Kraftfahrzeugherstellers Festlegung zur Modellierungszeit: alle Konzepte, die mit dem Konzept „Produkte“ über die Assoziation „beinhaltet“ verbunden sind, sollen angezeigt werden Zusätzliche Angabe: Tiefe (hier 1) Durch Rückgriff auf konzeptuelles Modell: Flexibilität Bei Auswahl eines Navigationselements: Übergabe des Kontextes an B12
30
Navigationsmodell (Beispiel)
31
Navigationale Klassen allgemein:
Navigationsmodell Navigationale Klassen allgemein: Zur Modellierungszeit: Festlegung des Zielkonzepts Assoziation zum Ursprungskonzept Zur Laufzeit: Ermittlung der Instanzmenge
32
Sichtenmodell Berücksichtigung benutzerbezogener Informationen
Technische Rahmenbedingungen (z.B. Bandbreite) Orts- und zeitbezogene Informationen (z.B. Aufenthaltsort, Uhrzeit) Sozialer Kontext (z.B. Besucherrollen) Zugriffsklassen Benutzergruppe (Rolle) Bedingung Quelle: [Wi05] Bei vielen Zugriffsklassen: Liste der Modellklassen mit zugehörigen Zugriffsklassen
33
Präsentationsmodell Nötig für grafische Formatierungen Quelle: [Wi05]
34
Test und Evaluation Durch Prototyping jederzeit möglich
Sofortige Kontrolle modellierter Komponenten Geeignetes Softwaretool nötig
35
Technische Unterstützung
Softwaretool ist bisher nur in der Prototypphase Themen- und Navigationsmodell können größtenteils zeichnerisch erstellt werden Import- und Exportfunktion für Wiederverwendbarkeit modellierter Komponenten BuildWeb Komponente zur Erstellung der Website-Vorlage HTML JSP-Erweiterungen Javascript Abschließende Festlegung der endgültigen grafischen Formatierungen erfolgt manuell
36
Zusammenfassung Der WISE-Ansatz
Alle Bereiche der Entwicklung in einem integrierten Ansatz Getrennte Behandlung von Daten und Design. Modellierung mittels grafischer Modelle Unterstützung durch geeignetes Software-Tool
37
Fazit Zur Erinnerung Ziel der Vorgehensweise:
systematisches Vorgehen in einem durchgängigen Ansatz Konzeptuelles Modell Ontologie als Basis aller Inhalte Aber: Ergänzungen und Selektion für das Themenmodell nötig Sinn der Ontologie daher zumindest abgeschwächt: Hoher Aufwand Besser: sofortiges Themenmodell
38
Navigationsmodell / Sichtenmodell:
Fazit Navigationsmodell / Sichtenmodell: Nachträgliche Modellierung der Sichten kann zu Inkonsistenzen führen Software-Tool: Nicht überprüfbar Guter Ansatz: Zeichnerische Erstellung aller benötigten Modelle
39
Vielen Dank Fragen?
Ähnliche Präsentationen
© 2024 SlidePlayer.org Inc.
All rights reserved.