|
| 1 | +# Criteria-Based Workflow |
| 2 | + |
| 3 | +This workflow serves projects or tasks that can be evaluated against clear, quantifiable criteria. It's especially beneficial for engagements where the objective is crystal clear, be it fixing a known bug, optimizing performance, or enhancing quality. |
| 4 | + |
| 5 | +## Principles |
| 6 | + |
| 7 | +- **Start with Measurement**: Every task begins with a clear, quantifiable metric, usually in the form of a unit test or benchmark. |
| 8 | +- **Visibility**: Integrate benchmarks into the continuous integration system, ensuring that results are easily accessible and automated. |
| 9 | +- **Iterative Enhancement**: The workflow is centered on continuous improvement against the defined criteria. |
| 10 | +- **Open Collaboration**: Anyone can participate, given the clear and objective nature of the criteria. |
| 11 | + |
| 12 | +## Stages & Steps |
| 13 | + |
| 14 | +1. **Benchmark Creation**: |
| 15 | + * Start by defining the measurable criteria — a unit test, performance benchmark, or quality metric. |
| 16 | + * Integrate this benchmark into the continuous integration system, ensuring it's visible and runs automatically. |
| 17 | + |
| 18 | +2. **Initiate Work**: |
| 19 | + * Open a Pull Request (PR) that includes the new criteria or benchmark. |
| 20 | + * The first commit should ideally show the current status and mark the PR as red, indicating that it does not meet the criteria. |
| 21 | + |
| 22 | +3. **Development & Iteration**: |
| 23 | + * Work on the task aiming to satisfy the set criteria. This could be fixing a known bug, optimizing for better performance, or any other quality improvement. |
| 24 | + * Make incremental commits. Each commit should attempt to get the PR closer to the green status, indicating that the set criteria are being met. |
| 25 | + |
| 26 | +4. **Review & Verification**: |
| 27 | + * Upon meeting the criteria (PR turns green), submit the changes for review. |
| 28 | + * Reviewers should ensure not only that the criteria are met but also that the broader goals of the project remain aligned. |
| 29 | + |
| 30 | +5. **Merge & Documentation**: |
| 31 | + * Once reviewed and approved, merge the PR. |
| 32 | + * Document the improvements, changes, and the benchmark results. |
| 33 | + |
| 34 | +## Recommendations |
| 35 | + |
| 36 | +* **Constant Feedback Loop**: Regularly check the benchmark results to ensure alignment with the set criteria. |
| 37 | +* **Engage the Community**: Given the clear nature of criteria, encourage community members to participate, contribute, and provide feedback. |
| 38 | +* **Broaden Horizons**: While the focus is on meeting the set criteria, always consider the broader implications of changes to ensure the overall health of the project. |
0 commit comments