Our legacy system for tracking customer requirements is a Notes database. Notes does some things well, but this particular database is often a black hole. Here are my complaints with it:
- The search functionality is terrible. We have literally hundreds of requirements, so a search feature is really important. I can't get a full text search to work at all; maybe it's not enabled.
- It doesn't provide an easy way to prioritize requirements to get the most important to bubble up to the top.
- Almost anyone who works with customers can open requirements. Some people are not particularly good at writing up requirements. So, they may think that they've done their job by opening a requirement, but the product leadership has no idea what they're really asking for. Some people also don't fill in contact information for the customer requesting the feature, so it's difficult to go back to the source for more details.
- There's no good way to find very similar or overlapping requirements. We might have five separate requirements for the same thing, and no way of seeing that.
- It's not managed well. Nobody goes through the painful process of looking at all of the requirements to see which ones no longer apply, or which ones have become more important since they were opened.
So, what happens when the product backlog is poorly managed? We start planning a release and ask the product owner what should go into it. Some items are obvious and get added added to the release backlog right away. Then the blank stares begin. How can you even tackle the task of looking through the rest of the requirements to find the best and most important ones?
We end up developing whatever the product leadership has been hearing about the most in the past few months. Sometimes this is good enough, sometimes not. For example, if the support team is consistently hearing the same complaints, but not bringing them forward to product management, those complaints might not be addressed.
Something like an idea cloud would be nice. It could show us the keywords that are coming up most often in the requirements. That would help us find common themes, and overlapping requirements. But I have no idea how we could get that working with Notes or RTC.
Getting people to categorize their requirements when they open them could help too. At least that would help us group similar requirements together. RTC lets you enter keywords on stories, but that's freeform, so people may use different keywords for the same idea.
I would love to get some advice on how to improve this situation. Especially problems 3, 4, and 5.
It's been a few years, but the best way I found to search a Lotus Notes database is to replicate it to your desktop, then index and search it with Google Desktop.
ReplyDeleteThe best practice for solving problems 3, 4, and 5, is for a knowledgeable person to do it.
ReplyDeleteSomeone needs to take the time and effort to understand new requirements, map them to important personas and stories, re-prioritize them against changing business strategy, uncover dependencies or inconsistencies among them, and generally make sure the database has information that is useful to the people who need it.
Having someone who can do this well is key to a well-functioning team – regardless of what tools are used.
Something you can do in RTC for categorization is to create high level abstract functional areas and ask everyone to write create their requirements under those. This would help you to catch the duplicate requirements easier and manage each category. Keywords our useful but unstructured nature of them can make it really painful to manage the categories unless you come up with rules for the keywords that can be used.
ReplyDeleteThanks for your comments, Alireza and Ralph.
ReplyDeleteI like the idea of grouping requirements by area. Maybe we could separate them out by application, and have a few other categories for things that affect multiple applications. The Notes application doesn't do that well, but RTC/Jazz has ways to do that.
To Ralph's comment about problems 3, 4, and 5 - which person/role would typically handle that? Product Manager? Project Manager? Release Manager? Chief Architect? I'm sure part of our problem is that we don't have one clear owner of the requirements database.