Das System, an dem ich arbeite, hat ein Front-End und ein Back-End. Im Moment arbeitet mein Team an den UI-Aufgaben und ein anderes Team an den Back-End-Aufgaben. Es gibt auch ein weiteres Team, das die Aufgaben von Legacy-Systemen übernimmt. Unser Ziel ist es, das Altsystem auszumustern und durch das neue zu ersetzen, das ein Frontend und ein Backend hat.
Jedes Team besteht aus etwa 8 Mitgliedern.
Für die Zukunft hat das Management beschlossen, die oben genannten Teams und ein weiteres Team zu mischen, um 4 Teams mit jeweils 8 Mitgliedern zu bilden.
Jedes Team wird an einer Funktion des Systems arbeiten (Front-End- und Back-End-Arbeit). Kein einzelnes Team besitzt das Back-End oder das Front-End.
Wir verfolgen agil und wird dieser Ansatz für die Zukunft gut sein oder müssen wir andere Vorschläge machen, damit dies funktioniert?
Funktionierende Software ist das primäre Maß für den Fortschritt.
Ein Front-End ohne Back-End ist meiner Meinung nach keine funktionierende Software, natürlich brauchen Sie ein einzelnes Team, das eine voll funktionsfähige Funktionalität erstellt. Um funktionierende Funktionen End-2-End liefern zu können, benötigen Sie ein funktionsübergreifendes Team. Das bedeutet, dass das Team in der Lage sein sollte, alle erforderlichen Disziplinen auszuführen, um ein voll funktionsfähiges Produkt herzustellen.
Das vertikale Aufteilen sollte ein Hauptaugenmerk von Agile-Teams sein, das bei jeder Iteration funktionierende Software liefert.
Werkstatt
Es gibt eine Übung, mit der Sie versuchen können, besser darin zu werden, kleinere vertikale Scheiben zu machen und das Konzept allen verständlich zu machen, es heißt Elefanten-Carpaccio:
Die Elefanten-Carpaccio-Übung ist eine großartige Möglichkeit für Software-Leute zu üben und zu lernen, wie man Geschichten in wirklich dünne vertikale Scheiben zerlegt. Es führt auch zu interessanten Diskussionen über Qualität und technische Praktiken.
Joel Bancroft-Connors