Use Cases – For New Projects Only?

I received an inquiry from a potential customer the other day asking whether Case Complete (and use cases in general) are useful for established products.  As a VAR, they make minor changes to existing products, such as adding buttons or menu items but they never start projects from the ground up.  My response is below, but what do you think?  Are use cases only useful for new projects, or can they be useful for maintenance projects and other tasks too?  Feel free to leave your comments here or in the forums.

True, Case Complete is ideally suited for new projects, but it definitely can be useful in many other situations.  Here are some ways that I think it can help:

  • New and modified use cases: As you add features and capabilities to any product, there will likely be new use cases that should be documented, as well as modifications to existing use cases.  Taking the time to document a seemingly insignificant feature such as adding a button often leads to interesting “what if” and “what about xyz” questions, especially when the use case is shared among stakeholders who have different perspectives (e.g. developers, testers, domain experts, customers).  Remember that Use Cases document the extensions (alternative flows) not just the main flow of events.
  • Document an existing system: Perhaps the existing documentation is out of date or non-existent.  Once documented, the use cases can be used for many things such as test plans, training guides for new team members, replacing legacy systems (how did the old system work?), or serve as the basis for end user documentation.
  • Document your business processes: Use cases are a great way to document how your business works.  For example, what are the steps that should happen when you get a new client lead? What roles (actors) are important in your organization?  What are their responsibilities?  What processes/activities (use cases) do they carry out?  What processes do they only play a minor role in
  • Project planning: We use Case Complete to track feature requests and project tasks for Case Complete itself.  True you can do this in Word, Project, or a defect tracking system, but some of the features of Case Complete are really well suited for this. For example: easily indicate applicable release, status, priority, and complexity of each feature. Also easily add notes, open issues, hyperlinks between use cases, related documents, screenshots, and URL’s.  You can then order by release date, priority or any other column, and produce any number of reports that show as much or as little as you want.  For example, maybe you only want a list of open issues to use as a meeting agenda.  I’m biased, but I think all of this is much easier with Case Complete than with other project tools.  If you still like to use Microsoft Project, you can export Case Complete data into Project.