What is the best tool for managing software requirements [for Windows] ?
For website, Redmine is really simple and nice. It is written in Ruby on Rails and can be hosted as windows service with Mongrel.
i don't use any but MS word & Visio, but i think it will be very easy to implement a custom solution?
I like IBM/Rational RequisitePro.
However, it is expensive. If you work in an enterprise that has a good development budget, it is very worth it.
Enterprise Architect from Sparx Systems is good and affordable.
I suggest Team Foundation Server or SharePoint, workflow and updates for changed files are nice to implement. If you cannot afford those, I find that different notebooks in a shared OneNote Notebook can be helpful.
I have used DOORS and ReqPro and I think they are alright for storing and tracing requirements in a database and to a word.
Both provide through the tool and as apart of their API away to extract metrics which I really like.
I know ReqPro has a web interface which is not too bad.
I would like to try Enterprise Architect because it is cheaper ($500 I think) compared to $10,000 for DOORS or ReqPro.
The requirements management tools that Karl Wiegers mentions in his book Software Requirements are
- Active! Focus (Xapware Technologies)
- CaliberRM (Borland Software)
- C.A.R.E. (SOPHIST Group)
- DOORS (Telelogic)
- RequisitePro (Rational Software)
- RMTrak (RBC)
- RTM Workshop (Integrated Chipware)
- Slate (EDS)
- Vital Link (Compliance Automation)
Some of the tools I couldn't find links for. These may have been taken over by other companies or the product discontinued. If anyone finds more information please edit this answer.
Personally I've not found a commercially available product that meets the specific needs of all of the parties involved in gathering and documenting accurate requirements. And it shouldn't stop there. You need to track back to those requirements throughout the lifetime of the project. Let's skip ahead to a defect - What if it's a defect of the product that pertains to a misinterpretation of the customers expectations; this is then a defect in the requirement. How is that tracked/changed. For reference purposes, what if a defect is caught by Quality Assurance due to the product missing a feature/function that was documented in requirements. The defect should be able to refer to the specific requirement. Requirements traceability is also necessary during design.
This all begs for some form of integration then between the requirements tool and the defect tracking tool and the design documentation tool(s). There are several of these products on the market as well. But they increase in price along with their complexity.
So what do we use? Excel. We use Excel (as do many other fortune 100/500 companies I know of) to capture Business Requirements separate from Product Requirements separate from Functional Requirements [some companies limit to High Level and Detail] - all uniquely numbered for backwards traceability.
The beauty of Excel is you can customize to your specific needs, expanding or limiting capabilities as your project dictates. No software (named or floating) is required and no special client software installation (or Web URL to remember). We track revisions using SharePoint (SharePoint serves as our collaboration site for things other than requirements (Dev Wiki for instance).
I have used TopTeam Analyst in the past with good results on fairly large and complex projects. It can be used with SQL Server or Oracle databases or with FireBird which is free and OK for two or three users. It does come at a price, it is more expensive than Enterprise Architect but does have better support for writing Use Cases. And it does have support for traceability and is moderately customisable to your requirements. We also evaluated RequisitePro but didn't like the fact that the Word documents it generated could not be edited directly with Word.
Check CASE Spec. It is affordable and more powerful than any high end requirements management tool. It is flexible to configure to your process. It allows managing requirements, use cases, test cases, bugs and more with complete traceability.
It also provides integrated change management and diagramming tool for UML, data flow, flow chart diagrams and more.