Doorstop Issues
Sebastian Huber
sebastian.huber at embedded-brains.de
Mon Apr 20 10:59:24 UTC 2020
On 19/04/2020 17:14, Sebastian Huber wrote:
> Hello,
>
> I am about to add the next couple of hundred specification items for
> the RTEMS pre-qualification activity. Before I do this, I would like
> to present some issues that popped up during my daily work with
> Doorstop. Doorstop is a requirements management tool which was
> selected for the pre-qualification activity:
>
> https://docs.rtems.org/branches/master/eng/req-eng.html#selected-tool-doorstop
>
>
> I am quite happy that Jan Sommer suggested to use this tool. I has
> some pretty nice features. In particular, I think the file based
> organization in YAML format forming a directed acyclic graph is really
> the right thing for this project. However, it turned out that it lacks
> the required flexibility.
>
> 1. Its use case is requirements management. So it has some standard
> attributes useful in this domain, like derived, header, level,
> normative, ref, reviewed, and text. However, I want to use it more
> generally for specification items and these attributes make not always
> sense. Having them in every item is just overhead and may cause
> confusion.
>
> 2. The links cannot have custom attributes, e.g. role, enabled-by.
>
> 3. Inside a document (directory) items are supposed to have a common
> type. I would like to store at a hierarchy level also distinct
> specializations.
>
> 4. The verification if the items is quite limited. We need
> verification with type-based rules.
>
> 5. The UIDs in combination with the document hierarchy lead to
> duplication, e.g. a/b/c/a-b-c-d.yml. You have the path (a/b/c) also in
> the file name (a-b-c). You cannot have relative UIDs in links (e.g.
> ../parent-req) . The specification items may contain multiple
> requirements, e.g. min/max attributes. There is no way to identify them.
>
> I will probably stop using Doorstop and use a custom tooling. With
> Python, this is quite easy. I already have the infrastructure for this
> in:
>
> https://git.rtems.org/sebh/rtems-qual.git/
>
> I will try this out with the new build system.
I forgot another issue:
6. The links are ordered by Doorstop alphabetically by UID. It would be
better to use the order specified by the user. For example, I had to add
an "order" attribute for the new build system to work around this feature.
More information about the devel
mailing list