63 lines
4.5 KiB
Markdown
63 lines
4.5 KiB
Markdown
# Team Collaboration and Progress Tracking
|
|
|
|
This document outlines the methods and tools for effective team collaboration and transparent progress tracking for the Copper Tone Technologies platform development. Given the distributed and potentially multi-person nature of this project, clear communication and visibility into ongoing work are crucial for success.
|
|
|
|
## 1. Principles of Collaboration
|
|
|
|
* **Transparency:** All work, progress, and decisions should be visible to the entire team.
|
|
* **Accountability:** Each team member is responsible for updating the status of their assigned tasks.
|
|
* **Communication:** Proactive communication about blockers, challenges, and completed work is essential.
|
|
* **Mutual Support:** Team members are encouraged to help each other and review work.
|
|
|
|
## 2. Tools for Task Management and Tracking
|
|
|
|
We will leverage our self-hosted Gitea instance for comprehensive task management and progress tracking.
|
|
|
|
* **2.1. Gitea Issue Tracker:**
|
|
* All features, bugs, enhancements, and tasks identified during planning or development will be created as issues in the Gitea repository.
|
|
* **Issue Fields:** Each issue should include:
|
|
* **Title:** Clear and concise description of the task.
|
|
* **Description:** Detailed explanation, context, and acceptance criteria.
|
|
* **Labels:** Categorize issues (e.g., `feature`, `bug`, `enhancement`, `frontend`, `backend`, `P1`, `P2`).
|
|
* **Assignee:** The team member responsible for the task.
|
|
* **Milestone:** Link to relevant project milestones (e.g., "Phase 1 Completion").
|
|
* **Due Date:** (Optional) If a specific deadline exists.
|
|
* **Status:** Managed via Gitea's built-in status (e.g., `Open`, `In Progress`, `Closed`).
|
|
* **2.2. Gitea Project Boards:**
|
|
* Gitea's project boards (Kanban-style) will be used to visualize the workflow and track the status of issues.
|
|
* **Columns:** Example columns could include:
|
|
* `Backlog`: Tasks identified but not yet prioritized.
|
|
* `To Do`: Prioritized tasks ready for development.
|
|
* `In Progress`: Tasks currently being worked on.
|
|
* `Code Review`: Tasks awaiting code review (via PRs).
|
|
* `Testing`: Tasks being tested in the `testing` environment.
|
|
* `Done`: Completed tasks.
|
|
* Team members will move issues through these columns as they progress.
|
|
|
|
## 3. Workflow for Task Execution and Updates
|
|
|
|
1. **Task Selection:** Team members select tasks from the `To Do` column in the project board, typically assigned to them or picked up based on priority.
|
|
2. **Branch Creation:** As per the Git workflow, a new `feature/*` or `bugfix/*` branch is created for the task, linked to the Gitea issue.
|
|
3. **Status Update:** The assigned issue in Gitea is moved to the `In Progress` column.
|
|
4. **Regular Updates:** Team members provide regular (e.g., daily) updates on their progress within the issue comments. This includes any blockers encountered.
|
|
5. **Code Collaboration:** All code changes follow the Enterprise Git Workflow (refer to `docs/project-plan/Git-Workflow.md`), including code reviews via Pull Requests.
|
|
6. **PR & Review:** When a feature branch is ready, a PR is opened. The PR should reference the associated Gitea issue. Once CI passes and the PR is reviewed and approved, it's merged into `develop`.
|
|
7. **Testing & Staging:** Once merged into `develop`, the code progresses through the `testing` branch and corresponding staging environment. The issue is moved to the `Testing` column.
|
|
8. **Completion:** Once a task is fully tested and verified, the associated Gitea issue is closed.
|
|
|
|
## 4. Communication Channels
|
|
|
|
* **Asynchronous (Gitea Issues/PRs):** Primary channel for task-specific discussions, decisions, and documentation.
|
|
* **Real-time (Matrix):** For immediate questions, quick discussions, and informal communication. Our self-hosted Matrix server (Synapse) will be used for this purpose. Team members should join relevant project chat rooms.
|
|
* **Regular Sync-ups:** Short, daily stand-up meetings (virtual) to discuss:
|
|
* What was accomplished yesterday.
|
|
* What will be worked on today.
|
|
* Any blockers or issues.
|
|
|
|
## 5. Knowing Others' Progress
|
|
|
|
* **Gitea Project Boards:** The primary visual tool to quickly see the status of all active tasks.
|
|
* **Gitea Issue Tracker:** Filter and search issues by assignee, label, milestone, or status to get detailed insights.
|
|
* **Matrix Chat:** General announcements and quick check-ins.
|
|
* **Daily Sync-ups:** Provides a verbal overview of team progress and immediate blockers.
|