<div dir="ltr"><div>Hello Jose,</div><div><br></div><div>thank you for the comparison.</div><div>I just want to add that doorstop also supports extended attributes in its yml files, but the new attributes will not be part of published documents. We would need to use other tools to process them. The requirements analysis could also be done this way.</div><div><br></div><div>Best,</div><div>Mikail<br></div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Fri, Mar 15, 2019 at 12:00 PM Jose Valdez <<a href="mailto:Jose.Valdez@edisoft.pt">Jose.Valdez@edisoft.pt</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div lang="EN-US"><div class="gmail-m_-8321013478063177965WordSection1"><p class="MsoNormal"><span style="font-size:11pt;font-family:"Arial","sans-serif";color:rgb(31,73,125)">Hello Mikail,<u></u><u></u></span></p><p class="MsoNormal"><span style="font-size:11pt;font-family:"Arial","sans-serif";color:rgb(31,73,125)"><u></u> <u></u></span></p><p class="MsoNormal"><span style="font-size:11pt;font-family:"Arial","sans-serif";color:rgb(31,73,125)">Thank you for contributing to this discussion.<u></u><u></u></span></p><p class="MsoNormal"><span style="font-size:11pt;font-family:"Arial","sans-serif";color:rgb(31,73,125)"><u></u> <u></u></span></p><p class="MsoNormal"><span style="font-size:11pt;font-family:"Arial","sans-serif";color:rgb(31,73,125)">I have been also myself investigating the requirement management tools. Currently, I converged into the three tools:<u></u><u></u></span></p><p class="MsoNormal"><span style="font-size:11pt;font-family:"Arial","sans-serif";color:rgb(31,73,125)"><u></u> <u></u></span></p><p class="gmail-m_-8321013478063177965MsoListParagraph"><u></u><span style="font-size:11pt;font-family:Wingdings;color:rgb(31,73,125)"><span>è<span style="font:7pt "Times New Roman""> </span></span></span><u></u><span dir="LTR"></span><span style="font-size:11pt;font-family:"Arial","sans-serif";color:rgb(31,73,125)">rmToo<u></u><u></u></span></p><p class="gmail-m_-8321013478063177965MsoListParagraph"><u></u><span style="font-size:11pt;font-family:Wingdings;color:rgb(31,73,125)"><span>è<span style="font:7pt "Times New Roman""> </span></span></span><u></u><span dir="LTR"></span><span style="font-size:11pt;font-family:"Arial","sans-serif";color:rgb(31,73,125)">papyrus<u></u><u></u></span></p><p class="gmail-m_-8321013478063177965MsoListParagraph"><u></u><span style="font-size:11pt;font-family:Wingdings;color:rgb(31,73,125)"><span>è<span style="font:7pt "Times New Roman""> </span></span></span><u></u><span dir="LTR"></span><span style="font-size:11pt;font-family:"Arial","sans-serif";color:rgb(31,73,125)">doorstop<u></u><u></u></span></p><p class="MsoNormal"><span style="font-size:11pt;font-family:"Arial","sans-serif";color:rgb(31,73,125)"><u></u> <u></u></span></p><p class="MsoNormal"><span style="font-size:11pt;font-family:"Arial","sans-serif";color:rgb(31,73,125)">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:<u></u><u></u></span></p><p class="gmail-m_-8321013478063177965MsoListParagraph"><u></u><span style="font-size:11pt;font-family:Wingdings;color:rgb(31,73,125)"><span>è<span style="font:7pt "Times New Roman""> </span></span></span><u></u><span dir="LTR"></span><span style="font-size:11pt;font-family:"Arial","sans-serif";color:rgb(31,73,125)">requirement analysis (for example looks for forbidden words/expressions in the requirements)<u></u><u></u></span></p><p class="gmail-m_-8321013478063177965MsoListParagraph"><u></u><span style="font-size:11pt;font-family:Wingdings;color:rgb(31,73,125)"><span>è<span style="font:7pt "Times New Roman""> </span></span></span><u></u><span dir="LTR"></span><span style="font-size:11pt;font-family:"Arial","sans-serif";color:rgb(31,73,125)">more information in the requirements that doorstop (some useful, other maybe not), for example: author of the requirement, effort, status, priority, etc<u></u><u></u></span></p><p class="gmail-m_-8321013478063177965MsoListParagraph"><u></u><span style="font-size:11pt;font-family:Wingdings;color:rgb(31,73,125)"><span>è<span style="font:7pt "Times New Roman""> </span></span></span><u></u><span dir="LTR"></span><span style="font-size:11pt;font-family:"Arial","sans-serif";color:rgb(31,73,125)">constraints can be added (although using like some of formal language written in python)<u></u><u></u></span></p><p class="MsoNormal"><span style="font-size:11pt;font-family:"Arial","sans-serif";color:rgb(31,73,125)"><u></u> <u></u></span></p><p class="MsoNormal"><span style="font-size:11pt;font-family:"Arial","sans-serif";color:rgb(31,73,125)">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). <u></u><u></u></span></p><p class="MsoNormal"><span style="font-size:11pt;font-family:"Arial","sans-serif";color:rgb(31,73,125)"><u></u> <u></u></span></p><p class="MsoNormal"><span style="font-size:11pt;font-family:"Arial","sans-serif";color:rgb(31,73,125)" lang="PT">Best regards<u></u><u></u></span></p><p class="MsoNormal"><span style="font-size:11pt;font-family:"Arial","sans-serif";color:rgb(31,73,125)" lang="PT"><u></u> <u></u></span></p><p class="MsoNormal"><span style="font-size:11pt;font-family:"Arial","sans-serif";color:rgb(31,73,125)" lang="PT">José <u></u><u></u></span></p><p class="MsoNormal"><span style="font-size:11pt;font-family:"Arial","sans-serif";color:rgb(31,73,125)" lang="PT"><u></u> <u></u></span></p><p class="MsoNormal"><b><span style="font-size:10pt;font-family:"Tahoma","sans-serif"" lang="PT">From:</span></b><span style="font-size:10pt;font-family:"Tahoma","sans-serif"" lang="PT"> Mikail Yayla [mailto:<a href="mailto:mikail.yayla@tu-dortmund.de" target="_blank">mikail.yayla@tu-dortmund.de</a>] <br><b>Sent:</b> sexta-feira, 15 de março de 2019 10:33<br><b>To:</b> Jose Valdez<br><b>Cc:</b> seba</span><span style="font-size:10pt;font-family:"Tahoma","sans-serif"">stian huber; <a href="mailto:devel@rtems.org" target="_blank">devel@rtems.org</a><br><b>Subject:</b> Re: Requirement Management tools<u></u><u></u></span></p><p class="MsoNormal"><u></u> <u></u></p><div><div><p class="MsoNormal">Hello all,<u></u><u></u></p></div><div><p class="MsoNormal"><u></u> <u></u></p></div><div><p class="MsoNormal">I am helping Sebastian trying out different requirement management tools.<u></u><u></u></p></div><div><p class="MsoNormal">We are currently evaluating doorstop and how well it can be used.<u></u><u></u></p></div><div><p class="MsoNormal"><u></u> <u></u></p></div><div><p class="MsoNormal">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.<u></u><u></u></p></div><div><p class="MsoNormal">Here is the created document structure: <a href="https://depot.tu-dortmund.de/rfek8" target="_blank">https://depot.tu-dortmund.de/rfek8</a><u></u><u></u></p></div><div><p class="MsoNormal"><u></u> <u></u></p></div><div><p class="MsoNormal">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.<u></u><u></u></p></div><div><p class="MsoNormal"><u></u> <u></u></p></div><div><p class="MsoNormal">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.<u></u><u></u></p></div><div><p class="MsoNormal"><u></u> <u></u></p></div><div><p class="MsoNormal">Here are the pros and cons for doorstop from my view:<u></u><u></u></p></div><div><p class="MsoNormal"><u></u> <u></u></p></div><div><p class="MsoNormal">Pros:<u></u><u></u></p></div><div><p class="MsoNormal">- Easy to use, either using the command line interface or creating and editing the document files by hand.<u></u><u></u></p></div><div><p class="MsoNormal">- 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.<u></u><u></u></p></div><div><p class="MsoNormal">- 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.<u></u><u></u></p></div><div><p class="MsoNormal">- Markup can be used in the text fields of the document files<u></u><u></u></p></div><div><p class="MsoNormal"><u></u> <u></u></p></div><div><p class="MsoNormal">Cons:<u></u><u></u></p></div><div><p class="MsoNormal">- 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: <a href="http://jacebrowning.github.io/doorstop/index.html" target="_blank">http://jacebrowning.github.io/doorstop/index.html</a> in <a href="http://jacebrowning.github.io/doorstop/REQ.html" target="_blank">http://jacebrowning.github.io/doorstop/REQ.html</a><u></u><u></u></p></div><div><p class="MsoNormal">- 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)  <u></u><u></u></p></div><div><p class="MsoNormal"><u></u> <u></u></p></div><div><p class="MsoNormal">Possible bugs:<u></u><u></u></p></div><div><div><p class="MsoNormal">- 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.<u></u><u></u></p></div><div><p class="MsoNormal">- 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.<u></u><u></u></p></div><div><p class="MsoNormal">- Sometimes the HTML has to be cleaned by hand from old HTML files from documents which were already deleted. <u></u><u></u></p></div></div><div><p class="MsoNormal"><u></u> <u></u></p></div><div><p class="MsoNormal">Other Points and ideas to extend doorstop:<u></u><u></u></p></div><div><p class="MsoNormal">- We could try to adapt doorstop such that it accepts reST in the text fields, then we would use text from the documentation.<u></u><u></u></p></div><div><p class="MsoNormal">- A visualization of the document structure as a graph would be neat<u></u><u></u></p></div><div><p class="MsoNormal">- There is a GUI but it is experimental, can only be used to view the document.<u></u><u></u></p></div><div><p class="MsoNormal"><u></u> <u></u></p></div><div><p class="MsoNormal">If you have some other ideas or other things we should try with doorstop, please let us know.<u></u><u></u></p></div><div><p class="MsoNormal"><u></u> <u></u></p></div><div><p class="MsoNormal">Here is the summary of the materials:<u></u><u></u></p></div><div><p class="MsoNormal">The paper with some use cases for doortstop: <a href="https://www.researchgate.net/publication/276044183_Doorstop_Text-Based_Requirements_Management_Using_Version_Control" target="_blank">https://www.researchgate.net/publication/276044183_Doorstop_Text-Based_Requirements_Management_Using_Version_Control</a><u></u><u></u></p></div><div><p class="MsoNormal">The example from the author: <a href="http://jacebrowning.github.io/doorstop/index.html" target="_blank">http://jacebrowning.github.io/doorstop/index.html</a><u></u><u></u></p></div><div><p class="MsoNormal">Our test example for RTEMS: <a href="https://depot.tu-dortmund.de/rfek8" target="_blank">https://depot.tu-dortmund.de/rfek8</a><u></u><u></u></p></div><div><p class="MsoNormal"><u></u> <u></u></p></div><div><p class="MsoNormal">Best,<u></u><u></u></p></div><div><p class="MsoNormal">Mikail<u></u><u></u></p></div><div><p class="MsoNormal"><u></u> <u></u></p></div><div><p class="MsoNormal"><u></u> <u></u></p></div></div><p class="MsoNormal"><u></u> <u></u></p><div><div><p class="MsoNormal">On Wed, Mar 13, 2019 at 1:00 PM Jose Valdez <<a href="mailto:Jose.Valdez@edisoft.pt" target="_blank">Jose.Valdez@edisoft.pt</a>> wrote:<u></u><u></u></p></div><blockquote style="border-color:currentcolor currentcolor currentcolor rgb(204,204,204);border-style:none none none solid;border-width:medium medium medium 1pt;padding:0cm 0cm 0cm 6pt;margin-left:4.8pt;margin-right:0cm"><p class="MsoNormal">Hello Sebastian,<br><br>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.<br><br>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).<br><br>I believe that you saw (but devel rtems did not), Andre Ribeiro proposed other tools:<br>-> <a href="http://testlink.org" target="_blank">http://testlink.org</a><br>-><a href="http://www.eclipse.org/osee" target="_blank">http://www.eclipse.org/osee</a><br><br>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.<br><br>Best regards<br><br>José<br><br><br>-----Original Message-----<br>From: Sebastian Huber [mailto:<a href="mailto:sebastian.huber@embedded-brains.de" target="_blank">sebastian.huber@embedded-brains.de</a>] <br>Sent: quarta-feira, 13 de março de 2019 06:47<br>To: Jose Valdez; <a href="mailto:devel@rtems.org" target="_blank">devel@rtems.org</a><br>Subject: Re: Requirement Management tools<br><br>Hello,<br><br>I added a ticket and a wiki page for this topic:<br><br><a href="https://devel.rtems.org/ticket/3726" target="_blank">https://devel.rtems.org/ticket/3726</a><br><br><a href="https://devel.rtems.org/wiki/Developer/RequirementsEngineering" target="_blank">https://devel.rtems.org/wiki/Developer/RequirementsEngineering</a><br><br>-- <br>Sebastian Huber, embedded brains GmbH<br><br>Address : Dornierstr. 4, D-82178 Puchheim, Germany<br>Phone   : +49 89 189 47 41-16<br>Fax     : +49 89 189 47 41-09<br>E-Mail  : <a href="mailto:sebastian.huber@embedded-brains.de" target="_blank">sebastian.huber@embedded-brains.de</a><br>PGP     : Public key available on request.<br><br>Diese Nachricht ist keine geschäftliche Mitteilung im Sinne des EHUG.<br><br>_______________________________________________<br>devel mailing list<br><a href="mailto:devel@rtems.org" target="_blank">devel@rtems.org</a><br><a href="http://lists.rtems.org/mailman/listinfo/devel" target="_blank">http://lists.rtems.org/mailman/listinfo/devel</a><u></u><u></u></p></blockquote></div></div></div></blockquote></div>