Decisions to take
In italic, decisions proposed by bluesquare, still open point are in bold
Strategy (iterative approach)
- Modularity level
- by business domain
- Coarse or fine grained
- by layer (frontend, back ends)
- by business domain
- What will be an OpenIMIS module:
- Unidirectional dependencies
- Open for extension but close for modifications
- Loose coupling: can be plug or unplug at will but it is costly and not easy to learn
- Level of customization (data source, logic , parameters, ....)
- What standards need to be used to retrieve and publish data
- FHIR (external)
- Database connectors (module internal)
- Current API (intra module)
- Modularity level
- What action modules should be able to trigger on other module:
- Should we have Business process management
- Should we use only event (dynamic) or contributions (static)
- Tools
- Front ends: GUI
- Language : Javascript
- Framework : React
- Back end:
- Language : Python
- Framework : REST Django + Celery and RabbitMQ
- Database :
- PostgreSQL
- FHIRbase: PostgreSQL + JSONB
- Batches : recurrent jobs to updates records / workflows
- Language : Python
- Framework : Django
- recommended task planner: Airflow
- Mobile :
- Progressive built in module
- Standard for API
- FHIR
- JSON API ....
- What module should be part of Tender 1:
- Name
- Boundaries