Designing and Implementing a Navicat Database System for a Call Center

—A call center is a physical place where customer and other telephone calls are handled by an organization, usually with some amount of computer automation. Typically, a call center has the capacity to handle a considerable volume of calls at the same time, to screen calls, forward calls to qualified person to handle them, and to log calls. In this article we proposed an architecture and showed how the system works. Carolina Call Center used to manually keep track of its call information through different programs. Data would be entered on Microsoft Excel and results were displayed on Microsoft Word. This made it hard to keep track of the data in an organized matter. Since many Call Centers may encounter these problems, we found a solution by creating a database. We used Navicat as a database client, and Dreamweaver as a web-interface design. Every agent now had an employee account with a password. Each account gave the agents access to the different campaigns they were working on. The accounts also had a timer as well as a break button that automatically kept track of login, logout and breaks. Not only did the database automate work to the employees, but it was beneficial to be business as well. The decreased number of errors combined with the reduced need for employees helped the call center save money. Since the database is an efficient timesaver, it decreased the number of working hours for both management and employees. The database greatly improved the overall quality of the Carolina Call Center .


I. INTRODUCTION
A call center acts as a bridge that connects a company with its clients [1]. Call centers often provides a variety of services, and handle several types of calls distinguished by the required skill for delivering service. Such services include help desks, information lines, reservation desks, customer service centers, and telemarketing services. These services are provided by agents with good voice quality and persuasion skills. The agents sit in front of computer terminals and use headphones to provide inbound or outbound call services.
Most call centers implement the latest technology to ensure high quality services at the lowest cost possible for the center, but at the same time, generating the desired profits and achieving the expected service level. Supervisors and Managers are aware that the actual service level can differ from the expected service level. A higher than necessary service level is generally regarded as a no problem, but managers might be penalized for failing to meet the target in certain period of time [2].
Call centers face different challenges when trying to achieve their goals. One of the biggest problems faced is trying to find a balance between the number of agents with the correct skills to deliver the services efficiently and the expenses of the call center [3]. Another major problem is ensuring that the agents receive the proper training in order to use their skills in a manner that benefits the call center.
Specifying the correct number and nature of agents who handle the calls, and the working schedules of these agents, under constraints on the quality of service and on acceptable schedules, is one of the main optimization problems encountered in managing these centers [4]. Even if the call center hires the correct number of agents who use their skills properly, a call center may not run professionally if the phone and power reliability is poor, and this is the third major problem experienced by many call centers. Other major problems faced by call centers include agent availability. When an inbound call received at the call center, if all agents are busy, the caller is kept on hold until an agent becomes available. Most of the time, the customer either hangs up when first put on hold, or after they get tired of waiting. This decreases overall customer satisfaction. A final problem faced by many call centers is the wellbeing of the agents. Most call center managers are aware that the phone conversations between agents and customers are human interactions. This means that the emotional status of the agent has a major impact on the customer's satisfaction and on the agent's performance. These are just a few of the challenges that need to be resolved by most call centers today [5].
One such call center that has overcome some of these challenges is the Carolina Call Center (CCC) located in Amman, Jordan. It uses updated telecommunication equipment to correspond with clients located in the United States, Canada, and the United Kingdom. What is unique about the CCC is that it is a full-service call center that deals with both inbound and outbound calls. The CCC breaks new ground with it being the first call center of its kind in the Middle East and brings a higher quality of English through its operators and upper management which exceeds the services of its competitors located in India and the Philippines. The CCC is basically a couple of rooms, containing several open-space cubicles, where agents with earphones sit in front of computer terminals providing tele-services to customers. The CCC provides everything from customer service, help desks, and emergency response services, to telemarketing, appointment setting, and order taking.

II. PREVIOUS WORKFLOW
The Carolina Call Center used to manually keep track of its call information through different programs. Data would be entered on Microsoft Excel and the results were displayed on Microsoft word.
Agents had to clock-in with the manager when they first came into work and before they left at night. They also had to check-in with the manager during their breaks. The manager kept a spreadsheet of all the agents' work and break schedules.
Every so often, the Carolina Call Center would receive new call data for its campaign, which included the customer's name, phone number, address, and income level. Once we received the call data, we would face the task of entering the data manually into a Microsoft Excel spreadsheet. There were separate columns for the different types of data, as well as two blank columns one for the call status which the agent would fill after each call, and the other was for comments about the call.
Each campaign had its own call list. Once the manager received the call list for a campaign, he would divide the call list among the agents working on that campaign, creating several spreadsheets for a single campaign. Each agent worked on a variety of campaigns, and therefore had several spreadsheets.
Before beginning their work on a campaign, the agents had to sort the numbers on a proper spreadsheet according to the US state they were currently working on. After each agent complete their call list, they would go through the list once again and call back all the number that was busy and not answered. When a successful call was made, all the information pertaining to the call had to be written on paper. Then, at the end of the day, the agents would have to give that paper to the manger. After getting off the phone from setting an appointment with a client, the agent would go over to the blackboard and write down the date and time of the appointment.
The agents at the CCC handled an outbound call by calling the numbers on the spreadsheet of the campaign they were working on. The agents looked up the customer's name and phone number, and they manually entered that phone number into the phone (X-Lite). Once the customer answered their phone, the agents read the script related to the respective campaign off a piece of paper they had in front of them. After each call was completed, the agents would enter the call status and the notes about the call into the proper columns on their spreadsheets. The agents had to record every call they made for quality assurance, so if the agents' calls were successful, they would label and place their recordings onto their desktops.
An inbound call was handled in a slightly different manner. Once a call was received, an available agent answered the phone and recorded the call. The agent first took down the customer's name, and then assisted the customer by noting the complaint or by answering the customer's questions. After each call was completed, the agent labeled and placed the recording on his desktop and then wrote down the conversation on a piece of paper. This paper was handed to the manager at the end of each day.
Since all the data was recorded manually, the Carolina Call Center encountered many problems. Some of the main problems resulted from manually keeping track of breaks and login and logout times. One such problem was keeping track of how many employees were on break at a single time. This was a problem because if too many agents were on break at once, the work would take longer to get done. Another problem was keeping record of how long each employee would spend on a break. This caused the call center to lose money. A third difficulty related to employee scheduling was keeping track of the number of hours each employee worked. Since login and logout times were manually entered into the spreadsheet, it was difficult and time consuming to add up the monthly hours each employee worked and calculates each pay check.
It was also difficult to keep track of the data in an organized matter, and this caused a different set of problems. One such problem was call statuses being entered in the wrong row. This left some numbers uncalled. Also, if it so happened that the call data of a successful call was entered in the wrong column, then unfortunately, we lost a possible customer. Another problem was, if an agent accidentally deleted a number from the spreadsheet, there would be no way of recovering the lost data. This would decrease the number of possible customers.
Often two appointments for a single campaign were set for the same time because not all the agents would be able to read the calendar off the blackboard. This sometimes resulted in the loss of a customer when trying to reschedule the appointment, leading to low client satisfaction. Possible customers were also lost due to the fact that agents would sometimes lose the paper that the greetings were written on. With no greeting in front of them, they ended up stuttering over the phone, and this caused the customer to hang up the phone. A lot of data was lost or recorded inaccurately due to the fact that agents had to handwrite all the information pertaining to their calls on a sheet of paper. Papers were often lost or sometimes had coffee spilt on them. Sometimes when the manager tried to read the papers at the end of each day so he could send the information to the clients, he would end up sending the wrong information because of illegible handwriting.
Since there are many different campaigns, and sometimes, several different campaigns would be on the same state, we faced a major problem, because sometime the agent would use the wrong spreadsheet for the wrong campaign. For example, an agent would accidentally use the call list of the ADT campaign for the Medicare campaign. Not only, would this cause us to lose possible customers, but also it would waste valuable time. The manager also faced difficulties with the spreadsheet system. Since each agent had their own spreadsheet for a single campaign, the manager ended up with several spreadsheets for a single campaign. This left the manager with the time consuming task of combining all the spreadsheets for a single campaign at the end of each work day.
Callbacks were a big issue because once the agents finished calling a list of numbers; they had to go over the entire list again in order to call back the numbers that were unanswered or busy. This wasted a lot of unnecessary time and decreased the production rate of the call center.
In the call center, the agents always learn from one another's successful calls by listening to the recordings. Since the recordings were on each agent's desktop, if other agents wanted to listen to the successful recordings, they would end up interrupting the work of the agent with the iJAC -Volume 4, Issue 1, February 2011 successful recordings. This led to poor progress at the call center.
There was no system in place to keep track of each agent's progress. This decreased the efficiency at which the call center ran. Every day, a large amount of time would be wasted just trying to check up on each agent's work. As a result, the call center lost a lot of money and was unable to take on any additional campaigns in order to increase revenue.

III. MATERIALS AND METHODS
We took into consideration all of the Carolina Call Center's problems and based on our observations, and interviews we created a database that solved most of these problems. The new system that we created is a clientserver system.
The way we created the database is through Navicat, a database client. We entered all of our data, such as campaigns, call data, and usernames and passwords, into Navicat. We also used Dreamweaver, a tool that maintains our system on a programming level. In order for the database to function, we had to connect both Navicat and Dreamweaver to each other. The way we did this was by using MySQL as a server and PHP as an interpreter with HTTP server. PHP connects to the database, and the interpreter executes the code and sends it to the browser at the client as HTML. When a client requests a file (function), the server executes the code inside that page, and the result is returned to the client as an HTML page.
The global properties of our system are web interface, multiple users, and Real-time centralized database. The system is a Real-time multi-user data system that is designed by HTML. The system works by a web interface programmer that works on all kinds of web browsers. Its advantage is that it can work on any operating system such as Windows and Linux.

IV. ARCHITECTURE OF THE PROPOSED SYSTEM
The Carolina call center is mainly built around the "brain" which is the server and it consists of a connecting network which services all the agents. The server contains everything that allows the system to work. It is a Linux operating system, which uses Dreamweaver software as its web interface and Navicat software as its database. On the server the Dreamweaver software allows you to update anything needed for the agents when they receive new guidelines. In an example of that would be when we need to change the times available for an appointment we can change it on Dreamweaver and then the agent would be able to see it on his individual screen. In the Navicat software it allows to make changes to anything in the database if there were any mistakes by any agents. An example of that would be when an agent accidentally sets a wrong appointment, he notifies the administrator that there is a mistake and the administrator makes changes through Navicat on the database.
The working agents are considered as clients to the server. The agents only have access to the Web interface of what the server provides for them. The agents input all needed information into the web interface that they are provided and when it is input to goes to the server. It is very important to understand that what connects the agents to the server is the network that is created for them. This network like any standard network is created by a Figure 1. Proposed Architecture of a Call Center LAN wire coming from the server going into a hub switch in which the hub switch spreads different LAN wires to the clients (agents) in order to serve them. The agents are using Computers that a standard of 3.0 GHz and have 1 GB of ram to ensure the speed of network isn't affected. As shown in Figure 1. The phone lines that are being used by the system are very simple VOIP lines by center and they being supported a regular Internet service provider of the centers liking.

A. Hardware Specifications
Below are the exact specifications of the hardware that being used: 1. Voice: Multiple high-speed fiber optic links from different vendors for voice channels. V. OUTCOME The Carolina Call Center that we created operates on the database system, and therefore no longer uses Microsoft Word and Microsoft Excel level. Every agent has his own account with a username and password. Once the agent logs on to the system, he is direct the main page of his account. This page has a list of all the campaigns the agent is currently working on as shown in Figure 2. The agent then clicks on whatever campaign he is supposed to be working on for that day.
After clicking on the required campaign, the agent is then directed to another page. This page displays the call data, which includes the customer's name and phone number, as well as the state being called, in an organized fashion as illustrated in Figure 3. There is also an option box so that the agent can put the call status after making the     call. Clicking on the "next" button takes the agent to the introduction page which displays the general script the agent must use during the conversation as seen in Figure  4. There is also an information button that takes the agent to a page which shows full details about the customer, including address and income level. When the agent is in the situation where he needs to call the customer back in a few hours or a couple of days, all he has to do is click on the callback button. This routes him to a page where he can write his comments about the call. Once submitted, the callback appears in a list before him. When the agent is in the middle of a phone call, and he wants to set an appointment, all he needs to do is click on calendar button and check the available times as shown in Figure 5. These call center operations usually generate a vast amount of data which would be stored in the database. Later a detail history of all calls that enter the system can be reconstructed and measured accordingly [6]. The agents at the CCC now handle an outbound call by calling the numbers that automatically appear before them from the campaign they are currently working on. The agents copies and pastes the phone number into the phone (X-Lite). Once the customer answered their phone, the agents read the script related to the respective campaign from the introduction page that is in the database. After each call is completed, the agents select the call status from the option box. When a successful call is made, the agents enter notes about the call into the textbox on appointment page. As shown in Figure 6. The agents still record every call they make for quality assurance. Successful calls are now placed into a share folder that all agents can access.
An inbound call is still handled in a slightly different manner. Once a call is received, we know a vital piece of information about the caller-their ANI (automatic number identification) [7]. The ANI allows us to know where the call is coming from. When the call gets routed to our center, one of our agents answers the phone. The agent who answers the phone still records the call for quality care and also takes down the customer's name and aids the customer by taking down their complaint or by answering their questions. Our agents then enter all the information in the Carolina Call Center's system which puts the data in the database. As illustrated in Figure 7. In designing our system we did not re-invent the wheel. Basically, we followed philosophy similar to Reference [8] which encouraged us to make use and enhanced existing tools and web pages. In retrospect, our system help fixed a lot of the major problems the Carolina Call Center previously faced. Since agent has their account, and each account has a built-in timer, login and logout times are automatically recorded. The manger can now access each employee work schedule quickly and easily. The new system also has a break button that the employees must click before taking a break. The length of the break is recorded automatically and the system is setup in such a way that no more than two employees can take a break at the same time.
Since the call data of each call now has its own page, the Carolina Call Center no longer faces major problems with organization. The option box with the call status eliminates the previous errors of entering the wrong call status for a call in the spreadsheet. When an appointment is made the agents just have to select the appointment option from the call status box. The appointment automatically goes to the appointment page for the respective campaign. Once an appointment is set, the appointment appears in the calendar where all agents can see it. This prevents overlap between appointments. Instead of the manager having to type all the information related to calls made that day off of a piece of paper, all the agents have to do is type in the call comments in a textbox on the appointment page. Also, since the greeting is now entered into the database, the agents also know what to say over the phone, as a result no longer stutter when talking to a customer. As a result, we no longer lose customers due to careless errors. We have expanded our services and we have grown, not only as group but as individuals [9].
Giving each agent their own account resolved many problems that initially resulted from having several different spreadsheets for the various campaigns they had to work on. The agents no longer use the incorrect call list for the wrong campaign. The callback option makes it easier for the agent to call a customer who was busy back at the time they requested. As for unanswered calls, the database recycles a completed call list, so all the manager has to do is reenter the call list into the system so the agents are able to call all the unanswered numbers once again. The share folder solved a huge problem because the agent no longer has to bother his colleagues to listen to a successful recording.
The manger has full access to everything in the system. For example, when the agent wants to change the state they are calling to a different one; all the manager does is logon to the admin account and sets a new state. The agent's call list is automatically changed to the new one. This saves a huge amount of time. The manager is the also the only one who is allowed to delete a number, and as a result, there are no more data is accidentally lost.
Not like other call center where agent supervision and scheduling were done manually using spreadsheets and other software [10]. The new system solved most of the problems the Carolina Call Center was experiencing. The manger can now keep track of every agent's progress, as well as the number of hours the agent works, the number of calls made each day by the agent, and any notes the agent may have written about any call. The system helped organize all the data that the agents use. As a result, the system is more-efficient and saves more money and time.

VI. EVALUATION STUDY
The Carolina Call Center is used to make sure that everything in the call center runs as efficient as possible. Everyone employee has account with a password. Each account gave the agents access to the different campaigns they were working on. The accounts also had a timer as well as a break button that automatically kept track of login, logout and breaks. By these characteristics the agents become more efficient because they are know that all of their work is electronically tracked.
The agents could also record the status of their call electronically, and they could write comments about the call. This helps the administrators at the call center able to recognize and fix any mistakes by agents in order that they can serve clients as needed more efficiently. The script the agents used over the phone was also entered into the web interface. If the agents wanted to access a script for certain campaign, all they had to do is click on that campaign, and they would find the script. This makes all of the agents work more efficient which keeps them focused on everything they need to say for all of the people they are calling. Figure 8 shows how the previous revenue was before the system and what the result is after in matter of calls.
Not only did the database make things easier on the employees, but it was beneficial to be business as well. The decreased number of errors combined with the reduced need for employees helped the call center save money. The call center keeps its client happy because they are able to provide real time leads and the system allows the call center clients to view all of the agent's results through real time tracking. The database is also efficient timesaver by allowing this feature to the client instead of the client waiting for an email for results. This really distinguishes the call center from many other call centers. This decreases the number of working hours for both management and employees. The database greatly improves the overall quality of the Carolina Call Center.
One of the best features of our system is the call back features, most call centers have manually write a phone number they need to call back. Our system allows to electronically save a number that needs to be call back by one touch of button .When the employees wanted to write comments about the caller or anything else most call centers would usually write on paper. It may get lost. So, we made a table so they can write them freely and they visit back in the system because it is always electronically stored.
The Carolina Call Center system main focus is to make the call center more efficient. Efficiency comes from both the agents and how the administrator can track the results looking at its numbers wisely. During our interview with the stakeholders we asked him to give us a brief example  Figure 9. Appointments efficiency before and after the system of how the revenue in the call center increased: an agent salary is two hundred JDs per month, in that month the agents make around a hundred appointment, before the Carolina Call Center system an average of appointments per month, per agent was 60 appointment, so we are looking at 70% in revenue. As shown in Figure 9.
Also before the Carolina Call Center system are clients rating used to give us 3 over 5, now with real time tracking and this system all clients give us 5 out of 5. Revenue for the call center has gone up exactly 70% since the system was installed as shown in the example above.
Another main reason of the revenue increased and the agent efficient is that administrator can easily track the results of the agents. So this saves the administrator a lot of time, instead of using manual tracking. So, the administrator will be able to use more time to find clients.
VII. CONCLUSION In our opinion, the implemented system makes a commendable contribution to the Carolina Call Center. The system helps the CCC operate more smoothly and efficiently by organizing all of the call data and making the data more accessible to both the employees and the manager. The new system also makes it possible for the manager to keep track of all the agents' progress, and as a result enables him to see which agents need more training and in which area they need the training. This helps increase the work pace of the agents, generating more revenue for the CCC.
Although this system considerably improved the way the CCC operates, we noted to important addition that could help improve this system. Such addition is to find a way for duplicate numbers to be automatically tossed out of the database. This would solve the problem of a customer being called twice by two of our agents. This improvement would prevent customers from becoming annoyed from receiving repetitive calls from our center and cancelling the appointment we initially set with them. Also, instead of an agent wasting valuable time by calling a customer one of their colleagues already contacted, the agent could use that time to possibly set an appointment with a new customer.