Evaluierung Evaluierung Des Webentwicklungsfrdes Webentwicklungsfrdes .

Transcription

View metadata, citation and similar papers at core.ac.ukbrought to you byCOREprovided by University of Regensburg Publication ServerEvaluierung des WebentwicklungsfraWebentwicklungsframeworks eGovWDF im Hinblick auf dieAspekteAspekte RichRich-ClientClient-Funktionalität undBarrierefreiheit im Kontext derAnforderungen im Bereich eGovernmentWalter KernLehrstuhl für Informationswissenschaft derUniversität RegensburgJuli 2009Alle genannten und gegebenenfalls durch Dritte geschützten Marken- und Warenzeichenunterliegen uneingeschränkt den Bestimmungen des jeweils gültigen Kennzeichnungsrechts undden Besitzrechten der jeweiligen Eigentümer. Allein aufgrund der bloßen Nennung kann nichtgeschlossen werden, dass Markenzeichen nicht durch Rechte Dritter geschützt sind. Aus demFehlen des Zeichens (R) darf nicht geschlossen werden, dass ein Name oder Zeichen frei ist. EineHaftung für ein etwaiges Fehlen des Zeichens (R) wird ausgeschlossen.

AbstractWie im Rahmen einer umfangreichen Evaluation gezeigt wurde, erfüllt keines der derzeiterhältlichen Rich Client-Frameworks für Webanwendungen das sich im Schnittfeld ausWebentwicklung, Web 2.0-Technologien, modernem Software-Engineering und eGovernmentergebende Anforderungsprofil. Auf Basis des genannten Anforderungsprofils wurde im Rahmender Realisierung eines übergeordneten Rich Client-Webentwicklungsframeworks (eGovWDF –eGovernmental Web Development Framework) für den Einsatz im eGovernment-Bereich einbarrierefreies Web 2.0-Komponentenframework realisiert, welches auf die vollständigeKonformität zu diesen Anforderungen abzielt. Zielsetzung dieser Untersuchung ist nun diePrüfung des Grads der Anforderungserfüllung des eGovWDF-Teilframeworks bezüglich des inder oben genannten Evaluation spezifizierten Anforderungskatalogs.Schlüsselbegriffe: Web 2.0, RIA, Rich Client, Webentwicklungsframework, Komponenten,Steuerelemente, eGovernment, Ajax, JavaScript-UnabhängigkeitAbstract (en)As shown by a preliminary evaluation, there is no rich client framework for web applications thatsuffices the requirements at the intersection of web development, Web 2.0, modern methods ofsoftware engineering and eGovernment. As a consequence, we extended our experimental richclient web development framework (eGovWDF - eGovernmental Web Development Framework)with a rich client components sub framework that aims at complete compliance with therequirements mentioned above. It is the objective of this evaluation to examine the degree ofcompliance of the eGovWDF sub framework with the catalog of requirements that was used in thepreliminary evaluation.Keywords: Web 2.0, RIA, Rich Client, web development framework, components, controls,eGovernment, Ajax, independence of JavaScript

Inhalt1EINLEITUNG . 12METHODIK DER EVALUATION . 32.1Hypothese und evaluierte Aspekte . 32.2Statistische Evaluationsmethoden . 62.2.1Methodenwahl . 62.2.2Begründung der Methodenwahl . 72.3Visuelle Evaluationsmethoden . 83EVALUIERUNG . 103.1Beschreibung . 103.2Evaluierte Produktversion . 103.3Detailuntersuchung. 113.3.1Dialoge . 113.3.2Registerkarten . 203.3.3Menüs . 263.3.4Symbolleisten . 323.3.5Hierarchische Steuerelemente (Tree Views) . 373.3.6Fortschrittsanzeige . 433.3.7Infotips . 494AUSWERTUNG . 554.1Beschreibung . 554.2Überblicks-Analyse. 554.3Anforderungsartbezogene Analyse . 594.4Komponentenzentrierte Analyse. 615FAZIT . 65

LITERATURVERZEICHNIS . 66ABBILDUNGSVERZEICHNIS . 70ANLAGENVERZEICHNIS . 71A1. Aktuelle Frameworks und eGovWDF im Vergleich . 72A2. Vergleich der Primärkennzahlen von aktuellen Frameworks und eGovWDF . 73A3. Boxplot-Visualisierung der Gesamtanforderungserfüllung . 74A4. Boxplot-Visualisierung der JS-Unabhängigkeit . 75A5. Boxplot-Visualisierung der Komponentenabdeckung. 76B1. Anforderungserfüllung pro Framework mit Komponenten als Reihen . 77B2. Anforderungserfüllung pro Komponente mit Frameworks als Reihen . 78B3. Boxplot-Visualisierung der Anforderungserfüllung nach Komponententyp . 79C1. Anforderungserfüllung nach Anforderungsarten . 80C2. Anforderungserfüllung bezogen auf Frameworks und Anforderungsarten . 81C3. BITV-Anforderungserfüllung . 82C4. Boxplot-Visualisierung der BITV-Anforderungserfüllung . 83D. Detailergebniswerte der Untersuchung von eGovWDF . 84

1 EinleitungIm Rahmen der Studie „Evaluierung bedeutender Webframeworks im Hinblick auf die AspekteRich-Client-Funktionalität und Barrierefreiheit im Kontext der Anforderungen im Bereich deseGovernment“ (vgl. Kern, 2008a) wurden die vielversprechendsten1 und bedeutendsten2Webapplikationsframeworks im Hinblick auf die Erfüllung von Anforderungen aus der DomäneeGovernment im Schnittfeld der Primäraspekte Barrierefreiheit und Web 2.0 (vgl. Kern, 2008b;Kern, 2008c) realisierender Rich Client-Funktionalität untersucht.Nach Kern (2008a) erfüllt keines der untersuchten Frameworks die vorliegenden Anforderungenin hinreichendem Maß, da selbst die drei Frameworks mit dem besten Testergebnissen imHinblick auf den Gesamtanforderungserfüllungsgrad einen Grad an JavaScript-Unabhängigkeitvon 0% besitzen, was im Hinblick auf den Aspekts Barrierefreiheit (vgl. Bundesministerium desInnern, 2002), als äußerst kritisch zu bewerten ist, da die auf den Frameworks basierendenAnwendungen größtenteils ohne JavaScript ihre Funktionalität einstellen. Diese Abhängigkeit vonJavaScript ist laut Kern (2008a) bei allen untersuchten Rich Client-Frameworks gegeben und vorallem bei Einsatz von AJAX präsent; beispielsweise führt bei Verwendung des FrameworksVisual WebGui (vgl. Kern, 2008d) nahezu jede Nutzeraktion zu einem AJAX-Submit, wasJavaScript voraussetzt. Bei Verschiebung des Untersuchungsfokus auf diejenigen Frameworksmit dem höchsten Grad an JavaScript-Unabhängigkeit ist festzustellen, dass insgesamt lediglichdrei aller untersuchten Frameworks einen messbaren Grad an JavaScript-Unabhängigkeit besitzen.Dieser ist daran festzumachen, wieviele der im Rahmen der Untersuchung pro Frameworkgetesteten Komponenten unabhängig von JavaScript-Verfügbarkeit auf Clientseite funktionieren.So konnte festgestellt werden, dass maximal eine 14%ige JavaScript-Unabhängigkeit proFramework vorliegt, was bedeutet, dass jeweils eine von sieben getesteten Komponenten ihreFunktion bei fehlender JavaScript-Verfügbarkeit wahrt.Aus diesem Grund wurde es in besagtem Dokument angeregt, ein Framework zu konzeptionieren,welches sich die Erfüllung der angeführten Anforderungen als Primärziel setzt. In diesemZusammenhang ist eGovWDF3 entstanden, dessen Rich Client-Komponenten-Teilframeworkversucht, einen möglichst hohen Grad an Anforderungsbefriedigung umzusetzen.1Primärkriterium sind die Innovativität bzw. Grundsätzlichkeit eines Ansatzes, aber auch Wachstumspotentiale.2Primärkriterien sind Marktdurchdringung des Produkts, Wachstumschancen und die Marktmacht des Herstellers.3eGovWDF eGovernmental Web Development Framework.-1-

Zielsetzung dieser Arbeit ist damit nicht die funktionale und technische Beschreibung desgenannten Teilframeworks von eGovWDF, sondern die Untersuchung der Anforderungserfüllungvon eGovWDF im Hinblick auf die in Kern (2008a) formulierten Anforderungen, welche sichunter Anderem an generellen Forderungen an moderne flexible Software-Architekturen (vgl.Vogel et al., 2005; Boehm, 2006) orientieren, wenngleich der Primärfokus auf den AspektenBarrierefreiheit im Kontext des (bundesdeutschen) eGovernment (vgl. Bundesministerium desInnern, 2002) und Rich Client-Funktionalitäten im Sinne von Rich Internet Applications (vgl.Moritz, 2008; Linaje et al., 2007; W3C, 2008) liegt.Um die Einordnung der Ergebniswerte der Untersuchung des Rich ClientKomponentenframeworks von eGovWDF zu erleichtern, soll im Rahmen dieser Evaluation einVergleich mit den in Kern (2008a) untersuchten Frameworks stattfinden: ASP.NET 3.5 (Standard) – vgl. Esposito (2004); Esposito (2005); McClure et al. (2006) AJAX Control Toolkit – vgl. Wenz (2007) ComponentArt Web.UI – vgl. SYS-CON Media Inc. (2008) NetAdvantage for ASP.NET – vgl. Infragistics (2008a) Telerik Controls for ASP.NET AJAX – vgl. Telerik (2008) DevExpress ASPxperience – vgl. Developer Express Inc. (2008a); Developer Express Inc.(2008b) JSF (Standards) – vgl. Geary und Horstmann (2007) MyFaces Tomahawk – vgl. Marinschek et al. (2006) JBoss RichFaces – vgl. JBoss.org (2008a); JBoss.org (2008b) Oracle ADF Faces Rich Client – vgl. Oracle (2008) NetAdvantage for JSF – vgl. Infragistics (2008b)-2-

2 Methodik der Evaluation2.1 Hypothese und evaluierte AspekteDie über diese Evaluation zu belegende Hypothese besteht darin, dass das Rich ClientKomponenten-Teilframework für Webentwicklungen von eGovWDF, im späteren zurVereinfachung kurz als eGovWDF bezeichnet, eine 100%-Anforderungserfüllung bezüglich der inKern (2008a) formulierten Anforderungen und Komponententypen erreicht. Die in Kern (2008a)formulierten Anforderungen leiten sich dabei primär aus Verordnungen wie der BITV4 (vgl.Bundesministerium des Innern, 2002) bzw. der BayBITV5 (vgl. Bayerisches Staatsministeriumdes Innern, 2003), Dokumenten wie SAGA6 (vgl. KBSt, 2006a) und der Forderung nach einermodernen flexiblen Software-Architektur (vgl. Vogel et al., 2005; Gamma et al., 1994), die sichauch in den Aspekten Generizität, Flexibilität und Erweiterbarkeit (vgl. KBSt, 2006b)wiederfindet, ab.Die Untersuchung soll wie in Kern (2008a) Komponenten des Typs Dialog, Registerkarte, Menü,Symbolleiste, Baumsteuerelement, Fortschrittsanzeige und Infotip berücksichtigen, da dieseKomponenten in Kern (2008a) als Schnittmenge verschiedener User Interface-Styleguides (vgl.Apple Inc., 2008; Benson et al., 2004; KDE-Entwicklerteam, o.J.; Microsoft Corporation, 2007a;Microsoft Corporation, 2007b) ermittelt worden sind.Im Rahmen der Untersuchung soll äquivalent zu Kern (2008a) eine Gliederung der zu prüfendenAnforderungen in folgende Bereiche erfolgen, um ein optimales Maß an Komparabilität zuerreichen: Rich Client-Funktionalität Funktionsweise bei nicht verfügbarem JavaScript Barrierefreiheit nach BITV BrowserinteroperabilitätDiesen thematischen (Anforderungs-)Bereichen sind in Kern (2008a) in Abhängigkeit vomKomponententyp unterschiedliche Detailanforderungen zugeordnet worden, die im Folgenden4Barrierefreie Informationstechnikverordnung; vgl. 02.html.5Bayerische Barrierefreie Informationstechnikverordnung.6SAGA Standards und Architekturen für E-Government-Anwendungen.-3-

aufgelistet werden. Hinsichtlich einer detaillierten Beschreibung dieser Aspekte soll auf Kern(2008a) verwiesen werden. Anzumerken ist, dass im Gegensatz zu Kern (2008a) und den darinvorgenommenen Framework-Dokumentations-gestützten Untersuchungen die Evaluierung voneGovWDF auf Grundlage des Expertenwissens des Architekten und Entwicklers beschriebenwird, weil aufgrund der Neuartigkeit von eGovWDF noch keine extensive schriftlicheDokumentation vorliegt. Gemeinsam ist der Evaluierung in Kern (2008a) und dieserUntersuchung die Verwendung von Framework-Funktionstests in Kombination mit einer visuellenPrüfung der sich bei Benutzung einer Frameworkkomponente ergebenden Weboberfläche sowieeine Betrachtung des resultierenden (X)HTML-Quellcodes durch einen Experten. Ebenso wird inbeiden Evaluierungen die Client-Umgebung, insbesondere der Webbrowser des Clients, mitunterschiedlichem Funktionsumfang simuliert, indem bestimmte Funktionen testabhängig aktiviertbzw. deaktiviert werden. Exemplarisch sind die Deaktivierung von CSS, JavaScript und Farbe zunennen, um die JavaScript-Unabhängigkeit sowie die Konformität zu den entsprechenden CSSund Farbe-Unabhängigkeit fordernden BITV-Kriterien zu prüfen.Komponententypabhängige Detailanforderungen im Bereich „Rich Client-Funktionalität“: Dialogo Request-Lebenszyklus-Persistenzo Anpassbarkeito Verhalteno Entwicklungsunterstützungo Wiederverwendbarkeit von Dialoginhalteno Definierter Datenaustauschprozesso Standard-Dialoge für MessageBoxen Registerkarteno Request-Lebenszyklus-Persistenzo Anpassbarkeito Verhalteno Entwicklungsunterstützung Menüso Anpassbarkeito Verhalteno Entwicklungsunterstützung Symbolleisten-4-

o Anpassbarkeito Verhalteno Entwicklungsunterstützung Hierarchische Steuerelementeo Request-Lebenszykus-Persistenzo Anpassbarkeito Verhalteno Entwicklungsunterstützung Fortschrittsanzeigeo Anpassbarkeito Verhalteno Entwicklungsunterstützung Infotipo Anpassbarkeito Verhalteno EntwicklungsunterstützungNeben diesen komponententypabhängigen Detailanforderungen im Bereich „Rich ClientFunktionalität“ stellen sich auch noch folgende übergreifende Anforderungen an die genanntenOberflächenkomponenten: Funktionsweise bei nicht verfügbarem JavaScript Barrierefreiheit nach BITV BrowserinteroperabilitätIm Hinblick auf den Aspekt „Browserinteroperabilität“ ist dabei anzumerken, dass hierbei eineUnterstützung der folgenden, zum Zeitpunkt der Evaluierung von Kern (2008a) am häufigstengenutzten Browser (vgl. Net Applications, 2008) untersucht werden soll: Internet Explorer 6.0 Mozilla Firefox 2.0 Opera 9 Safari 3.1 Um eine Vergleichbarkeit mit den Ergebnissen der Frameworkevaluierung nach Kern (2008a) zuerreichen, soll in dieser Evaluierung eine zur besagten Untersuchung identische Bewertung und-5-

Gewichtung der oben genannten Anforderungen erfolgen. Daher wird für minimaleAnforderungserfüllung ein Leistungswert von 0,0, für teilweise vorliegendeAnforderungserfüllung ein Wert von 0,5 und für maximale Erfüllung ein Wert von 1,0 vergeben.Zusätzlich wird pro zu prüfendem Teilaspekt ein Gewichtungsfaktor spezifiziert, welcher überProduktbildung mit der Teilanforderungserfüllung in die Gesamtsummenbildung eingeht undKern (2008a) entnommen wird.2.2 Statistische Evaluationsmethoden2.2.1 MethodenwahlDer Grad der Gesamtanforderungserfüllung wird in dieser Evaluation identisch zu Kern (2008a)bestimmt, indem das gewichtete arithmetische Mittel pro Anforderungsbereich errechnet wird undvon den jeweils vier resultierenden Werten ebenso das arithmetische Mittel ermittelt wird.Grund für die Legitimität der Vereinfachung der Berechnung des Gesamterfüllungsgrads auf Basisder Formel für das arithmetische Mittel ist die Tatsache, dass der Maximalwert der Erfüllung proAnforderung stets konstant 1 ist und dieser damit aus dem Nenner des Bruchs für dieGesamtanforderungsgrad-Bestimmung entfallen kann: r *a r *migjj ,iiii r *a rimi 1 iiij ,i ajiig j : Grad der Gesamtanforderungserfüllung des Frameworks ja j : Gewichtetes arithmetisches Mittel aller Anforderungserfüllungswerte des Frameworks ja j ,i : Erfüllungswert der Anforderung i bei Framework jmi : Maximal möglicher Erfüllungswert der Anforderung i; konstant 1ri : Relevanzfaktor der Anforderung i (Gewichtungsfaktor)Analog zu Kern (2008a) werden pro Komponentenframework neben demGesamtanforderungserfüllungsgrad die auf Teilmengen des Gesamtanforderungskatalogsberuhenden Kenngrößen JS-Unabhängigkeit und Komponentenabdeckungsgrad ermittelt.Um die qualitativen sowie quantitativen Unterschiede zwischen dem eGovWDF-Ansatz und dengeprüften Lösungen des aktuellen Stands der Technik im Detail, d.h. bezogen auf die einzelnenAnforderungen und bezogen auf die Anforderungsbereiche zu analysieren, wird im Rahmen dieser-6-

Untersuchung zusätzlich eine Berechnung von Durchschnitt, Median, unterem und oberem Quartilsowie den Extremwerten vorgenommen.Beachtet werden sollte hierbei, dass sämtliche der oben genannten Kennzahlen - unabhängig voneGovWDF - für die in Kern (2008a) evaluierten Frameworks errechnet werden, da ansonsten eineVerfälschung der Kennzahlen auftritt. Beispielsweise würde der Wert der durchschnittlichenAnforderungserfüllung, der die aktuelle Situation ohne eGovWDF beschreiben soll, durch eineBerücksichtigung der Kennzahlen von eGovWDF verzerrt.2.2.2 Begründung der MethodenwahlAufgrund der Primärzielsetzung des Aufzeigens des aktuellen Stands der Technik und deraktuellen Maximal-Anforderungserfüllung bei gegenwärtig verfügbaren Rich ClientKomponentenframeworks, wurde in Kern (2008a) eine Beschränkung auf die Betrachtung derMaximal- und der Durchschnittsanforderungserfüllung der untersuchten Frameworksvorgenommen. Zudem wurde die JS-Unabhängigkeit pro Komponentenframework ermittelt, weildiese von zentraler Relevanz ist, da die Barrierefreiheit als nicht gegeben zu bewerten ist, fallsdiese essentielle Anforderung vom jeweiligen Framework nicht unterstützt wird, undBarrierefreiheit im eGovernment-Umfeld eine Pflichtanforderung ist. Ferner wird derKomponentenabdeckungsgrad ermittelt, welcher angibt, wieviel Prozent der im Rahmen derEvaluierung von Kern (2008a) geforderten Komponenten vom jeweiligen Framework unterstütztwerden. Grundsätzlich werden auch die in Kern (2008a) angesprochenen Gewichtsfaktorenberücksichtigt, deren Multiplikation mit den Erfüllungsgradwerten der zugehörigenAnforderungen summarisch in die Berechnung der Gesamtanforderung einfließt. Aufgrund derÄquivalenz aller Gewichtungsfaktoren mit dem Wert 1, ist jedoch kein Einfluss dieser Größen aufden Gesamterfüllungsgrad vorliegend. Der Grad der Gesamtanforderungserfüllung wird in dieserEvaluation damit identisch zu Kern (2008a) bestimmt, indem das gewichtete arithmetische Mittelpro Anforderungsbereich errechnet wird und von den jeweils vier resultierenden Werten ebensowieder das arithmetische Mittel berechnet wird. Unabhängig davon ergeben sich für die Wahl dergewählten Evaluationsmethoden die im Folgenden genannten Gründe.Die Gesamtanforderungserfüllung pro Framework wird grundsätzlich ermittelt, um eine Maßzahlfür die Anwendbarkeit des jeweiligen Frameworks bei konkreten Projekten in der sich aus denEinzelanforderungen ergebenden Problemdomäne zu erhalten. Diese skalare Maßzahl ermöglicht-7-

damit auch die Ermittlung einer Framework-Rangfolge und allgemein den gesamtheitlichenVergleich mehrerer Frameworks.Über die Maßzahl der Durchschnittsanforderungserfülllung und damit des gewichtetetenarithmetischen Mittels über die Gesamtanforderungserfüllungswerte aller Frameworks sollfestgehalten werden, welcher Gesamtanforderungserfüllungsgrad im Mittel erreicht wird, wodurcheine Aussage über den bei einer Schnittfeldbetrachtung der Frameworks sich ergebende mittlereAnforderungserfüllung gegeben wird, was wiederum als Vergleichsgröße gegenüber denGesamtanforderungserfüllungswerten der einzelnen Frameworks dienen kann.Da das gewichtete arithmetische Mittel sehr anfällig für Extremwerte ist, eignet es sich nicht fürdie Bestimmung des Stands der Technik, sodass zusätzlich eine Berechnung des Medianwertserfolgt, welcher als wesentlich störresistenter gilt und es in Kombination mit Minimum- undMaximumwerten erlaubt, starke Ausreißer nach oben (potentielle Lösungen über dem Stand derTechnik) und unten klar davon abzugrenzen.Ferner sollen oberes und unteres Quartil berechnet werden, um eine Einteilung in gesamtheitlich„gute Frameworks“ und „schlechte Frameworks“ vornehmen zu können.Um neben der globalen eine feingranulare Bewertung der Frameworks zu erhalten, werden diegenannten Kennzahlen in der Untersuchung jeweils auch auf die zu Anforderungsarten bzw.Komponenten gruppierten Teilmengen des Gesamtanforderungskatalogs angewendet.2.3 Visuelle EvaluationsmethodenZur Visualisierung der Kennzahlen Maximal- und Durchschnittsanforderungserfüllung wurdeangelehnt an Kern (2008a) eine Balken- bzw. Säulendiagrammdarstellung, welche die prozentualeGesamt-Anforderungserfüllung jedes getesteten Frameworks aufzeigt, als probates Mittelbestimmt. Damit wird auch die Komparabilität sichergestellt, da in Kern (2008a) die identischeDarstellungsform gewählt wurde und somit ein Überblicks-Vergleich ermöglicht wird.Zur weitergehenden Analyse ist die Entscheidung für eine Boxplot-Visualisierung (vgl. Tukey,1977) gefallen, da diese es erlaubt, alle unter 2.2 beschriebenen Kenngrößen in einer Darstellungkompakt und die Komparabilität fördernd, zu visualisieren. Sowohl pro-8-

Gesamtanforderungserfüllungswert als auch pro Bereichsanforderungserfüllungswert wird derBoxplot-Visualisierung eine metrische Skala, genauer eine Intervallskala, zugrunde gelegt, da eindirekter Vergleich der erreichten Anforderungserfüllung möglich ist.-9-

3 Evaluierung3.1 BeschreibungBei eGovWDF handelt es sich um ein Framework mit der Zielsetzung die besonderenAnforderungen und Belange in der Domäne eGovernment zu realisieren. Dabei besteht eGovWDFaus verschiedenen Teilframeworks um die verschiedenen Themenfelder in diesem Umfeldabzubilden, wozu ein Validierungsframework, ein barrierefreies Rich-Client-Framework und einTeilframework für assistive Benutzerführung zählen (Abbildung 1).Abbildung 1: Teilframeworks von eGovWDF.Das barrierefreie Rich Client-Framework von eGovWDF wurde auf Basis der in Kern (2008a)dargestellten Anforderungen realisiert, sodass ein hoher Grad an Anforderungserfüllung vermutetwird, was im Rahmen dieser Arbeit nun untersucht werden soll. Es zielt darauf ab die gegenwärtigvorliegende Unvereinbarkeit von Anforderungen aus dem Bereich Rich Client-Funktionalität mitAnforderungen aus dem Bereich Barrierefreiheit zu überwinden (vgl. Kern, 2008b; Kern, 2008c,Hailpern et al., 2009).3.2 Evaluierte ProduktversionGegenstand dieser Untersuchung ist Version 1.0 der ASP.NET-Referenzimplementierung desRich Client-Teilframeworks von eGovWDF.- 10 -

3.3 Detailuntersuchung3.3.1 Dialoge3.3.1.1 BeschreibungeGovWDF unterstützt die Realisierung von Dialogen durch die Kombination der zweiKomponenten WebDialogReference und WebDialog.Zur Erreichung maximaler Wiederverwendbarkeit werden Dialoge als separate Ressourcenangelegt und deren Inhalt nicht direkt als Bestandteil der jeweiligen Webseite eingebettet. Ausdiesem Grund wird ein Dialog als neue Webressource ähnlich einer neuen Webseite angelegt,wobei der Dialog-Inhalt über die herkömmlichen Visual Studio 2008-Designer für Webseiten(WebPages) befüllt werden kann. Über die WebDialog-Eigenschaften können die Anzeige- undVerhaltenparameter des jeweiligen Dialogs festgelegt werden, beispielsweiseTitelleistenbeschriftung, Standard-Buttons und Drag & Drop-Unterstützung.Auf der jeweiligen Webseite, von der aus ein Dialog aufgerufen werden soll, ist eineentsprechende WebDialogReference-Komponente zu positionieren, wobei der relative oderabsolute Pfad zur Dialog-Ressource konfiguriert werden muss. Sämtliche Verhaltens- undAnzeigeeigenschaften werden von der WebDialog-Ressource übernommen, können aberkomfortabel über die WebDialogReference-Eigenschaften lokal überschrieben werden.Das Festlegen der Schaltflächen zum Ein- und Ausblenden eines Dialogs erfolgt rein deklarativund kann über einen Designer komfortabel festgelegt werden, sodass keinerlei Code zur Anzeigebzw. zum Schließen eines Dialogs geschrieben werden muss. Diese deklarative Festlegungermöglicht dem Framework zudem die verschiedenen Modi der Dialogaktivitäten umzusetzen. Sokann ein Dialog bereits zum Zeitpunkt des Ladens der aufrufenden Webseite unsichtbar gerendertwerden und dann über JavaScript ein- oder ausgeblendet werden. Alternativ kann der Dialog beider Betätigung eines Triggers zur Anzeige on demand nachgeladen und gerendert werden.Schließlich besteht auch die Möglichkeit das Ein- und Ausblenden des Dialogs rein serverseitigvorzunehmen. Auch sind verschiedene Kombinationen der genannten Optionen denkbar, wiebeispielsweise das Laden eines Dialogs beim ersten Zugriff und das zukünftige Ein- undAusblenden über JavaScript, wobei bei Nicht-Verfügbarkeit von JavaScript das initiale Laden unddie späteren Ein- und Ausblendaktivitäten rein serverseitig erfolgen, wodurch auch dem Aspekt- 11 -

Barrierefreiheit aufgrund der Verzichtbarkeit auf JavaScript ohne Funktionsdefizite entsprochenwird. Zusammenfassend ermöglicht die deklarative Festlegung, dass vom Entwickler keinentsprechender Code für die clientseitige und/oder serverseitige Anzeige bzw. das Ausblendensowie das dynamische Nachladen geschrieben werden muss, da dies transparent im Hintergrunderfolgen kann. Der scheinbare Nachteil der fehlenden Flexibilität zur bedingten Anzeige bzw. derAusblendung von Dialogen wird durch client- und serverseitige Ereignisbehandlungsroutinen, diewährend der Dialoglebenszeit aufgerufen werden kompensiert, da innerhalb dieser Routinengesteuert werden kann, ob der Dialog tatsächlich ein- bzw. ausgeblendet werden soll und unterwelchen Bedingungen.Im Hinblick auf die Datenübergabe zwischen Dialog und Dialogaufrufer wird ein sogenannterDialog-Kontext bereitgestellt, über welchen Daten bidirektional ausgetauscht werden können. DerAustausch wird dabei vom Framework im Hintergrund sowohl bei AJAX-Verfügbarkeit als auchbei Nicht-Verfügbarkeit rein serverseitig transparent umgesetzt.Ferner soll erwähnt werden, dass weitere Komfortfunktionalität wie Dialogmodalität und dieUnterstützung von Standardtastenkombinationen unterstützt und dialogbezogen bzw. aufTriggerebene konfiguriert werden können.In Abbildung 2 wird exemplarisch ein Dialog zur Auswahl eines Navigationsziels dargestellt.Abbildung 2: Das eGovWDF-WebDialog-Steuerelement.- 12 -

3.3.1.2 rsistenzDer Sichtbarkeitszustand des Dialogs wird über Requestgrenzen hinweg persistiert.Bewertung: 1,0AnpassbarkeitDer Dialog-Inhalt kann völlig frei angepasst werden. Es können beliebige HTML- oderServerkomponenten innerhalb eines Dialogs positioniert werden. Die Titelleiste kann flexibel überCSS sowie weitere Eigenschaften modifiziert werden. Der Dialog sowie dessen Bestandteileunterstützen ASP.NET-Theming-Mechanismen um Design-Festle

Visual WebGui (vgl. Kern, 2008d) nahezu jede Nutzeraktion zu einem AJAX-Submit, was JavaScript voraussetzt. Bei Verschiebung des Untersuchungsfokus auf diejenigen Frameworks mit dem höchsten Grad an JavaScript-Unabhängigkeit ist festzustellen, dass insgesamt lediglich