My goal when introducing agile into a company is to initally provide visibility of the activity that is going on and increase communication.
Very soon after starting to introduce daily meetings and getting my head around the different projects I started looking at the requirements documents for the various projects.
What I found was a document that had been written but was not complete, that was a mix between technical architecture document, a requirements document and a design document. There was no order to what needed to be done and it was difficult to understand what the product was trying to achieve. The document was also written once and hadn’t been updated for a while.
This basically meant that most of the decisions made on who should work on what and what they should do was very unclear. In fact it seemed that the project had started a lot of features but hadn’t completed hardly any of them. Which was obviously causing frustration. A lot of direction was given by voice and would change often.
The product backlog serves to help in this situation and I wanted to introduce it quickly. By taking the requirements document I created a list of user stories that described the functionality required. It was fortunate for this project that I understood the domain quite well so could make a first pass without much difficulty.
My aim was to pull away from the technical aspects of the requirements and try to present the requirements in terms of how the system should fulfill a specific need for a specific type of user. I will not go into the details of user stories here but will leave it for another post.
At the end I had about 50 or so first pass stories that I felt represented the requirements in the document.
In order to not present anything too heavy, I stayed away from web based agile project management tools and just used a google spreasheet, as everyone understands a spreadsheet and it is easy to order.
I then asked the project owner to order this list and to define what would be the minimum set of functionality that we could release with.
The beauty of the product backlog is that it lives, it can be changed, new things can be added and we have a record of all the features that we would like to develop (note the “like” here, there is no commitment, as it depends on the product vision and roadmap).
So the group now has a tool where we can say what we should work on next and for capturing new thoughts while allowing the team to focus on what they should be working on.
Introducing this has been extremely easy. The team were in desperate need for knowing what to work on and the need to get something out of the door, so I have had no resistance to adding this process, which is really great.
The next step is to work on the product roadmap and to get the team to define a sprint backlog.