Replies: 3 comments 9 replies
-
@stanislaw I could find the class representations of ReqIf "entities" in |
Beta Was this translation helpful? Give feedback.
-
After doing some research about ReqIF viewers I found reqifviewer which can visualize |
Beta Was this translation helpful? Give feedback.
-
The web user interface and the web backend are now in place. See this comment: #563 (comment). See the initial design documentation: https://strictdoc.readthedocs.io/en/stable/strictdoc_21_design.html. |
Beta Was this translation helpful? Give feedback.
-
This discussion thread shall clarify the software design for the feature #563 (comment) .
As most developers interested in requirement management will have a strong background in Python (usually as their main second programming language) I would use Python for the backend. As strictdoc is implemented in Python this eases deployment of the backend in the development context (running the backend framework in development mode). In addition the backend could be extended for deployment as standalone docker container.
As backend framework I‘d suggest FastAPI. It is lightweight as Flask but profits from pydantic w.r.t. code reliability. Using Django would be overkill.
For the frontend integration part I‘d suggest GraphQL. It allows to define a typed interface and leads to less boilerplate in comparison to REST. A framework resulting in little code is Strawberry. In case it would be limited w.r.t. features one would have to migrate to Ariadne or Graphene.
W.r.t. the data source integration part it‘s probably best to consider reqif files as single source of truth and read/write from it using reqif. This implies the need for converting between reqif file and sdoc file before reading and after editing data with the backend. However reqif seems to be the only standardized requirement interchange format. In addition this allows a complete decoupling of strictdoc core functionality and the web UI backend.
Beta Was this translation helpful? Give feedback.
All reactions