Add clarity to feature vs enhancement
Problem to solve
Surfaced during the UX Weekly Meeting on 2021-12-21 and in a recent Key Review. There's confusion when we consider something a "feature" or a "new feature" when oftentimes it's really a usability problem with an existing feature.
Some examples
https://gitlab.com/gitlab-org/gitlab/-/issues/249135https://gitlab.com/gitlab-org/gitlab/-/issues/321245
In these examples, we apply the work type classification feature and the label feature::enhancement.
When we call something a feature and an enhancement the lines between what is a new feature vs an improvement to an existing feature is blurred.
When it's blurred, it's difficult to get a clear picture of where we are investing our efforts.
Current definitions
-
~"type::feature"- Any issue/MR that contains work to support the implementation of a feature and/or results in an improvement in the user experience. Read more at https://about.gitlab.com/handbook/engineering/metrics/#work-type-classification -
~"feature::addition"- Issues or MRs related to the first MVC that gives users a foundation of new capabilities that were previously unavailable. Read more at https://about.gitlab.com/handbook/engineering/metrics/#data-classification -
~"feature::enhancement"- User-facing improvements that refine the initial MVC to make it more useful and usable. Read more at https://about.gitlab.com/handbook/engineering/metrics/#data-classification
Proposal
I believe our current label definitions are clear but categorizing an enhancement as a feature may be leading to confusion.
To help with this we can do the following:
- Add a new work type classification:
"~type::enhancement"(handbook link) - Update the
~"feature::enhancement"label to~"type::enhancement" - This change could lead to no longer needing the
~"feature::addition"label as all issues considered new features would use the~"type::feature"label and not need an additional label applied.
Edited by Valerie Karnes