Inspiration

A good Definition of Done is vital to remind an Agile team of their commitments, but working with remote teams means it is not possible to keep this visible on a whiteboard or wall poster. I wanted an equivalent in JIRA to make sure viewing the Definition of Done is as easy as possible.

What it does

  • Allows the Team to record their Definition of Done activities against the project (via the project side-bar).
  • Anyone with view issues permission can see a summary of the Definition of Done on each issue.
  • A pop-up dialog can be displayed from any issue within the project, to check the full details within the Definition of Done.

How I built it

Built using the Atlassian Connect Express framework in Node.js. I also decided to take advantage of the new JIRA Entity properties to store the Definition of Done against the project in JIRA. Avoiding the need to maintain a datastore and ensure there were no data privacy issues.

Challenges I ran into

This was my first every JIRA or Confluence add-on and also my first in Node.js after studying courses, so challenges were plenty. Specifically I found the the Add and Delete buttons (and associated code) a good challenge.

Accomplishments that I'm proud of

  • Learning all the intricacies of the Atlassian Connect Express framework and AUI.
  • Ensuring the UI on the Project view (where you can Add/Delete activities) did not need a full refresh on every edit, providing a much cleaner user experience.
  • Additionally (and although not eventually used), I'm proud of writing the async functions to find the appropriate Project ID from the Agile boards in JIRA. This was not provided as a context parameter.

What I learned

After a Node.js course and studying the Atlassian Connect samples I thought I could achieve lots, but writing my own add-on from scratch really helped me discover the full lifecycle of an add-on and how to overcome certain challenges.

What's next for Definition of Done

  • Adding the Definition of Done criteria into the workflow, so anyone in the Agile team is reminded of the activities before they close a story or other backlog item.
  • Providing an estimation view for issues, allowing teams to clearly view the full DoD alongside the story when in Planning Poker sessions.

Built With

Share this project:

Updates