Requirement Management tools

Jose Valdez Jose.Valdez at edisoft.pt
Fri Mar 15 11:00:22 UTC 2019


Hello Mikail,

Thank you for contributing to this discussion.

I have been also myself investigating the requirement management tools. Currently, I converged into the three tools:


è rmToo

è papyrus

è doorstop

During this week,  I took a deeper look into rmToo and doorstop and today I am into papyrus. My current conclusion of the analysis of rmToo vs doorstop is that the doorstop is more generic (it allows trace between other items besides requirements, ex: source code and tests), but it has the price that it has not so many specific functionalities for requirements. For example rmToo has the following that doorstep does not have:

è requirement analysis (for example looks for forbidden words/expressions in the requirements)

è more information in the requirements that doorstop (some useful, other maybe not), for example: author of the requirement, effort, status, priority, etc

è constraints can be added (although using like some of formal language written in python)

For the remaining features, I would say that the tools are similar (they have the same philosophy, although rmToo seems to be more complete but with no capability to trace to other items as doorstop).

Best regards

José

From: Mikail Yayla [mailto:mikail.yayla at tu-dortmund.de]
Sent: sexta-feira, 15 de março de 2019 10:33
To: Jose Valdez
Cc: sebastian huber; devel at rtems.org
Subject: Re: Requirement Management tools

Hello all,

I am helping Sebastian trying out different requirement management tools.
We are currently evaluating doorstop and how well it can be used.

As an example we created a draft of a possible requirements management document structure in doorstop for the queue creation with rtems_message_queue_create.
Here is the created document structure: https://depot.tu-dortmund.de/rfek8

In the folder pub there are the automatically generated HTML files of the requirement documents which can be viewed in the browser. In the rtems folder are a few source files.  The other folders (header, include, llt, reqs, source) are for doorstop documents.

I have tried out ProR and Papyrus as well, and in comparison to those two, getting accustomed to doorstop was much simpler. There are only a few command line directives, and using them allows creating a decent overview of the document structure in HTML in a short time.

Here are the pros and cons for doorstop from my view:

Pros:
- Easy to use, either using the command line interface or creating and editing the document files by hand.
- Automatic generation of the HTML overview. We can work on the requirement document and see the changes immediately in the HTML using the publish directive.
- Traceability is enabled by the file structure with fingerprints. When changes occur in the documents, these fingerprints are changed. The doorstop files live inside a version controlled folder, so changes can be traced.
- Markup can be used in the text fields of the document files

Cons:
- It is a bit inconvenient to use a stringent way of naming files. I stopped using the command line interface and started creating files by hand because of this. The author also has this issue in this example: http://jacebrowning.github.io/doorstop/index.html in http://jacebrowning.github.io/doorstop/REQ.html
- Files can only reference one (source-)file. For links between doorstop files, when a file has multiple child files, there are problems in the HTML. Because of this I did not use links between files yet (links are used to detect changes in the parent, as these could have an influence on the children)

Possible bugs:
- For the ref field, in the documentation it says doorstop will first search the file in the ref field (e.g. 'message.h') in the root and its subdirs, and if no file was found it will search for matches in text files. However, for INCLUDE001, the file 'rtems.h' is searched first although the file 'message.h' exists. I'm still trying to find out the issue.
- In the item traceability table, some links disappear, and I haven't found out yet why. For example, the files for HEADER are now missing. I think it has to do with creating links between files, in the case when many children refer to a single mutual parent file.
- Sometimes the HTML has to be cleaned by hand from old HTML files from documents which were already deleted.

Other Points and ideas to extend doorstop:
- We could try to adapt doorstop such that it accepts reST in the text fields, then we would use text from the documentation.
- A visualization of the document structure as a graph would be neat
- There is a GUI but it is experimental, can only be used to view the document.

If you have some other ideas or other things we should try with doorstop, please let us know.

Here is the summary of the materials:
The paper with some use cases for doortstop: https://www.researchgate.net/publication/276044183_Doorstop_Text-Based_Requirements_Management_Using_Version_Control
The example from the author: http://jacebrowning.github.io/doorstop/index.html
Our test example for RTEMS: https://depot.tu-dortmund.de/rfek8

Best,
Mikail



On Wed, Mar 13, 2019 at 1:00 PM Jose Valdez <Jose.Valdez at edisoft.pt<mailto:Jose.Valdez at edisoft.pt>> wrote:
Hello Sebastian,

Thank you for creating this ticket. I believe this will help, since now the RTEMS community can contribute with other tools and add other tool selection criteria.

Just a note that some selection criteria can be classified as "hard" (that means must have or must not have) and other as soft ("desirable" having/not having).

I believe that you saw (but devel rtems did not), Andre Ribeiro proposed other tools:
-> http://testlink.org
->http://www.eclipse.org/osee

As far as I have seen, they use database, so they cannot be used, but maybe I can add them on the report for reference. Also myself take a look into another tools. From my research I concluded that almost tools were projects that started some years ago, but are deprecated now.

Best regards

José


-----Original Message-----
From: Sebastian Huber [mailto:sebastian.huber at embedded-brains.de<mailto:sebastian.huber at embedded-brains.de>]
Sent: quarta-feira, 13 de março de 2019 06:47
To: Jose Valdez; devel at rtems.org<mailto:devel at rtems.org>
Subject: Re: Requirement Management tools

Hello,

I added a ticket and a wiki page for this topic:

https://devel.rtems.org/ticket/3726

https://devel.rtems.org/wiki/Developer/RequirementsEngineering

--
Sebastian Huber, embedded brains GmbH

Address : Dornierstr. 4, D-82178 Puchheim, Germany
Phone   : +49 89 189 47 41-16
Fax     : +49 89 189 47 41-09
E-Mail  : sebastian.huber at embedded-brains.de<mailto:sebastian.huber at embedded-brains.de>
PGP     : Public key available on request.

Diese Nachricht ist keine geschäftliche Mitteilung im Sinne des EHUG.

_______________________________________________
devel mailing list
devel at rtems.org<mailto:devel at rtems.org>
http://lists.rtems.org/mailman/listinfo/devel
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.rtems.org/pipermail/devel/attachments/20190315/5117024d/attachment-0001.html>


More information about the devel mailing list