Integrierte Entwicklungsumgebungen (Integrated Development Environment - IDE) haben zwar bereits zu bedeutenden Fortschritten bei der Produktivitätssteigerung für den einzelnen Entwickler geführt, aber bislang fehlte eine Plattform, auf der diese IDEs eine echte Unterstützung der teambasierten Entwicklung bieten können. In der Praxis sind die Mitglieder von Entwicklerteams nämlich genauso stark mit der Zusammenarbeit in ihren Teams wie mit dem Schreiben des Codes, dem Definieren von Anforderungen oder dem Überwachen des Elementstatus beschäftigt.

Die Jazz-Plattform basiert auf der Erkenntnis, dass ein Entwicklungsprojekt letztendlich dann erfolgreich ist, wenn die Mitglieder des Entwicklerteams ohne großen Aufwand zusammenarbeiten und die Informationen zu allen Aspekten ihrer Arbeit im Entwicklungsprozess schnell gemeinsam nutzen können.

Eine große Herausforderung bestand darin, dass die verschiedenen Formen der Dokumentierungsaufgaben zum einen die Voraussetzung für den Erfolg eines Teams sind und eine Arbeit darstellen, die für eine effiziente Zusammenarbeit der Teammitglieder von wesentlicher Bedeutung ist, zum anderen aber leicht vergessen oder nicht ordnungsgemäß ausgeführt werden.

Die Jazz-Plattform begegnet diesen Herausforderungen durch die konzeptionelle Einführung und Schematisierung von Teams, Zusammenarbeit im Kontext und Arbeitselementen.

Teams (auch Teambereiche und Teamzentrale)

Die Schematisierung des Teams ist ein wesentlicher Aspekt des Jazz-Modells für die Onlinezusammenarbeit. Die Jazz-Plattform setzt Teambereiche ein, in denen ein Team und dessen Teammitglieder zusammen mit ihren Aufgabenbereichen und Berechtigungen angegeben sind. Teambereiche werden außerdem verwendet, um das Projekt und den Prozess des Teams zu verwalten.

Die Artefakte eines Teams werden in der Ansicht "Teamartefakte" angezeigt, in der Benutzer auf diejenigen Artefakte zugreifen können, für die sie eine Berechtigung besitzen.

In der Ansicht "Teamzentrale" kann ein Benutzer auf einen Blick verschiedene Teamereignisse und -aktivitäten verfolgen. Ausgehend von dieser Ansicht kann der Benutzer die Neuigkeiten für das Team, den Buildstatus, den Arbeitselementstatus und alle weiteren sich ändernden Aspekte des Entwicklungsprozesses prüfen.

Gemeinsam stellen die Teambereiche und die Ansichten "Teamartefakte" und "Teamzentrale" den Teammitgliedern die Artefakte und Informationen bereit, die für die Effizienz des Teams erforderlich sind. Nach der Schematisierung des Teambegriffs sollen nun die Möglichkeiten für die Zusammenarbeit von Teams vorgestellt werden.

Zusammenarbeit im Kontext

Zusammenarbeit im Kontext ist ein wichtiges Motiv des Jazz-Modells für die Onlinezusammenarbeit. Dank der Jazz-Komponenten kann ein einzelner Benutzer mühelos und direkt in seinem aktuellen Taskkontext erkennen, von welchem Benutzer und aus welchem Grund Aktionen ausgeführt werden. Zusammenarbeitsmechanismen wie Instant Messaging über E-Mail und Abonnements von Änderungen sind in Jazz-Komponenten integriert, so dass die Benutzer ihren Entwicklungskontext nicht verlassen und in einen separaten Zusammenarbeitskontext eintreten müssen. Der Zusammenarbeitskontext ist in den aktuellen Kontext der Entwicklungstask integriert. Dank dieser Methode können die Benutzer ihre Arbeit an den primären Tasks vollständig aufrecht erhalten.

Schwerpunkt der Zusammenarbeitsmethode in der Jazz-Plattform ist die Entwicklung von Verfahren für die gemeinsame Informationsnutzung, die beispielsweise die folgenden Aspekte unterstützen:

Jeder dieser Aspekte der Zusammenarbeit ist für den Erfolg eines Entwicklerteams von wesentlicher Bedeutung.

Arbeitselemente

Ein weiterer wichtiger Bestandteil des Jazz-Modells für die Onlinezusammenarbeit ist die Automatisierung der Dokumentierung von Tasks und der zugehörigen Informationen. Wie bereits erläutert besteht ein wichtiger Aspekt der Zusammenarbeit im Kontext darin, dass sich Benutzer auf ihre Hauptaufgaben konzentrieren können, während Zusammenarbeitsmechanismen in den vorhandenen Taskkontext integriert werden. Gleiches gilt für die verschiedenen Dokumentierungsaufgaben, die für die Verwaltung eines jeden Entwicklungsprojekts erforderlich sind.

Die Jazz-Plattform führt das Konzept der Arbeitselemente ein, um die Automatisierung vieler Dokumentierungsaufgaben zu unterstützen, die mit dem Entwicklungsprozess einhergehen. Ein Arbeitselement ist eine generalisierte (und erweiterbare) Form einer Entwicklungstask.

Beispiel für ein Arbeitselement

Typische Arbeitselementtypen sind Fehler, Erweiterungen und Tasks. Arbeitselemente werden jedoch auch zu den folgenden Zwecken eingesetzt:

Arbeitselemente geben die Entwicklungstasks, die Teammitglieder, von denen sie ausgeführt werden, den Grund für die Ausführung der Tasks, Diskussionen, Anhänge und alle für eine Task relevanten Aspekte an. Teammitglieder können Arbeitselemente prüfen, abfragen, übertragen und abonnieren, damit sie über Aktualisierungen informiert werden. Arbeitselemente sind ein wesentliches Element des Jazz-Modells für die Onlinezusammenarbeit.