User stories in agile development are the foundation of a development team's work. Producing and working with user stories of appropriate quality is critical for development teams. There is a need for common understanding of the quality of their stories.
What it does
The Story Quality Add-On for JIRA checks and shows the quality of user stories. Its purpose is to help development teams identify and improve low quality and not-yet-ready stories, and possibly avoid starting progress on them. The add-on consists of a custom field and a workflow validator.
The Story Quality calculated field displays a rating of the overall quality of user stories. The field is sortable and searchable, and the rating is an integer value between 0% and 100%, based on different criteria consisting of the INVEST principles and other indicators. The overall rating is a weighed average of these indicators.
A greater value indicates a more concise, complete, precise, and clear user story. The general idea is that the closer this value is to 100%, the more likely it is that the story is ready to start progress on, resulting in a more efficient process.
In short, this rating gives team members an understanding of the quality and readiness of their stories.
The Story Quality validator blocks all "In Progress" or "Start Progress" transitions for non-administrator users (by default) for user stories that have insufficient quality rating, that is, points less than the minimum specified for the project. This helps ensure that the team is working only on stories that are ready for development.
The indicators are rating the quality of a story (a JIRA issue of type "Story") based on different criteria. These criteria are designed from a developers' point of view, because their work is impacted first hand by the quality of the stories.
An indicator is calculating a point between 0% and 100% (inclusive), where 0% means the lowest, and 100% means the highest quality. The calculation can be any mathematical formula, but most indicator implementations are starting with maximum points (100%) and then giving penalty points for problems they find.
See detailed description of indicator calculations in the readme.
How I built it
Built on Ubuntu using NetBeans and Atlassian SDK.
Challenges I ran into
Using the JIRA Java API, and the deadline.
Accomplishments that I'm proud of
A working JIRA add-on. :)
What I learned
JIRA Java API and the Atlassian ecosystem.
What's next for Story Quality Add-On for JIRA
Stabilizing. Discussing and improving rating calculations.