Oogway is an Electronic Medical Record (EMR) system designed to streamline the process for doctors and patients alike.
Oogway is similar to the following EMR systems:
- Epic
- Cerner
- Allscripts
- Meditech
- AthenaHealth
These EMR systems have the following features in common:
- Electronic Health Record (EHR) Functionality
- Clinical Documentation
- Interoperability
- Security and Compliance
To complete their tasks, they rely on the following technologies:
- Database Management Systems
- Web Technologies
- Health Level Seven (HL7)
- Digital Imaging and Communications in Medicine (DICOM)
- OAuth and OpenID Connect
- RESTful APIs
- Health Information Exchange (HIE) Standards
- Encryption and Secure Communication Protocols
- Cloud Computing Infrastructure
Oogway is composed of the following three interacting systems which are built using the listed technologies:
- A Native Desktop Client for Doctors and other Authorized Medical
Professionals can use under HIPAA compliance
- C++
- Qt
- SQLite3
- libcurl
- GPG
- A Mobile Client for Patients can use under HIPAA compliance
- Java
- Android
- A Web Server with a RESTful API that
- JavaScript
- Node
- Express.js
- MongoDB
Describes the purpose and goals of the project, including its target audience, intended platform(s), and any specific requirements or constraints.
The purpose of this project is to create a distributed system that decreases friction between the patient and the medical professional.
The medical professional needs to be able to review everything that is relevant to the client's condition in order to address it in a time-efficient manner.
Outlines the specific features and functionalities of the project, often in the form of a bulleted list or detailed descriptions.
Defines the quality attributes of the project, such as performance, scalability, security, usability, and any technical constraints.
Illustrates the high-level structure of the system, including components, modules, and their interactions.
This may include diagrams like flowcharts, UML diagrams, or architecture diagrams.
Presents the design of the user interface, including wireframes, mockups, or prototypes to visualize the layout, navigation, and interactions.
Describes the structure and relationships of the data used by the system, including databases, tables, entities, attributes, and any data flows or transformations.
Details the algorithms, calculations, or business logic used within the system to achieve its functionality.
Lists the technologies, frameworks, libraries, and tools chosen for development, along with any rationale for their selection.
Outlines the approach to testing, including types of testing (e.g., unit testing, integration testing, user acceptance testing), testing tools, and criteria for success.
Specifies how the project will be deployed, including infrastructure requirements, deployment environments, deployment process, and any dependencies.
Identifies potential risks to the project's success and outlines strategies to mitigate or manage them.
Provides a project schedule with key milestones, deadlines, and dependencies to track progress and ensure timely completion.
Defines any technical terms, acronyms, or domain-specific terminology used throughout the document to ensure clarity and consistency.
Includes any additional resources, documents, or external references relevant to the project.