Ziel der Praktikumsaufgabe ist die Entwicklung eines Softwaresystems für die persistente Verwaltung der Daten einer Dokumentenmappe. Dabei ist die Problemstellung der Verwaltung verschiedener Formulare an das Bankgewerbe angelehnt. Zur Dokumentation gehören auch alle Klassen des Java-Projektes.
Inhaltsverzeichnis
1 Aufgabenstellung
2 Erläuterung der Aufgabenstellung
2.1 Interpretation der Praktikumsaufgabe
2.2 Lesbarkeit und Aufbau der Dokumentation
2.3 Bezug zur Lehrveranstaltung
2.3.1 Iterator
2.3.2 Persistenzhaltung
2.3.3 MVC-Konzept
2.3.4 Grafische Benutzerschnittstellen (GUI)
2.3.5 Nutzung von Klassenbibliotheken
3 Darstellung des Lösungsmodells
3.1 Darstellung der Lösungsidee
3.1.1 Iteratorklasse CFolder
3.1.2 Benutzungsszenarien und Dialogansichten
3.1.3 Anforderung an Klassenbibliotheken zur Realisierung des MVC-Konzepts
3.1.4 Anforderung an Klassenbibliotheken zur Realisierung der Persistenz
3.2 Darstellung der Architektur des Programmsystems
4 Programmtechnische Realisierung des Lösungsmodells
4.1 Namenskonventionen
4.2 Realisierungskonzeption
4.3 Testplan und Testergebnisse
5 Wertung des erreichten Ergebnisses
A Anhang
A.1 Anhang zur Aufgabenstellung
A.2 Die Quelltexte des Praktikums
A.2.1 Quelltexte package gse2.model
A.2.2 Quelltexte package gse2.view
A.2.3 Quelltexte package gse2.controller
A.2.4 Quelltexte package gse2.test
Zielsetzung & Themen
Die Arbeit befasst sich mit der Entwicklung einer objektorientierten Software zur persistenten Verwaltung von Dokumentenmappen im Bankwesen unter Anwendung des MVC-Konzepts, um die Handhabung variabler Datensätze effizient und strukturiert zu ermöglichen.
- Entwurf und Implementierung einer polymorphen Mengenverwaltung mittels einer Iteratorklasse.
- Konzeption und Realisierung einer grafischen Benutzeroberfläche (GUI) auf Basis des MVC-Musters.
- Umsetzung von Objektpersistenz zur dauerhaften Datenspeicherung.
- Qualitätssicherung durch automatisierte Testumgebungen und vertragsbasierte Programmierung.
Auszug aus dem Buch
Iteratorklasse CFolder
Im folgenden Abschnitt wird die in der Aufgabenstellung beschriebene Schnittstelle CFolder beschrieben. Im Großen und Ganzen habe ich mich bei der Umsetzung an die gegebene CEDL-Beschreibung dieser Klasse [S. 38] gehalten.
Die Attribute dieser Klasse sind Cursor (Integer für das aktuelle Dokument der Dokumentmenge), CustomerInformation (String für den Kundenname), DateOfFoundation (CDate für das Erstellungsdatum der Mappe) und SetOfBankDocuments (Vector für die Bankdokumentmenge).
In der nachzunutzenden Klassenbibliothek Vektor wird die Menge von Bankdokumenten abgelegt. Demzufolge werden an diese Bibliothek verschiedene Anforderungen gestellt:
• Auf der Menge gibt es eine eindeutige Ordnung (laut Aufgabenstellung „… ordered set of …“).
• Die Bibliothek stellt Methoden für das Einfügen, Löschen, Austauschen, Suchen usw. bereit.
• Wahlfreier Zugriff auf einzelne Elemente der Menge, um ein beliebiges Element zurückgeben zu können.
• Die Elemente der Menge können verschiedene Typen sein. Es muss jedoch sichergestellt werden können, dass bei einer Rückgabe, das Element wieder typgerecht gecastet werden kann.
• Da durch die Vererbung alle Elemente der Menge vom Typ CBankDocument sind, sind die polymorphen Methoden in dieser Menge auf dem CBankDocument realisierbar. Während der Laufzeit wird dann die entsprechende Methode dem Typ des Mengenelements gewählt.
Mit Hilfe einer solchen Klassenbibliothek lassen sich dann die geforderten Methoden auf die Menge SetOfBankDocuments realisieren. Ausführliche Beschreibungen der Methoden getCard(), insert(), getFirst(), getNext(), find(), getActual() und scratch() (Bezeichnungen angepasst lt. Namenskonventionen) sind im Anhang unter Quelltexte [S. 46] zu finden. Neben den geforderten Methoden auf die Menge wird eine Methode getElementAt() implementiert. Mit Hilfe dieser Methode wird das an dem übergebenden Index stehende Element zurückgegeben, falls dies möglich ist. Diese wird zum Teil von den vorhergehend genannten Methoden benutzt.
Zusammenfassung der Kapitel
1 Aufgabenstellung: Definition der fachlichen Anforderungen zur Implementierung der persistenten Dokumentenverwaltung.
2 Erläuterung der Aufgabenstellung: Detaillierte Herleitung der technischen Anforderungen und theoretischen Konzepte wie MVC und Persistenz.
3 Darstellung des Lösungsmodells: Entwurf der Systemarchitektur, der Benutzerszenarien und der Anforderungen an Klassenbibliotheken.
4 Programmtechnische Realisierung des Lösungsmodells: Beschreibung der Implementierung in Java unter Berücksichtigung von Konventionen und Teststrategien.
5 Wertung des erreichten Ergebnisses: Reflexion über den Erfolg der Umsetzung, die aufgetretenen Schwierigkeiten und potenzielle Erweiterungsmöglichkeiten.
A Anhang: Bereitstellung der CEDL-Spezifikationen sowie des vollständigen, kommentierten Quellcodes.
Schlüsselwörter
Objektorientierte Programmierung, Java, MVC-Konzept, Persistenz, Dokumentenverwaltung, Iterator, Softwarequalität, UML, JUnit, Design-Patterns, Applikationsrahmen, Klassenbibliotheken, GUI.
Häufig gestellte Fragen
Worum geht es in der vorliegenden Arbeit grundsätzlich?
Die Arbeit dokumentiert die Entwicklung eines Softwaresystems zur Verwaltung von Bankdokumenten, das als Fortführung eines vorangegangenen Praktikumsprojekts die Persistenzhaltung und eine grafische Oberfläche ergänzt.
Was sind die zentralen Themenfelder der Arbeit?
Die zentralen Felder sind die objektorientierte Modellierung, die Anwendung des Model-View-Controller-Musters (MVC), Techniken zur Objektpersistenz und die Nutzung von Klassenbibliotheken (Swing/AWT) zur GUI-Entwicklung.
Was ist das primäre Ziel oder die Forschungsfrage?
Das Ziel ist die Erstellung einer lauffähigen, wartbaren Applikation, die Dokumente persistent speichert, verwaltet und dem Nutzer über eine intuitive grafische Oberfläche zugänglich macht.
Welche wissenschaftliche Methode wurde verwendet?
Es wurde ein strukturierter Softwareentwicklungsprozess angewandt, der auf CEDL-Beschreibungen basiert, ergänzt durch testgetriebene Entwicklung (Unit-Testing mit JUnit) und eine analytische Qualitätssicherung.
Was wird im Hauptteil behandelt?
Im Hauptteil liegt der Fokus auf dem Entwurf des Lösungsmodells, der Architektur des MVC-Packages, den Namenskonventionen in Java sowie der konkreten Implementierung der Persistenz- und GUI-Logik.
Welche Schlüsselwörter charakterisieren die Arbeit am besten?
Die Arbeit lässt sich durch Begriffe wie Java-Entwicklung, MVC-Pattern, Persistenz, objektorientierte Softwarearchitektur und automatisierte Qualitätssicherung beschreiben.
Wie wird das Problem der polymorphen Mengenverwaltung gelöst?
Durch den Einsatz der Klasse CFolder, die als Iterator der 2. Art agiert und auf Basis eines Vektors eine polymorphe Liste von CBankDocument-Objekten verwaltet.
Warum wurde das MVC-Konzept für dieses Projekt gewählt?
MVC wurde bevorzugt, um eine klare Trennung zwischen Datenhaltung (Model), Benutzerschnittstelle (View) und Ablaufsteuerung (Controller) zu gewährleisten, was die Wartbarkeit und Erweiterbarkeit verbessert.
- Quote paper
- Nico Helweg (Author), 2003, Persistente Verwaltung der Daten einer Dokumentenmappe (Teil 2), Munich, GRIN Verlag, https://www.grin.com/document/31926