Web Engineering Jürgen Großmann Gunnar Mätzler Günther Hölbling
Teil 1: Einführung Komplexität von Internet Anwendungen Internet Krisen Probleme von Internet Systementwicklung
Web Engineering – eine neue Disziplin Web Engineering vs. Software Engineering Multidisziplinärer Charakter von Web Engineering Web Engineering Aktivitäten Spezial Themen
Anforderungen vernünftige und einwandfreie Methotologie strikter und nachvollziehbarer Prozess bessere Entwicklungstools und eine Menge guter Richtlinien
Web Engineering … verwendet wissenschaftlich – ingenieurmäßige Prinzipien und systematische Ansätze für Entwicklung Einsatz Wartung
Komplexität von Internet Anwendungen Komplexität und Reichweite variieren kurzlebigen Services im kleinen Rahmen umfangreiche verteilte Systeme Web basierte Anwendungen können in 7 Gruppen unterteilt werden:
Online Zeitungen, Kataloge, Newsletters, Manuals Kategorie Beispiele Informational Online Zeitungen, Kataloge, Newsletters, Manuals Online Klassifikationen, E-Books Interaktive (benutzerspezifische Information oder Zugang) Registrierungsformulare, benutzerspezifische Präsentation, Online Spiele, …
Electronic Shopping, Bestellservices, Online Banking Transactional Electronic Shopping, Bestellservices, Online Banking Workflow Online Planungssysteme, Inventurmanagment, Überwachung von Arbeitsablaufen,… Collaborative Work environment Verteilte Systeme und Werkzeuge für Autoren, Designer, Programmierer,…
Chat Rooms, Online Marketplaces und Online Auktionen cummunities, marketplaces Chat Rooms, Online Marketplaces und Online Auktionen Web portals Internet Provider, Suchmaschinen, Elektronische Einkaufszentren
Simple Web Based Systems Advanced Web Based Systems Einfache Internet Sites die hauptsächlich Textinformation anbieten Komplexe Web Sites Informationsgehalt ändert sich nicht – bleibt statisch Information ist dynamisch und ändert sich mit der Zeit und Benutzerbedürfnissen Einfache Navigation schwierig zu navigieren und Information zu finden
Stand alone Systeme Integrierte Systeme mit Datenbank, Verteilungs- und Verwaltungssysteme Hohe Performanz hat nicht Priorität Fordert hohe Performanz und ständige Verfügbarkeit Meist nur von einer einzigen Person oder einem kleinen Team entwickelt Benötigt ein großes Entwicklungsteam mit Fachkenntnissen aus unterschiedlichen Bereichen wird vor allem für Informationsverteilung in eher unwichtigen Systemen wird bereitgestellt für Applikationen mit anwendungskritischen Aufgaben
Internet Krisen Art der Entwicklung, Einsatz und Wartung geben Anlass zur Besorgnis Es mangelt an Konstanz Systematik vernünftigen Methoden Qualitätssicherung
Folgen schlechter Entwicklung Gelieferte Systeme entsprechen in 84% der Fälle nicht den geschäftlichen Anforderungen Terminverspätungen sind mit 79% schon beinahe dir Regel
In 63% der Fälle wird das veranschlagte Budget überschritten In 53% der Fälle stimmt nicht einmal die erforderliche Funktionalität des „ausgelieferten“ Softwareproduktes Lieferbare Software ist zu 52% von schlechter Qualität
Probleme von Internet Systementwicklung Es wird kein Wert gelegt auf: Anforderungserhebung und Analyse Entwicklungsmethoden und Prozesse Performanzauswertung Konfiguration und Projektmanagement Wartbarkeit und Erweiterbarkeit
Irrtümer Web Engineering ist primär Programmierproblem und nicht ein Entwicklungsproblem Web Engineering ist eine Kunst
Web Engineering – eine neue Disziplin Web basierte Systeme ändern sich ständig wachsen in ihren Anforderungen, Inhalten und Funktionalität … viel stärker als traditionelle Software
Web Engineering vs. Software Engineering Web Engineering ≠Software Engineering Web Engineering übernimmt viele Software Engineering Prinzipien
Multidisziplinärer Charakter von Web Engineering Web Engineering verlangt Wissen und Fachkenntnisse aus mehreren Disziplinen wie Systemanalyse und Design Software Engineering Hypermedia & Hypertextengineering Requirement Engineering
Human –Computer Interaktion Benutzer Interface Entwicklung Test, Modellierung und Simulation Projekt Management Graphik, Design und Präsentation.
Web Engineering Aktivitäten Web Engineering ist ein Prozess – kein Event Web Engineering ist ein ganzheitlicher Ansatz für Konzeption und Entwicklung Implementierung Performanzauswertung und Wartung
Special Issues I Daniel Schwabe entwirft ein System, dass Reuse ermöglicht. Er legt Wert auf Design Reuse und nicht zu sehr auf Component Reuse Goschka und Schranz beschreiben Ansätze mit UML, XML und CORBA
Special Issues II Web gestützte Fernausbildung wird immer beliebter Simulationen sind dabei ein nützliches Werkzeug de Lara und Alfonseca liefern hierfür Programmier Tools
Fortsetzung… Gunnar Mätzler Günther Hölbling