Coroid kennt vier Arbeitsarten. Diese können ineinander verschachtelt werden, und die Wahl der richtigen Variante hängt hauptsächlich von der Größe der Arbeit sowie davon ab, wie viel davon gleichzeitig ausgeführt werden soll.
| Einheit | Größe | Endet mit |
|---|---|---|
| Aufgabe | Eine Änderung | Ein pull request |
| Plan | Eine Funktion in Phasen | Ein einziges pull request für den gesamten Plan |
| Sprint | Ein zeitlich begrenzter Arbeitsblock | Was auch immer aus den Aufgaben entsteht |
| Spur | Ein Strang paralleler Arbeit | Der Branch, in den die Arbeit eines Plans integriert wird |
Aufgabe
Das Grundbaustein. Eine Aufgabe ist eine Arbeitsunit, die ein pull request erzeugt, und sie ist es, die tatsächlich ausgeführt wird – Pläne, Sprints und Spuren sind lediglich Möglichkeiten, Aufgaben zu organisieren.
Wenn Sie das Ergebnis in einem Absatz beschreiben können und ein Prüfer das Resultat in einem Rutsch lesen kann, handelt es sich um eine Aufgabe.
Plan
Wenn die Arbeit mehrere Änderungen in einer bestimmten Reihenfolge erfordert, entsteht ein Plan: eine geordnete Menge von Aufgaben, die in Phasen gruppiert werden und die Sie vor dem Schreiben des Codes genehmigen.
Verwenden Sie einen Plan, wenn:
- spätere Schritte von früheren abhängen
- Sie den gesamten Ansatz sehen möchten, bevor Sie sich darauf festlegen
- die Arbeit eine Funktion und keine einzelne Änderung ist
Die Genehmigung des Plans ist der kostengünstigste Ansatzpunkt im System. Eine Ablehnung hier kostet nur eine Minute; eine Ablehnung nach Ausführung von drei Aufgaben kostet drei Durchläufe.
Wie ein Plan in Ihr Repository gelangt
Die Aufgaben eines Plans öffnen jeweils kein pull request. Sie arbeiten auf eigenen Branches und fließen in einen gemeinsamen Spur-Branchzusammen, und dieser Branch wird als ein einziges Pull-Request gegen Ihren Basis-Branch freigegeben.
task branch ─┐
task branch ─┼─► lane branch ─► one pull request ─► main
task branch ─┘So prüfen Sie die zusammengesetzte Funktion einmalig, mit der gesamten Änderung vor sich, anstatt halbfertige Phasen einzeln zu genehmigen.
Die Ausnahme bildet Arbeit, die mehrere Projekte umfasst: Eine Aufgabe, die zu einem anderen Projekt gehört als der Branch, auf dem die Spur gefördert wird, generiert ihr eigenes pull request; somit erzeugen plattformübergreifende Pläne ein pull request pro Repository. Das ist unvermeidbar – ein pull request kann nicht zwei Repositories umfassen.
Sprint
Ein zeitlich begrenzter Behälter für Arbeit mit eigenen Metriken und Zeitplänen. Sprints beantworten die Fragen „Was tun wir in diesem Zeitraum und wie lief es ab?“ statt „Wie wird diese Funktion gebaut?“.
Verwenden Sie einen Sprint, wenn Sie die Arbeit eines Teams über einen bestimmten Zeitraum koordinieren. Verwenden Sie einen Plan, wenn Sie eine Funktion aufteilen. Sie sind keine Alternativen – ein Sprint kann Aufgaben enthalten, die zu mehreren Plänen gehören.
Spur
Eine Spur ist der Ort, an dem die parallele Arbeit eines Plans integriert wird. Die Aufgaben zielen auf den Branch der Spur ab, nicht auf Ihren Basis-Branch, sodass mehrere Agenten gleichzeitig vorankommen können, ohne sich zu behindern – das zusammengesetzte Ergebnis wird als ein einziges pull request freigegeben, sobald es die Anforderungen erfüllt.
Während ein Plan sich auf Reihenfolgebezieht, geht es bei einer Spur um Parallelität und Integration. Wenn Sie über Kapazitäten für mehrere Agenten verfügen und die Arbeit nicht strikt seriell ablaufen muss, ermöglicht die Spur deren gemeinsame Ausführung, sodass am Ende eine einzige prüfbare Änderung entsteht.
Auswahl
Die Frage lautet nicht, wie viele Pull-Requests Sie wünschen – sowohl eine Aufgabe als auch ein Plan kommen als ein einziges an. Es geht darum, wie viel Arbeit vorliegen muss, bis das Ergebnis zur Prüfung bereit ist.
- Ist das eine Änderung, die ein Prüfer in einem Rutsch lesen könnte? Ja → Aufgabe.
- Benötigt es mehrere geordnete Änderungen, bevor es als Ganzes Sinn ergibt? Ja → Plan. Seine Spur übernimmt die parallele Ausführung der Teile, wo dies möglich ist.
Sprints ergänzen all dies als Ebene für Planung und Berichterstattung.
Was die gleichzeitige Ausführung begrenzt
Nicht die Struktur – die Kapazität. Ein Plan mit zehn parallel ausführbaren Aufgaben und einem einzigen Agenten-Slot führt sie nacheinander aus. Siehe Kapazität und Agenten-Slots.