In dieser Arbeit werden Frameworks und Spezifikationen im Zusammenhang mit Komponentenmodellen untersucht, welche zur Entwicklung von Web-Anwendungen dienen. Dazu wird ein Überblick über die de-facto-Standards der komponentenbasierten Softwareentwicklung gegeben. Die Theorie der komponentenbasierten Softwareentwicklung bestimmt verschiedene Erwartungen und Anforderungen an Softwarekomponenten. Durch einen Vergleich der Komponentenmodelle werden die jeweiligen Vor- und Nachteile untersucht und gegenübergestellt. Somit soll festgestellt werden, ob die vorgestellten Komponentenmodelle den Erwartungen und Anforderungen entsprechen. Betriebe und Organisationen haben gewisse Anforderungen anWeb-Anwendungen und deren Architekturen. Ziel ist es, die wichtigsten dieser Anforderungen festzustellen und in einem Kriterienkatalog zusammenzufassen. Mittels dieses Kriterienkatalogs werden die de-facto-Standards der komponentenbasierten Softwareentwicklung in einer Literaturstudie verglichen. Praktisches Ziel der Diplomarbeit ist die Entwicklung eines Softwareprototypen in Form eines Terminkalenders. Für diese Aufgabe soll ein geeignetes Komponentenmodell evaluiert werden. Anhand dieses praktischen Beispiels wird geprüft, ob die für dieses Komponentenmodell zur Verfügung stehenden Frameworks und Spezifikationen, den Anforderungen aus dem Kriterienkatalog gerecht werden.
Inhaltsverzeichnis
1 Einleitung
1.1 Zielsetzung
1.2 Gliederung
2 Beschreibung von Komponentenmodellen
2.1 Grundlagen der komponentenbasierten Softwareentwicklung
2.1.1 Begriffe und Definitionen
2.1.2 Grundidee der komponentenbasierten Softwareentwicklung
2.2 Die de-facto-Standards der komponentenbasierten Softwareentwicklung
2.2.1 Die Common Object Request Broker Architecture
2.2.2 Die Enterprise JavaBeans der Java 2 Enterprise Edition
2.2.3 Die Assemblies des .NET Frameworks
2.2.4 Web-Services
2.2.5 Vergleich der Komponentenmodelle
3 Beschreibung von Web-Anwendungen
3.1 Grundlagen
3.1.1 Begriffe und Definitionen
3.1.2 Anforderungen an Web-Anwendungen als Kriterienkatalog
3.2 Architekturen
3.2.1 Mehrschichtige-Architekturen
3.2.2 Middleware
3.2.3 Model-View-Controller-Muster
4 Architekturen und Lösungsstrategien für Web-Anwendungen
4.1 Common Object Request Broker Architecture (CORBA)
4.1.1 Architektur
4.1.2 Lösungsstrategien zu den Anforderungen an Web-Anwendungen
4.2 Java 2 Enterprise Edition (J2EE)
4.2.1 Architektur
4.2.2 J2EE-Anwendungen nach dem Model-View-Controller-Muster
4.2.3 Lösungsstrategien zu den Anforderungen an Web-Anwendungen
4.3 .NET Framework
4.3.1 Architektur
4.3.2 Lösungsstrategien zu den Anforderungen an Web-Anwendungen
4.4 Web-Services
4.4.1 Architektur
4.4.2 Lösungsstrategien zu den Anforderungen an Web-Anwendungen
5 Terminkalender als komponentenbasierte Web-Anwendung
5.1 Anforderungen an das Produkt
5.1.1 Begriffe für KALENDARO
5.1.2 Die Akteure von KALENDARO
5.1.3 Funktionale Anforderungen
5.1.4 Nichtfunktionale Anforderungen
5.2 Auswahl des Komponentenmodells
5.2.1 Common Object Request Broker Architecture
5.2.2 .NET Framework
5.2.3 Java 2 Enterprise Edition
5.2.4 Web-Services
5.2.5 Ausgewähltes Komponentenmodell
5.3 Architekturentwurf
5.3.1 Architektur der Web-Anwendung
5.3.2 Architektur der Synchronisationsanwendung
5.4 Entwicklung der Web-Anwendung
5.4.1 Verwendete Entwicklungswerkzeuge und Plattformen
5.4.2 Der Persistenzmechanismus von KALENDARO
5.4.3 Entwicklung der Synchronisationsanwendung
5.5 Bewertung der Web-Anwendung und Schlussfolgerungen
5.5.1 Bewertung der Anforderungen aus dem Kriterienkatalog
5.5.2 Schlussfolgerungen
6 Ausblick
7 Zusammenfassung
Zielsetzung & Forschungsthemen
Die vorliegende Arbeit untersucht Frameworks und Spezifikationen im Kontext von Komponentenmodellen für Web-Anwendungen. Das primäre Ziel besteht darin, durch einen Vergleich existierender de-facto-Standards (CORBA, J2EE, .NET, Web-Services) eine fundierte Grundlage zu schaffen, um diese anhand eines Kriterienkatalogs für Web-Anwendungen zu evaluieren und die Eignung in einem praktischen Softwareprototypen (Terminkalender) zu prüfen.
- Analyse und Vergleich der de-facto-Standards für die komponentenbasierte Softwareentwicklung
- Evaluierung von gängigen Softwarearchitekturen für Web-Anwendungen
- Erstellung eines Kriterienkatalogs zur Bewertung von Web-Anwendungen
- Entwicklung eines Softwareprototypen zur praktischen Validierung der Architekturmodelle
- Analyse der Eignung der gewählten Komponentenmodelle für spezielle Anwendungsfälle wie Synchronisationsanwendungen
Auszug aus dem Buch
Die Common Object Request Broker Architecture
CORBA - the Common Object Request Broker Architecture is OMG’s showcase specification for application interoperability independent of platform, operating system, programming language - even of network and protocol.
Object Management Group
Dieser Unterabschnitt gibt eine Einführung in das Komponentenmodell von CORBA. Zuerst wird auf die Object Management Architecture eingegangen. Danach wird das Komponentenmodell von CORBA genauer beschrieben, welches in der CORBA-Components Spezifikation dargestellt wird (siehe [CORBA 02]). Wegen des enormen Umfangs der Spezifikation kann hier natürlich nur ein Überblick gegeben werden. CORBA wird getrennt aus Clientsicht und aus Entwicklersicht betrachtet. es werden die so genannten Container, die Schnittstellen-Beschreibungen und die XML Beschreibungen der Archive erläutert.
Zusammenfassung der Kapitel
1 Einleitung: Diese Einleitung führt in die Relevanz der komponentenbasierten Softwareentwicklung für das Web ein und definiert das Ziel der Diplomarbeit.
2 Beschreibung von Komponentenmodellen: Dieses Kapitel erläutert die theoretischen Grundlagen der komponentenbasierten Softwareentwicklung und stellt die wichtigsten Standards (CORBA, EJB, .NET, Web-Services) vor.
3 Beschreibung von Web-Anwendungen: Hier werden Grundlagen und gängige Architekturmuster wie das Model-View-Controller-Muster für Web-Anwendungen sowie ein relevanter Kriterienkatalog erarbeitet.
4 Architekturen und Lösungsstrategien für Web-Anwendungen: In diesem Kapitel werden die genannten Komponentenmodelle anhand des Kriterienkatalogs auf ihre Praxistauglichkeit für Web-Anwendungen hin analysiert.
5 Terminkalender als komponentenbasierte Web-Anwendung: Dieser Abschnitt beschreibt die praktische Entwicklung des Softwareprototypen KALENDARO, inklusive Anforderungsanalyse, Architekturentwurf und Evaluierung.
6 Ausblick: Der Ausblick diskutiert zukünftige Trends, insbesondere die Entwicklung hin zum semantischen Web und dessen Integration mit Web-Services.
7 Zusammenfassung: Dieses Kapitel resümiert die wesentlichen Ergebnisse der Arbeit und zieht Schlussfolgerungen hinsichtlich der Eignung der untersuchten Komponentenmodelle.
Schlüsselwörter
Komponentenmodelle, Web-Anwendungen, Softwarearchitektur, CORBA, Enterprise JavaBeans, .NET Framework, Web-Services, Software-Wiederverwendung, J2EE, Kriterienkatalog, Modell-View-Controller-Muster, Synchronisation, SOAP, WSDL, UDDI
Häufig gestellte Fragen
Worum geht es in dieser Arbeit grundsätzlich?
Die Arbeit befasst sich mit der Untersuchung und dem Vergleich von Komponentenmodellen und deren Eignung für die Entwicklung von Web-Anwendungen.
Was sind die zentralen Themenfelder?
Die zentralen Themen sind die komponentebasierte Softwareentwicklung, der Entwurf von Softwarearchitekturen für das Web, die Definition von Kriterien zur Qualitätsbewertung und die praktische Umsetzung mittels eines Softwareprototypen.
Was ist das primäre Ziel der Forschungsfrage?
Das Ziel ist es, zu evaluieren, ob moderne Komponentenmodelle wie CORBA, J2EE, .NET und Web-Services den spezifischen Anforderungen von Web-Anwendungen gerecht werden.
Welche wissenschaftliche Methode wird verwendet?
Es wird ein theoretischer Vergleich basierend auf einer Literaturstudie sowie ein praktisches Software-Engineering-Projekt (Prototypentwicklung) durchgeführt.
Was wird im Hauptteil behandelt?
Der Hauptteil analysiert die theoretischen Konzepte hinter Komponentenmodellen, definiert Kriterienkataloge für Web-Anwendungen und wendet diese auf die genannten Technologien an, gefolgt von einer praktischen Implementierung.
Welche Schlüsselwörter charakterisieren die Arbeit?
Die Arbeit ist durch Begriffe wie Komponentenmodell, Web-Anwendungen, J2EE, .NET, CORBA, Web-Services und Software-Architektur geprägt.
Warum wurde J2EE für den Prototyp gewählt?
Aufgrund der Verfügbarkeit freier Open-Source-Entwicklungswerkzeuge, der Produktreife der Spezifikation sowie dem vorhandenen Know-how der beteiligten Forschungseinrichtung fiel die Entscheidung auf die J2EE-Plattform.
Welche Rolle spielen Web-Services für den Prototypen?
Web-Services wurden speziell für die Synchronisationsanwendung eingesetzt, um eine möglichst entkoppelte und technologieunabhängige Kommunikation zwischen dem Terminkalender und dem mobilen Handheld-Gerät zu ermöglichen.
- Quote paper
- Christian Osterrieder (Author), 2004, Komponentenmodelle für Web Anwendungen, Munich, GRIN Verlag, https://www.grin.com/document/26619