Use specification items to generate documentation
Sebastian Huber
sebastian.huber at embedded-brains.de
Wed Jan 8 14:55:25 UTC 2020
Hello,
for the RTEMS pre-qualification activity we need a specification of
RTEMS. I would like to use this opportunity to move structured
information which is present in hand written and hand formatted content
in the RTEMS documentation into a structured data format (YAML).
Documentation source files can be generated from the YAML files. Having
information available in an easily machine readable format with
meta-information gives us a lot of flexibility. For example to adjust
the presentation we just have to change the generator program and not
the hand written content. The presentation of things may depend on the
standard of interest, e.g. ECSS, IEC 61508, ISO 26262, DO-178C, etc.
To get started, I would like to use the glossary of terms and the
application configuration as a use case. The conversion from hand
written and hand formatted content to generated content needs three things:
1. A definition of the data format (YAML with Doorstop attributes)
2. The specification items in the defined data format.
3. A generator program which uses the specification items as input and
outputs the documentation source files.
The new build system introduced build specification items in the RTEMS
sources under "spec/build". I would like to place all of the RTEMS
specification under the "spec" directory. For the glossary I propose to
use "spec/glossary". For the application configuration categories I
propose "spec/cfg" and for the application configuration options
"spec/cfg/opt". The layout of the application configuration items
enables an easy reassignment of options to categories.
The definition of the data format should be added to the RTEMS Software
Engineering manual to the Software Requirements Engineering chapter.
The generator program should be written in Python and placed into the
rtems-tools repository. The generator program needs paths to the RTEMS
sources and the RTEMS documentation sources. The paths should be
specified via the command line.
For a proof-of-concept please have a look at the attached two patches.
What do you think of it?
--
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
PGP : Public key available on request.
Diese Nachricht ist keine geschäftliche Mitteilung im Sinne des EHUG.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0001-spec-cfg-Add-application-configuration.patch
Type: text/x-patch
Size: 10468 bytes
Desc: not available
URL: <http://lists.rtems.org/pipermail/devel/attachments/20200108/d48a6396/attachment.bin>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0002-spec-glossary-Support-a-glossary.patch
Type: text/x-patch
Size: 3552 bytes
Desc: not available
URL: <http://lists.rtems.org/pipermail/devel/attachments/20200108/d48a6396/attachment-0001.bin>
More information about the devel
mailing list