Blueprint:Blueprint: Difference between revisions
Created page with "== 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 discusses the general scope and structure of Blueprints." |
No edit summary |
||
Line 3: | Line 3: | ||
'''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. | '''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 | 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 discussed 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 section can include links to external documentation, or other blueprints, that elaborate on the individual ideas or proposals. | |||
=== Implementation === | |||
This section documents concrete implementations of the 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 the implementations. |
Latest revision as of 07:59, 17 October 2025
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 discussed 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 section can include links to external documentation, or other blueprints, that elaborate on the individual ideas or proposals.
Implementation
This section documents concrete implementations of the 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 the implementations.