Selecting a Requirements Engineering Tool

Selecting a requirements engineering tool has always been a pain for me. Personally I have had experience with Rational CQ, Rational ReqPro, Jira, CodeBeamer and finally Excel.

Requirements Engineering Model

I would say that a thorough evaluation of an RE tool starts with your own clear vision of how to manage requirements. If you are not an expert, using a consultant to help is not a bad idea! There are a lot of good methods out there but my favourite is the “requirements abstraction model”. You will make your choice based on your previous experience, your organizational context, the kind of project management model you are working with, e.g. Agile, Waterfall, Scrum, Kanban etc. You have to ask yourself how you will use the model. Will you:

  • Use it when eliciting requirements?
  • Use it to rank requirements?
  • Use it to plan and follow-up on releases, sprints and iterations?
  • Use it to (help) produce documentation such as user manuals, administration manuals, statements of compliance (SoC), statement of verification (SoV)?
  • Use it to manage test cases and test execution?

Requirements Engineering Tool

Once you have a clear picture of how you want to work with requirements you need to implement and test drive your model in the tool you are evaluating. This is usually a lengthy process which starts by installing, then configuring and finally testing the tool in question. In my experience this is a process which takes days to weeks for any tool you are evaluating.

Once you have found a tool that you like you need to make sure that the vendor will be a good match for you. What about their pricing? Their development plans? Their commitment to you?

Ready Made Evaluations

There are a number of web sites where you can find lists and compilations of RE tools (Wikipedia, JI Ludwig, Volere. Often these evaluations are created by volunteers based on vendor feedback – not on actual evaluation of using a specific model in the actual tool. It was with great apprehension that I noticed that IEEE Software had published a major evaluation of RE tools in the April 2011 issue. Unfortunately, this evaluation is – as usual – based on vendor information and not actual usage or by collecting data from practitioners actually using the tool (summary table).

Your Experience?

What is your favourite RE tool? How does it support your model and process? Please let me know, e.g. by using the comment field below or by e-mail.

References

  • [DOI] J. M. Carrillo de Gea, J. Nicolas, J. L. F. Aleman, A. Toval, C. Ebert, and A. Vizcaino, “Requirements engineering tools,” Software, ieee, vol. 28, iss. 4, pp. 86-91, 2011.
    [Bibtex]
    @article{citeulike:9698313,
    abstract = {Requirements engineering ({RE}) tools are increasingly used to ease the {RE} processes and allow for more systematic and formalized handling of requirements, change management and traceability. For developers and companies evaluating the use of {RE} tools it is thus essential to know which {RE} processes are supported by tools and how they fit to their own priorities. The answer isn't easy because many sales prospects highlight numerous features-yet leave out to which degree they're supported and whether all features really matter. To gain insight into how current {RE} tools adapt to {RE} activities, we ran a 146-item survey based on the features covered by the {ISO}/{IEC} {TR} 24766:2009, a new framework for assessing {RE} tool capabilities. We received responses from 37 participants, covering all relevant tools. In addition to the tools' score in each activity, we assessed their performance in three concrete use scenarios. Our findings can help practitioners select an {RE} tool as well as provide areas for improvement for {RE} tools developers.},
    address = {Los Alamitos, CA, USA},
    author = {Carrillo de Gea, J. M. and Nicolas, J. and Aleman, J. L. F. and Toval, A. and Ebert, C. and Vizcaino, A.},
    citeulike-article-id = {9698313},
    citeulike-linkout-0 = {http://doi.ieeecomputersociety.org/10.1109/MS.2011.81},
    citeulike-linkout-1 = {http://dx.doi.org/10.1109/ms.2011.81},
    citeulike-linkout-2 = {http://ieeexplore.ieee.org/xpls/abs_all.jsp?arnumber=5929527},
    doi = {10.1109/ms.2011.81},
    issn = {0740-7459},
    journal = {Software, IEEE},
    keywords = {20110823},
    month = jul,
    number = {4},
    pages = {86--91},
    posted-date = {2011-08-23 07:52:50},
    priority = {3},
    publisher = {IEEE},
    title = {Requirements Engineering Tools},
    url = {http://dx.doi.org/10.1109/ms.2011.81},
    volume = {28},
    year = {2011}
    }

2 thoughts on “Selecting a Requirements Engineering Tool”

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>