Task Management Guidelines

This document provides guidelines for using our task management tool (e.g., Jira, Asana) to ensure consistency and clarity across all projects.

Task Creation

  • Clear Titles: Task titles should be concise and descriptive.
    • Good: “feat: Implement user authentication with email and password”
    • Bad: “Login”
  • Detailed Descriptions: The description should provide enough context for anyone to understand the task. Include:
    • User Story: “As a user, I want to be able to log in so that I can access my profile.”
    • Acceptance Criteria: A list of requirements that must be met for the task to be considered complete.
    • Technical Notes: Any relevant technical details or implementation suggestions.
  • Assignees: Assign tasks to the person responsible for completing them. If multiple people are involved, break the task into sub-tasks.
  • Labels/Tags: Use labels to categorize tasks (e.g., bug, feature, chore, frontend, backend).
  • Estimates: Provide a rough estimate of the effort required (e.g., using story points or time).

Task Workflow

We use a standard Kanban-style workflow. The columns are:

  1. Backlog: All tasks that need to be done for the project. This is prioritized by the Project Manager.
  2. To Do: Tasks that have been selected for the current sprint.
  3. In Progress: The task is actively being worked on.
  4. In Review: The task is complete and is waiting for a code review or QA.
  5. Done: The task has been reviewed, tested, and merged into the main branch.

Rules of an Effective Workflow:

  • A developer should not have more than 2 tasks in progress at a time
  • Before a task can be considered complete, it should be code reviewed by atleast 1 other developer
  • Testing should be done by the developer on their local environment before moving the task to In Review

Sub-Tasks

  • For complex tasks, create sub-tasks to break down the work into smaller, more manageable pieces.
  • Each sub-task should represent a distinct piece of work that can be completed and tracked independently.
  • The parent task should only be moved to “Done” when all of its sub-tasks are complete.

Bug Reports

  • When creating a bug report, provide the following information:
    • Title: A brief and clear description of the bug.
    • Description:
      • Steps to Reproduce: Detailed steps to reliably reproduce the bug.
      • Expected Behavior: What should have happened.
      • Actual Behavior: What actually happened.
    • Environment: The environment where the bug was found (e.g., browser, OS, device).
    • Screenshots/Videos: Visual aids are highly encouraged.
  • Bugs should be labeled with the bug tag and prioritized by the Project Manager.