Masterarbeit
Transformation bestehender Komponentenansätze zur klientseitigen Webentwicklung
mittels Web Component Technologien
Completion
2017/06
Research Area
Students
Advisers
Description (German)
Web Components sind eine Sammlung von Standards, welche aktuell im Rahmen von W3C Spezifikationen entwickelt werden und es erlauben, wiederverwendbare Komponenten zu erstellen, die in beliebigen Webanwendungen eingesetzt werden können. Das Ziel ist es dabei, komponentenbasierte Softwareentwicklung in das Web zu bringen.
In der Vergangenheit wurden viele andere Ansätze verfolgt, wie wiederverwendbare Komponenten oder Widgets für Web-Entwickler zu Verfügung gestellt werden können. Einige Ansätze sind beispielsweise: jQuery Plugins, Dojo Widgets oder die sogar von der W3C standardisierten Packaged Web Apps (W3C Widgets). Diese Lösungen unterscheiden sich jedoch teilweise stark voneinander und erschweren eine einheitliche Nutzung dieser zur Erstellung von komplexen Webanwendungen.
Um die Nutzung und Erstellung von Webkomponenten zu vereinheitlichen, ist es angestrebt, die bereits existierenden Lösungen in die neue, standardisierte Form der “Web Components” zu überführen. Dies würde beispielsweise dazu führen, dass eine große Menge an bereits existierenden Komponenten einheitlich verwenden werden kann. Weiterhin könnten die Vorteile von Web Components, wie die Kapselung oder die Unabhängigkeit von speziellen Laufzeitumgebungen, mit denen von anderen Ansätzen vereint werden.
Ziel dieser Arbeit ist es zum einen, eine umfassende Untersuchung von existierenden Komponentenansätzen zur klientseitigen Webentwicklung durchzuführen. Weiterhin soll ein Vergleich, sowie eine Vor- und Nachteilabwägung der gefundenen Lösungen gegenüber dem neuen Web Components Standards aufgestellt werden. Nachfolgend sollen Anforderungen an eine mögliche Lösung erarbeitet und existierende Ansätze analysiert werden.
Basierend auf den gewonnenen Erkenntnissen sollen Strategien zur Transformation existierender Komponenten mittels der von den Web Components Standards bereitgestellten Technologien entwickelt werden. Zur Demonstration der eigenen Ideen, soll ein Werkzeug erstellt werden, welches mit einem möglichst hohem Automatisierungsgrad gegebene Plugins oder Widgets in eine Web Komponente umwandelt.
Eine abschließende Evaluation soll zeigen, mit welchem Maß an Erfolg (Erhaltung von Funktionsumfang, Erhaltung der grafischen Visualisierung…) eine Transformation bestehender Komponenten durchgeführt werden kann und welche Vor- und Nachteile durch diesen Prozess entstehen.