Page tree
Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 8 Next »

Note: Most of this page is in German. Future additions should be done in English. At some point, some good soul might translate the German "legacy documentation" to English as well.

Table of Contents

 

Diese Seite gibt Hinweise, welche bei der Anfertigung einer studentischen Arbeit an der AG Echtzeitsysteme und Eingebettete Systeme beachtet werden sollten. Dies betrifft in erster Linie Bachelor-/Master-/Studien-/Diplomarbeiten. Die Hinweise können aber auch bei der Anfertigung von Praktikumsberichten - oder auch Promotionsarbeiten - hilfreich sein.

Interaktion mit dem Betreuer

Eine gute Zusammenarbeit mit Ihrem Betreuer (dies können auch mehrere sein) ist ein wesentlicher Schlüssel für eine erfolgreiche Arbeit. Ihr Betreuer sollte Ihnen an Erfahrung und Fachwissen voraus sein - nutzen Sie dies, um zu lernen und Ihre Arbeit zu verbessern.

Betreuer sind auch Menschen. Sie helfen Ihnen gerne bei der inhaltlichen Arbeit; weniger gerne spielen sie "Antreiber", oder haben das Gefühl, dass ihre Hinweise/Ratschläge/Informationen (incl. der Hinweise auf dieser Seite) nicht wirklich Gehör finden. Grundsätzlich sollten Sie selbst es sein, welcher Ihre Arbeit vorantreibt, Fragen stellt, Besprechungen initiiert, Ihrem Betreuer unaufgefordert Leseproben zukommen lässt. Kurzum, der Betreuer sollte überzeugt sein, dass Ihre Arbeit "läuft".

Grundlage einer guten Kommunikation mit dem Betreuer ist erfahrungsgemäß Ihre Präsenz vor Ort. Wir sind normalerweise in der Lage, Ihnen einen Arbeitsplatz am Lehrstuhl einzuräumen, typischerweise im Labor. Sie sollten diesen Arbeitsplatz für Ihre Arbeit nutzen, und nicht den heimischen PC. So ergibt sich ganz von selbst ein regelmäßiger, oft informeller Austausch, z.B. im Rahmen der üblichen "Lehrstuhl-Teerunde", täglich 9:30 im Labor, zu der auch Sie herzlich eingeladen sind.

Eine Ausnahme sind Arbeiten, welche in Zusammenarbeit mit einem Industrieunternehmen angefertigt werden. Diese werden in der Regel fachlich primär von dort betreut und Sie sollten Ihren Arbeitsplatz bei dem Unternehmen haben. Hier sollten Sie den universitären Betreuer mit regelmäßigen Fortschrittsberichten (E-Mail alle 4-6 Wochen) über den Fortgang Ihrer Arbeiten informieren.

Ihre Diplomarbeit ist ein Vollzeitjob; Sie sollten also im Normalfall täglich am Arbeitsplatz sein. Wenn Sie daneben einer regelmäßigen Arbeit nachgehen, sollten Sie mit dem Betreuer absprechen, wie dies mit der Anfertigung Ihrer Abschlussarbeit vereinbart werden kann.

Zeitlicher Ablauf

Sie sollten insbesondere bei der Anfertigung der schriftlichen Ausfertigung auf die Erfahrungen des Betreuers zugreifen. Sie sollten dem Betreuer also Entwürfe Ihrer Arbeit zukommen lassen, bevor Sie die zu benotende Endversion einreichen. Ihre Entwürfe sollten dabei aus Ihrer Sicht möglichst reif sein, müssen aber noch keineswegs vollständig sein. Eine bewährte Sequenz von abzuliefernden Dokumenten ist:

AktionMasterarbeit/DiplomarbeitBachelorarbeit/StudienarbeitIdee
Gliederung3 Monate vor Abgabe6 Wochen vor AbgabeZur Halbzeit sollte man schon einen Plan haben, welche Themen in der Arbeit grundsätzlich diskutiert werden sollen. Dies muss rechtzeitig mit dem Betreuer besprochen werden.
1-2 Probekapitel4 Wochen vor Abgabe3 Wochen vor AbgabeProbekapitel sollen grundsätzliche stilistische Probleme zeigen und verhindern, dass bei der Endkorrektur alles grundsätzlich anders gemacht werden muss.
Komplette Arbeit2 Wochen vor Abgabe10 Tage vor AbgabeDie Abgabe der kompletten Arbeit vor der offiziellen Abgabe dient unter anderem dazu, dass stilistische/orthographische Korrekturen noch in die Arbeit einfließen können, bevor diese offiziell abgegeben/veröffentlicht ist. Das dient nicht nur der Verbesserung der Arbeit, sondern ist auch für den Betreuer befriedigender.

Für Arbeiten, welche in Zusammenarbeit mit einem Industrieunternehmen angefertigt werden, gilt diese Sequenz ebenso; Sie sollten hier jedoch Entwürfe, welche Sie dem universitären Betreuer zukommen lassen, vorher entsprechend von Ihrem Betreuer aus dem Unternehmen durchsehen lassen.

Notizen

Machen Sie sich während Ihrer gesamten theoretischen Arbeit Notizen darüber, was Sie gerade tun, wie Sie es tun und insbesondere: warum Sie es tun. Im Moment des Tuns ist alles noch klar, aber sobald es ans Schreiben geht wird es nicht mehr so klar sein. Tun Sie sich also einen Gefallen und schreiben Sie Notizen. Die Arbeit ist auch insofern schon nicht umsonst, als dass die Notizen eine prima Grundlage für Teile Ihrer schriftlichen Ausarbeitung werden.

Hinweise zu Implementierungen

Allgemeines

Erste Regel: "No Crashes!" Egal was Ihr System tut und welche Nutzereingaben geschehen, die Implementierung sollte nicht abstürzen oder einfrieren. Wo Annahmen gemacht werden, sollten diese explizit überprüft werden. Im Falle der Nichteinhaltung sollte eine brauchbare Fehlermeldung generiert werden, und der Anwender sollte weiter mit der Implementierung arbeiten können.

Generell: Ihre Arbeit wird sehr wahrscheinlich auch einen praktischen Teil enthalten, in welcher Sie Software oder Hardware entwickeln oder erweitern sollen. Das akademische Umfeld Ihrer Arbeit bedeutet in der Regel, dass für diese Entwicklung weniger Ressourcen - insbesondere zeitliche Ressourcen - als in einem kommerziellen Umfeld zur Verfügung stehen, und dass sich Ihre Arbeit nicht am Markt behaupten muss. Die Konsequenz daraus ist, dass Ihre Arbeit in der Regel weniger umfangreich sein sollte und weniger Features bieten sollte als ein kommerzielles Produkt. Die Konsequenz ist nicht, dass Sie ihre Implementierung weniger sorgfältig vornehmen sollen, oder schlechter dokumentieren sollen, als dies in einem professionellem Umfeld der Fall wäre. Im Gegenteil - während bei kommerziellen Produkten der Termindruck, die Notwendigkeit zu ständigen Neuentwicklungen, und zum Teil eine gewisse Ignoranz auf Kunden- und/oder Entwicklerseite den Qualitätsstandard senken können, sollte die von Ihnen hier erstellte Implementierung Ihr „Meisterstück“ sein, welches zeigt, wozu Sie (im positiven Sinne) fähig sind. Es gilt hier zwar, dass Produktfehler keinen erheblichen wirtschaftlichen Schaden verursachen können oder gar Menschenleben gefährden können; jedoch ist auch hier Ihre Arbeit in der Regel nicht isoliert und „nur“ Teil Ihrer Ausarbeitung, sondern etwas, was andere anwenden und weiterentwickeln sollen. Die Qualität (und Benotung) Ihrer Arbeit wird (unter anderem) an der Qualität Ihrer Entwicklung gemessen.

Zur Verdeutlichung: wenn Ihre Arbeit eine Machbarkeitsstudie (proof of concept) sein soll, bedeutet dies, dass Sie Ihre Arbeit in Absprache mit dem Betreuer auf eine wohldefinierte Teilmenge des Gesamtproblems einschränken sollen. Es sollte für den Anwender klar erkennbar und vorhersagbar sein, was Ihre Implementierung leistet und was nicht. Sinnvolle Einschränkungen können zum Beispiel sein: „die Transformation betrachtet nur pure signals, keine valued signals ... Es können keine hierarchieübergreifenden Transitionen gezeichnet werden“. Keine sinnvolle Einschränkung ist: „Mal funktioniert das Einfügen eines Zustands - mal stürzt das System ab“. Wenn im Laufe Ihrer Implementierungsarbeit ersichtlich wird, dass bestimmte Implementierungsziele nicht erreicht werden können (aufgrund falscher Einschätzung des Problems, oder aufgrund schlechter Ressourcenplanung), sollte sofort mit dem Betreuer abgesprochen werden, wie das Problem sinnvollerweise eingeschränkt werden könnte; es sollte nicht zu einer schlampigen Entwicklung führen. Schließlich gilt: es ist für etwaige Teamkollegen/Nachfolger von Ihnen eine wesentlich dankbarere Aufgabe, auf Ihrer kleinen, sauber entwickelten Arbeit aufzusetzen und diese um neue Features zu erweitern, als zu versuchen, Ihre große, defekte Arbeit auf einen brauchbaren Qualitätsstandard anzuheben - oder diese ganz wegzuschmeißen und von vorne anzufangen.

Grundsätzlich gilt: Die Software ist „sauber“ zu schreiben und zu dokumentieren, unter Beachtung eines evtl. vorhandenen Projekthandbuchs. Die Qualität und Leserlichkeit Ihrer Software sowie der Dokumentation geht in die Bewertung Ihrer Arbeit mit ein.

Reviews und Ratings

Ist die Implementierung Teil des KIELER Projekts, so müssen zur Erhaltung des Qualitätsstandards Design und Code Reviews durchgeführt werden. Wie dies praktisch abläuft und wie die sich daraus ergebenden Ratings aussehen wird auf der KIELER Projektseite erläutert.

Technische Umsetzung

Editor/IDE

Prof. von Hanxleden would recommend Emacs as a very flexible and powerful Latex editor. Hauke (haf) recommends Texlipse as an easy-to use and also powerful Eclipse plug-in. Christoph Daniel (cds) recommends using Kile, a KDE LaTeX editor that is fast, powerful, and reasonably easy to understand and to use.

Using Git

The files associated with the thesis should be kept in the group's Git repository. The main purpose is to prevent loss of data. It also facilitates access for fellow group members if needed, and to allow on-line publication.

The main tex file for a thesis should be <name of directory>.tex. See also Git/Structure for the canonical naming scheme. Eg, the bachelor thesis of user xyz can be found in a repository named xyz-bt in the Thesss project of our  Gitorious system, in a file named xyz-bt.tex. If there is a talk to "defend" the thesis (Bachelor-Kolloquium, Disputation), the talk should also be included in this repository, and should be named <name of directory>-talk.tex; eg xyz-bt-talk.tex. In case your thesis should be made available on-line, the same names should be used, eg, xyz.pdf.

See also the notes on preparing a paper, eg regarding which files should be kept in revision management (ie, should be checked into Git) and which shouldn't.

Das ToDo-Paket

Es kommt häufig vor dass man sich während des Schreibens Anmerkungen zum Text machen oder Dinge später hinzufügen möchte. Damit dies einfacher zu verwalten ist, steht ein extra ToDo-Paket zur Verfügung. Mit diesem Paket lassen sich Platzhalter für Grafiken, Anmerkungen zum Text in verschiedenen Farben oder einfache ToDo-Kommentare mit Referenz zum Text schnell und unkompliziert realisieren. Eingebunden wird das Paket wie folgt.

 \usepackage{todonotes}

Eine kurze, detaillierte Anleitung kann man hier nachlesen:

 http://www.tex.ac.uk/tex-archive/macros/latex/contrib/todonotes/todonotes.pdf

Die Erstellung einer Bibliographie

Zur Erstellung einer Bibliographie mit LaTeX ist das Beispiel-Dokument zu Rate zu ziehen. Die dort benutzte BibTeX-Datenbank cau-rt.bib wird Lehrstuhl-weit von Mitarbeitern und Studenten gemeinsam benutzt um Literatur-Daten zu sammeln und zu publizieren. Alle Literaturdaten, die in studentischen Arbeiten anfallen, müssen also in dieser Datei verwaltet werden. Wichtig: Bitte vermeiden Sie bibtex-Warnungen beim Hinzufügen von neuen Einträgen! Weitere Hinweise zur Beachtung finden sich hier

Das Erstellen eines deutschsprachigen Literaturverzeichnisses ist mit Hilfe des Paketes bibgerm und dem bibliographystyle gerplain möglich.

 \usepackage[ngerman]{babel}
 \usepackage{bibgerm}
  .
  .
  .
 \bibliographystyle{gerplain}

Links zu BibTeX:

Arbeit innerhalb des Lehrstuhl-Netzwerkes

Beim Arbeiten im Lehrstuhl-Netzwerk werden keine zusätzlichen Maßnahmen notwendig; der LaTeX-Zugriff auf die BibTeX-Datenbank ist automatisch über das Netzwerk gewährleistet. Für verändernde Zugriffe auf die Datenbank muss mit Subversion gearbeitet werden.

Arbeit außerhalb des Lehrstuhl-Netzwerkes

Beim Arbeiten außerhalb des Lehrstuhl-Netzes wird es notwendig die Datenbank dem lokal installierten LaTeX-System zur Verfügung zu stellen. Eventuell muss die dazugehörige kpse-Datenbank reinitialisiert werden. Für verändernde Zugriffe auf die Datenbank muss mit Git gearbeitet werden.

Zugriff auf das Git-Repository der BibTeX-Datenbank

Für Zugriff auf das Git-Repository der BibTeX-Datenbank ist folgender Befehl zu verwenden

git clone git@…:resources/bib.git

Nach dem Auschecken des Moduls bib steht die Datei cau-rt.bib zur Verfügung. Hinweise zur genauen Syntax sind dem Kopf der Datei und den Beschreibungen der BibTeX-Sprache zu entnehmen.

Publishing the thesis on-line

If your advisor has agreed that your thesis should be made available on-line, and you have signed your  consent, then you can publish this as follows. Say your thesis is xyz-bt.pdf. ("bt" for Bachelor theses, "mt" for Master theses, "diss" for dissertations.) To upload this, use the command

scp xyz-bt.pdf biblio@…:/home/biblio/public_html/downloads/theses

If you don't have the right permissions to do this, ask your advisor or the System Administrator to publish this for you.

Then, check that your thesis is indeed available under the URL

 http://rtsys.informatik.uni-kiel.de/~biblio/downloads/theses/xyz-bt.pdf

Note: The name of this file should follow the canonical naming scheme used in subversion (Subversion/Structure ), even if your thesis is for some reason not in the subversion system.

Source Code

Von Ihnen im Laufe der Arbeit entwickelte Software (oder Hardware-Beschreibungen) sind Teil Ihrer Arbeit. Dies bedeutet: Die Software sollte als Listing in Ihrer Ausarbeitung erscheinen; typischerweise (wenn es sich um mehr als ca. zwei Seiten handelt) als Anhang, mit angemessen kleiner Schriftgröße, evt. zweispaltig. Es sollte eine Übersicht über die Software in geeigneter Form gegeben werden, z.B. in Form von Klassendiagrammen mit Erläuterungen. Hinweise zum Einbinden von Code in LaTeX finden sich in dem Beispieldokument (s.o.).

Hinweise zur Benotung

Die Benotung studentischer Arbeiten richtet sich zunächst nach der jeweils anzuwendenen Studienordnung; für eine Diplomarbeit im Diplomstudiengang Informatik sieht z.B. §20(2) der Diplomprüfungsordnung vor: „Die Diplomarbeit ist von der Lehrkraft, die sie ausgegeben hat und einer oder einem weiteren Prüfungsberechtigten zu beurteilen.“

Zur Beurteilung einer Diplomarbeit wird generell ein schriftliches Gutachten erstellt, welches die jeweilige Arbeit individuell würdigt (incl. Note) und an das Prüfungsamt weitergeleitet wird. Es hängt dabei von der jeweiligen Aufgabenstellung ab, welche Leistungen im Einzelfall erwartet werden; so sind z.B. die Anforderungen hinsichtlich der konkreten Umsetzung bei einer stark anwendungsbezogenen Arbeit anders als bei einer eher theoretischen Arbeit. Gewisse Anforderungen und Erwartungen hinsichtlich der Qualität der Arbeit und der Vorgehensweise des Studierenden sind jedoch allgemein gültig, und z.T. auch bereits in der jeweiligen Prüfungsordnung konkret genannt. So sieht z.B. §19(1) der Diplomprüfungsordnung vor: „Die Diplomarbeit [...] soll zeigen, dass die Kandidatin oder der Kandidat in der Lage ist, innerhalb einer vorgegebenen Frist ein Problem aus dem Fach Informatik selbständig nach wissenschaftlichen Methoden zu bearbeiten.“ Hier sind also bereits drei Kriterien genannt (Fristeinhaltung, Selbständigkeit, Wissenschaftlichkeit). Ein etwas detaillierterer Kriterien-/Bewertungskatalog ist in den beiden folgenden Tabellen angegeben. Diese sind zunächst für Diplomarbeiten ausgelegt, finden aber - mit entsprechenden Abwandlungen - auch für Studien-, Bachelor- und Masterarbeiten Anwendung.

Merkmal    Punkte
Qualität der LösungLediglich Lösungsansätze; geringes Vertrauen in die LösungLösung von TeilproblemenVollständige Lösung; gutes Vertauen in die LösungVollständige, gute Lösung und Behandlung zusätzlicher Fragestellungen 
Punkte1 - 78 - 1415 - 2122 - 28max. 28
Wissenschaftliche ArbeitstechnikSystemlose Durchführung; nur Literatur aus dem engsten UmfeldEntwicklung einer Systematik erst nach Drängen des Betreuers; geringes LiteraturvolumenSelbständige Aufarbeitung der relevanten Literatur; grobe Einordung der Ergebnisse in das wissenschaftliche UmfeldSelbständige und strukturierte Erfassung des Standes der Technik und der Literatur; systematische Einordung der Ergebnisse
Punkte1 - 67 - 1213 - 1819 - 24max. 24
Anwesenheit und Interaktion mit BetreuerSelten anwesend, Interaktion nur auf Initiative des Betreuers; schwer erreichbar; weist nicht auf Probleme hinUnregelmäßige Interaktion, jedoch generell erreichbar und häufig anwesendRegelmäßige, selbst initiierte Interaktion; Stand der Arbeit generell nachvollziehbarInformiert Betreuer regelmäßig über Stand der Arbeit; weist umgehend auf aufgetretene Probleme oder erreichte Zwischenziele hin; regelmäßige Anwesenheit
Punkte1 - 45 - 89 - 1213 - 16max. 16
Eigeninitiative und ZielstrebigkeitGeht schwierigen Problemen aus dem Weg; mangelnder zeitlicher Einsatz; Zeitplan wird deutlich überzogenTeilweise Eigeninitiative; Zeitplan im Wesentlichen eingehaltenZiel wurde mit großer Eigeninitiative erreicht; Zeitplan wurde eingehaltenEigeninitiative bei der Entwicklung der Thematik, auch bei schwierigen Problemen; Zielbewusste Zeiteinteilung
Punkte1 - 45 - 89 - 1213 - 16max. 16
Qualität der AusarbeitungAusarbeitung mit schweren Mängeln: fehlende Systematik, Schreibfehler, schlechtes Deutsch, unübersichtliche Verzeichnisse usw.Nur teilweise systematische Darstellung der Ergebnisse; Weitschweifigkeiten oder Knappheiten, aber akzeptable GestaltungSystematische, einleuchtende Gliederung, aber leichte Schwächen in Sprache und GestaltungSystematische Gliederung, flüssige Sprache, Bilder mit klarer Aussage, deutliche Darlegung der Zusammenhänge und Ergebnisse
Punkte1 - 45 - 89 - 1213 - 16max. 16
    Summemax. 100

Die Umrechnung einer Punktzahl in eine Zensur ergibt sich unter Anwendung dieses Katalogs aus der folgenden Tabelle.

Note1,01,31,72,02,32,73,03,33,74,0
Mindestpunktzahl96888072645648403224

Weiterführende Hinweise

  • Eine sehr zu empfehlende, einführende Veranstaltung zur Präsentation und Erstellung wissenschaftlicher Arbeiten („Dokumentieren und Präsentieren“) bietet regelmäßig (ca. alle zwei Jahre) Prof. Luttenberger am Lehrstuhl für  Kommunikationssysteme an.
  • „Einige typographische Grundregeln und ihre Umsetzung in LaTeX“ von  Werner Struckmann (TU Braunschweig),  PDF
  • „Anmerkungen zur Rechtschreibung“ von  Werner Struckmann (TU Braunschweig),  PDF
  • Falls Sie die Arbeit auf englisch verfassen: eine Reihe guter Ratschläge und weiterer Querverweise (wie z.B. den klassischen Strunk & White) finden sich auf  Henning Schulzrinnes Seite „ Writing Technical Articles“.
  •  Wie schreibe ich eine gute Diplomarbeit? - Eine Anleitung der Uni-Oldenburg, z.T. spezifisch für Oldenburg; auch dort gibt es noch weiterführende Links.
  • No labels