Mylyn dreht den Spieß einfach um

EM: Beinflusst Mylyn die nicht funktionalen Anforderungen einer Entwicklungsumgebung (wie etwa den Speicher- oder Leistungsverbrauch)? Welche Erfahrungswerte liegen in dieser Hinsicht vor?

Kersten: Das Ziel von Mylyn war immer, keine merkliche Beeinträchtigung bezüglich des verbrauchten Speichers oder der Geschwindkeit zu erzeugen. Das ist dadurch möglich, dass das Programm nicht mit der Größe des Systems, mit dem gearbeitet wird, skaliert, sondern mit dem relativ konstanten Strom von Interaktionsereignissen, der durch das Arbeiten mit dem System generiert wird. Jegliche Verschlechterung des Speicherbedarfs oder der Geschwindigkeit hängt also wahrscheinlich mit einem Problem einer Erweiterung oder einer Konfiguration zusammen. Dieses Problem wird uns dann idealerweise als Bug mitgeteilt, sodass wir mit hoher Priorität daran arbeiten können.

„Mylyn soll keine Beeinträchtigung des Speichers oder der Geschwindigkeit erzeugen.“

EM: Zwischen Tasktop Technologies und SpringSource besteht seit einiger Zeit eine Partnerschaft. Welche Vorteile hat das für die User?

Kersten: Unsere Partnerschaft ist dadurch entstanden, dass wir Entwicklern von Enterprise-Anwendungen die gleichen Vorteile des Task-fokussierten Interfaces bieten wollten, wie Java- und Eclipse-Plug-in-Entwicklern. Ich bin ziemlich glücklich über diese Partnerschaft, weil eine große Anzahl von Java-Programmierern Enterprise-Anwendungen entwickeln und vor gar nicht allzu langer Zeit habe ich mir den Kopf darüber zerbrochen, wie wir sie unterstützen können.
Wir waren nicht in der Lage, genügend Community-Ressourcen zu aktivieren, um die Unterstützung von Mylyn auf viele weitere Produkte auszudehnen, die mit Enterprise-Anwendungsentwicklung zu tun haben. Dann passierten zwei sehr interessante Dinge: Christian Dupuis und ich haben uns auf der JAX getroffen und haben die Open-Source-Zusammenarbeit initiiert, woraus die Mylyn-Bridge für Spring Beans wurde, die jetzt mit der Spring IDE vertrieben wird. Dann habe ich mich mit Adrian Colyer getroffen und wir haben festgestellt, wie viel Potenzial in der Orientierung der Enterprise-Anwendungsentwicklung an Mylyns Task-fokussiertem Interface steckt.
Auf der Spring Experience Conference im Dezember haben Entwickler einen Blick auf die Ergebnisse unserer Partnerschaft werfen können: die SpringSource Tool Suite (STS). Genau so wie das Spring Framework mit seiner Leistung und Einfachheit die Entwicklung von Java-Anwendungen vereinfacht hat, erreicht die STS dies für die Enterprise Application IDE. Wir haben eine gute Integration zwischen Task-Kontext und den Spring-spezifischen Werkzeugen auf die Beine gestellt. Übrigens wird SpringSource zur EclipseCon eine kostenlose Version für nicht kommerzielle Zwecke veröffentlichen.

EM: Gibt es Pläne, in der Zukunft ein „Mylyn für Projekt-Manager“ anzubieten, mit zusätzlichen Möglichkeiten der Konzept-Planung anhand von Milestones? Mit dem Produkt Tasktop wird es eine kommerzielle Version von Mylyn geben. Welche zusätzlichen Funktionalitäten bringt Tasktop mit?

Kersten: Das wesentliche Ziel von Mylyn ist, ein erweiterbares Task-fokussiertes Interface Framework mit einem Kern von Werkzeugen anzubieten. Um dieses Framework zu entwickeln haben wir Referenz-Implementierungen erstellt, die das Task-fokussierte Programmieren unterstützen, und das mit einem Schwerpunkt auf die Unterstützung der Technologien, die im Eclipse-Ökosystem genutzt werden (z.B. Java, Plug-ins und Bugzilla). Unsere Idee war, ein Framework für Benutzerschnittstellen zu schaffen, das durch eine Reihe von Planungs- und Management-Tools erweitert werden kann. Obwohl die Task-Liste und der Task-Editor eine Menge an Task-Verwaltungs-Aufgaben übernehmen, gibt es doch einige sehr interessante Unterschiede im Vergleich zur Funktionsweise von Planungs- und Management-Tools. Zum Beispiel haben die Mylyn-Konnektoren für Rally und Xplanner großartige Features für das Management von agilen Projekten, die in die Task-Liste integriert sind. Andere Task Repositories wie etwa CollabNet und JIRA haben auch einige beeindruckende Planungsfunktionalitäten, aber sie haben sehr wenig mit der sehr agilen Herangehensweise von Rally gemeinsam. Aus diesem Grund bemühen wir uns, die Gemeinsamkeiten in das Framework einzubinden. Es sollen jedoch auch weitere auf Mylyn aufbauende Integrationen möglich sein, die einen zusätzlichen Mehrwert in Bezug auf Planungs- und Management-Features bieten und auf das jeweilige Produkt oder den Webservice zugeschnitten sind.
Bei der Idee eines „Mylyn für Projektmanager“ kamen noch interessantere Problem auf. Programmierer verbringen den Großteil ihres Arbeitstages innerhalb der IDE, was bei Projektmanagern jedoch nicht der Fall ist. Da Mylyn selbst auf die elegante Welt der Eclipse Workbench limitiert ist, haben wir nach einigen Anstrengungen festgestellt, dass wir Manager und andere Nichtprogrammierer mit Mylyn allein nicht unterstützen können. So entstand der Gedanke des Task-fokussierten Desktop: Tasktop. Tasktop ist ein Closed Source Tool, das auf der Basis von Eclipse gebaut wurde und für welches Mylyn eine Integrationslayer zwischen dem Task-fokussierten Interface und den proprietären Web- und Desktopanwendungen anbietet, die von Managern häufig genutzt werden.

„Mit Tasktop werden Manager und Nichtprogrammierer unterstützt, mit Mylyn allein war das nicht möglich.“

Wenn beispielsweise eine Task aktiviert wird, stellt Tasktop automatisch das Microsoft-Word-Dokument und den Google-Calendar-Termin wieder her, an dem gerade gearbeitet wurde – genauso, wie Mylyn die Java-Klassen wiederherstellt, die gerade editiert wurden. Wir hoffen natürlich, dass mehr und mehr Anwendungen auf der Eclipse-Plattform umgesetzt werden, aber wir haben auch festgestellt, dass es wichtig ist, Integrationen mit kommerziellen E-Mail-Tools und anderen Anwendungen anzubieten, um Managern mit Mylyn die gleichen Produktivitätsvorteile bieten zu können wie Programmierern. Da alle Tasktop-Programmierer ebenfalls häufig diese Funktionalitäten nutzen, haben wir auch eine Plug-in Version von Tasktop für Eclipse herausgebracht und diese nutze ich z.B. seitdem ich sowohl im Management als auch in der Programmierung tätig bin. Als Geschäftsführer und CTO von Tasktop kann ich mir einfach nicht vorstellen, dass ich für die tägliche Programmierarbeit noch Zeit hätte, wenn Mylyn und Tasktop nicht auf diese enorme Art und Weise meine die Produktivität steigern würden. Glücklicherweise beseitigt das Task-fokussierte Interface tatsächlich den Aufwand, um zwischen Kontexten zu wechseln, denn ein ständiges Multitasking ist für die meisten von uns zur Normalität geworden.

EM: Vielen Dank für das Gespräch.

Mik Kersten ist Geschäftsführer und CTO des Unternehmens Tasktop Technologies, Project Lead von Mylyn, Committer des AspectJ-Projekts und Mitglied des Eclipse Architecture Council. Während seiner Tätigkeit als Forschungsmitarbeiter bei Xerox PARC hat Mik die erste aspektorientierte Programming-Tool-Unterstützung mit AspectJ Plug-ins für JBuilder, NetBeans, Visual Studio und Emacs implementiert. Er entwickelte Mylyn und die Task-fokussierte Interface-Technologie während er seine Promotion an der University of British Colombia abschloss. Miks Leidenschaft ist die Entwicklung von Eclipse-basierten Tools, die Programmierern die Leben erleichtern und ihnen mehr Zeit geben, kreativ zu arbeiten.

Die Fragen stellte Karsten Voigt, der als IT-Architekt und Consultant für IBM Global Business Services tätig. Sein Hauptaufgabenbereich liegt in der Beratung von Kunden im Automobilumfeld. In seiner Freizeit beschäftigt er sich mit Projekten auf Basis der Eclipse Rich Client Platform und Java Swing.

Den Artikel von Karsten Voigt, „Hinter den Kulissen von Mylyn“ – Struktur und Erweiterungen von Mylyn 2.0 finden Sie im aktuellen Eclipse Magazin, Vol. 14.
Kommentare

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht.