Mit Interesse habe ich den Artikel von Golo über Scrum-Teams und seine Meinung zu räumlicher Nähe in agilen Teams gelesen. Der Titel seines Artikels ist durchaus provokant: “Räumliche Nähe wird überbewertet“.
Nun, dem muss ich deutlich widersprechen. Genau das Gegenteil ist der Fall – und sowohl sein Artikel als auch die Kommentare dazu sind in meinen Augen eine Bestätigung: Räumliche Nähe wird einfach noch viel zu oft unterschätzt!
Professional Engineering
Ich möchte das Beispiel von Golo aufgreifen, in dem er die gute Zusammenarbeit zwischen ihm und Peter schildert:
“… Peter Bucher und ich sind ein solches Team. David Tielke und ich sind ein solches Team. Beide habe ich in meinem Leben noch nicht all zu oft getroffen – jeden von beiden höchstens fünf Mal. Und dennoch harmoniert die Zusammenarbeit in einem Ausmaß, das für Außenstehende nicht nachvollziehbar ist.
Auch wenn uns hunderte von Kilometern trennen, führen wir regelmäßig Programmieren in Paaren durch – per Skype und Teamviewer. Und die Zusammenarbeit funktioniert einwandfrei. Keiner von uns käme auf die Idee, zu sagen, dass wir effektiver oder effizienter sein könnten, wenn wir gemeinsam vor einem PC arbeiten würden.
Vermutlich wären wir dies noch nicht einmal, weil dann nicht jeder seine vertraute Arbeitsumgebung hätte, in der er sich rundum wohlfühlt…. “
Das Beispiel ist ein Zeugnis von professioneller Software-Entwicklung. Da arbeiten offensichtlich zwei Profis zusammen. Sehr gut. Golo leitet daraus ab, dass es nicht zwingend notwendig sei, Teammitglieder an einem Ort, in einem Gebäude, in einem Raum zu haben, um effektiv ein “Team” zu sein. Nun, das mag ja schön und gut sein. Aber Golo: Hast Du denn Vergleiche? Und wenn ja, hast Du gemessen, wie “effektiv” denn beides ist? Ich befürchte nein. Wäre dem so, dann wäre mit großer Wahrscheinlichkeit Dein Fazit anders ausgefallen.
Was ich damit zum Ausdruck bringen will, ist, daß Golo und Peter wohl nie in einem Raum über längere Zeit zusammen gearbeitet haben. Ich unterstelle das jetzt einfach einmal Golo & Peter; bitte korrigiert mich und verzeiht mir, wenn dem nicht so ist. Es dient mir zur Illustration meiner Perspektive zum Thema.
Also, wäre dem so, so hätte Golo gar keinen Vergleich der Effektivität & Effizienz des Teamgefüges zwischen ihm und Peter. Beide sind ausgewiesene Profis in der Software-Entwicklung und schaffen aus der Distanz gemeinsam gute und effiziente Teamarbeit. Der Artikel von Golo beweist es. Man stelle sich nur vor, welche Produktivität und Ingenieursleistung möglich wäre, wenn zwei solche Profis an einem Tisch arbeiten würden. Wow.
Damit sind wir auch schon an einem wichtigen Punkt. Agile Software-Entwicklung und deren Verfahrensweisen behaupten nicht, dass es notwendig sei, ein Team an einem Fleck zu haben, um (gut) Software zu entwickeln. Aber sie behaupten, dass sich spätestens mittelfristig die Produktivität & Effizienz eines Teams steigert, wenn sie an einem Fleck miteinander zusammenarbeiten. Diese Behauptung ist kein Wunschtraum, sondern messbar & belegbar.
Doch es gibt noch einen weiteren, ganz entscheidenden Aspekt der Forderung nach Teamnähe in der Agilität. Golo überspringt in seiner Betrachtung meines Erachtens die Interdisziplinarität agiler Teams. Das ist für mich besonders verwunderlich, zumal er in seinem gelungenen Artikel über die Feature-Orientierung in agilen Methoden sich selbst genug Indizien gibt, die interdisziplinäre Aufstellung von Teams zu fordern & zu fördern.
Agile Teams sind Interdisziplinär
Was heisst das? Das heisst, erst einmal, das Entwickler alleine kein Team sind. Zumindest mal in der agilen Software-Entwicklung nicht. Ein agiles Team ist ein Team, welches eigenständig dazu in der Lage ist, das geforderte Produkt bzw. deren Features ausliefern zu können. Manchmal – besser gesagt: eher selten – reichen dazu Entwickler. Doch meist braucht es mehr, viel mehr. Es braucht Produktmanager, Systemingenieure, Usability-Experten, Designer, Tester und manchmal sogar noch mehr, um ein Feature eines Produktes wirklich fertigstellen zu können.
Ein agiles Team ist ein Team, welches all diese Rollen und Aufgabenbereiche berücksichtigt und mit den Teammitgliedern umsetzen kann. Dass heisst nicht unbedingt, dass Designer ein “fester Bestandteil” des Teams sein muss, wenn er nur zwei Websites designen soll, das Produkt aber weitaus mehr darstellt (z.B. im Backend oder durch Dienste). Doch wichtig ist hier die Erkenntnis, dass ein agiles Team interdisziplinär ist; idealerweise sogar mit dem Kunden (oder Kundenvertreter) an seiner Seite.
Vor diesem Hintergrund macht die Forderung nach räumlicher Nähe von Teammitgliedern in einem Team noch viel mehr Sinn. Leider gibt es noch viel zu oft die Situation, dass Entwickler von der Marketing-Abteilung die Anforderungen über ein Feature (<Ironie>als “Story” natürlich, haha</Ironie>) in einem “agilen” Ticketsystem vorgesetzt bekommen. Die Entwickler “sprinten” dann und liefern das Ergebnis an die Testabteilung, um danach ein Paket der Infraktruktur bzw. Installation-Engineers “über den Zaun” zu werfen. In meinen Augen haben es solche Teams echt schwer, denn sie sind nicht agil, sondern fragil.
Keine Scheu vor Transparenz
Die Emergenz, die durch interdisziplinare Teams entsteht, ist nämlich erst dann wirklich mess- und spürbar, wenn die Kommunikationsmittel als auch die Kommunikationsbarrieren untereinander so gering wie möglich ist. Doch nicht nur gute Kommunikation ist ein Ziel der Co-location. Ein aus meiner Sicht wesentlich wichtigerer Faktor ist der Faktor der Transparenz.
Durch die Nähe zueinander sieht man auch, was der andere so macht. Soll heissen, man lernt seinen Tagesablauf, seine Aufgaben, seine Tools, seine Herausforderungen – na eben das ganze Arbeitsumfeld. Umgekehrt sehen andere, mit welchen Dingen man selbst tagtäglich konfrontiert ist und was es tatsächlich bedeutet, Software zu entwickeln. Durch die Transparenz entsteht mehr Verständnis zu der Aufgabe und der Leistung des anderen Teammitglieds. Man versucht sich gegenseitig zu helfen und aufzubauen. Das wiederum hilft der Kommunikation und der Produktivität im Team.
Abschließend kann ich nur sagen, dass ich nicht nur ein Befürworter von räumlicher Nähe bin, sondern als Agilist versuche, so nah wie möglich an meinen Teammitgliedern und dem Kunden dran zu sein. Manchmal macht man es sich meiner Meinung nach zu einfach, wenn man Distanzen unter gemeinsam arbeitenden Kollegen als gegeben hinnimmt.
Be Agile!
Ich möchte in diesem Zusammenhang gerne nochmal an zwei Punkte des agilen Manifests erinnern: People over Process (and Tools), sowie Collaboration over Contracting. Für mich steht fest: wer von sich behaupten möchte, agile Software-Entwicklung zu betreiben, der wird früher oder später die Vorteile von räumlicher Nähe von Teams erkennen und versuchen, diese Nähe von Teams so gut wie möglich herzustellen. Alles andere sind in meinen Augen nur Lippenbekenntnisse und Halbwahrheiten über Agilität.
byAndré WendtonNovember 6th 2010Danke für diesen Beitrag! Der Hinweis auf unterdisziplinäre Teams ist interessant, so hab ich das noch gar nicht gesehen.
Auch Kostjas Ergänzungen bzgl. Kommunikation kann ich nur unterschreiben.
by.NET Stories: Digitale Erfahrungen » Blog Archive » Das Agile Team in NahaufnahmeonAugust 26th 2010[...] antwortete auf seine Aussage mit dem Artikel “Räumliche Nähe wird unterschätzt“. Gut. Man könnte jetzt vieles wahrnehmen. Zum Beispiel könnte man wahrnehmen, das ich [...]
bySebastianonAugust 23rd 2010Eine Leseempfehlung mal aus der projektspezifischen Ecke zu dem Thema von einem Mann der schon lange im Geschäft ist:
“Adrenalin-Junkies und Formular-Zombies” (Tom DeMarco u.A.) http://amzn.to/c94FL3
Kapitel 19 – Offshore Torheiten
byPhilipp SchillingonAugust 23rd 2010Hallo zusammen,
).
sehr interessante Beiträge zu einem sehr interessanten Artikel! Ich möchte Kostjas Eintrag noch etwas unterstreichen. Ich persönlich erachte die persönliche Nähe für sehr wichtig, denn die “1st Level Language” ist nun mal (nonverbal) die Körpersprache und erst dann kommt die verbale Sprache, die es uns ermöglicht, auf eine Art und Weise zu abstrahieren etc., wie es mit Mimik und Gestik kaum möglich wäre (quasi die Rich Language Application
Natürlich mag es Teams wie Golo und Peter geben, die auch auf Distanz harmonieren. Dafür war aber sicherlich ein persönliches vis-à-vis mehr als hilfreich, ich behaupte sogar notwendig. Die meisten Teams müssen sich erstmal beschnuppern, Eigenheiten des anderen kennenlernen und hierfür ist die räumliche Nähe essentiell. Daß etwa bei Golo und Peter dann weniger “Hürden” auf zwischenmenschlicher Ebene existierten als bei anderen, um so besser, aber bei wievielen ist das denn der Fall?
Und all die Kommunikationsmittel à la Skype sind doch nur ein verkapptes “Stell Dir vor, ich säße neben Dir”; für mich sind das nur Hilfsmittel, die die fehlende Nähe (mangelhaft) kompensieren sollen. Und natürlich hat diese Distanz auch seine Vorteile und die “eigene Umgebung” ist sicherlich ein Aspekt, den viele schätzen. Aber insgesamt ist die reine Kommunikation per Skype und anderen Mitteln unzureichend, was die Übermittlung _aller_ Informationen anbelangt. Und dazu gehört nun mal auch etwa eine Körperhaltung, die mir schnell signalisiert, ob jemand gerade angespannt oder entspannt ist, ob jemand offen oder verschränkt ist etc. Inwiefern das wichtig für XP ist, muß jeder selbst entscheiden, aber für den Faktor Teambildung bzw. dem anfänglichen Schaffen einer sozialen Basis für das Team halte ich das für wesentlich.
Ralf, Ilker schreibt ja nicht “Colocation über alles”, sondern betont, daß die Effzienz im physisch präsenten Team größer ist und das steht meiner Meinung nach außer Zweifel. Daß es anders gehen kann, auch, jedoch wird hier als Szenario ein ideales(?) Team herangezogen, doch wie sieht es denn aus, wenn es im Team irgendwie geartete Reibungen gibt? Die lassen sich meiner Meinung nach 10x besser bei einem persönlichen Gespräch lösen als bei einem Skype-Telefonat.
Golo schreibt “Colocation muß nicht sein, schaut her, ich krieg das mit Peter & Co besser ohne hin!” und Ilker schreibt “Daß Ihr das hinkriegt, mag schon sein, aber effizienter ist es mit Colocation!”. Ich persönlich favorisiere immer die Version, bei der ich mein Gegenüber _komplett_ wahrnehmen kann. In den Fällen, in denen das nicht möglich ist, nutze ich eben Skype & Co., aber keinesfalls als gleichwertigen noch favorisierten Ersatz. Ersatz nur, wenn aufgrund von Entfernung o.ä. kein persönliches Miteinander möglich ist.
Insofern stimme ich Golos Aussage “[...] ohne räumliche Nähe könne ein Team nicht zusammenwachsen und sich zu einer Einheit formen, die mehr zu leisten im Stande ist als die Summe der einzelnen Teammitglieder. Das Problem ist – genau dieses Argument ist falsch. [...]” nicht zu. Ich stimme zu, daß es auch ohne gehen KANN, aber das sind für mich Krücken und Teams wie Golos halte ich eher für die Ausnahme denn die Regel.
byRalf WestphalonAugust 20th 2010Hm… habe ich da was bei Golo überlesen? Der behauptet doch gar nicht, dass Colocation schlecht wäre. Er sagt nur, dass es auch ohne nicht zum Desaster kommt.
Wo räumliche Nähe möglich ist, hey, warum denn nicht?
Aber wie auch sonst in der Softwareentwicklung gibt es halt mehrere Werte, viele Bedürfnisse, unterschiedliche Kräfte. Die gilt es auszugleichen.
Deshalb halte ich es für eine beengte Sichtweise, “Colocation über alles” zu rufen. “Nur so geht es, Leute! Das müsst ihr hinkriegen.”
Der Werteausgleich ist natürlich schwieriger als eine reine Lehre, ein einziger Pfad. Da müssen nämlich Entscheidungen getroffen werden. “Hm… was gewinnen wir an Motivation und Kompetenz, wenn wir uns auf ein verteiltes Team einlassen? Was verlieren wir an Kommunikationsfluss?”
Das überhaupt zu durchdenken und am Ende zu entscheiden, traut sich nicht jeder. Und so wird gesagt: “Weiter wie bisher mit Colocation.”
Ilker, du bist der Verfechter der Agilität. Warum ist dann deine Antwort so eindimensional, dass du deine Messung (die du sicher vorgenommen hast) höher einstufst als Golos Einschätzung? Warum ist dein Credo nicht ganz agil so:
“Ob Colocation oder Verteilung kann nur jedes Team, jedes Projekt für sich entscheiden. Es sind unterschiedliche Effekte abzuwägen. Deshalb sollte ein Projekt für sich ganz individuell die Faktoren gegeneinander abwägen. Und dann sollte ein Projekt womöglich es ausprobieren, ob es räumlich getrennt oder zusammen besser funktioniert.”
Denn vielleicht hat am Ende die höhere Kompetenz, die möglich wird durch Verteilung, und die höhere Motivation das Übergewicht. 10 schlechte Entwickler in einem Raum oder 5 gute Entwickler verteilt? Was ist besser für das Projekt? Das kannst du nicht wissen, Ilker. Golo auch nicht, ich auch nicht. Also sollte ein Projekt, so denke ich, es eben wirklich agil halten und selbst messen.
-Ralf
PS: Im agilen Manifest steht (ganz bewusst, denke ich) nicht davon, dass Colocation “the way to go” ist. Da steht nur “People over Processes”. Und das passt ganz wunderbar mit verteilten Teams zusammen. Denn verteilte Teams nehmen womöglich Rücksicht auf die Bedürfnisse der an ihnen beteiligten “People”.
PPS: Dass verteilte Teams sehr erfolgreich sein können, zeigen übrigens OSS Projekte sehr schön, würde ich sagen.
byGolo RodenonAugust 20th 2010Hi Ilker,
so, die versprochene Antwort ist geschrieben. Siehe http://www.des-eisbaeren-blog.de/post.aspx?id=cc6b7427-c744-4ebf-840a-01909a77a1a4
Ich bin gespannt und freue mich auf Deine Antwort
!
Viele Grüße,
Golo
byKostjaonAugust 20th 2010Hallo Ilker,
mich hatte es nach dem Lesen von Golos Artikel ebenfalls schon in den Fingern gejuckt, denn ich vertrete auch die Meinung, dass räumliche Nähe zwar nicht per se, aber in vielen Fällen einen deutlich positiven Einfluss auf die Bildung von effizienten Teams hat.
Ich möchte Deine Ausführungen aber gerne noch um einen weiteren Aspekt ergänzen:
Kommunikation
Ich stelle immer wieder fest, dass die neuen Wege der Kommunikation (sowohl Social Media, aber auch eMail, SMS und Chat) zu häufigeren Missverständissen führen. Eine wesentliche Fähigkeiten des Menschen, nämlich die Möglichkeit Gefühlsregungen beim Gegenüber zu erkennen und einschätzen zu können, wird damit nämlich quasi außer Kraft gesetzt.
Nun stellt dies vielleicht für Techies kein ganz so großes Problem dar. Insbesondere aber dann wenn in einem interdisziplinären Team weitere Mitglieder zu integrieren sind und deren Affinität zu diesen Kommunikationsformen ein gänzlich anderes Niveau hat, dann werden die Nachteile fehlender F2F Kommunikation schnell deutlich. Abhilfe kann dabei meiner Erfahrung nach auch nicht durch Webcam und Videoconferncing geschaffen werden.
Damit ein Team ein gut funktionierendes Team werden kann, halte ich es dafür für unbedingt erforderlich, dass es regelmäßig die Möglichkeit bekommt am selben Ort zusammen zu kommen.
In welcher Frequenz dies bei welcher Konstellation von Team erforderlich ist, das ist für mich die eigentlich spannendste Frage. Bei Golo, Peter und David wurde mit bisher jeweils fünf persönlichen Begegnungen vielleicht schon ein gutes Team gebildet – aber wäre das ohne jegliche persönliche Begegnung genauso? Wird man sich nicht sehr wahrscheinlich früher oder später auch mal wieder persönlich treffen um die Zusammenarbeit weiter zu vertiefen?
Ich glaube wieviel Nähe ein Team braucht, hängt eindeutig vom Team ab
Beste Grüße
Kostja
P.S.: Nächste Möglichkeit Dich und mich Face2Face zu treffen ist die NRW Conf 2010.
byTweets that mention .NET Stories: Digitale Erfahrungen » Blog Archive » Räumliche Nähe wird unterschätzt — Topsy.comonAugust 20th 2010[...] This post was mentioned on Twitter by Thomas, Jürgen Gutsch and Sebastian Achatz, Ilker Cetinkaya. Ilker Cetinkaya said: blogged: Räumliche Nähe wird unterschätzt: http://bit.ly/9D5l9S [...]