Blueprint:Blueprint
Blueprints
Blueprints are informal working documents to discuss development goals in Sahana Eden, including (but not limited to) feature sets, standards and the development process and methodology itself.
This page illustrates the general structure of Blueprints:
Background
A Blueprint would normally start with a section that explains the background of the development goal, e.g. a user story:
Medical staff want to be able to record measurement values of their patients, like weight or blood sugar, and and follow their development over time.
Problem(s)
The problem statement illuminates the obstacles that need to be overcome, e.g.:
There is currently no dedicated place to record such measurement values in the MED module, so users are forced to document them in free text fields in status reports, where they cannot easily follow or analyze their development over time.
Analysis / Requirements
This section analyses the problems and draws conclusions about requirements for possible solutions, e.g.:
Measurement values can be either numerical (with a unit), or discrete values from a pre-defined set. Values can be within a "normal" range, or deviating from it, and highlighting deviations is a usual form of decision support in this context. Observing the development of measurement values over time, or comparison of individual values is best facilitated in tables, and can additionally be supported by e.g. line charts.
It is also important that the analysis illuminates the available capabilities and resources, as well as constraints, for the adoption of possible solutions.
Solution Ideas / Proposals
This section collects and discusses solution ideas for the requirements derived from the analysis, e.g.:
The MED data model can be extended with a category table of measurement types, each defining a numerical range or set of discrete values as well as the corresponding "normal" range. Further, a time-stamped relation between a patient/person and a measurement type would be used to document a concrete measurement result.
A special UI endpoint would be used to allow the documentation of multiple measurement results with the same time stamp.
Measurement results would then be presented in a special data table, where the time stamps form the horizontal axis, and measurement types the vertical axis.
This can include links to external documentation, or other blueprints, that elaborate on the individual ideas or proposals.
Implementation
This section documents actual and/or planned implementations of solution proposals, e.g.:
HistoryTable is a CRUDMethod to display time-stamped values as a table with a horizontal time axis and vertical grouping by category reference. This method can be used to visualize medical measurement values.
Typically, this section would include links to the specific documentation about each implementation.
Feedback
This section is meant to document relevant feedback and experience with the implementation, ideally with a reference to a concrete date and/or version.
2025-10-22: It would be useful to be able to filter categories while viewing the table, so that one can see correlations more easily