You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I believe that doorstop should be improved to allow the use in safety-critical domains. The discussions have been ongoing for some time, and I do believe that there is somewhat of a consensus that it should be possible, after all, it does intend to replace one of the major players in the safety-critical requirements domain!
This issue tries to gather all of the discussions around this:
If the decision is made to improve doorstop to the point of it actually being possible to use as-is in a safety-critical project, a number of changes should be done. Anyone with experience in the area should feel free to add to the list:
Multiple parents - requirements and/or texts can have multiple parents, so this should be allowed.
History - an easy way to extract the complete history of a single requirement. This would solve many traceability requirements, e.g., DO-178.
Diff publish - Publish a difference report between two git-hashes (not tags since they can be changed).
Look over hash calculation - make sure that everything that should be tracked for changes is included in the hash calculation, even custom attributes.
Rules to check that different attributes are within limits.
Add test suites specifically designed to show compliance to different standards. NOTE: There is a possibility that different standards will have different requirements on doorstop. If so, this can be solved with customized builds and test suites.
Include text from links - Reduces duplication in documentation. E.g., often in a DO-178 project, you would need to have multiple documents containing the same text/paragraph to make them reviewable, but then you instead risk differentiating (and thus introducing errors) by writing the same text in the requirements specification, the design specification, the test specification, the verification report, etc.
Link attributes - such as text as include text, enabled-by, roles, etc.
Document outline - there should be an easier way of organizing a complete document than changing the level of each and everyone of the items. I like the approach suggested by @tangoalx in RFC: "One document - one markdown file" (instead of multiple YAML files) #401, although I believe it should be simplified into just a list of items. The text of each individual item should still be stored in a separate yaml-file. The level-attribute might not be required then either.
Reviewed tag improvements - multiple reviewers, with at least roles, dates and effort.
Look over speed - if used in a large project, we are likely talking about (at least) tens-of-thousands of items. Can doorstop handle that within a reasonable time? Setup some benchmarks and evaluate, e.g., validation time, publish time, etc.
Improved GUI - If needed. I personally think that editing in a text editor is fine, but for a more widespread adoptation in existing organisations I too see the value of a GUI. What about using doorhole instead of a build-in GUI? I.e., remove GUI in doorstop and refer to doorhole.
Remember last added item - Currently, a removed item can be re-added. This must not be allowed to fulfill DO-178 and other standards. Reason: UUID functionality, each requirement must be uniquely identifiable. The common way of doing this is by name, e.g., REQ-499, and if that can change to mean something else years down the road that will be bad.
git hash on publish command - All publish commands should support showing the git hash of the commit. This opens for external reviews of generated PDFs.
I believe that doorstop should be improved to allow the use in safety-critical domains. The discussions have been ongoing for some time, and I do believe that there is somewhat of a consensus that it should be possible, after all, it does intend to replace one of the major players in the safety-critical requirements domain!
This issue tries to gather all of the discussions around this:
If the decision is made to improve doorstop to the point of it actually being possible to use as-is in a safety-critical project, a number of changes should be done. Anyone with experience in the area should feel free to add to the list: