Ich muss eine Art Fallstudie zur Anwendung einer Softwareentwicklungsmethodik durchführen. Der Fokus liegt eher auf dem Bericht, der meine Erfahrungen mit dem Prozess dokumentiert.
Ich habe nur noch 16 Tage Zeit, um das Projekt durchzuführen, und ich habe ein 6-köpfiges Team. Wir arbeiten an der Verbesserung einer bestehenden Android-App, die in Java geschrieben ist. Nur 4 Mitglieder beherrschen Java (2 in Android UI, 1 im Forschungs-Backend und 1 in beiden) mit unterschiedlichem Fachwissen. Sie können etwa 20 Stunden pro Woche aufwenden. Es gibt ein paar Datenerfassungsaufgaben und statistische Aufgaben, die die anderen beiden besetzen. Mit dem Forschungs-Backend ist eine gewisse Unsicherheit verbunden, da es sich um eine ML-Aufgabe handelt.
Die App muss nicht produktionsbereit sein, sollte aber demonstrierbar sein. Bitte schlagen Sie einige Paradigmen vor, die unter diesen Bedingungen verwendet werden können, damit ich herausfinden kann, was für uns funktionieren würde.
Ähm ... ein paar ausgefallene Begriffe für meinen Bericht wären nützlich :)
Scrum, Kanban, XP, nachhaltiges Tempo, Pair Programming, Spike
(Diese Liste ist bei weitem nicht vollständig, aber da Sie nur noch 16 Tage Zeit haben, möchte ich mich auf einige wenige konzentrieren, die einfach zu recherchieren und umzusetzen sind.)
Beides sind Teammanagementprinzipien , die sich auf das Management von Prozessen konzentrieren, die nicht im Voraus geplant werden können (wie Software- oder Prototypenentwicklung).
Vorteile: Flexibilität in einem Umfeld mit sich ändernden /unklaren Anforderungen oder Prioritäten.
XP ist eine Reihe von Tools, die zur Verbesserung des Arbeitsablaufs von Softwareentwicklungsteams verwendet werden, obwohl die meisten auch auf andere Kreativteams angewendet werden können .
Vorteile: Verbesserungen des gesamten Prozesses der Zusammenarbeit für ein kreatives Team.
Ein in XP verwendeter Begriff ist nachhaltiges Tempo, was im Grunde bedeutet, dass Sie nicht mehr Stunden investieren, als Sie lange durchhalten können. dh brennen Sie das Team nicht mit Überstunden bis zum Maximum aus.
Vorteile: Aufrechterhaltung der Moral ; empfundenen Druck beseitigen; Erhöhung der wahrgenommenen(!) Berechenbarkeit .
Ein weiteres Tool von XP, Pair Programming, ist das Prinzip , Wissen in einem Team zu verteilen, indem Mitglieder paarweise an einem neuen Problem/mit einem neuen Tool arbeiten, wobei ein Mitglied des Paares bereits Erfahrung mit dem Thema hat und das andere dazulernen soll aus dieser Erfahrung . Auch dies beschränkt sich nicht auf das Programmieren und wird daher oft nur als „Pairing“ bezeichnet.
Vorteile: Einfache (ich möchte sagen, mühelose) Verteilung von Wissen und Fähigkeiten im gesamten Team; bessere Galvanisierung des Teams .
Dies ist ein Scrum-Begriff für kleine Forschungsprojekte . Ein Schlüsselmerkmal von Spikes ist eine Zeitbox . Das Team reserviert eine Anzahl von Stunden/Tagen für die Recherche und verwendet dann diese Zeit darauf, aber nicht mehr (oder weniger, es sei denn, es ist sicher, dass die Frage zufriedenstellend beantwortet wird).
Vorteile: Forschungsaufgaben werden nicht außer Kontrolle geraten und die Gesamtzeit des Projekts aufblähen oder andere Teile blockieren.
Es gibt auch Nachteile, wie bei jedem Prozess- oder Managementparadigmenwechsel. Widerstand zur Aenderung; empfundene zusätzliche Arbeit, nur um den Prozess am Laufen zu halten; persönliche Vorlieben/Abneigungen; eine lange, aber bekannte Liste.
CMW
Thiago Cardoso