Die allgemeine Bedeutung von "funktionsübergreifendem Team" ist ein Team, das Spezialisten in verschiedenen Bereichen zusammenbringt, die erforderlich sind, um das Ziel zu erreichen.
Aber es sieht so aus, als ob bei Agile Cross-Funktionalität bedeutet, verschiedene Spezialisten nicht nur zu kombinieren, sondern auch zu mischen. Henrik Kniberg definiert ein funktionsübergreifendes Team folgendermaßen: "Funktionsübergreifend bedeutet nur, dass das gesamte Team über alle Fähigkeiten verfügt, die zum Aufbau des Produkts erforderlich sind, und dass jedes Teammitglied bereit ist, mehr zu tun als nur seine eigene Sache."
Aber wo ist die Grenze gezogen? Ist es normal, Entwickler zu bitten, Tester für eine Iteration zu werden, wenn dies erforderlich ist?
quelle
Antworten:
Meiner Meinung nach ist ein funktionsübergreifendes Team ein Team, das Mitarbeiter aus den verschiedenen Funktionen eines Unternehmens umfasst: Ingenieurwesen, IT, technisches Schreiben, Marketing, Finanzen, Recht, Vertrieb, Personalwesen, Betrieb, Qualität und Geschäftsführung.
In größeren Unternehmen werden diese "Funktionen" in Silos (Geschäftsführungslinien) zusammengefasst. Um diese Aufgaben zu erledigen, ist in der Regel die Zeit eines Mitarbeiters erforderlich.
Wenn Sie TDD oder ähnliches machen, ist das völlig normal.
Im Allgemeinen sollte die Verantwortung für die Freigabe der Entwicklerarbeit jedoch nicht bei denselben Entwicklern liegen.
quelle
In einem funktionsübergreifenden Team kommen Funktionsexperten aus verschiedenen Bereichen zusammen, um zu definieren, was erstellt werden soll, und um zu bewerten, ob das, was erstellt wird, nützlich ist. In einem agilen Umfeld werden diese Bewertungen häufig durchgeführt.
Die Domain-Experten legen jedoch fest, wie sie ihren jeweiligen Teil eines Projekts ausführen . Softwareentwickler werden Software entwickeln. Tester werden testen. Operations-Mitarbeiter führen die Software aus und so weiter.
Die Meinung zu Entwicklung, Test und Betrieb zu haben, ist äußerst nützlich, um ein gutes Produkt zu definieren, und genau hier liegt der Wert funktionsübergreifender Teams.
quelle
Ein gutes funktionsübergreifendes Team hat und braucht Menschen, die "Alleskönner" sind, aber auch Meister einiger . Normalerweise eins oder zwei.
Zum Beispiel an denen, an denen ich gearbeitet habe. Ich spezialisiere mich auf C ++ und einige Web-Sprachen, kenne aber ungefähr eine Million. Ich verstehe mich fließend mit Videobearbeitung und 3D-Medien und so weiter sowie mit Geschäfts- und Projektmanagement. In diesem eher kleinen Team, das große Projekte übernimmt, mache ich den größten Teil des Tages Hardcore-Codierungen und verbringe einen Teil damit, auf der Site Grunzarbeit zu leisten und verschiedene Medien vorzubereiten.
Nicht viele Projekte nutzen all meine Fähigkeiten, aber ich denke, dass es sich um eine funktionsübergreifende Lösung handelt, wenn ich mich auf mehrere Projekte stütze. Manchmal ist es ein wirklich gutes, effizientes Design, manchmal nicht so sehr.
Gott sei Dank, dass ich kein Entwickler / Netzwerkadministrator sein muss. Das macht keinen Spaß. Diese kleinen Geschäfte in meiner Gegend ... sind verrückt. Wer sein Netzwerk Programmierern anvertraut, meine Güte. Als letztes möchten Sie, dass ich versuche, Ihre Routing-Tabelle zu "debuggen": P
quelle
Ein "funktionsübergreifendes Team" ist für mich eher eine Gruppe von Generalisten, die zusammenkommen, um die Arbeit zu erledigen. Der Vorteil liegt in der Vielseitigkeit bei der Bewältigung verschiedener Arten von Aufgaben, da es keinen Engpass gibt, der bei einer Gruppe von Spezialisten auftreten würde, bei denen manche Leute nur bestimmte Aufgaben übernehmen können.
Ja, es ist normal, dass Entwickler Tester werden, wenn die Arbeit für eine Iteration erledigt werden muss.
Cross-Functional kann in das Gebiet fallen, in dem es sich um ein Schlagwort handelt, das je nach Unternehmen unterschiedliche Bedeutungen haben kann. Einige mögen es für die höchste Ebene halten, wo ein Entwickler von einem Gopher bis zu einem temporären CEO alles sein könnte, und andere mögen es viel spezialisierter sehen, so dass es verschiedene Arten von Entwicklern sind, die verwendet werden. Ein Entwickler muss manchmal ein Business Analyst, ein Systemadministrator oder ein Tester sein. Ich erinnere mich an ein paar Jahre zuvor, als ich gerade einen Job und einen anderen Entwickler angefangen hatte und ein Release als eine unserer ersten Aufgaben testete, da es zu diesem Zeitpunkt an Testern mangelte, um das Release richtig zu testen.
quelle
In einem funktionsübergreifenden Team geht es nicht nur um Fachgebiete, sondern auch um die Einstellung, Dinge zu erledigen. Die Mitglieder treten auf und übernehmen die anstehenden Aufgaben. Sie hören nicht: "Das ist nicht mein Job."
Einschränkungen für ein Projekt sind nicht immer technisch. Manchmal haben Sie nicht den Luxus, bei jeder Aufgabe einen Experten einzustellen, und müssen nur in dem Bereich arbeiten, den Sie bevorzugen.
Sie möchten Entwickler niemals vom Programmieren abbringen, aber in einigen Teams kann nicht geholfen werden. Normal ist relativ.
quelle