Studienarbeit
Entwurf einer Datenbankanbindung zur Speicherung und Anfrage von Mikroprozessereignissen
Projekte
Aufzeichnung des Mikroprozesses der Softwareentwicklung
Art
30% Konzeption, 70% Implementation. Voraussetzung sind theoretische oder praktische Erfahrungen mit Datenbanksystemen.
Problembeschreibung
Im Rahmen des oben genannten Projekts werden die Tätigkeiten des Programmierers soweit möglich aufgezeichnet, um "just-in-time" oder nachträglich diesen Programmierprozess - oder
Mikroprozess - zu analysieren, z.B. um nicht eingehaltene Vorgaben zu entdecken oder Hinweise auf
Defektursachen zu finden. Dazu wurde eine
Software namens ECG entwickelt, die aus der Entwicklungsumgebung
Eclipse interessante Ereignisse wie "Codeänderung", "Abspeichern" oder "Run" an den ECG-Server zu senden. Für den Fall der nachträglichen Analyse und für Forschungszwecke müssen die Daten persistent gemacht werden. Die Ereignismenge ist jedoch groß, wenn Programmierer lange beobachtet werden.
Aufgabe
Derzeit werden die Ereignisse in einem XML-Format auf Dateien gespeichert. Diese können naturgemäß sehr groß werden, so dass - auch aus Gründen der Datensicherheit - es vorzuziehen ist, dafür ein Datenbankmanagementsystem einzusetzen. Dies bietet auch die Chance, Sichten auf die Daten zu bilden. Der besondere Aspekt ist, dass die Ereignisdaten einen Zeitstempel haben, und dass daher die Anfragen häufig einen Zeitbezug haben. Das Ergebnis einer Datenbankanfrage ist also immer eine Ereignismenge.
Ziel dieser Arbeit ist es idealerweise
- Ein passendes Datenbankschema auf Basis eines passenden Datenbankmodells zu entwickeln, dessen Eignung anhand der Einfachheit/Verständlichkeit der Anfragen zu beurteilen ist
- Ein "DBTarget" für den ECG-Server auf Basis dessen Modulkonzepts zu bauen
- Ein "DBSource" zu bauen, der die Daten für den ECG-Server auch wieder lesbar macht, wobei nicht alle Ereignisse, sondern nur die von Anfrageergebnissen gesendet werden, und zwar in Echtzeit oder am Stück. Idealerweise kann die Anfrage über eine GUI eingegeben werden.
- Eine entsprechende Umgebung am Institut aufzubauen und zu evaluieren, wobei auch ein passendes DBMS ausgewählt werden muss
Wie üblich müssen vorweg die Anforderungen verstanden und die Arbeit am Ende mit einer Ausarbeitung und einem Vortrag präsentiert werden. Es kann im Falle einer umfangreicheren Evaluation des passenden Datenbankschemas die Implementierung gekürzt werden.
Ergebnis
Die Arbeit wurde durchgeführt von
JuliaSchenk und betreut von
SebastianJekutsch und
LutzPrechelt.