online intelligent quiz system - BRAC University Institutional
Transcription
online intelligent quiz system - BRAC University Institutional
ONLINE INTELLIGENT QUIZ SYSTEM Md. Zaman Sarker Student ID: 02101126 Minhajur Rahman Student ID: 02201102 Department of Computer Science and Engineering Summer 2007 BRAC University, Dhaka, Bangladesh 2 DECLARATION We hereby declare that this thesis is based on the results found by ourselves. Materials of work found by other researchers are mentioned by reference. This thesis, neither in whole nor in part, has been previously submitted for any degree. Signature of Supervisor Signature of Author 3 ACKNOWLEDGMENTS For our thesis work, we want to thank to Dr. Abdul Latif from our hearts. As a thesis supervisor, he has given all the supports that we needed. He was always there for us to give any kind of suggestion and help, as far our thesis is concern. It’s an honor for us to work with such a wonderful teacher like him. In this long two-semester thesis work, we have also gotten lots of help from Dr. Tarik Ahmed Chowdhury and Mr. Rezaul Karim. I am also very grateful to the two big-hearted persons. 4 ABSTRACT This thesis report describes an online intelligent multiple-choicequestion examination system, named Online Intelligent Quiz System (OIQS), for students. Any university, college or school with a computerized education system can adopt this system. Teachers can administer quizzes using the OIQS. There is an expert part in our system, which uses AI to generate questions. The system will determine the participant’s performance depending on his answer and the next question will be generated according to the participant’s performance. The system will show result after the examination is finished and also be able to provide feedback according to the participant’s demand. Administrative control of the whole system is provided. A teacher has control in the question bank and is suppose to make schedule for quiz. 5 TABLE OF CONTENTS Page TITLE……………...........................................................................................…i DECLARATION….........................................................................................…ii ACKNOWLEDGEMENTS................................................................................iii ABSTRACT………...........................................................................................iv TABLE OF CONTENTS...........................................................................…....v LIST OF FIGURES.........................................................................................vii 1.0 INTRODUCTION……………………………………………………………….…1 2.0 CURRENT SCENARIO OF QUIZ SYSTEM………………………….……2 2.1 Manual Quiz System…………………………..................................2 2.2 Web Based Quiz System………………………...............................2 3.0 FEED BACK FROOM CURRENT SCENARIO…………………..…….…3 4.0 PROPOSED SYSTEM.………..………………….…………………………4 4.1 Survey…………………………..………………………......................4 4.1.1 Teacher’s Survey…............................................................5 4.1.2 Student’s Survey….............................................................7 4.2 Survey Analysis…………………………………….……...................9 5.0 SYSTEM DESIGN…….……………………………….…….……………..10 5.1.0 Introduction................................................................................10 5.1.1 Purpose of this Document………….….............................10 5.1.2 Intended Audience…………………………........................10 5.1.3 Applicable Name…………………………...........................10 5.1.3 Summary of contents……………………...........................11 5.2.0 System Overview......................................................................12 5.3.0 Assumption and Decencies.......................................................13 5.4.0 General Constraints……………………………...........................13 5.4.1 Hardware and Software Environment…….......................13 5.4.2 Security Requirements…………………............................14 5.4.3 Performance Requirements……………............................14 5.4.4 Network Communications………………...........................14 5.5.0 Goals and guidelines……..........................................................14 6 5.6.0 Architectural Strategies................................................................15 5.6.1.0 Software……………………………….……........................15 5.4.1.1 Programming language………................................15 5.6.1.2 Libraries and Tools……………………….................16 5.7.0 System Architecture……..............................................................17 5.8.0 Detail System Design…...............................................................18 5.8.1 Use Case Diagram…..........................................................18 5.8.2 Interaction Diagram ……………………...............................26 5.8.3 Class Diagram …………….……………...............................28 5.8.4 Flow Chart of Question Generator Algorithm......................29 5.8.5 Tree Structure View of OIQS…………………..…………….30 5.8.6 E-R Diagram…………….....................................................32 5.8.7 User Interface………………................................................35 6.0 ADVANTAGE OF OIQS ……………………………………………………..39 7.0 CONCLUSION………………………………………………………………...40 8.0 DOCUMENTATION.……………………………………………………….....41 8.1 Installation…………………..............................................................41 8.2 User Manual………………...............................................................47 9.0 GLOSSARY…………………………………………………………………...70 10.0 BIBLIOGRAPHY....................................................................................71 7 LIST OF FIGURES Figure Page 5.2 Block Diagram of OIQS ........................................................................12 5.7 System Architecture..............................................................................17 5.8.1 Use Case Diagram ............................................................................18 5.8.2 Interaction Diagram ...........................................................................26 5.8.3 Class Diagram ...................................................................................28 5.8.4 Flowchart of Question Generator Algorithm.......................................29 5.8.5 Tree Structure View of OIQS .............................................................30 5.8.6 E-R Diagram......................................................................................32 5.8.7 User Interface ....................................................................................35 8 1.0 INTRODUCTION This is a web-based intelligent multiple-choice-question examination system, named Online Intelligent Quiz System (OIQS), for assessing students. It is a system by which students can appear in a quiz from anywhere of the world where there is no interaction between pencil and paper rather interaction between computer and human being. We use the term intelligent here as the system generates questions intelligently. There are many definitions of intelligence but we use the term intelligence in the sense that the system generates the a new question of a quiz by depending on the result of the question last answered and for the same quiz of a subject it generates different questions for different students. The questions vary student to student for the same quiz while they are sitting in the quiz at the same time. Teachers can use the OIQS for evaluating students effectively, efficiently and perfectly. Any university, college, school or educational institute can use this system for their organization to take quizzes. Today it is the more efficient and effective methods of assessing distant students. One of the main benefits of our system is automated marking, that is, teachers do not need to check the answer script as they do in manual quiz. It saves valuable time of a teacher. On the other hand, students can score according to his/her merit level and it will give feedback about a student in which side he/she is weak. In recent years, the use of online quiz systems has become quite popular due to pressures of increasing class sizes and the need for more efficient and effective methods of assessing distant students. It is due to the popularity of distant education. 9 2.0 CURRENT SCENARIO OF QUIZ SYSTEM Still now maximum educational institutes have been using manual system to take quiz. In the recent year a few instructors of some institutes have been using web-based M.C.Q. quiz system. Actually, it depends on how much web technology a country takes or uses. For example, in Bangladesh it is rare to use a web based quiz system. But in case of U.S.A. it is a general case to use a web based quiz system. 2.1 MANUAL QUIZ SYSTEM In the early days it was the most popular methods of assessing student. Still now the system is quite popular to the students as well as to the teacher. In this system there are several problems that we faces in a common way. Some of those problems are: Manual system requires pen/ pencils and paper. Teacher needs to spend time to script checking. Student needs to wait to get their result up to the teacher finishes the script checking. These are the most common problems of manual quiz system that rotated each and every time of quiz held. For these causes the popularity of manual system decreases day by day and online intelligent quiz system is taking the place of the manual system. 2.2 WEB BASED QUIZ SYSTEM Now a day the web base quiz system is getting popular with a tremendous speed. As the technology is spreading through out the world the automated system will also taking the places of the manual systems. Currently big institutes are running their online quiz systems at a very successful rate. As the time is progressing the online quiz is making interest to the faculties and also to the students. In the big cities and organizations people are getting understand that how the online quiz system is better and efficient. With in the recent time this system will be taken place to this techno world. But this system also has some lacking. If this system has the intelligent part then it will be a perfect one. The problems that may occurs with web based quiz system: Can’t evaluate the student perfectly. Can’t generate the proper feed back of the students. 10 3.0 FEED BACK FROM CURRENT SCENARIO From the previous two systems I realize to solve the problems of those systems to get a standard quiz system. In the previous two systems the things that are short from a standard quiz system, to fix it up I design an intelligent system, which will work according to the web base system. From this intelligent system we can omit the manual system’s problem criteria because it work as a web base system, which is totally automated. It also omit the general web based system because it gives the evaluate option for the students performance and feed back criteria. To get a standard quiz system I tried to join the intelligent system that I designed for my thesis project. This will help to remove the current system’s problems. 11 4.0 PROPOSED SYSTEM In recent years, the use of electronic online quiz systems has become quite popular due to pressures of increasing class sizes, and the need for more efficient methods of assessing distances students. This thing motivates us to work with web based quiz system. We also have tried to eliminate the problem with general web based quiz system and decide to create a web based intelligent quiz system. In our thesis project, we have tried to develop an “Online Intelligent Quiz System” which will be popular in both the students and teachers. To develop the system we collected some documents from web. Then we have analyzed those documents and tried to find some logic from there. As a step of development we collected requirements where we have conducted a survey. In that survey we took teachers and students opinions to make the system more meaningful. For that we made a question set and gave it to some teachers and students. They gave their opinions on those scripts. In below survey details are given. 4.1 SURVEY To make an effective and efficient Online Intelligent quiz system we need some findings. We believe that our findings will help us to make the system user friendly. Here is a short description of our system. Our system name is Online Intelligent Quiz System. Any University, College or School can adopt our system where education system is computerized. Teachers can take quizzes using our Online Intelligent Quiz System. We will use an expert part in our system, which is knowledge base. This expert part will work using AI. Our system will determine the participant’s performance and the next questions will be generated according to the participant’s performance. Our system will also be able to provide feedback according to the participant’s demand. 12 4.1.1 TEACHER’S SURVEY We create this question for teachers to find out what type of system might be helpful for them. For Teachers: Dept.: Name: Questions: 1. Would teachers edit questions from Question Bank and add new questions in the Question Bank? a) Yes b) No Comment: 2. Would teachers define numbers of Questions in a Quiz? a) Yes b) No Comment: 3. Would teachers define the time slot of a Quiz? a) Yes b) No Comment: 4. Would teachers reduce or increase the number of question level in the question bank. a) Yes b) No Comment: 5. What do teachers want after the quiz has been finished? Score will save automatically. Teachers save the score Teachers can edit and save the score Comment: 13 6. What do teachers want? In a courseSystem can keep all the quiz information (i.e. student’s mark, performance of the students in that specific quiz). System can keep only the last quiz information (i.e. student’s mark, performance of the students in that specific quiz). System can’t keep any information of a quiz. It just shows the result after the quiz end. Comment: 7. What do teachers want? In a courseSystem will be able to show the last five taken quiz. System will be able to show the last taken quiz. System will not show any quiz. Comment: 8. Would teacher make the schedule for students? Yes b) No Comment: 9. Would teacher want to see the overall student’s performance of the quiz at the end of the Quiz? Yes b) No Comment: 10. Will answer be auto submitted after time end? a) Yes Comment: Remark: b) No 14 4.1.2 STUDENT’S SURVEY We create this question for students to find out what type of system might be helpful for them. For Students: Dept.: ID: Questions: 1. What do students want? In a courseSystem will be able to show the last five quiz question. System will be able to show the last taken quiz question. System will not show any quiz question. Comment: 2. What type of system do you (students) want? a) User friendly d) All the above. b) Stable c) effective and efficient Comment: 3. Would each question have a predefine time slot or the total Quiz have a predefine time slot? Each question have a predefine time slot The total Quiz have a predefine time slot Comment: 4. Would answer be auto submitted by the system after answering the question or students want to submit after answered? a) Auto-submitted Comment: b) Submitted by student 15 5. Would answer be auto submitted after time end? a) Yes b) No Comment: 6. Could students see the answers at the end of the quiz? a) Yes b) No Comment: 7. Would student modify the submitted answers if his/her time is not end? a) Yes b) No Comment: 8. Would students get any help from the system during the exam? a) Yes b) No Comment: 9. Could student pass the questions and try for that later? a) Yes b) No Comment: 10. Is their any choice in the Quiz? a) Yes Comment: Remark: b) No 16 4.1.3 SURVEY ANALYSIS What we actually found everyone wants a user-friendly environment while attending the quiz. We also found that maximum teachers want thatThey should edit questions from Question Bank and add new questions in the Question Bank and system would be able to evaluate student’s performance perfectly. They will define numbers of questions and time of a quiz before quiz start. They want to make the schedule for students who attend in the quiz. Some teachers want to fix the time for a quiz. For example, student could attend quiz 1 from 1st June 10:00am to 2nd June 5:00pm. They want system would be able to save the score automatically and can keep all quizzes information (i.e. student’s mark, performance etc.) of all students. Someone wants system would be able to give feedback to the students based on his/her weak performance in a particular area. They want answer will be auto submitted after time end and they want to see the overall student’s performance of the quiz at the end of the quiz. We found from student’s survey that is Students want the whole quiz should have a fixed amount of time rather than for individual question. They want a system, which should have the feasibility of skipping any confusing questions for later answering. They want to submit after answering each question and answers should be auto submitted if the time of the quiz is end. At the end of the quiz they want to see their performance and the correct answers. They also want that system would be able to give proper feedback to the students and show the last five taken quizzes. They give emphasis on the user-friendly feature of the system. 17 5.0 SYSTEM DESIGN 5.1.0 INTRODUCTION This Software Design Specification Template is for the ONLINE INTELLIGENT QUIZ SYSTEM. This Software has implemented as a thesis project of BRAC University Computer Science and Engineering Department that is one of the well-known private universities in Bangladesh. This Design Specification Template describes the System Architecture and Detailed System Design of the ONLINE INTELLIGENT QUIZ SYSTEM. 5.1.1 PURPOSE OF THIS DOCUMENT The purpose of this document is that it helps the programmer (i.e. us) to implement the system correctly and easily. It is not possible for the programmer to implement the system without a design document. In this document the designers are supposed to provide a clear design of the system. The design then serves as a guide to the developers who write the code and actually implement the software. Another purpose of this document is that it also helps the designer to update the system or modify several part of the system in future. That is why the SDS document also looks into several design considerations, including design tradeoffs and code reusability. 5.1.2 INTENDED AUDIENCE Intended audience of this document is those people who are reuse this document and also who are updates or modify this system in future. Generally they are system designer and some of them may be system developer. 5.1.3 APPLICABLE NAME An applicable name that the system uses is ONLINE INTELLIGENT QUIZ SYSTEM (OIQS). This is the first version of this system because we are the people first time create this software. 18 5.1.4 SUMMARY OF CONTENTS In Section 5.2 of the SYSTEM DESIGN document we give an overview about the ONLINE INTELLIGENT QUIZ SYSTEM. In Section 5.3 we describe the assumptions and dependencies of the System. In Section 5.4 we describe the general constraints and limitations that have a significant impact on the design of the ONLINE INTELLIGENT QUIZ SYSTEM software. In Section 5.5 we describe the goals, guidelines, principles, or priorities, which dominate or embody the design of ONLINE INTELLIGENT QUIZ SYSTEM software. In Section 5.6 we describe Architectural Strategies of our ONLINE INTELLIGENT QUIZ SYSTEM software. In Section 5.7 we describe the System Architecture of our ONLINE INTELLIGENT QUIZ SYSTEM software. Here we have shown a high level diagram of our system identifying all the subsystems and the interactions/dependencies between the subsystems. In Section 5.8 we have shown the Detailed Design of the ONLINE INTELLIGENT QUIZ SYSTEM software. In this Section we include a use case diagram, class diagram of subsystem, Interaction diagrams, and an E-R diagram. 19 5.2.0 SYSTEM OVERVIEW ONLINE INTELLIGENT QUIZ SYSTEM is a Web based M.C.Q. Quiz System for evaluating students. This system is developed considering educational institutes like university, College and school. Student can attend in a quiz from anywhere of the world by using this system. This is the block diagram of Online Intelligent Quiz System Question Bank Generator engine Quiz Student Admin Teachers Figure 5.2: Block Diagram of OIQS Admin is responsible for registration of the both teachers and students. Teachers define the number of questions, time of the quiz, schedule for the quiz etc. According to these information question will be generated for students. Teachers are responsible for add and edit questions from the question bank. They add question in the question bank in different level according to their level of difficulty. Generator engine generate questions for a quiz from the question bank. To generate the next question, Question Generator check the previous question answer submitted by the student and depending on that result Question Generator decide the level of difficulty for the next question and generate it. It also gives feedback to the students. Student can appear in the quiz when his/her time slot is started. But before attend in a quiz he/she might be registered for that course by the admin of the institute. At the end of a quiz they can see the correct answers and their performance. Teachers can evaluate a student at the end of the quiz. For the same quiz of a subject Question Generator may generates different question for different student. That is question may very student to student for the same quiz while they are appear in the quiz at the same time. To design the software we use 3-tier architecture. As 3-tier architecture divide the whole system into three parts, so to design the system we divide our system into three subsystems. These are Client Tier/ Client 20 subsystem, Business Logic Tier/ Business Logic subsystem, and Database Tier/ Database subsystem. 5.3.0 ASSUMPTIONS AND DEPENDENCIES We assume that students are interested on intelligent quiz where different students might appear in answering different questions for the same quiz depending on his/her performance. Teachers also interested to take intelligent quiz where he/she can evaluate a student perfectly. The users of the OIQS system are the school/college/university students, teachers and the admin who control the system and those institutes must be computerized. Any institute might have to Internet connection to use OIQS system because this is a web based application. 5.4.0 GENERAL CONSTRAINTS OIQS is a generic application as it may be use by many users of many institutes. So the constraints that we have to consider might be in generic sense. 5.4.1 Hardware and software environment To develop this OIQS we use HTML for client-tier, PHP and JSP for Business-tier and MySQL for the database-tier. So the hardware environment requirements to use of this software are at least Intel Pentium II or equivalent processor, at least 64MB RAM, a database server that need a diskless server but can be the same machine from which the software will run. So, all of these requirements may be a constraint to the clients. There are four software components required for the proposed system. The four components are as follows: Operating System Web Server Database Web Browser Operating System 21 As our system will be platforms independent; so, there is no constraints in case of operating system in using this software. Windows and Linux operating systems are considered to be extremely stable platforms. One of the advantages of using the Linux operating system is the speed at which performance enhancements and security patches are made available since it is an open source product. Web Server The available web server’s platforms are IIS and Apache. Since Apache is open source, software security patches tend to be released faster. One of the downsides to IIS is its vulnerability to virus attacks, something that Apache rarely has problems with. Apache offers PHP; a language considered to be the C of The next part is the end user environment. Before we have explain that we have assume that the end users are not so much aware about the computer and they are not so much interested to divert their activities to the automated system from the manual system. 5.4.2 Security requirements Security requirement is the next part. As we developed OIQS by using 3tier architecture, so this system is secured. Because end user can’t access the database directly as in 3-tier architecture database are accessed via business logic. 5.4.3 Performance requirements Now we will discuss about the performance requirements. This OIQS system might be faster than other web based system. Because this system is developed using HTML, PHP, and MySQL that are open source and can run faster. 5.4.4 Network communication The network communication of our system will be the web based. All the users might have to network connections. 22 5.5.0 Goals and guidelines Our main goal is to develop an effective and efficient system. To design this system we gave priority end users expectations. The KISS principles The full meaning of KISS is “Keep it Simple Stupid”. It means we need to design the system in a very simple way. For a good design, we need to consider the Criteria for good sub-system/UML diagram design. These criteria are Coupling and Cohesion. Coupling measures the degree of interconnectedness between design classes/components/sub-systems. For a better design low coupling is preferable. Cohesion, on the other hand, measures the degree to which an element (class/component/subsystem) contributes to a single purpose. For a better design high cohesiveness is preferable. Our design follows these two criteria. We also try to make the design considering user satisfaction. Our Emphasis We gave emphasis on the effectiveness of the system that is correctness of the system and then efficiency of the system. Efficiency includes various things; these are speed of the system, how much memory the system needed when running, how much easier the software to use etc. The automated system is introduced to ensure faster and secured activities of the processes. We design the system emphasis in those things. One example of emphasizing is that to make the system faster we chose thin client and thick server. Working, Looking, or feeling Our main objective is to satisfy the users. If they feel good by using this system then it will be really a very good job done. 5.6.0 ARCHITECTURAL STRATEGIES We chose all the things that are software architecture, programming languages to develop this OIQS considering a good design strategy. After considering these factors we arrived at the following architectural infrastructure. 23 5.6.1 SOFTWARE 5.6.1.1 Programming Language Programming Language for Client Tier We use HTML and PHP to design the client tier. Because HTML and PHP are easy to use and it will be helpful for us to design the client tier using HTML and PHP. Programming Language for Business-tier We use PHP and JSP to design the Business-tier because it is an open source programming language that is widely popular on the web. PHP is well known for fast performance and it is also well known for its quick and easy web development capabilities. PHP is an easier programming language to learn than JavaScript because the core language is small. That is why it is easier to us to design the Business-tier using PHP. Programming Language for Database-tier We use MYSQL to design the database-tier. The MySQL database has become the world's most popular open source database because of its consistent fast performance, high reliability and ease of use. It's used in more than 11 million installations ranging from large corporations to specialized embedded applications on every continent in the world. Not only is MySQL the world's most popular open source database, it's also become the database of choice for a new generation of applications built on the LAMP stack (Linux, Apache, MySQL, PHP / Perl / Python.) MySQL runs on more than 20 platforms including Linux, Windows, OS/X, HP-UX, AIX, Netware, giving user the kind of flexibility that puts user in control. 5.6.1.2 LIBRARIES AND TOOLS 1. Macromedia Dreamweaver 8 2. Appserv2.5.7 24 5.7.0 SYSTEM ARCHITECTRE System refers to both hardware and software. The system architecture describes the collection of inter-connected hardware nodes on which the software will eventually run. System architecture consists of Hardware nodes, the connectivity among nodes, the location of users, inputs and outputs; • Software Architecture We use Three-tier architectures to design our system. Because 3-tier Architecture increases performance, flexibility, maintainability, reusability, and scalability while hiding the complexity of distributed processing from the users/clients. Figure 5.7: System Architecture 25 CLIENT TIER: Here client-tier is the first tier of our System/Software that the end-users (students, teachers and admin) will use. BUSINESS LOGIC TIER: System/Software that Client-tier use to get data from the Database Server. Client-tier cannot access Database Server directly. It must request the Business Logic Server first. Upon authorization, the Business Logic Server will get the required data from Database Server and reply to the Client appropriately. DATABASE SERVER: Central and persistent storage of all data from where Business Logic access data. 5.8.0 DETAIL SYSTEM DESIGN 5.8.1 USE CASE DIAGRAM Use cases describe how the system-to-be from a user’s perspective. It used to show the functions to be supported by the system. Here is the use case diagram of OIQS system. Add question Teacher <actor> Edit question See students performance Schedule for exam Sign In Sign Out Admin <actor> Add users info/ Register user Edit users info Course Configuration 26 View User Info View Course Info Appear in quiz Question Get feedback Figure 5.8.1: Use Case Diagram Student <actor> 27 Use Case UC1: Sign In Primary Actor: Admin, Teacher, Student Stakeholders Interests: Admin: Wants to access the system as a valid user that is as a administrator. Teacher: Wants to access the system as a valid user that is as a teacher. Student: Wants to access the system facilities as a valid user that is as a student. Organizations: Wants to avoid those people who are not registered in the system. Also want to ensure the security. Preconditions: Users are registered in the system. Post conditions: Successful login for all registered users. Main success scenario: A user starts to sign in. User enters *user id, *password and *user type. System checks weather user id, password and user type is valid or not. If valid then starts a user session and give access permission. Errors: If the user type is invalid then system shows an error message that “Invalid User Type. Please Re-enter Correct User Type”. If the user id is invalid then system shows an error message that “Invalid User ID. Please Enter Correct User ID“. If the password is invalid then system shows an error message that “Your Password is Invalid. Please Enter Correct Password“. If the user id and password are invalid then system shows an error message that “Invalid User ID and Password. Please Enter Correct User ID and Password“. 28 Use Case UC2: Sign Out Primary Actor: Admin, Teacher, Student Stakeholders Interests: Admin: Wants to close the session as an administrator. Teacher: Wants to close the session as a teacher. Student: Wants to close the session as a student. Organizations: Wants to ensure the security of the user’s transactions. Preconditions: User is identified and authenticated by starting a sign in session. Post conditions: Ensure that all useful and necessary works is saved to the server. Main success scenario: User starts Sign Out. System closes that user session. Use Case UC3: Add Question Primary Actor: Teacher Stakeholders Interests: Teacher: Wants to keep the question bank up to date. Organizations: Wants to take online intelligent quiz. Preconditions: Teacher is identified and authenticated. Post conditions: All questions are saved. Main success scenario: Teacher starts to add a new question Teacher enters question level, question num, subject id, question, answer options 1 to 4, answer and mark. 29 System checks weather this question level is full or not. If not full then add the question in the question bank. System shows all the questions in that level after a successive add. Teacher continues step 1 to step 4 each time he/she want to add a new question in the question bank. Error: If Question Bank is full then system rejects the question and shows an error message that is “Question Bank is full”. Use Case UC4: Edit Question Primary Actor: Teacher Stakeholders Interests: Teacher: Wants to keep the question bank up to date. Organizations: Wants to take online intelligent quiz. Preconditions: Teacher is identified and authenticated. Post conditions: All questions are saved. Main success scenario: Teachers start to edit questions. He/She can see all the questions on necessity. Teachers enter question level, question num, subject id to edit a question. System checks weather this question exists or not. If exists then prompt teachers to edit the question and teachers enter question level, question num, subject id, question, options 1 to 4, answer and mark. System shows all the questions in that level after a successive edit. Teachers continue step 1 to step 6 each time he/she want to edit a new question in the question bank. Error: If the question is not exists in the Question Bank then system gives an error message that is “Question is not present in the Question Bank” 30 and prompt the user to enter question level, question num, subject id, question, options 1 to 4, answer and mark. Use Case UC5: Schedule for Quiz Stakeholders Interests: Teacher: Wants to take quiz in a predefine time. Also wants to make the students more interested on quiz. Organizations: Want to take quiz according to the schedule. Preconditions: Teacher is identified and authenticated. Post conditions: Given schedule is saved. Main success scenario: Teachers start to make a new schedule. Teachers enter quiz number, number of questions, total mark, start time, end time, start date, end date, course id and teacher id. Quiz will be started according to the schedule. Error: For any kind of wrong information system will give an error message that is “You enter invalid information for Schedule” and prompt teacher to re-enter quiz number, number of questions, total mark, start time, end time, start date, end date, course id and teacher id. Use Case UC6: Quiz result Stakeholders Interests: Teacher: Wants to evaluate students. Organizations: Wants teachers can evaluate the students more effectively. Preconditions: Teacher is identified and authenticated. Post conditions: Quiz result is saved. Main success scenario: Teachers start to see quiz result. Teachers enter quiz number, course id and teacher id. 31 System checks weather these entered input is valid or not. If valid then student marks, performance is shown. Error: If these entered inputs are not valid then system gives an error message that is “Your given input is not valid” and prompt the user to enter correct quiz number, course id and teacher id again. Use Case UC7: Add User Info Primary Actor: Admin Stakeholders Interests: Admin: Wants to keep the user information up to date. Organizations: Wants to take intelligent quiz, to keep the users info up to date. Preconditions: Admin is identified and authenticated. Post conditions: All information are saved. Main success scenario: Admin start to add new user information Admin enters user name, id, password, and user category. System checks weather the same user is registered before or not. If not registered then add the user information in the database. If registered then system prompt admin to enter another user id. System shows the user information after each successive add. Admin continue step 1 to step 4 each time he/she want to add a new user in the database. Use Case UC8: Edit User Info Primary Actor: Admin Stakeholders Interests: Admin: Wants to keep the user information up to date. 32 Organizations: Wants to take intelligent quiz, to keep the user info up to date. Preconditions: Admin is identified and authenticated. Post conditions: All information are saved. Main success scenario: Admin starts to edit new user information Admin enters user id, and user category. System checks weather this is a valid user id or not. If valid then show the admin that user information and prompt edit information. If not valid then system prompts admin to enter another user id. System shows the user information after each successive edit. Admin continue step 1 to step 4 each time he/she want to add a new user in the database. Error: If entered user category and id is incorrect then system gives an error message that “Invalid user Category and ID. Please enter correct user Category and ID”. Use Case UC9: Get Feedback Primary Actor: student Stakeholders Interests: Student: Wants to get feedback. Organizations: Wants to take intelligent quiz. Preconditions: Student is identified and authenticated. Post conditions: All answers are saved. Main success scenario: Students want to get feedback. He/She selects a particular quiz solution. System checks weather this quiz time is end or not. If finished then the quiz answers is appeared. Error: 33 If the selected quiz time is not end then system shows the message that “Your Quiz Time is not over”. Use Case UC10: Appear in quiz Primary Actor: student Stakeholders Interests: Student: Wants to attend in quiz. Organizations: Wants to take intelligent quiz. Preconditions: Student is identified and authenticated. Post conditions: All answers are saved. Main success scenario: 1. Students start to give quiz. 2. System checks weather quiz time is started or not. If started then the first question of the quiz is appeared. 3. After answer the first question system give the second question. 4. Students continue step 3 until finished the quiz. 5. After finish the quiz he/she need to submit the answer script. Error: 1. If quiz time doesn’t start then system shows the message that “It is still x minutes left to start the quiz”. 2. If he/she cannot submit the answer script before time end, system automatically takes the answer with in time end and shows the message that “Your Time is End”. 34 5.8.2 INTERACTION DIAGRAM uid, pass and type SignIn uid, type Login not match Database Response type = student Student type = teacher Teacher type = admin Admin Figure 5.8.2.1: Interaction Diagram for Login Process Start Quiz (Student) cid sid, cid Check_date_ time Invalid request Database Response within schedule date and time cid, level, quesnum Give question Question Sstart Process_exam (Quesgenerator) question Answer Finally Result Figure 5.8.2.2: Interaction Diagram for Quiz process 35 cid,tid Schedule Quiz (Teacher) tid, cid Generate Quiz Num qnum tques, sdate, edate, stime, etime Database qnum Save Schedule Figure 5.5.2.3: Interaction Diagram for Quiz Schedule process cid, ques, ans,level Add Question (Teacher) Save Question Database Figure 5.8.2.4: Interaction Diagram for Add Question process cid, tid Edit Question (Teacher) Load Question slno Save edit question Figure 5.8.2.5: Interaction Diagram for Edit Question process Database 36 5.8.3 CLASS DIAGRAM User utype: string uid : string uname: string upass : string dept : string email : string showLogInPage(): void reqToLogin : string reqToLogOut : string showUserInFo():void Student Teacher showStudentInfo() : void Admin showTeacherInfo() : void 1…* 1 showAdminInfo( ): void 1 Question 0…* 1 …* Course Quiz cid : string cname : string 1 showAllQuizes(): string showGradeSheet(): string 1…* quiznum : int totalquestion: int totalmark:int stime: string 1…* startdate: string showAnsScript() :string showGradeSheet (): string 1 questionlevel: int questionmm: int work: int subid: string question: string option1: string option2: string 1…* option3: string option4: string answer: string showQuestion(): string 37 Figure 5.8.3: Class Diagram 5.8.4 FLOWCHART OF QUESTION GENERATOR ALGORITHM Start Quiz Read Course ID Read num_of_question Read assign mark Initialization Count=0 Level = 1 Total mark =0 No Question_num = func_rand (); Level = floor [current_level] ; Generate_question (course_id, level, question_num); Yes Count++; Is Answer correct? False All question of same level Attempted? Yes Yes Level ++ Update total mark No If Current Level = =End level and answer = = true Yes End Show Result 38 Figure 5.8.4: Flowchart of Question Generator Algorithm 5.8.5 TREE STRUCTURE VIEW OF OIQS User Admin Teacher Student Control & Maintenance Make Question & Take Exam Attend Exam Figure 5.8.5.1: Tree Structure View of OIQS Student Select Course Previous Taken Quiz Start Quiz Figure 5.8.5.2: Tree Structure View of Student Module 39 Teacher Schedule Quiz View All Question Add Question Edit Question Figure 5.8.5.3: Tree Structure View of Teacher Module Admin View All Courses User Setup User Modification Add Course Course Configuration Edit Course Info Assign Course To Teacher View All User Info Assign Course To Student Figure 5.8.5.4: Tree Structure View of Admin Module 40 5.8.6 E-R DIAGRAM uname type dept u_id pass email USER ISA add STUDENT TEACHER ADMIN add add assigned to take e t_ques take qnum tmark stime has COURSE QUIZ etime c_id sdate cname includes edate qleve attened qnum mark ans sub_id status QUESTION question op1 op4 op3 op2 41 s_id 02201048 02201018 02201070 02201154 sname palash saikot rumi nasim dept cse cse cs cse pass 123 012 324 786 e-mail Msap71@yahoo.com Saikot1@gmail.com Rumi12@gmail.com Nasim1@hotmail.com Figure 5.8.6: E-R diagram of OIQS Student Table: Teacher Table: T_id 012 009 003 tname Dr. karim rahman Abdur rouf sarkar Dr.Rahim dept cse pass 0012 e-mail karim12@yahoo.com cse abc sarkar@gmail.com ess 236 rahim@gmail.com Course Table: c_id Cse420 Cse310 Cname compiler Java programming Simulation & modeling Cse474 T_id 012 009 003 ScheduleQuiz Table: q_num 1 2 1 Tques 10 20 10 tmark 100 40 50 stime 12.00pm 10.00am 2.00pm etime 12.30pm 10.20 3.00pm sdate 3/6/07 10/5/07 5/5/07 edate 5/6/07 15/5/07 6/5/07 c_id Cse420 Cse474 Cse310 T_id 012 003 009 42 Question Table: qlevel qnum sub_id question Op1 Op2 Op3 Op4 ans mark q_num Admin Table: a_id 789 889 885 aname Mr.roton Mrs sharmin Mr. abul pass mrt mnb ccz e-mail Mrt12@gmail.com Sha122@yahoo.com Ant2000@yahoo.com Resistered Table: s_id Palash Soikot Nasim c_id Cse420 Cse474 Cse474 QuizInfo Table: s_id 02201048 02201018 02201154 t_id 00010001 00010002 00010001 5.8.7 USER INTERFACE c_id CSE391 CSE421 CSE391 qnum 1 2 1 status yes Yes no 43 Welcome Page Online Intelligent Quiz System WELCOME TO ONLINE INTELLIGENT QUIZ SYSTEM LOGIN ABOUT SYSTEM User Log In Page Online Intelligent Quiz System ONLINE INTELLIGENT QUIZ SYSTEM LOG IN UID PASSWORD USERTYPE Reset Student Page Sub 44 Online Intelligent Quiz System WELCOME TO ONLINE INTELLIGENT QUIZ LOG OUT PREVIOUS TAKEN QUIZ START QUIZ Admin Page Online Intelligent Quiz System ONLINE INTELLIGENT QUIZ SYSTEM LOG OUT View All UserInfo Add Users Info Edit User’s Info Log In Error Message 45 Online Intelligent Quiz System ONLINE INTELLIGENT QUIZ User Name and Password does not match OK Question Page Online Intelligent Quiz System Course Name: DEV 101 Question Number 1 Which team won the world cup cricket 2003? Bangladesh India Australia Srilanka NEXT 46 Answer Script Online Intelligent Quiz System Course Name: Quiz Number: Question-1: Correct Answer-1: Question-2: Correct Answer-1: Question-n: Correct Answer-n: SCORE: OK All User Information User Information: User Name User Id Department Email Address Password SAVE Type BACK 47 6.0 ADVANTAGE Students can appear in a quiz from anywhere of the world. There is no interaction with pencil and paper. Questions are generated intelligently. o The system generates a new question of a quiz by depending on the result of the question last answered. o The system generates different questions for different students for the same quiz of a subject. Teachers can use the system for evaluating students effectively, efficiently and perfectly. It is the more efficient and effective methods of assessing distant students. There is provision of automated marking, that is, teachers do not need to check the answer script as they do in manual quiz. Valuable time of a teacher is saved. The system will give feedback about a student in which side he/she is weak. The system implements distant education. 48 7.0 CONCLUSION In this thesis, we have focused on the automated system, which replaces the manual quiz system. But the interesting thing is that the thesis is not just an online quiz system; it has its own intelligent capability. This was actually our target feature of our thesis. Basically, we have tried to introduce the evaluation method of student-performance and the feed back of the student in the online quiz. Here, the questions are appeared according to the previous answer of that student. We have implemented it in our thesis and it works successfully in our system. In this system, an educational institute can make their examination procedure automated. It gives the opportunity to the authority to register teachers for different subjects and also give the facility to the students to register their courses for the examinations using the OIQS. Though this is a MCQ based quiz system but it is a perfect MCQ based online quiz system that gives a lot of facilities to the users, as a modern quiz system should have. This system is designed basically for the educational institute but also can be developed for other examination systems like job interview, quiz contest and for other criteria. 49 8.0 DOCUMENTATION 8.1 INSTALATION We have used AppServ 2.5.7 to run the system form the server side. Server name we use local host and its port 8080. Here we show how to install AppServ 2.5.7. One has to perform the following steps to install AppServ 2.5.7. Step1: Click on AppServe2.5.7 exe file. You can show the following interface after click. Choose path where you want to install AppServe2.5.7 by click on the Brose button. After choose the destination folder click on Next button To choose destination click on Browse button 50 Then you can show this interface. All of these are by default selected. You just click on the next button. After click on next button you can show the following interface. To run the Online Intelligent Quiz System you must have to use Server name: localhost and Apache HTTP Port: 8080. Then click on next button. Write server name localhost here Write port number 8080 here Click on next button 51 Then you can show the following interface. Fill root password by root and then click on install button. To run the Online Intelligent Quiz System you must have to use root password: root. Here fill by password “root” Then click on install button Installation started after click on install button. Below interface show that installation process are in progress. You can show the bellow interface after you finished installation process. Then click on finish button. 52 Click on finish button Then to run the Online Intelligent Quiz System you have to perform Step2. 53 Step 2: To run the OIQS from a local host you have to do the following steps. At first copy the Online (c:\AppServ\www)folder. folder from OIQS folder and put into Online folder contains all the system file of OIQS This Online folder contains all necessary system files of OIQS that are shown in the above figure. 54 After that you have to copy system’s database folder named “teacher” from OIQS folder and put into the (c:\AppServ\www)folder. This teacher folder contains all the necessary database files that OIQS need. Put teacher folder into “c:\AppServ\MySQL\data” You have finished the installation process to run from a local host. Now you can run the system. To run the OIQS just put the below URL into the browser and click into go button or press enter key from the keyboard. http://localhost:8080/online/ Step 3: To run the OIQS from internet you have to do the following steps. 1. Copy the Online folder from OIQS folder and put in the location into the server. 2. Then copy the teacher folder from OIQS folder and put in the location into the server where you want to store the database file. 3. Then you can run the system using that address where you put the Online folder. 55 8.2 USER MANUAL HOME PAGE This is the home page of Online Intelligent Quiz System (OIQS). From this page you can log in the OIQS. There are some links marked in blue color. By clicking the Home link you will be redirected to the same page. By clicking the Project Description link you can see the full details of this OIQS system. By clicking the Help link you will get some FAQ (Frequently Asked Questions) so that you can solve the simple problems to access the systems like login or generate the quiz schedule or attempt for a quiz. By clicking the Login you can enter into the OIQS system. 56 LOGIN PAGE From the home page you can redirect to the login page if you click on the Login link. Three types of users can access this OIQS and each user has different functionalities. To enter into the system you have to enter user name that is shown as UID and PASSWORD and you also have to select your type that is UTYPE. Then you have to click on the Submit button. If all the inputs are valid that was given by you then it will be redirected to the corresponding request page. As an example, if user type is student then it will be redirected to the student page. 57 ADMIN PAGE This is the administrator’s home page. You can see some buttons are there and each of these buttons has different meaning. There are five buttons. The first button is the User Setup button. By clicking this button system redirect you to the add new user page from were you can add new user. The second button is the User Modification button. By clicking this button system redirect you to the edit user page from were you can edit old user information. The third button is the Course Configuration button. By clicking this button system redirect you to the course configuration page from were you can assign course to teacher and student. Also you can add new course from there. The fourth button is the View All User Info button and the last one is View All Courses. By clicking to the view all user info button you can see all user’s information. By clicking to the view all courses button you can see all configure courses information. Administrator can also do logout from this page or he/she can go to the change password page by clicking the links that was located on the right top of the page. To change the password we have to click on the Change Password and to logout from the system we have to click on the Log Out link. 58 USER SETUP This page is for adding new user to the database. The user may be a teacher/student/admin who will use the system. The administrator have to give the user id, first name, last name, user type, department and email address to add a new user. After filling all these user information you just have to click to the save button to save all the information. The administrator can log out from the system from this page by clicking the Log Out link that was on the top right of the page. You can also return back to the previous page by clicking to Previous Page link. 59 EDIT USER INFORMATION This is Edit user information page. The admin have to give the user id, first name, last name, user type, department and e-mail address to edit the user. The user information will be saved automatically to the database after click the save button and admin can also delete user by pressing Delete button. The administrator can log out from the system from this page by clicking the Logout link that was on the top right of the page. They can also return back to administrator’s previous home page. 60 COURSE CONFIGURATION This is the course configuration page. We can see some button is there and each of the button have the different in meaning. There are four buttons. The first button is the Add Course; the second button is for Edit Course. The third button is for Assign Course to Teachers and the fourth button is for Assign Course to Student. The administrator can log out from the system from this page by clicking the Logout link that was on the top right of the page. They can also return back to administrator’s previous home page. 61 ADD COURSE In Add Course page the Admin give the course Id and Course Name to add course. The course will be saved automatically to the database after click the save button .The Cancel button work like Refresh. The administrator can log out from the system from this page by clicking the Logout link that was on the top right of the page. They can also return back to administrator’s previous home page by clicking Previous page. The Admin can add courses, as they needed. 62 EDIT COURSE In Edit Course page the Admin give the course Id and Course Name to modify courses. The course will be deleted by pressing the delete button after selecting course id and course name. The modified course will be saved automatically to the database after click the save button .The Cancel button work like Refresh. The administrator can log out from the system from this page by clicking the Logout link that was on the top right of the page. They can also return back to administrator’s previous home page by clicking Previous Page. 63 ASSIGN COURSE TO TEACHER This page is for assigning a course to the teacher. The administrator has to select the teacher id, and the number of course id to add in the database. After selecting all the necessary input the administrator will enter the “Save” button. The information will be saved automatically to the database according to the teacher id selected by the teacher. The Admin can log out from the system from the page by clicking the Logout link that was on the top right of the page. They can also return back to administrator’s home page. 64 ASSIGN COURSE TO STUDENT This page is for assigning a course to the student. The administrator has to select the student id, and the number of course id to add in the database. After selecting all the necessary input the administrator will enter the “Save” button. The information will be saved automatically to the database according to the student id selected by the student. The Admin can log out from the system from the page by clicking the Logout link that was on the top right of the page. They can also return back to administrator’s home page. 65 VIEW ALL USER INFORMATION This page contains all user information .In our system there are three types of user and the Type separates them. Only Admin can access this page. They will click on the “Generate” button. The query will be executed and all the information of the user will be extracted with level here. The administrator can log out from the system from this page by clicking the Logout link that was on the top right of the page. They can also return back to administrator’s previous home page. 66 VIEW ALL COURSE INFORMATION This page contains all course information. Where course are separated by course id and name. They will click on the “Generate” button. The query will be executed and all the information of the user will be extracted with level here. The user can log out from the system from this page by clicking the Logout link that was on the top right of the page. They can also return back to administrator’s previous home page. 67 TEACHER PAGE This is the teacher’s home page. We can see some button is there and each of the button have the different in meaning. There are four buttons. The first button is the Schedule Quiz; the second button is for Add Question. The third button is for Edit Question, the fourth button is for Users Info, and the last one is View Question. 68 SCHEDULE QUIZ Before start a quiz Teacher need to schedule quiz that’s why we design this page. Where teacher select the course code and fill the start date and end date also teacher fill the start and end time for the quiz. Teacher also gives the total number of question to be answer and total marks. After selecting this field and pressing the save button data will be automatically save to the database. The user can log out from the system from this page by clicking the Logout link that was on the top right of the page. They can also return back to administrator’s previous home page. 69 ADD QUESTION: We always want that students can learn better. For this we always update our question bank so that the students can participate the quiz in new questions. This page is for uploading new questions to the database. The teachers have to select the course id to save the questions. Then he will enter new questions along with four choices, answers and also the question level and click on the “Save” button. The question will be saved automatically to the database according to the course id selected by the teacher. The teacher can log out from the system from the page by clicking the Logout link that was on the top right of the page. They can also return back to teacher’s home page. 70 EDIT QUESTION: This page is for editing the existing questions from the database. The teachers have to select a course from the drop down box that they want to edit questions. Then they will click on the “Generate” button. The query will be executed and all the questions of that subject will be extracted here. The teacher will then select the questions and click on “Edit” button. Then this question will be showed on the page. After that the teacher can modify, as they need. 71 VIEW ALL QUESTIONS The teachers have to select a course from the drop down box that they want to view questions. Then they will click on the “Generate” button. The query will be executed and all the questions of that subject will be extracted with level here. 72 STUDENT PAGE This is the student’s home page. We can see some button is there and each of the button have the different in meaning. There are four buttons. The first button is the Start Quiz; the second button is for Previous Quiz Info. The third button is for Change password, the fourth button is for Users Info, and the last one is Logout. 73 START QUIZ Student can start a quiz by selecting a course. After pressing the start button our system made a query and match that start and end date and also start and end time that was given by the teacher in the database if the date and time does not match then our system shown a matches where exam duration has been expired. 74 QUESTION PAGE This page shows the first question of the quiz where number 1 mean that this question come from question level 1 and now you are in level 1. Every question has four options where you (student) have to select one option and have to press the next button to get the next question. After pressing the next button, if the question answer is right then next question comes from the next level otherwise it comes from the same level. This page will give you a new question one after one up to you finished your quiz or up to quiz time is finished. You (student) can log out from the system by clicking the Log Out link that was on the top right of the page. By pressing the quit button you can back to the student main page. Once you start a quiz you have to complete it, because automatically take the answer chosen by you if you Quit or Log Out from this page. 75 In the below page shows the question number is 10 that is now you are in level 10. This page also shows that next button is disabled because this is the last question of your quiz. Here after choose an option as an answer you need to click in the submit button to submit this question. 76 RESULT PAGE You can see the result page after have just finished your quiz. Below a sample result page are shown. You can log out from the system from this page by clicking the Log Out link that was on the top right of the page. By pressing the quit button you can back to your (student) main page. 77 CHANGE PASSWORD: This page is for the three type’s user by which you can change your password. You can change your password by filling up your User ID, Old Password, New Password, and Confirm New Password field. After pressing the change button the password will be automatically change. You can log out from the system from this page by clicking the Log Out link that was on the top right of the page. 78 9.0 GLOSSARY OIQS: ONLINE INTELLIGENT QUIZ SYSTEM. System: System is a set of entities, real or abstract, comprising a whole where each component interacts with or is related to at least one other component and they all serve a common objective. User: A person who uses the system. In our OIQS, there are three types of users. User ID: Every user has different id, which will identify them. Admin: A user who controls the whole system. Teacher: The users who teach the students and take quizzes. Student: A user who is a student and appears in a quiz by registered. Course: The subjects offered by an institution and are assigned to the students. Department: An institute has several departments (CSE, BBA, etc). Before registering, a student first chooses which department he/she wants to study. Quiz: Teachers can evaluate a student by taking quiz. In OIQS, teachers take MCQ quizzes. Time & Date: Every quiz has fixed time and date, which will be fixed by the teacher. Within this time and date students will appear in the quiz. Generator Engine: A module, which generates questions intelligently. Question Bank: The database where all data regarding quizzes are stored. Schedule Quiz: Quizzes, which are scheduled i.e. time is fixed. Feedback: The reaction or response to quizzes given by the OIQS. 79 10. BIBLIOGRAPHY a. b. c. d. http://phplens.com/phpeverywhere/node/view/15 http://www.mysql.com/why-mysql/ http://student.bu.ac.bd/~shadid/ Object-Oriented Software Engineering book by Timothy C. Lethbridge and Robert Laganiere