General Feedback Mechanism (Implementation Ideas)
Primary mentor | @Ben Wolfe |
Backup mentor | @Burke Mamlin |
Assigned to | @Gaurav Paliwal |
- 1 Introduction
- 2 Workflow
- 3 Database Schema
- 3.1 Tables
- 3.1.1 feedback_feedback
- 3.1.2 user_property
- 3.1.3 feedback_severity
- 3.1.4 feedback_status
- 3.1.5 feedback_predefined_subject
- 3.1 Tables
- 4 UI Mockups
- 5 Java Classes
- 5.1 feedback
- 5.1.1 Attributes
- 5.1.2 functions
- 5.2 severity
- 5.2.1 Attributes
- 5.2.2 Functions
- 5.3 status
- 5.3.1 Attributes
- 5.3.2 Functions
- 5.4 subject
- 5.4.1 Attributes
- 5.4.2 Functions
- 5.1 feedback
- 6 Timeline
- 7 Goals
- 7.1 Mid Term Goals
- 7.2 Final Goals
Introduction
Basic Description about this module is available here .
Workflow
Flow Chart for Feedback Submission
Administrator FLOW Chart for Feedback Module
Use Case OpenMRS Feedback Module
Database Schema
Tables
Relations that will be required for the General Feedback Mechanism
feedback_feedback
user_properties
feedback_severity
feedback_status
feedback_predefined_subject
In order to give clear distinction between the module tables and the other tables, the tables created while installing will have prefix “feedback” , this will help to prevent the name collision with other modules.
feedback_feedback
Attribute Name | Intention | Properties |
feedback_id | This will be the unique ID number to identify each and every feedback. |
|
| This will be the user id of the user, that has submitted the feedback. |
|
subject | This is the subject of the feedback that the user is submitting. |
|
content | This is the content of the feedback that the user has submitted. |
|
severity | This is used to tell the severity of the feedback. |
|
comment | This field is used to store the administrator action over the feedback |
|
status | This is used to store the current status of the feedback. |
|
| This is the used to store the time at which the user has made submitted the feedback |
|
| This is the used to store the time at which the administrator has made the comment on feedback. |
|
user_property
Following property will exist for all system users specific to the feedback mechanism module :
creator
email_id
phone_number
receipt_preference
followup_preference
feedback_severity
Attribute Name | Intention | Properties |
index | To store the index of the severity table | AUTO_INCREMENT , NOT NULL |
severity | This stores the predefined severity level by the administrator. I have intentionally not declaring it as a foreign key to the relation feedback(severity). | Varchar(50) |