Unterstützung unterschiedlicher Programmiersprachen und Plugins in einem Werkzeug für kollaborative Softwareentwicklung (DPP XVI)

(Supporting Various Programming Languages and Plug-Ins Within a Tool For Collaborative Software Development)

Bachelorarbeit von Alena Kiwitt (betreut von Stephan Salinger und Karl Beecher)

Diese Arbeit untersucht Die Kompatibilität von Saros und verschiedenen Sprach-Plugins für die Entwicklungsumgebung Eclipse.

Übersicht

Ausgehend von einer bereits existierenden Plugin-Kompatibilitätsliste soll eine Auswahl verschiedener Eclipse-Plugins im Zusammenspiel mit Saros untersucht werden. Dabei gilt es zunächst vor allem, im Rahmen einer umfassenden Anforderungsanalyse die Kriterien zu ermitteln, die ein erfolgreiches Zusammenwirken zwischen Saros und den ausgewählten Plugins ausmachen. Diese Anforderungskriterien werden einerseits für Saros sowie andererseits für die untersuchten Plugins ermittelt. Weiterhin werden konkrete Testfälle entworfen, die zukünftig für Kompatibilitätstest herangezogen werden können. Diese Testfälle werden auf die vorher ausgewählten Plugins angewendet, sodass am Ende eine aktualisierte und erweiterte Plugin-Kompatibilitätsliste vorliegt.

Ziele

Da Saros unter Eclipse Classic entwickelt und getestet wird, wird standardmäßig zunächst nur die Programmiersprache Java unterstützt. Einige Plugins für andere Programmiersprachen wurden zusammen mit Saros getestet und manche haben sich auch als in irgendeiner Weise kompatibel herausgestellt. Demnach unterstützt Saros momentan Java, C/C++, PHP und einige andere Sprachen. Es wäre sehr wünschenswert, die Flexibilität von Eclipse dahingehend auszunutzen, dass alle für Eclipse verfügbaren Sprach-Plugins auch zusammen mit Saros verwendet werden können. Dies würde sich sicherlich positiv auf die Verbreitung von Saros auswirken, denn je mehr Sprachen unterstützt werden, desto mehr Programmierer haben die Möglichkeit, Saros zu verwenden und durch ihr Feedback wiederum die Weiterentwicklung von Saros zu unterstützen.

Die wesentlichen Ziele dieser Arbeit sind daher:

Anforderungsanalyse

Während der Anforderungsanalyse wurde zunächst Saros auf Kompatibilitätskriterien untersucht und eine Reihe von Anforderungen identifiziert. Diese Anforderungen wurden in die folgenden Bereiche unterteilt:

Bei der Untersuchung der ausgewählten Eclipse-Plugins wurde zunächst angenommen, es ließe sich eine allgemeingültige Methode finden, mit der man Anforderungen der teils doch recht unterschiedlichen Plugins identifizieren könnte. Dies war so leider nicht möglich. Stattdessen konnten aber einige für alle Plugins geltenden Feature-Klassen identifiziert werden, die bestimmte Arten von Funktionalitäten zusammenfassen und ihre Auswirkung auf die Kompatibilität mit Saros bewertet werden.

Feature-Klassen:

Weiterhin wurden einige Anhaltspunkte genannt, die die Bewertung und Einordnung verschiedener Plugin-Funktionalitäten in eine der Feature-Klassen erleichtern soll.

Testfälle

Um die Erfüllung der von Saros gestellten Kompatibilitätsanforderungen zu überprüfen, wurden zahlreiche konkrete Testfälle entsprechend der in der Anforderungsanalyse identifizierten Bereiche entworfen.

Die Erfüllung der Kompatibilitätsanforderungen der ausgewählten Plugins kann mit einer Reihe von generischen Testfällen untersucht werden, die entsprechend der identifizierten Feature-Klassen erstellt wurden.

Getestete Plugins

Im Rahmen dieser Arbeit wurden verschiedene Sprachplugins für die Entwicklungsumgebung Eclipse getestet. Eine genaue Übersichtstabelle über die Ergebnisse der Kompatibilitätstests findet sich unter ThesisDPPXVITestedPlugins.

Wochenberichte

Siehe Weekly Reports für mehr Informationen.

Comments