Design and Implementation of Clinic Appointment Registration System

Clinic Appointment Registration System is an important way to see a doctor, and it’s also a preliminary tool for storage and management of clinic medical records. This new system was developed using Visual Studio 2008 and C#.NET as the development environment and tools and Microsoft Access 2003 as the database to store the medical data based on Browse/Server (B/S) model. The system consists of several data operation functions including appointment registration, data management (e.g. addition, deletion and searching), data backup and recovery, etc., thus, achieve key research objectives.


Introduction
Clinic appointment registration system has been one of the key barriers for hospitals to improve their service quality.Especially for those high-level comprehensive hospitals with a large amount of outpatients, outpatient congestion is a common phenomenon.Online appointment registration system to see a doctor has been implemented and is getting popular in some developed countries.The technology for making an online appointment is getting mature.Domestically, only a few hospitals are in the pilot phase in trying the online registration system.
The project is to follow the software life cycle, through stages of demand analysis, system design, system implementation, system testing and maintenance, to design and develop an outpatient appointment registration system based on B/S model.It provides learning programs for the experimental teaching courses of "Medical Informatics" and "Hospital Information System" for students majored in computer science focused on medical informatics in our school.It can also be used in medium and small hospitals as an outpatient appointment registration system.

System Requirements Analysis
Demand analysis is the first stage of software development.It is a process of discovery, refinement, modeling, specification and review.The demand analysis is directly related to product quality of software, and subsequently poses significant impacts on the design and implementation phases.In general (of software development), the demand analysis includes both functional requirement and technical requirement analyses [1].

Functional Requirements Analysis
There are two sets of functions for an online appointment registration system based on B/S model.The first set of functions are online registration functions including register and login, selection of department, date, doctor and other online booking registration functions.The operation flow chart is shown in Figure 1.
The second set of functions are data management functions allowing the database administrator to add, delete, inquire, modify, restore and backup data backup.In addition, deletion, inquiry and modification are the basic operations of database management.They can effectively maintain the consistency of the database to meet the actual need.The data backup and restore can greatly enhance the security of the system.Even if in the situation of data loss, the system can be restored to the previous version.The data management structure is shown in Figure 2.

Technical Requirements Analysis
In software development, the system architecture is determined by the functions required.

System Functions Modular Design
According to business process, the system can be divided into two categories of users: the first users are those who want to make an online appointment.The second users are the hospital staff of internal administrators.Appropriate permissions are set in the system corresponding to the different user set.Overall system function structure is shown in Figure 3.

Database Design
Database design is an important part of software design.The database design is directly related to the merits of the program to achieve the efficiency and simplicity of data access.Under normal circumstances, the database usually adopts ER diagram (Entry-Relationship) to determine the link between the data structure and data tables [4].In this system, the link between the data tables is realized by the field code of "patient's appointment ID number".According to requirement analysis and system organization chart, our system contains thirteen data tables including coding tables of department ID, doctor ID, doctor information, doctor schedules, outpatient registration ID list, etc.

System Implementation
System implementation includes the implementation of the functionalities of each module and the implementation of data backup and restoration.Here we will emphasis on introducing the implementation of data backup.

Data Backup
Data backup refers to storage of user data including files, databases, application programs and etc for data recovery.Despite a variety of protective measures embedded in the system to prevent data security and integrity from damage, data damage is inevitable because of the possibility of computer system hardware failure, software error, operator error, and malicious damage.Therefore, it is imperative to provide data backup and restoration mechanism to improve system security [4].

Database Backup to Achieve
The data backup and restoration system are mainly achieved through the wrapper class AccessBak.

Conclusion
The system integrates technology advantages of Visual Studio 2008 and C #.NET development environment to design and develop an outpatient online appointment registration system.Since 2010, it has been used as an experimental teaching program for "Medical Informatics" and "Hospital Information System" classes for students majored in computer science with orientation of medical informatics in our school.It has led to satisfactory teaching accomplishment.Because of the inadequate teaching equipment, the functionality of online credit card payment cannot be implemented.We will continue to improve and develop the system with goals of suitable to be used in small and medium-size hospitals for managing their outpatient online appointment registration and to be used for managing outpatient medical records for data mining.

Figure 1 .
Figure 1.System flow chart for online appointment registration.