Fachbereich 6 — Informatik und Medien
FB VI
Informatik und Medien (Archivbetrieb auf fb6-alt.beuth-hochschule.de)

Softwareorientierte Abschlussarbeiten

Leitfaden, Autor Prof. Franzen

Leitfaden zum Anfertigen softwareorientierter Diplomarbeiten

Leitfaden zum Anfertigen softwareorientierter Diplomarbeiten

TFH Berlin, FB Informatik, Allgemeine Informatik
Autor: Prof. Dr. Helmut Franzen
Der FBR hat diesen Vorschlag mit Beschluß 13/6/169.o vom 24.11.1992 begrüßt.
Softwareorientierte Diplomarbeiten in der Informatik haben zum Ziel existierende oder geplante Systeme softwaretechnisch zu realisieren. In der Arbeit müssen deshalb sowohl der fachliche Kern (aus der fachtechnischen Sicht) als auch das Softwaresystem in allen Entwicklungsschritten mit den in der Informatik üblichen Methoden und Dokumenten beschreiben werden. Art und Umfang dieser Dokumentation hängt von den Anforderungen der jeweiligen Fachdisziplin und vom Betreuer der Diplomarbeit ab.

Vorbereitend sollten Sie unbedingt ein Textverarbeitungssystem beherrschen, do daß Sie sich nicht erst in der "heißen" Phase der Diplomarbeit mit den Geheimnissen der Textverarbeitung vertraut machen müssen. Der Lohn für diese Investition ist eine sauber formatierte Arbeit mit allen Extras moderner Textsysteme wie Fußnoten- und Indexverwaltung, Grafikeinzug und vieles mehr.

Folgende Teile sollte jede Diplomarbeit enthalten:

1.
Einleitung
Eine Einleitung bietet die Möglichkeiten den Sinn und Zweck der Diplomarbeit für einen Durchschnittsinformatiker (ohne die Spezialkenntnisse, die Sie jetzt haben) verständlich zu beschreiben. Hier können Sie Hintergründe darstellen, wie die Arbeit und das Thema entstanden und selbstverständlich für Ihre Arbeit werben. Interessierte Leser entscheiden hier, ob diese Arbeit für sie fachlich interessant ist.
2.
Aufgaben-
stellung
Durch eine klare Beschreibung der Aufgabenstellung wird die zu lösende Aufgabe deutlich. Vorhandene Teillösungen oder -systeme können hier ebenfalls dargestellt werden. In vielen Fällen ist es auch hilfreich Sachverhalte oder Problemstellungen zu beschreiben, die nicht zur Aufgabenstellung gehören (Abgrenzung).
3.
Fachliches
Umfeld
Dieser Teil beschreibt das fachliche Umfeld der Aufgabenstellung. Hier werden die wesentlichen fachlichen Begrifflichkeiten, die für die Aufgabe relevanten Problemstellungen und Lösungsansätze des Fachgebietes vorgestellt. Der Sprachgebrauch sollte einen direkten Bezug zum Fachgebiet haben. Die notwendigen Darstellungsmethoden, die Art und der Umfang der Beschreibung hängen wesentlich von der jeweiligen Fachdisziplin ab und sollten im Dialog mit dem Betreuer entschieden werden. Beispielsweise wird sich die Beschreibung eines Hotelreservierungssystems sehr von einer Beschreibung mathematischen Transformationen auf Grafikobjekte unterscheiden.
4.
Lösungs-
ansätze
Nach der Beschreibung des fachlichen Umfeldes können ausgewählte (vielleicht alle?) für die Aufgabenstellung relevanten Probleme vorgestellt, Vor- und Nachteile bestehender Lösungen argumentiert und die voraussichtlich angestrebte (weil vorteilhafte) Lösung herausgestellt werden.
5.
Anforderungs-
definition
Hier werden die Grundlagen für das zu entwickelnde Softwaresystem definiert. Zwar noch aus fachtechnischer Sicht werden hier die Anforderungen an das geplante Softwaresystem in möglichst formaler Form spezifiziert. Es sollen hier keine Lösungen präsentiert werden, sondern möglichst präzise die Anforderungen (Sollkonzept) an das geplante Softwaresystem mit seinen Schnittstellen, Informationsflüssen und Systemfunktionen dokumentiert werden. Verwendete Methoden können z.B. SA, SADT, Petri-Netze oder andere sein.
Das Ergebnis ist ein für die Systementwicklung verwendbares Pflichtenheft. Über Art und Umfang des Pflichtenhefts sollten Sie mit Ihrem Betreuer sprechen.
6.
System-
entwurf
Auf der Basis des Pflichtenhefts werden aus softwaretechnischer Sicht die Anforderungen an das System spezifiziert. Hierzu gehört minimal eine Beschreibung auf höherem Niveau (Modulebene), eine auf mittlerem Niveau (Struktogramme, Pseudocode oder Spezifikation von Prozeduren (Funktionen) sowie die Beschreibung der für das System essentiellen Datenstrukturen (z.B. als Datenlexikon). Typische Beschreibungen sind die Modulhierarchie (oder Modulgraph), eine Spezifikation aller Module mit ihren Schnittstellen (inklusive Zweck, Ein-/Ausgabe), sowie eine Spezifikation aller in den Modulschnittstellen liegenden Prozeduren und Funktionen.
Bestandteil des Entwurfs sollten nicht nur die jeweiligen Ergebnisse, sondern auch die Beschreibung des Entwicklungsweges (inklusive verworfener Lösungen) sein.
7.
Realisierung
Selbstverständlich sollte Realisierung auch in Ihrer Arbeit abgehandelt werden. Aus der Sicht der Softwaretechnik stellt sie aber nur der kronende Abschluß der Arbeit dar. Hier können die realisierungsspezifischen Probleme (z.B. mit der Implementierungssprache) und das Testkonzept inkl. der protokollierten Testergebnisse dargestellt werden. Wichtige, komplexe oder besonders interessante Systemteile können auch im Programmcode dargestellt werden. Bitte aber Hinweis 12 (Programm-Listings) beachten!
8.
Bedienungs-
anleitung
Wie läßt sich das entwickelte System bedienen? Welche Fehlermeldungen existieren? Was sind die Ursachen? Wie muß der Benutzer auf auftretende Bedienungs- oder Systemfehler reagieren? Bedienungsanleitungen sollten auf den Kenntnisstand und Sprachgebrauch des zukünftigen Anwenders zugeschnitten sein. In der Form und Aufmachung können SIe ein Aushängeschild für Ihre Arbeit sein. Übersichtsdarstellungen wir Menübäume, Befehlslisten und/oder Systaxdiagramme erleichtern die Benutzung eines Systems umgemein und gehören heute zum Standard guter Dokumentationen. Neben der Einzeldarstellung von Befehlen und Funktionen können die Aufzeichnung von Beispielsitzungen, Fallbeispielen das Verständnis für das System wesentlich vertiefen.

(Anmerkung: Je nach Art des entwickelten Systems ist es manchmal sinnvoll die Bedienungsanleitung in ein größeres Kapitel Anwenderdokumentation einzubetten.)

9.
Zusammen-
fassung und
Ausblick
Lehnen Sie sich zurück von Ihrem Terminal und versuchen ein wenig Abstand zu den vielen Detail-Problemen Ihrer Diplomarbeit zu gewinnen:
Was war wirklich wichtig bei der Arbeit?
Wie sieht das Ergebnis aus?
Wie schätzen Sie das Ergebnis ein?
Gab es Randbedingungen, Ereignisse, die die Arbeit wesentlich beeinflußt haben?
Gibt es noch offene Probleme?
Wie könnten diese vermutlich gelöst werden?
10.
Literatur-
verzeichnis
Nicht jedes Rad muß man selbst erfinden. Kluge Leute lassen denken und übernehmen die besten Lösungen. Allerdings muß detalliert darauf hingewiesen werden aus welchen Artikeln, Manuskripten und Büchern Anregungen und Lösungen entnommen wurden (z.B. Kennzeichnung als Zitat, Verweise im Text). Das ist keine Stilfrage, sondern kann bei Nichtbeachtung Ihre eingene Leistung in Frage stellen. Deshalb notieren Sie konsequent während der ganzen Anfertigung der Diplomarbeit alle verwendeten Literaturquellen, verweisen Sie in Ihrer Arbeit auf alle benutzten Quellen und listen diese in einem eigenen Teil Literatur Ihrer Diplomarbeit auf!
11.
Index-
verzeichnis
Oft ist es äußerst mühselig, Schlüsselbegriffe oder spezielle Aspekte eines Systems gezielt in einer großen Arbeit zu finden. Hier hilft die Verwendung von Indexeinträgen, die im Indexverzeichnis auf alle vorkommenden Textstellen verweisen.
12.
Programm-
listings
Als Software-Spezialist können Sie selbstverständlich hervorragend programmieren. Das wird vorausgesetzt und sollte nicht die primäre Leistung eines Informatikers sein. Dennoch macht es oft Sinn dem interessierten Leser Einblick in den Source-Code zu gewähren. Hier bietet es sich an, Programm-Listings in Form eines extra gebundenen Anhangs zur Diplomarbeit zu dokumentieren. Weniger an Programmierdetails Interessierte können sich dann "unbeschwerter" der eigentlichen Arbeit widmen.
Äußere Form Neben den oben aufgeführten inhaltlichen Aufbau spielt die äußere Form der Arbeit ebenfalls eine wichtige Rolle für die Lesbarkeit und das Gesamtverständnis. Einige bewährte minimale Regeln sind:
  • Bilder, Grafiken, Übersichten, Zeichnungen verwenden. Diese durchnummerieren und im Text darauf Bezug nehmen.
  • Rechtschreibung anwenden!
  • Umlaute (ä, ü, ö) statt (ae, ue, oe) verwenden.
  • Sparsamen Gebrauch von Schrifttypen machen (max. 2-3).
  • Layoutvorschläge guter Textsysteme nutzen.

Viel Erfolg bei Ihrer Arbeit!