Kenya Patient Summary FHIR Implementation Guide
0.1.0 - ci-build KE

Kenya Patient Summary FHIR Implementation Guide, published by Digital Health Agency of Kenya. This guide is not an authorized publication; it is the continuous build for version 0.1.0 built by the FHIR (HL7® FHIR® Standard) CI Build. This version is based on the current content of https://github.com/IntelliSOFT-Consulting/Kenya-Patient-Summary-FHIR-IG/ and changes regularly. See the Directory of published versions

Non-Functional Requirements

Provides the general attributes and features of the digital system to ensure usability, security, interoperability, and technical compliance. Non-functional requirements do not define what the system does, but rather how the system performs its functions.

Table 19. Non-functional Requirements
Requirement ID Category Non-functional Requirement
Security – Confidentiality
KPS.NFXNREQ.1 Security – confidentiality Provide password-protected access for authorized users only.
KPS.NFXNREQ.2 Security – confidentiality Ensure confidentiality and privacy of personal health information in compliance with the Kenya Data Protection Act 2019.
KPS.NFXNREQ.3 Security – confidentiality Restrict access to patient data to only those users with the appropriate role-based permissions.
KPS.NFXNREQ.4 Security – confidentiality Encrypt all patient data at rest and in transit using AES-256 and TLS 1.2 or higher respectively.
Security – Authentication
KPS.NFXNREQ.5 Security – authentication Require multi-factor authentication (MFA) for all users accessing patient summary data outside of the facility network.
KPS.NFXNREQ.6 Security – authentication Notify the user to change their password upon first login.
KPS.NFXNREQ.7 Security – authentication Enforce complex password requirements: minimum 8 characters, including uppercase, lowercase, number, and special character.
KPS.NFXNREQ.8 Security – authentication Automatically lock inactive sessions after 15 minutes of inactivity.
KPS.NFXNREQ.9 Security – authentication Support OAuth 2.0 / SMART on FHIR for system-to-system and user-facing authentication.
Security – Audit Trail and Logs
KPS.NFXNREQ.10 Security – audit trail and logs Log all user logins and logouts with timestamp, user ID, and IP address.
KPS.NFXNREQ.11 Security – audit trail and logs Log all create, read, update, and delete (CRUD) operations on patient records, including the user who performed them.
KPS.NFXNREQ.12 Security – audit trail and logs Retain audit logs for a minimum of 7 years, in compliance with the Kenya Medical Records Act.
KPS.NFXNREQ.13 Security – audit trail and logs Ensure audit logs are immutable and accessible only to designated audit personnel and regulators.
Security – User Management
KPS.NFXNREQ.14 Security – user management Implement role-based access control (RBAC) aligned to the KPS Generic Personas (e.g., nurse, clinician, clerical staff, pharmacist).
KPS.NFXNREQ.15 Security – user management Allow system administrators to create, modify, suspend, and deactivate user accounts.
KPS.NFXNREQ.16 Security – user management Ensure that deactivated user accounts cannot access the system.
Interoperability
KPS.NFXNREQ.17 Interoperability Support data exchange using HL7 FHIR R4 APIs in conformance with this Implementation Guide.
KPS.NFXNREQ.18 Interoperability Integrate with the Kenya Health Information Exchange (HIE) for sharing of patient summary data across facilities.
KPS.NFXNREQ.19 Interoperability Integrate with the national Client Registry for patient identity resolution and de-duplication.
KPS.NFXNREQ.20 Interoperability Integrate with the Shared Health Record (SHR) to push and pull patient summary updates at the end of each encounter.
KPS.NFXNREQ.21 Interoperability Support terminology binding to SNOMED CT, ICD-11, LOINC, and Kenya-specific code systems as defined in this IG.
Availability and Reliability
KPS.NFXNREQ.22 Availability Support offline functionality so health workers can continue recording data when internet connectivity is unavailable; data must sync automatically when connectivity is restored.
KPS.NFXNREQ.23 Availability Maintain system availability of at least 99.5% uptime during business hours, excluding planned maintenance windows.
KPS.NFXNREQ.24 Reliability Implement automated data backup at least once every 24 hours, with disaster recovery procedures documented and tested.
Performance
KPS.NFXNREQ.25 Performance Patient summary pages must load within 3 seconds on a standard 3G mobile connection.
KPS.NFXNREQ.26 Performance FHIR API responses must complete within 5 seconds for standard queries under typical load conditions.
Usability
KPS.NFXNREQ.27 Usability The system must be accessible on mobile devices (smartphones and tablets) used by community health workers.
KPS.NFXNREQ.28 Usability Support English and Swahili language interfaces.
KPS.NFXNREQ.29 Usability Comply with Web Content Accessibility Guidelines (WCAG) 2.1 Level AA for accessibility.
Data Integrity
KPS.NFXNREQ.30 Data integrity Validate all mandatory fields before allowing record submission, with clear user-facing error messages.
KPS.NFXNREQ.31 Data integrity Prevent overwriting of historical clinical records; all updates must be versioned and traceable.
KPS.NFXNREQ.32 Data integrity All FHIR resources must include a meta.lastUpdated timestamp and source system identifier.