Evaluation eines kooperativen Entwicklungswerkzeuges zur

Transcrição

Evaluation eines kooperativen Entwicklungswerkzeuges zur
Evaluation eines kooperativen Entwicklungswerkzeuges
zur Unterstützung von Projektteams am Beispiel von IBM
Rational Team Concert.
Diplomvortrag
Frank Langanke
Arbeitsbereich Softwaretechnik
Software Engineering Group
Agenda
Anforderungen an kooperative
Entwicklungswerkzeuge
2. Praxisbericht: Evaluation von Jazz und
Rational Team Concert
3. Ergebnisse der Evaluation
1.
Werkzeug und Umgebung
Entwicklungswerkzeug
Entwicklungsumgebung
Anforderungen
Integration
Kooperation
Datenintegration
Gemeinsame
Dokumentenformate
UML
Quellcode
Gemeinsame
Datenbank
UML
UML
Präsentationsintegration
Kommandozeile
Browser
IDE
Prozessintegration
Automatisierung und
Steuerbarkeit
Lösung: API oder
Skriptsprachen
Anforderung Kooperation
Koordination
Projektplanungswerkzeuge
Source Control Management (SCM)
Kommunikation
Direkte: Face-To-Face,Chat, Email, Telefon
Indirekte: SCM, Bugtracker, Kommentare
Awareness
Instant-Messenger
Projekt- und Team-Bereiche
Anforderung Kooperation
Teams:
Gruppe verfolgt ein
gemeinsames Ziel
Communities:
Wissensverteilung
Gegenseitige Unterstützung von Personen
mit gleichen Fachhintergrund
Communities of Practice (CoP)
Agenda
Anforderungen
an kooperative
Entwicklungswerkzeuge
Praxisbericht: Evaluation von Jazz und
Rational Team Concert
Ergebnisse der Evaluation
Konzept der Fallstudie
Aktives Projekt in eine
Entwicklungsumgebung
portieren, die auf Jazz
basiert
Entwicklerinnen und
Entwickler mit der neuen
Umgebung arbeiten
lassen
Erfahrungen in
qualitative Interviews
erfassen
CVS
Bugzilla
Eclipse
Excel
Jazz Team Server
Team Concert
Jazz und Team Concert
Metapher für
Softwareentwicklung als
Jazzkonzert
Entwicklungsumgebung
basierend auf einer
Client-Server-Architektur
Jazz Team Server bietet
Dienste an
Rational Team Concert
(RTC) ist ein Client
Jazz: Mehrdeutiger Begriff
Jazz ist eine
TechnologiePlattform
(Middleware)
Der Jazz
Team Server
ist ein
Produkt: DB +
API
Umgangsspra
chlich ist alles
Jazz
Jazz Team Server
Jazz Foundation Services
Plugin RTC
RTC
Plugin B
Plugin C
Werkzeug B Werkzeug C
Team Concert Funktionen
Jazz Team Server
Work Items
SCM
Build Server
Dashboard
Bug Tracking
Task Tracking
Version Control
Team Builds
Personal Builds
Reporting
Events
Repository, Project Areas, Teams, Users, Process, Cooperation,
Events, Data Warehouse, Resource Service, Administration
Eclipse
+ RTC Plugins
Browser
RTC Konzepte Überblick
Repository
Project Area
Project Area
Stream
Stream
Team Area
Team Area
Iterations
Milestone 1
Iterations
Milestone 2
Milestone 3
Simple Team Process
Milestone 1
Milestone 2
Agile Process
Milestone 3
Kooperation: Projekt Area
Kooperation: Iterationsplanung
Kooperation: Work Items
Kooperation: Workspaces
Workspaces
Stream
Repository
Workspace
Repository
Workspace
Repository
Check-in
Local
Workspace
Load
Local
Workspace
Local
Kooperation: Awareness
Agenda
Anforderungen
an kooperative
Entwicklungswerkzeuge
Praxisbericht: Evaluation von Jazz und
Rational Team Concert
Ergebnisse der Evaluation
Bewertung RTC
Erfolgsfaktoren Einsatz koop. Werkzeuge
Harte
Weiche
Bewertung Jazz
Evaluation
zu kurz für abschließende
Bewertung
Koordinations- und AwarenessUnterstützung durch gemeinsame
Materialien positiv empfunden
Navigation durch einen Arbeitsprozess
teilweise zu lang
Erfolgsfaktoren koop. Werkzeuge
Einfache
Bedienung
Automatisierung (Prozess-Integration)
Integration der Werkzeuge (Daten- und
Präsentations-Integration)
Nähe zum Material, aus dem Kontext
heraus
Nutzen muss höher sein, als der Aufwand
Erfolgsfaktoren koop. Werkzeuge
Anpassung/Zuschnitt
auf Projekt, Umgebung, Prozess, Rolle
Integration in den Arbeitsfluss
Erfolgsfaktoren koop. Werkzeuge
Informationen
filtern
Reduzierung der Komplexität,
Überforderung vermeiden
Nur relevante Informationen für eine Rolle
Visualisierung
Erfolgsfaktoren koop. Werkzeuge
Einführung
unterstützen
Konzepte und Begriffe erklären
Praktische Anleitungen
Eingewöhnungszeit beachten
Erfolgsfaktoren koop. Werkzeuge
Projektplanung
und –verwaltung als
Arbeit wahrnehmen
Explizite Kooperation ist auch Arbeit
Unterstützung von Aufwandschätzung
Erfolgsfaktoren koop. Werkzeuge
Motivation
schaffen
Bewusstsein für den Arbeitsprozess
schaffen
Verständnis für Notwendigkeit schaffen
Vorteile für jeden einzelnen erklären
Team als Ganzes motivieren
Festen Rahmen vorgeben
Erfolgsfaktoren koop. Werkzeuge
Missbrauch
vorbeugen
Machpolitische Zwecke verschiedener
Teams
Zwischen einzelnen Personen
Problem der Überwachung und des
Datenschutzes
Fazit
Kooperation
und Integration sind die
Themen für Entwicklungswerkzeuge
„Weiche“ Faktoren für den Einsatz von
kooperativen Werkzeugen sind ebenso
wichtig wie die Werkzeuge selbst
Fragen.
Evaluation eines kooperativen Entwicklungswerkzeuges zur
Unterstützung von Projektteams am Beispiel von IBM
Rational Team Concert.
Einsatz in den Übungen?
Kostenlos
für akademischen Einsatz
Erfahrungsbericht
Andrew Meneely and Laurie Williams:
On Preparing Students for Distributed
Software Development with a
Synchronous, Collaborative
Development Platform
Koop. Umgebung mit Open Source
Werkzeugen
IDE:
Eclipse
SCM: CVS / Subversion
Bug-/Tasktracking: Bugzilla / JIRA / Trac
Dokumentation: Wiki
Buildmanagement: Anthill / Maven /
Cruise Control
Integration: Mylyn