In: Computer Science
A private neighborhood health clinic wants to automate management of their operations by implementing an interactive web-based software system using the html5 standard, which should make the system run on tablets and smart phones as well as desktop and laptop machines. The Clinic Management System (CMS) is to be used by both patients and the clinic personnel (doctors, nurses, and administrative staff). A patient will be able to make on-line appointments for an examination, cancel an existing appointment, inspect lab results, check their outstanding balance and make payments using their credit cards. A doctor will be able to record their schedules including the time periods they are busy and periods they have time-off. They will also be able to browse their schedules for any appointments for examinations. The doctors could also ask to cancel appointments during a specified period, in case they become unavailable for unexpected reasons, subject to approval by clinic director, who is also a doctor with management responsibilities. A doctor may browse a list of his/her patients, including past patients. Initially only some brief information is displayed for each patient but the doctor may ask for details (including picture and patient records in chronological order). A nurse will be able to request time-off using CMS, subject to approval by the head nurse (head nurse herself/himself reports to the clinic director). The administrative staff can also help patients, doctors and nurses to perform operations on their behalf, in situations where such a user does not have access to the Internet. The accounting of the clinic for both customers (balances due) and clinic personnel (their salaries and other compensation) are to be managed by an existing software module put in place by the clinic when they first started operation. User authentication is especially critical for such a system with sensitive information for both patients and clinic personnel. In addition, clinic currently has only about a couple of hundred active patients but as time goes by, especially after the automated system is in place, the clinic management expects to have at least thousands of patients if not more. To attract more customers, the clinic management has also decided to put two types (silver and gold) of memberships in place with varying privileges. One can become a silver customer if they have used clinic facilities pretty regularly for at least two years. A customer who has been a silver customer for at least two years gets to be a gold customer, assuming they have never failed to make payments past their due dates. Both silver and gold customers are provided with more flexible time slots for making appointments. Gold customers get additional privileges such as getting an SMS notification when their lab results are ready.
After reading the above problem description, list and justify all non-functional requirements for this system.
Non Functional Requirements:
The non-functional requirements of the system includes any requirement that is not related to software’s functionality and feature but enhance the ecurity, reliability, performance, accuracy etc for the software.
Non-Functional Requirements in purposes CMS:
Below are the certain non-functional requirements which are mentioned in the system description along with a breif justification:
1. Authorization security:
The new system CMS will be accessibly using login credentials. The login credentials are critical for all users and should be stored securely with the system database.
2. Authorization based on role:
The system will have staff members and patients as users. There should be a security phase for all type of users such that only respective and authorized data is displayed to the user after login. E.g. the Patient will only be able to see his/her own data and a doctor will only be able to see his/her own schedule.
3. Privileges based on Patient’s plan:
The system will have the plan-based access, where after a certain period of time e.g. 2 years when all the payments are made on time. The patient-user will get authorized for more privileged scheduling. The level of security and privileges need to be maintained between different patients of different plans.
4. Handling bulk patient accounts:
The system will have thousands of the users in future, thus the application will be expected to handle all records efficiently and accurately in its database so that none of the other records is affected with the addition of new records when the volume of data is increased.
5. Concurrent user handling:
With an increase in the number of patients, it will be quite possible that multiple (possibly thousands) of patients are using the system concurrently. The application should support the concurrent use of applications such that the action performed by one patient is not affecting the other concurrent user and a private session is maintained for each user.