0 An-Najah National University Faculty of Engineering & Information Technology E-Governance in Palestine and the MENA Region (INDIGO) Project Project 6 Baladitayi This Project done in cooperation between: Computer Engineering Department Urban Planning Department Urban & Regional Planning Unit Nablus Municipality GIZ Towards Citizen-Centered and Inclusive Digital Governance in Palestine 1 Done by: Marah An-najjar Computer Engineering Department Menna AlKhayyat Computer Engineering Department In cooperation with: Mohammad Younes Urban Planning Department Sima Hammouri Urban Planning Department Israa Amro Urban Planning Department Supervisors: Dr. Emad Natsheh Computer Engineering Department Dr. Ihab Hijazi Project Specialist / Urban & Regional Planning Unit Eng. Saleh Qanazi Project Coordinator / Urban Planning Department Dr. Samah Abu Assab Human Centered Design Expert 2 Acknowledgment It is our pleasure to dedicate who supported us to complete this work. Every challenging work needs self-efforts as well as the guidance of elders especially those who were very close to our hearts, In the first place, our humble efforts dedicate to our families and friend. Strong and gentle souls who taught us to trust in Allah, believe in hard work and that so much could be done with little. We would like to thank our supervisor Dr. Emad Natshi, for his generous help, patience, feedback and guidance to improve our work as well as his encouragement through times. Also, to Dr. Ihab Hijazi from Urban planning department, for his enthusiastic help. To Eng. Salih Kanazi, for his guidance, patience, and gentle, yet firm approach to advising us during the countless hours of working. A special thanks to Nablus municipality for their deep cooperation. Last but not least, all thanks and gratitude to those who lend a hand. Disclaimer This paper was accomplished by Marah An-najjar and Menna Al-khayyat from the Computer Engineering Department at An-Najah National University. The thoughts expressed in this report are the authors own and do not reflect the view of An-Najah National University, department of Computer Engineering. 3 Contents Acknowledgment ....................................................................................................................2 Disclaimer ................................................................................................................................2 1. Introduction ......................................................................................................................6 1.1 Statement of the problem.........................................................................6 1.2 Objectives .......................................................................................................7 1.3 Project Scope............................................................................................7 1.4 Report Organization: ................................................................................7 2. Constraints, Standards and Earlier coursework ......................................................8 2.1 Constraints and Limitations: ...................................................................8 2.1.1 Data and requirements collection: ..........................................................8 2.1.2 Time Limit: ................................................................................................8 2.1.3 Fixed Cost: ................................................................................................8 2.2 Standards: .................................................................................................9 2.2.1 Client Server Model: .................................................................................9 2.2.2 Water-Flow Model: ....................................................................................9 2.2.3 Earlier Coursework:................................................................................10 3. Literature review ............................................................................................................11 4. Methodology ..................................................................................................................13 4.1 Human-centered design methodology: .................................................13 4.1.1 Data collection (Inspiration phase): ......................................................13 4.1.2 Ideation Phase: .......................................................................................17 4.1.3 Implementation Phase: ..........................................................................17 4.2 Tools, Methods and Programming Languages: ...................................17 4.2.1 Client side: ..............................................................................................17 4.2.2 Server side: .............................................................................................18 4.2.3 Website: ..................................................................................................18 4.3 Database Design: ...................................................................................19 4.4 System Features and Design: ................................................................19 5. Conclusion and discussion ........................................................................................44 6. Recommendations ........................................................................................................44 7. Future Work ....................................................................................................................44 8. References ......................................................................................................................45 4 List of Figures and Tables: Figure 1: raw data for 4000 complaints from Nablus municipality ............................................................ 8 Figure 2: Client Server Model .................................................................................................................. 9 Figure 3:Filtered raw data in database ................................................................................................... 10 Figure 4:Age range ................................................................................................................................ 14 Figure 5:Gender..................................................................................................................................... 14 Figure 6:Percentage of people who know about the municipality's mobile application? ........................ 14 Figure 7:Percentage of people who prefer using mobile applications for municipality services? ............ 14 Figure 8:Percentage of users’ satisfaction about the existed application ................................................ 15 Figure 9:Reasons behind satisfaction or dissatisfaction about the existing mobile application ............... 15 Figure 10:Percentage of people who had filed a complaint in Nablus municipality ................................. 15 Figure 11:Percentage of complaint filing method................................................................................... 15 Figure 12:Percantsge of satisfaction about municipality response speed ............................................... 16 Figure 13:Percentage on how people prefer to file a complaint ............................................................. 16 Figure 14: Percentage of people who have had troubles defining their location ..................................... 16 Figure 15: SQL database Model ............................................................................................................. 19 Figure 16: Splash screen ....................................................................................................................... 20 Figure 17: Login Screen .......................................................................................................................... 21 Figure 18: Login Screen change language button ................................................................................... 22 Figure 19: Email authentication screen .................................................................................................. 23 Figure 20: Email authentication screen, email format check .................................................................. 24 Figure 21: Authentication Email ............................................................................................................. 25 Figure 22: Code validation screen .......................................................................................................... 26 Figure 23: New password screen .......................................................................................................... 27 Figure 24: New password screen, Password format check ..................................................................... 28 Figure 25: Signup screen ....................................................................................................................... 29 Figure 26: Profile screen ........................................................................................................................ 30 Figure 27:Edit user information screen .................................................................................................. 31 Figure 28: Dashboard screen ................................................................................................................. 32 Figure 29: Direct call screen ................................................................................................................... 33 Figure 30: Complaint screen .................................................................................................................. 34 Figure 31: Complaints ............................................................................................................................ 35 Figure 32: Chatbot ................................................................................................................................. 36 Figure 33:Inquiries Page ........................................................................................................................ 37 Figure 34: Archive .................................................................................................................................. 38 Figure 35:Employee login screen ........................................................................................................... 39 Figure 36:Employee main screen ........................................................................................................... 39 Figure 37:Employee lock screen............................................................................................................. 40 Figure 38: Employee mobile application login screen ............................................................................. 41 Figure 39:Employees complaints side .................................................................................................... 42 Figure 40: Add question screen ............................................................................................................. 43 file:///C:/Users/Msys/Desktop/grad%20project%20all%20files/Final%20Report.docx%23_Toc104322161 file:///C:/Users/Msys/Desktop/grad%20project%20all%20files/Final%20Report.docx%23_Toc104322162 file:///C:/Users/Msys/Desktop/grad%20project%20all%20files/Final%20Report.docx%23_Toc104322163 file:///C:/Users/Msys/Desktop/grad%20project%20all%20files/Final%20Report.docx%23_Toc104322164 file:///C:/Users/Msys/Desktop/grad%20project%20all%20files/Final%20Report.docx%23_Toc104322165 file:///C:/Users/Msys/Desktop/grad%20project%20all%20files/Final%20Report.docx%23_Toc104322166 file:///C:/Users/Msys/Desktop/grad%20project%20all%20files/Final%20Report.docx%23_Toc104322167 file:///C:/Users/Msys/Desktop/grad%20project%20all%20files/Final%20Report.docx%23_Toc104322168 file:///C:/Users/Msys/Desktop/grad%20project%20all%20files/Final%20Report.docx%23_Toc104322169 file:///C:/Users/Msys/Desktop/grad%20project%20all%20files/Final%20Report.docx%23_Toc104322170 file:///C:/Users/Msys/Desktop/grad%20project%20all%20files/Final%20Report.docx%23_Toc104322171 5 Table 1:Applications used to solve the problem ..................................................................................... 11 Table 2:Interviews statistics ................................................................................................................... 13 6 First chapter 1. Introduction 1.1 Statement of the problem There are always a large number of inquiries and complaints that reach the municipality of Nablus daily, which are submitted by citizens, and because of the huge numbers of them and other obstacles such as the lack of staff of the Complaint department or the use of traditional methods, responding to all complaints has become very difficult. In addition, responding to inquiries takes a long time, and as an inevitable result has led to the citizens' lack of confidence in the municipality and their belief in the municipality's inability to prioritize problems. The residents of Nablus city in general, and the beneficiaries of its municipal services in particular, suffer from a lack of response to their complaints or requests submitted to the municipality. The municipality employees suffer from the pressure imposed on them due to the number of phone calls from citizens whose want to submit a complaint or a specific request. On the other hand, their use of traditional ways of dealing the complaints reduces their effectiveness and the chances of responding to all citizens’ complaints and requests. With the problem of citizen dissatisfaction because of poor communication with the municipality, a new obstacle has emerged, which is not reaching the problem until it aggravates, thus causes more time and financial loses and may lead to other problems. Moreover, one of the problems facing the municipality is the problem of citizens' lack of awareness of the municipality's way of work and its policies and also how to submit complaints. In addition to the lack of patience and understanding to prioritize problems, which restricts the work of the municipality. Taking on consideration all of the above, the need of citizens and municipality employees to have a unique application that facilitates the process of submitting complaints or requests and sorting them in order to save time and efforts increases with the increase in the population of the city and with the evolution of life in its various fields. In this project, we afford help for Nablus citizens who surely have constant complaints or demands from the municipality by providing a customized mobile application facilitated and built based on the human centered design approach. The new methods provided by the mobile application will improve the quality of service provided to the user which is done by determining the frequency of complaints submitted based on a system that defines them by keywords and quality of filtering to employees by filtering, redirecting complaints to the specific department all automatically using artificial intelligence without the need for employee’s interaction. 7 1.2 Objectives This project aims to provide a mobile application that eases the process of filing a complaint by any citizen living in Nablus city and eases the procedure of filtering complaints manually by employees. 1.3 Project Scope Nablus Municipality’s, focuses on the citizens of Nablus and the Public Services department’s employees. 1.4 Report Organization: This report contains 4 chapters each with several topics. The first chapter contains introduction with its subchapters. The second one is constraints, the third on is the literature review and the methodology. And the last one contains conclusion, references and recommendations. 8 Second chapter 2. Constraints, Standards and Earlier coursework 2.1 Constraints and Limitations: 2.1.1 Data and requirements collection: The second process after deciding on projects idea was collecting the data. We needed frequent visited to Nablus Municipality to make sure we are not missing any detail and to keep them engaged and updated on what we are doing and planning. We have used a real data of 4000 unfiltered complaint form Nablus municipality as the picture below shows: Figure 1: raw data for 4000 complaints from Nablus municipality 2.1.2 Time Limit: The application needed 3 consecutive months to be built and tested, starting with designing and building the interfaces (GUI) for both website and mobile application, moving to adding front end features, creating database and connecting interfaces to it, and finally putting all the things together, these all combined together formed a real challenge to accept. 2.1.3 Fixed Cost: As we were compelled to cancel some intended features due to the requirement of payment in-order to use them. 9 2.2 Standards: 2.2.1 Client Server Model: The project is divided into three tiers as the following: Client: Demonstrates what user sees in the mobile application. It requests functionalities from backends and then showing the result on the GUI, it was written using Flutter. Server: It is written using python and PHP and it is responsible for the logic of the application, sending requests to the database and serving the coming ones from the GUI. Database: it is built using MY-SQL database with Apache web server. It is responsible of serve the request coming from the back-end server. Figure 2: Client Server Model 2.2.2 Water-Flow Model: Water Flow model was used for the development process as the following steps show: Defining the problem and understanding it. Data and requirements gatherings. Designing and building the website and the mobile application GUI. Database building. Building back-end server. 10 2.2.3 Earlier Coursework: Web, Software engineering, AI, Object Oriented programming and Algorithms courses provide by Computer Engineering Department have helped us in developing the project. In addition to that, we needed to enroll in other courses such as Flutter and Data analysis classes to get this job done. Following pictures show some of the data saved inside the database: Figure 3:Filtered raw data in database 11 Third chapter 3. Literature review Due to the contiguous growth of population in Nablus, and citizens’ needs for a clear and smooth system for contacting the municipality about their complaints or demands, every day is becoming more challenging for citizens and for Public Services department employees in terms of responding to all phone calls or filtering complaints or demands manually. There are many solutions that were created or suggested to solve the dilemma of citizens waiting for their inquiries to be heard out, or employee’s dilemma of getting huge number of requests or complaints daily and being compelled to filter them manually, which takes a lot of time and effort to achieve. But yet, there is no solution to combine and solve both of the problems. Name Supports dynamic filtering? Easy to use? Specific? Nablus municipality mobile application No, employees filter complaints manually out of the website No No Table 1:Applications used to solve the problem As table 1 demonstrates, we can conclude that the application is not specific, meaning that it’s not especially developed to solve Public Services department problems. Also, it does not support dynamic filtering and as a result, employees’ problem with manually filtering inquiries is not solved. In this project (Baladiyati), we combined the two problems of employees and citizens to come up with an effective solution that will solve the difficulties all at once using artificial intelligence to filter inquiries dynamically and redirect them to the right sub-department in Public Services department and also giving citizens a free space where they can explain the problem freely whether by text or by an image. This process is called Sentiment analysis (also known as opinion mining or emotion AI) which can be defined as the use of natural language processing, text analysis, computational linguistics, and biometrics to systematically identify, extract, quantify, and study affective states and subjective information. Applying this to our project such that when a user inserts a text of a complaint, an analysis process will start based on key words to redirect it to the specific department. 12 For example, if a user entered a text contains any of these key words (….. ،حفرة، رمل، طمم، حصى the complaint will get automatically redirected to engineering and construction ,(حفر، عداد، حجر، حجار department. If a text contained and of (…. صنبور، خزان، ماء، مي، فيضان) key words, this will get redirected to water department. So, a list of key words for each department is created and it will be used to analyze the text and based to it a decision will be made. 13 Third chapter 4. Methodology 4.1 Human-centered design methodology: This project is based on the HCD approach that develops solutions to problems by involving the human perspective in all steps of the problem-solving process. Starting by empathizing and identifying the customer’s need statements, moving to defining the problem and crystalizing the idea, creating efficient solutions and testing them. 4.1.1 Data collection (Inspiration phase): Many interviews were done online and in real life among the municipality’s employees and citizens. With total of 18 interview with citizens, 2 of them are with special needs. 9 interviews with the municipality’s employees as shown in table 2. Total number of interviews Number of interviews with municipality employees Number of interviews with citizens Number of interviews with citizens with special needs 27 9 16 2 Table 2:Interviews statistics We noticed the gap of communication between the municipality and citizens due to the stress on employees that caused by ununiformed manual filtering complaints and the large number of them they get daily. Furthermore, several citizens stated that they do not want to waste their time doing paperwork for some transactions when they could be doing it online. 14 The following screenshots are taken from the questionnaire that was distributed among citizens and municipality employees; results came as follows: 87.5% are people above 20 years old. 43.8% are males and the rest are females. Only 37.9% of people know that Nablus municipality has an application. After asking people whether they would use the application, the highest percentage was 43.8% that indicates to their willing to use the application. Figure 4:Age range Figure 5:Gender Figure 6:Percentage of people who know about the municipality's mobile application? Figure 7:Percentage of people who prefer using mobile applications for municipality services? 15 40% of people stated that the existed application needed more development to use as its not completed yet and have no 100% clear features. A sample of citizens speaking up their opinions about the existed application stating that it’s useful but needs more improvement and continuation by the municipality employees. 37.5% of sample had an experience with filing a complaint. 50% done it online and 50% done it manually. Figure 8:Percentage of users’ satisfaction about the existed application Figure 9:Reasons behind satisfaction or dissatisfaction about the existing mobile application Figure 10:Percentage of people who had filed a complaint in Nablus municipality Figure 11:Percentage of complaint filing method 16 77.8% of the sample are not satisfied about their experience with the municipality’s response time to them. 56.3% prefer to save their time by filing a complaint online. 56.3% of the sample might have faced a problem identifying the location of the complaint. As a result, there is a severe need for a specific application to solve the previous problems taking into consideration what people and employees need. Figure 12:Percantsge of satisfaction about municipality response speed Figure 13:Percentage on how people prefer to file a complaint Figure 14: Percentage of people who have had troubles defining their location 17 4.1.2 Ideation Phase: Once we have finished identifying the problem, we started turning the ideas into prototypes after conducting a consultant round of interviews with municipality employees and citizens to survey their satisfaction about the suggested solution and also engaging them with adding more features or enhancing what we have done. The final result came as the following: Citizens’ time will be saved by allowing them to file their complaints online through the application. Long processes will be abbreviated as citizens will have no restrictions with describing the complaint, they can describe it with any terminologies they want also can add pictures. Employees’ time will be saved as the process of filtering complaints will be done automatically through the application and will be redirected to them without the need for their interaction. The mobile application also supports a hot line calls for urgent situation. 4.1.3 Implementation Phase: In this phase, we started the final development stage of our application by applying what we have approved on by adding, removing and enhancing features of the early prototype. The finalizing last of the project was based on employees and citizens feedback as we kept them engaged during the whole process. Section 4.2 explains more in details tools, methods and programming language we have used to build the whole system. 4.2 Tools, Methods and Programming Languages: 4.2.1 Client side: Design: Choosing the design was one of the hardest processes as we seek to create the most user-friendly and creative design combined. Starting with picking the color theme for the application, which was based on the Nablus municipality’s logo and original website as we wanted employees and citizens to feel that they are connected. Moving to merging colors and design sketches into connected interfaces with smooth and easy use. Programming languages: Client-side programming language is Dart, a Google-developed object-oriented programming language an equivalent to C++, Java, and JS that we found it easy to work with as we have a previous background with similar languages and for it having a large number of libraries that make writing scripts simple and efficient. 18 Frameworks: The chosen platform to work with was Google’s open-source cross-platform UI framework on the client -side. This choice was made for mobile development based on a number of observations and research conducted prior to beginning work. The Flutter framework consists of both a software development kit (SDK) and their widget-based UI library. This library consists of various reusable UI elements, such as sliders, buttons, and text inputs. The architecture of the platform can be stated to support Dart platform, Flutter engine, Foundation library, Design-specific widgets and Flutter Development Tools (DevTools). While writing and debugging an application, Flutter runs in the Dart virtual machine, which features a just-in-time execution engine. This allows for fast compilation times as well as "hot reload", with which modifications to source files can be injected into a running application. Flutter extends this further with support for stateful hot reload, where in most cases changes to source code are reflected immediately in the running app without requiring a restart or any loss of state. This framework was chosen due to its expressive and flexible UI, native performance and simpleness. 4.2.2 Server side: We supported the system with the client-server architecture in which many clients (remote processors) request and receive service from a centralized server (host computer). Clients provide an interface to allow a computer user to request services of the server and to display the results the server returns. and they all will be using the same API. Frameworks: A PHP framework was chosen for server-side functionality. Programming languages: PHP programming language was chosen for main functionalities with Python for Chatbot. 4.2.3 Website: A website for Nablus municipality employees was developed beside the mobile application so they will be having two choices to process received complaints whether from their phones or website. 19 4.3 Database Design: Develop a mobile application or creating a website requires creating an appropriate database that saves and stores everything, as we are dealing with real life problems, we needed the database to support scalability and flexibility to handle deeply embedded application running massive data warehouses holding terabytes of information. Also, our need to adopt a robust transactional support and strong data protection. MySQL database was chosen due to the previous reasons mainly and its other specification as availability secondly. Figure 15: SQL database Model 4.4 System Features and Design: This system contains 19 screen all combined together in a user-friendly design that will smoothen the process for users. Starting from splash screen the moving to login page that allows users to create account if they do not already have or reset their passwords if they have accounts but don’t remember the password. Also, it has a complaint screen to enter a complaint, a chatbot screen to contact a robot for specific questions, a dashboard displaying what services this application affords, a profile screen to display user information and an archive screen to display a history of users’ complaints. Also, there is a screen that displays municipality services. Employees website have three screens, login page, lock page and main page that displays filtered complaints. And their mobile application screens are two, login screen and the main screen to display all complaints. 20 Figure 16: Splash screen 21 Figure 17: Login Screen First page to route to after splash is login page, as we see there is a language button, when clicking on it, you will be able to choose whether you want the application to be in Arabic or in English as the following picture demonstrates. 22 Figure 18: Login Screen change language button 23 Figure 19: Email authentication screen This page will appear right after clicking forget password button in login screen, it has a text to enter the desired email address you want to reset password by, also it checks whether you have entered a valid email address or if you have left the text empty and clicked the proceed button, a warning message will appear as the following picture shows: 24 Figure 20: Email authentication screen, email format check A routing button is available if you remembered your password will take you right to login page again. Also, email format check is provided. 25 After entering a valid email address, an authentication message will receive as the following: Figure 21: Authentication Email This email message contains an authentication code generated by the application and will be used to fill the authentication code box in the next page as follows: 26 Figure 22: Code validation screen After entering the code received on email and clicking confirm, a new page will appear to enter a new password as follows: 27 Figure 23: New password screen After entering the new password, the database will be automatically updated and user will be routed to login page one more time. This text also is checked not to be empty and if so, an error message will appear as follows: 28 Figure 24: New password screen, Password format check 29 Figure 25: Signup screen Moving to signup screen in case user has no account yet, it cannot route to the next page until all of the information in the fields are checked and accept all terms and policies button is checked. This page routes to login page to ensure that user has memorized his information. 30 Figure 26: Profile screen Profile screen shows all user information and routes to the other pages. 31 Figure 27:Edit user information screen Profile screen routes to this screen if user clicked on edit information button. 32 Figure 28: Dashboard screen Dashboard page views services the application affords, and when clicking on each of them, it will route you directly to what you have asked for in another page. 33 When clicking on call us, a direct call to Nablus municipality hot line will occur as the following: Figure 29: Direct call screen 34 Moving to the next card, filing a complaint, the following screen will appear: Figure 30: Complaint screen User can enter a complaint in his own words and location will be identifies using searchable dropdowns that filter streets and near fields according to district name. 35 Figure 31: Complaints User may use from two choices whether he wants to submit and send the complaint or archive it. 36 This is a chatbot screen that responds to user according a specific question saved on his server. Figure 32: Chatbot 37 Figure 33:Inquiries Page This page includes services Nablus municipality affords, each service with it’s cost and needed papers. 38 Figure 34: Archive All of the complaints a user has filed will appear on this screen. 39 Moving to employee interfaces, starting with employee login screen on the website: Figure 35:Employee login screen Figure 36:Employee main screen It displays all received complaints. 40 Figure 37:Employee lock screen This screen appears when employee chooses to lock the page of complaints. 41 Figure 38: Employee mobile application login screen This screen is employee’s login screen on the mobile side. 42 Figure 39:Employees complaints side This screen is how complaints appear on employees’ side. 43 Figure 40: Add question screen Employee can add questions to the chatbot. 44 Fourth chapter 5. Conclusion and discussion Baladiyati mobile application is a unique application that has been designed to facilitate the services which provided by the public complaints services department in the municipality of Nablus, and based on the human centered design methodology as it facilitates the process of submitting complaints electronically by citizens without the need of visiting the municipality or perform any extra activities. This is through a simplified description of the complaint in their own words or formal Arabic and also by adding pics. It also facilitates the work of the Public Services Center team in the municipality of Nablus by filtering complaints completely electronically and transferring each one to its own department to form an integrated system aimed to save time and effort. Also organizing the process of responding to complaints and requirements submitted by citizens Recommendations 6. Recommendations The necessity of using technology to solve real life problems. Creating an application that helps Nablus citizens to save time, effort and communication process with the municipality. Using technology does not mean dispensing traditional paperwork but giving a more effective solution. 7. Future Work We aim to expand project aspects so it can cover all municipality services. We seek to add google maps services to the application. Taking feedbacks from users and develop the application according to it. Use artificial intelligence in all possible parts. Activating notifications for complaints progress. Activating employee’s website. 45 8. References Arabic aspect based sentiment analysis using bidirectional GRU models. (2021). Retrieved from https:// sciencedirect.com/ sentiment analysis algorithms and applications. (2014, December). healthline. Retrieved from https:// sciencedirect.com/ What is Sentiment analysis. Definition, key types and algorithms, (2019). Retrieved from https:// theappsolutions.com/ Sentiment Analysis 101. Scott Sims. Retrieved from https:// kdnuggets.com/ An Introduction to Sentiment Analysis. Ashish Katrekar, AVP, Big Data Analytics. Retrieved from https:// globallogic.com/ Arabic Keywords Search Intent with Python.Nadeem Haddadeen. Retrieved from https:// nadeem.tech/ Acknowledgment Disclaimer 1. Introduction 1.1 Statement of the problem 1.2 Objectives 1.3 Project Scope 1.4 Report Organization: 2. Constraints, Standards and Earlier coursework 2.1 Constraints and Limitations: 2.1.1 Data and requirements collection: 2.1.2 Time Limit: 2.1.3 Fixed Cost: 2.2 Standards: 2.2.1 Client Server Model: 2.2.2 Water-Flow Model: 2.2.3 Earlier Coursework: 3. Literature review 4. Methodology 4.1 Human-centered design methodology: 4.1.1 Data collection (Inspiration phase): 4.1.2 Ideation Phase: 4.1.3 Implementation Phase: 4.2 Tools, Methods and Programming Languages: 4.2.1 Client side: 4.2.2 Server side: 4.2.3 Website: 4.3 Database Design: 4.4 System Features and Design: 5. Conclusion and discussion 6. Recommendations 7. Future Work 8. References