...
- Infrastructure / Packaging:
- Legacy OpenIMIS + Linux Docker for new component
- Windows container for legacy + new module ==> DOES IT WORK?
- Open question: how to upgrade with Docker without overwriting the country specific developments? Should / How to integrate the country specific devs into docker?
- Deployment along OpenHIE - should align with Instant OpenHIE (Docker/Kubernetes)
- Offline infrastructure Sync
- Reference assembly file is not as-is part of the core but can be used to start a country specific implementation
- Authentication:
- Django
- SSO; to be check what sso are available in django - should take discussion to OpenHIE community for consensus
- External application (i.e. OpenMRS) authorisation to access the API API/OPEN HIM credential management (node based not user based)
- Audits
- AS IS
- ATNA: https://wiki.ihe.net/index.php/Audit_Trail_and_Node_Authentication
- see also https://wiki.ihe.net/index.php/Add_RESTful_Query_to_ATNA for work in progress/just finished on adding RE
- requirement for some countries (e.g. South Africa see http://www.samed.org.za/Filemanager/userfiles/hnsf-complete-version.pdf )
- see also https://wiki.ihe.net/index.php/Add_RESTful_Query_to_ATNA for work in progress/just finished on adding RE
- Front endsend: GUI
- Language : Javascript
- Framework : React(static) / redux (event, inter-module communication)
- Caching and bad connectivity resilience: progressive approach possible.
- Translation: use React best practice
- link to to https://translations.launchpad.net/ using .po / .pot file for crowd-source translations of the UI
- need to think about translations of metadata that is international (e.g. ICD-10 terms are translated to key languages) and local (e.g. metadata in bilingual countries)
- Unit testing: enzym / jest
- Possibility to change the date display
- Extension point / Contributions extension model
- Back end:
- Language : Python
- Framework : REST Django + Celery (RabbitMQ for worker)
- Country specific devs are based on configuration files (and modules)
- unit test handled by Django
- Code coverage tool: https://github.com/codecov/codecov-python
- hook custom date calculation - needs more detail on requirements
- Database :
- Legacy To-be PostgreSQL
- Database independence >> to be review when the database migration is done
- Fexilibity needs JSONB
- FHIR is simpler with JSONB (ie. FHIR database)
- Other database License already bought : Implementer to check: OpenIMIS needs to go to PostGeSQL, how easy will be for your country to comply
- Batches : recurrent jobs to updates records / workflows
- Language : Python
- Framework : Django
- recommended task planner: Airflow
- Standard for new API
- FHIR when there is a matching fhir
- JSON API as default
...