From: timasmith on
Hi,

In my past work I am familiar with using the Rational tools and for
Requirements Management we used Req Pro. I have heard of but am not
familiar with Doors.

Now with a new open source project on the horizon I would either build,
but preferably find a tool to do the following:

1) Uniquely identify, categorize and detailed low level functional
requirements.
2) Embed the requirement ids in comments in the source code.
3) Create a suite of test cases for all requirements.
4) Generate reports of untested requirements or not yet implemented.

I suppose one might like to have a trace to a design - modules or
subsystems but I havent found that a worthy step - since the design is
a generalization of the implementation.

Req pro did not seem particularly complex - so it is tempting to build
a database driven tool - skipping the MS Word piece - instead
generating xml/html from the database of requirements.

What is everyone else that is not purchasing tools using - if it
matters the rest of the project uses Eclipse and JBoss.

thanks

Tim

From: Phlip on
timasmith wrote:

> In my past work I am familiar with using the Rational tools and for
> Requirements Management we used Req Pro. I have heard of but am not
> familiar with Doors.
>
> Now with a new open source project on the horizon I would either build,
> but preferably find a tool to do the following:
>
> 1) Uniquely identify, categorize and detailed low level functional
> requirements.
> 2) Embed the requirement ids in comments in the source code.
> 3) Create a suite of test cases for all requirements.
> 4) Generate reports of untested requirements or not yet implemented.

Suppose you write failing test cases before you write any new code that
passes the tests. This forces all your code to have test cases.

Now annotate each test case with the name of the feature it resolves.

From here, if you put any 'assert(false)' in any code, and run all the
tests, the list of tests that fail is the list of features which that line
of code supports.

The more, the better. This shows your code is tight.

--
Phlip
http://www.greencheese.org/ZeekLand <-- NOT a blog!!!


From: David Lightstone on

<timasmith(a)hotmail.com> wrote in message
news:1136229415.216435.44720(a)g44g2000cwa.googlegroups.com...
> Hi,
>
> In my past work I am familiar with using the Rational tools and for
> Requirements Management we used Req Pro. I have heard of but am not
> familiar with Doors.
>
> Now with a new open source project on the horizon I would either build,
> but preferably find a tool to do the following:
>
> 1) Uniquely identify, categorize and detailed low level functional
> requirements.
> 2) Embed the requirement ids in comments in the source code.
> 3) Create a suite of test cases for all requirements.
> 4) Generate reports of untested requirements or not yet implemented.

You might want to think very carefully about your work process first.

Which, if any, of these 4 have you done using Requisite Pro?

>
> I suppose one might like to have a trace to a design - modules or
> subsystems but I havent found that a worthy step - since the design is
> a generalization of the implementation.
>
> Req pro did not seem particularly complex - so it is tempting to build
> a database driven tool - skipping the MS Word piece - instead
> generating xml/html from the database of requirements.

It is more difficult than you think. How do you plan to validate the
"database" for completeness and consistency?

>
> What is everyone else that is not purchasing tools using - if it
> matters the rest of the project uses Eclipse and JBoss.

Word and Access

>
> thanks
>
> Tim
>


From: timasmith on

Phlip wrote:
<snip>
> Suppose you write failing test cases before you write any new code that
> passes the tests. This forces all your code to have test cases.
>
> Now annotate each test case with the name of the feature it resolves.
>
> From here, if you put any 'assert(false)' in any code, and run all the
> tests, the list of tests that fail is the list of features which that line
> of code supports.
>
> The more, the better. This shows your code is tight.
>
> --
> Phlip
> http://www.greencheese.org/ZeekLand <-- NOT a blog!!!

I do like the concept of failing a method will highlight tests/features
that you wrote tests for.

However you cannot possibly write all test cases for a large system -
the number of possibilities would be almost endless.

Also this only tells you what you have coded - not what you have yet to
code.

And finally analysts work with end users to manage requirements -
having them annotate code is not going to work as a communication tool
to developers.

From: timasmith on
With Req Pro I have done all 4 - I imported source code into Req Pro
and marked up the methods which mapped to requirements. Of course it
is impossible to maintain but was useful to provide a one time coverage
analysis and later to direct new developers to where some of the
requirements could be found in the code.

Not sure what you mean about validating the database - by having a
simple table of requirements it is complete and consistent - as long as
you break down requirements into individual entitities and only use the
database - not fully realistic but useful for most of the functional
requirements.

Ok I will use Access, my one table - and auto generate HTML documents
from it - rudimentary but will do for now.

 |  Next  |  Last
Pages: 1 2 3 4
Prev: Simple inheritence question
Next: SQL