diff --git a/docs/engineering/workflows/rigorous-deliberate.md b/docs/engineering/workflows/rigorous-deliberate.md new file mode 100644 index 0000000..0d92f13 --- /dev/null +++ b/docs/engineering/workflows/rigorous-deliberate.md @@ -0,0 +1,85 @@ +# Rigorous & Deliberate Workflow + +This guide delves into our "Rigorous & Deliberate" workflow, explicitly crafted +for projects and tasks of high complexity, where conventional timelines and +methodologies may not apply. + +This workflow is reserved for challenging tasks where the end date might be +nebulous, and the journey to completion can be long and winding – occasionally +spanning up to a year. + +The focus here is not just on completion but on ensuring the utmost quality and +protection of such tasks. + +## Principles + +- **Protection & Isolation**: Tasks under this workflow may appear incompatible + or even unfair when juxtaposed with tasks from other, faster workflows. Thus, + it's essential to shield and isolate these tasks to prevent any + misunderstandings or conflicts. +- **Transparency & Communication**: Given the long-term nature of these tasks, + regular communication is paramount. Teammates should always be in the loop, + understanding the progress, challenges, and updates. This consistent + communication acts as a deterrent to potential conflicts or misunderstandings + arising from the unique nature of these tasks. +- **Depth Over Speed**: Emphasize comprehensiveness. Inspect each MR deeply to + ensure alignment with our standards. +- **Collective Ownership**: The quality of the codebase is everyone's + responsibility. Reviewers act as gatekeepers, but all team members must + prioritize excellence in their contributions. +- **Iterative Feedback**: Provide constructive and iterative feedback during the + review process, allowing the original author to refine and improve their work + based on multiple perspectives. + +## Stages & Steps + +1. **Goal Definition**: + * Identify and articulate a clear goal or objective for the project. +2. **Research & Foundation**: + * Undertake comprehensive research. + * Use findings to establish a robust foundation for subsequent stages. + * Create detailed design proposals based on research and the set goal. + * Submit the design for review to the Auditor to ensure alignment with the + overarching goal. +3. **Initiation of Development**: + * Post design approval, begin the development phase. + * Open an early branch and initiate a draft PR, ensuring it's appropriately + labeled. +4. **Continuous Updates & Communication**: + * Keep all stakeholders informed by consistently updating relevant documents + or files (e.g., PR, issue, doc, .md). + * Provide monthly updates highlighting progress since the last communication, + forthcoming steps, and any challenges encountered. + * Schedule regular check-ins with the Auditor. + * This ensures the work remains aligned with the project's objectives and the + originally set goal. + * Engage in regular reviews or pair programming sessions. + * Aim for monthly collaborations to share knowledge and enhance code quality. +5. **Documentation**: + * Prioritize comprehensive documentation, especially for intricate tasks. + * Ensure it's clear, detailed, and easily understandable. +6. **Review & Feedback**: + * Appoint a minimum of two reviewers for detailed feedback. + * Their insights ensure quality, functionality, and alignment with the goal. + * Before concluding, the Auditor assesses the project for integrity, + functionality, and congruence with the initially set goals. + +## Recommendations + +* **Open Dialogue**: Encourage open communication among team members. Regular + discussions can lead to proactive problem-solving and innovation. +* **Adaptable Milestones**: While sticking to the goal is crucial, allow for + minor adjustments to milestones based on feedback and unforeseen challenges. +- **Stay Updated**: Always work with the latest version of the main codebase to + minimize merge conflicts. +- **Open Communication**: If you're unsure at any stage, communicate. Whether + you're the goal owner or a reviewer, open dialogue ensures clarity and + quality. + +## Definition of Completion + +A goal is considered complete when: + +- It has successfully passed through all stages. +- It has received Auditor approval after multiple reviews. +- There are no outstanding feedback points that could compromise its quality.