Watching functionality in Project Management platforms-a case study
A deep dive into how this functionality has evolved and how it could be implemented into a new platform
Am agency owner requested that we outline an approach for how to implement “watching” functionality into their project management platform. The following product requirements document was the result:
Summary
Need to identify a strategy to implement “Watching” functionality into a project management platform.
Intended audience: Project Management Platform Team
Introduction
A common feature amongst project management platforms like Asana, Trello and Jira is the ability to add “watchers” to a task in the system. “Watcher” functionality notifies a user of any updates to the task such as:
Changes in assignee
New information
Changes in status
Changes in time or scope estimates
Comments on the task from other team members
This document aims to identify why this feature would be built and a plan for implementation into the platform.
Problem Statement
The platform currently does not have a means of notifying persons aside from the assigned user and creator about changes to the task. As the platform grows it will become more necessary for stakeholders to have visibility across tasks. There is simply no way to keep track of task changes unless a stakeholder were to manually @ mention a user in the ticket to inform them of a change. Currently the business is using @ mentions and instant messages to inform about changes to tasks.
Objective & Scope
The objective of this feature would be to emulate some of the core functionality of existing platforms that have implemented this feature. Since they have already thought through most of the use cases of this feature and users are already used to the feature being implemented this way it makes sense to copy most of what they have done. For naming, the term "Watcher" is more descriptive of the functionality than "Collaborator". Collaborator implies that the person will contribute to the actual completion or discussion of the ticket. In many cases this is not the case.
In-scope
Watchers receive notifications about all activity on a task.
Watchers can be assigned by anyone.
A watcher can be “locked”(made irremovable) on a task if self-assigned.
Someone writing notes on or otherwise engaging on the task automatically turns them into a watcher.
Out-in-scope
Users that are not in the system can be invited to become watchers by their email address, within the restrictions of the organization.
Product Requirements
On each task add a button that launches a “watcher” UI.
The watcher UI should contain a search field for users
Each user should have a checkbox
Multiple users should be selectable at once.
The users can also be removed via this UI
If the user selected is also the authenticated user they should be allowed to lock their selection.
Watchers should be notified about the following changes to the task:
Assignee
Change in status
Task deletion
New task notes
Project
Due date
Estimate
Priority
The architecture should be built to easily extend the notification structure to add new triggers for notifications.
Assumptions
This is open to iteration based on real world use and feedback.
The “lock” functionality has been described as desired.Business Benefits/Impact/Metrics
Improved user experience
Improved productivity on the platform due to greater visibility across tasks
How do you measure success?
Metric. Current State Future State (Target) Savings/Impacts in $
Time Spent 6 hours/week 30 mins/week
Stakeholders / Owners
Name. Role. Note (e.g. how this person/team is impacted)
Founder Owner More visibility across all projects and tasks
Software Engineer Worker Automated means of keeping stakeholders informed

