You are here: Wiki>SE Web>ThesesHome>ThesisDB4ECG (30 Nov 2009, GesineMilde)Edit

Studienarbeit

Entwurf einer Datenbankanbindung zur Speicherung und Anfrage von Mikroprozessereignissen

regal.jpg

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.

Topic revision: r8 - 30 Nov 2009, GesineMilde
 
  • Printable version of this topic (p) Printable version of this topic (p)