A PROJECT REPORT ON ONLINE EXAMS SYSTEM Submitted by: Name id million wakeyo…………………………..104/15 milkesa birate……………………………..103/15 yasin awel ………………………………… 055/13 nuguse alemayew…………………………110/14 zenebu wubete…………………………….151/15 SUBMITTED TO: INSTRACTURE: GIRMAY.T SUBMITTED DATE:- 14/06/2010 1 1 Acknowledgement First of all we would like to thanks for God. No more say about God. Because all things are in the hands of God. Secondly we would like to thank our course instructor Girmay.T for this restless support on how to write of our proposal, input to the quality of this proposal, heart full guidance, his valuable advice, and providing references and reading materials to execute this proposal . Thirdly we would like to thank to Dilla University department of Computer Science for their acquiescence of 24 hrs. Of laboratory class. At the last but not the least, even if it is unusual, the group members would like to thank each other. The main contributors to do this proposal are teamwork, friendship and the belief that we may achieve something we set out to do. We also hope that this project and the proposal may be testaments to our continued friendship and better work. And it may also be the essence of success and symbolic witness of what we are going to work. This teamwork coordination’s of the grope member are continues for writing the documentation also. 2 Content of table Content page 1. Introduction………………………………………………………………………….………..1 1.1 Background of the organization……………………………………………………………..1 2. Background of the Project………………………………………………………….………..1 3. Statement of the Problem…………………………………………………………………….4 4. Objective of the project……………………………………………………………..……….4 4.1 General objective……………………………………………………………….....…..4 4.2 Specific objective…………………………………………………………………...............4 5. Scope of the project…………………………………………………………………………..5 6 . Limitations of the Project…………………………………………………………….…...….6 7. Methodology…………………………………………………………………………………. 7.1 Data gathering Methodology………………………………………………………..… 7.2 System analysis and design Methodology…………………………………...…..7 7.3 Development Methodology…………………………………………………..….7 7.4 Development tools.………………………………………………………………9 7.4.1 Hardware Platforms………………………………………..……..……...9 Table1. 1 Hardware tools……………………………………………………………...9 7.4.2 Software Platforms………………………………………………………………9 Table1. 2 Software tool…………………..…………………………………..………9 7.5 Testing methodology…………………………………………….…………….……..10 8. Significance of the Project……………………………………………………………..10 9. Beneficiaries of the Project……………………………………………………………11 10. Project Plan……………………………………………………………………………11 3 10.1 Project Schedule …………………………………………………………….11 10.2 Project Cost………………………………………………………………………11 10.3 Budget Plane………………………………………………………………………..12 4 List of Figure . Hardware Software mapping . Figure of Architecture of the system List of Table Student information table Question information tabl List Acronym Online-Examination System (OES) Hyper Text Markup Language (HTML) Cascading Style Sheet(CSS) Entity Relationship Diagram(ER D). Data Flow Diagram (DFD). 5 Abstractions The Examination System is a web application system that able to manage the student exam by computerized way . Give fast service for the student and for the exam related staffs such as for department, faculty and registrar. To identify the existing problems and to develop online examination System we follow the software life cycle; these are feasibility study, requirement analysis, system design, implementation and testing. This life cycle help to identify what the problem faced in the existing system and give the guide line and required information to develop the proposed system. These projects are developed by using PHP, HTML, CSS and java script for the front end part. The back end or the database parte are developed by using WAMP server for the purpose of storing the data . CHAPTER ONE 6 1. INTRODUCTION This proposal will propose all features and procedures to develop the system. This proposal specially containing details about objectives, scope and limitation, operating environment, data gathering methodology, the definition, acronym and abbreviation words use in the propose and finally list of reference or resources use in the proposal. On-line examinations contents providers to focus on creating effective assessment questions and focusing on exam’s feedback delivery to students. In the paper we present techniques that are pertinent to the elements of assessment process: answers submission, computerized grading, and feedback after submission. The administrators, instructor (examiner) and Students who are attending for online examination can communicate with the system through these projects, thus facilitating effective implementation and monitoring of various activities of Online Examinations like conducting Exams as per scheduled basis and delivering result to that particular use or student. And the details of students who attempted Online Examination are maintained at administrator 1.1 Background of the system The background of the system is explained the past execution of the system as will as the existing system of the exam. To give the exam in the governmental institution such as in the school and University as will as in the non-governmental collages, it is difficult to manage the examinee (students). But the governmental as will as the non-governmental institutions still it gives the exam in the form of manually (paper based).This kinds of exam is affects the organization economy in terms of many, the power of employee, the time to give the exam for the student. The proposed system is created the exam is given for the examinee or the student in online examination system. So this new created system is solve the existing problem easily and functionally. 1.2 Statement of the problem The statement of the problem is defines in the following two things 1. Existing System 7 The following drawbacks of existing system emphasize the need for computerization: 1. a lot of copies of question papers have to be made 2. a lot of correction work hence delays in giving the results 3. a lot of tabulation work for each subject results 2. Proposed System This application is used to conduct online examination. The students can sit at individual terminals and login to write the exam in the given duration. The questions have to be given to the students. This application will perform correction, display the result immediately and also store it in database. This application provides the administrator with a facility to add new exams. This application provides the Instructor add questions to the exam, modify questions in the exam in a particular exam. This application takes care of authentication of the administrator, Instructor as well as the student. 1.3 Objectives 1.3.1 General Objectives The general objective of the project is to develop the manual existing system of the student exam in to on-line exam system. 1.3.2 Specific Objective The specific objective of the Online Examination System is:• This application will perform correction. • Display the result immediately and also store it in database. • This application provides the administrator with a facility to add new exams. • This application provides the Instructor add questions to the exam, • Modify questions in the exam in a particular exam. • This application takes care of authentication of the administrator, Instructor as well as the student. 1.4. Significance of the project • The general significance of the project can be defined as follows 8 • To avoids wastage of time. • To minimizing number of examiner. • To give speed and time save service for examinee. • To update the exam easily. • To maintain the data security. • To control errors in data processing. 1.4.1 Customer significance • The customer can be get information from the organized project. • The customer can get fast service. • To get satisfaction from the system 1.4.2 Organization significance • It helps to get simple service to update the exam. • It helps to control the time of the examinee and stop the exam automatically • It helps to get better security of data. • It helps to minimizing wastage of time. 1.5. Scope and limitations: 1.5.1 Limitations: • Allow students to see or display his answers after the exam is finish. • • • The type of questions is only multiple choice or true and false. 1.5.2 Scope On-line Exam system is designed for Educational Institutes (like schools, universities, training centers). The system handles all the operations, and generates reports as soon as the test is finish, that includes name, mark, time spent to solve the exam. The scope of this proposed system will be explained in terms of users (scope of the system users) and function (module). 9 • User scope • Administrator: -The administrator collects all the results after successful completion of the examination and then sends to the registrar. The features (work) that are available to the Administrator are: • The administrator has the full-fledged rights over the OES. • Can create/delete an account. • Can view the accounts. • Can change the password. • Can hide any kind of features from the both of users. • Insert/delete/edit the information of available on OES. • Can access all the accounts of the faculty members/students. • Examiner:-The database is prepared & loaded into the software. Selection for examination can be done language wise by the examiner. The results will be displayed immediately after completion of the examination. The features (work) available to the Examiner are: • Can view the different categories of Test conducted by users. • Can change password. • Can view their marks. • Can view and modify Results. • Student:-The student will login to the software and take his examination. He can also check his previous examinations marks and his details. The student will get result immediately after the completion of the examination. The features (work) available to the Students are: • Can view the different categories of Test available in their account. • Can change password. 10 • Can view their marks. • Can view the various reading material. • Can view and modify its profile but can modify it to some limited range. • Function scope • Login module:- design to make the system secure through authentication and authorization. • Help module: - to get information about the system for the examiner. • Registration module:-The examinee (student) must be register before inter into the exam webpage. • View module: - the student views their own mark as soon as the exam is finished. • Operating environment To develop this system we used software and hardware operating environment. Software environments To develop the system we use different types of software environments such as: 1.6.1 Operating system, Notepad++, chrome browser for running the program, because of chrome browser support all PHP, CSS and HTML key words and Microsoft office for write the proposal. Hardware environment The hardware part of the operating environment also necessary for the developing of the new examination systems. From the hardware operating environment we listed above, we used in the developing of the system. Such as:- 1.6.2 • Secondary storage device (flash and CDs) • Cup(processor) • Hard disk • Memory 1.7. Methodology In order to achieve the objective of this project, data collection or data gathering methodology are used such as interview, observation and questioner. And also use 11 design, implementation and testing methodology in order to satisfy the objective of this project. 1.7.1 Data Gathering Methodology • Interview The data gathering system in this project proposal is interview method. That means by asking the manager or the department head of the office. Mainly, the Interview includes: • The methodology of the exam, haw to give the exam for the student? • For what purpose? • How work? • How many workers or examiner are participating in one exam? • If it is difficult, to give the exam using paper? • What kind of questions include in the exam or simple instructions? • Observation Group members observe the work office of different department, the examination style during exam and identify its problem for our projects. • Questioner 1.7.2 The questioner is the same with interview. The main difference is, during questioner of data gathering, the question is distributed for the student, examiner as will as different peoples concern the question and then the person fill all necessary information based on the instruction. But the interview data gathering is direct communication among we and the anther person. Design methodology In Design of this project we follow an object oriented model. Using Object Oriented methods used to develop real-time systems has the potential to produce safer, more reliable and maintainable code. Instead of using functional decomposition of the system, the OOA approach focuses on identifying objects and their activities. Using the object -oriented approach, system analysts model information systems by identifying a set of objects, along with their attributes and Operations that manipulate the object data. 1.7.3 Implementation Methodology 12 The development model used for examination system is an Incremental development methodology. The Incremental methodology is an evolution of the Waterfall model, where the Waterfall model is incrementally applied using the iterative philosophy of prototyping. With Incremental development the project is designed, implemented and tested incrementally with a little more is added each time until the product is finished. It involves both development and maintenance. The model is shows below, To produce this proposed project we prefer an Incremental development methodology ( the reason is that this model permits us to improve in the next increment from the previous and we prefer HTML, JavaScript for frontend and PHP ,MYSQL and RDBMS (it speedy and efficient, easy to install). 1.7.5 Testing Methodology After accomplish the project we used two types of test method to evaluate the functionality of the System, those are White-box testing, we test the detailed investigation of internal logic and structure of the code and black-box testing, without interior workings of the application. 1. Unit testing: in this testing by prepare test suits we test the individual components separately. The components are Register student, create account, add exam, 2. Integrating testing: is a level of testing process the individual components are combined and tested as a group. In this testing method we combined Register student, create account, delete account and add exam with databases to verify functional, performance, and reliability requirements placed on major design of the system. Finally we use the system testing to evaluate the overall function of the system. 13 1.8. COST ANALYSIS Material Software Hardware TOTAL Type MS office word memory Flash disk Pen human ------ Quantity 1 1 1 5 5 13 Unit Price ---180 200 5 5,000 5,385 Total Cost ---180 200 25 25,000 25,405 1.9. TIME LINE FOR PROPOSAL Estimate started Estimated ended date datet of the 25/07/200 E.C 03/08/2008 E.C NO Task 1 2 Identifying problem existing system Writing the proposal 3 4 Editing(checking) 15/08/2008 E.C Submission date 25/08/2008 E.C 05/08/2008 E.C 13/08/2008 E.C -------- Table 1 Time schedule for the documentation. 1.10 Time Schedule for Documentation The time schedule is important for minimizing the work load of the documentation. The specific time duration iswe have identified the activities in accomplishing the 14 project objective with their schedule requirement which is done on the above table below. Table 2 Time schedule for the documentation. 2.Chapter 2 Existing system 2.1 INTRODUTION In the early days it was the most popular methods of evaluation student manually. Still now the system is popular to the students as well as to the teacher. In our organization, existing system activities are performed manually. The task that processed manually includes registration, payment, examination and publication of result. From above activity our system concern one examination and publication result problem that occur in current system 2.2 DESCRIPTION ABOUT EXISTING SYSTEM The process of examination and publication of result in the current system is: -Instructor prepares examinations; the department delivers exam application form for students through branch office. Then students fill the form before taking the examination, the form contains students full name, 15 registration number, center, town, region, P.O box, educational level, course they wants to take and center at which they wants to take final examination. The branch office collects the exam application form filled and sent to Jimma university CDE office. After that exam is prepared and distributed to all branch office. On examination students require to hold ID and receipt which shows the term payment. Lastly the coordinator of each branch sent numerical information to Jimma University CDE office. The instructor and exam coordinator evaluates the exam, record the result set scales and prepare grades. Finally student’s grade and total mark will be set registrar office. The activity processed in existing system has draw backs such as taking examination is paper based, evaluation and calculation of answer sheet by human. • Consume of time -.Result Processing is slow due to paper work and requirement of more staff, checking and distributing scores is take time, Student Need to go the college for examination to view their score. Student needs to wait to get their result up to the teacher finishes the script Checking. • Location dependant-they can take exam only in branch where they registered. • Labor -In the existing system the number of staff required for completing the work. On Accuracy -Result may not precise due to human error, Load on checking answer and calculation result. • • Spending of resource-organization spends resource on material production and distribution. It is very difficult to analyze the exam manually therefore more staff is required. • Limitation of Existing System 1. Defficulty in question uploads 2. Result Making Is Tedious 3. Unavailability Question Bank 4. No Facility for Randomization Of Question 5. Lack of Security 6. Time Consuming 2.4.1. Users of Existing System 1. Administrators: The administrator collects all the results after successful completion of the examination and sends to the head quarters as and when required. 16 The features that are available to the Administrator are : The administrator has the full fledged rights over the OES. Can create/delete an account. Can view the accounts. Can change the password. Can hide any kind of features from the both of users. Insert/delete/edit the information of available on OES. Can access all the accounts of the faculty members/students. 2. Students : Can view the different categories of Test available in their account. Can change password. Can view their marks. Can view the various reading material. Can view and modify its profile but can modify it to some limited range. 3. Examiner : Can view the different categories of Test conducted by users. Can change password. Can view their marks. Can view and modify Results. 2.4.2. Major functions of the Current System/context diagram The features of our major functions available to the Students are: Can view the different categories of Test available in their account. Can change password. Can view their marks. Can view the various reading material. Can view and modify its profile but can modify it to some limited range. 17 2.4.3. Existing System Workflow structure CAPTER THREE 18 Proposed System 3.1 Overview of the proposed system This application is used to conduct online examination. The students can sit at individual terminals and login to write the exam in the given duration.The questions have to be given to the students. This application will perform correction, display the result immediately and also store it in database. This application provides the administrator with a facility to add new exams. This application provides the Instructor add questions to the exam, modify questions in the exam in a particular exam. This application takes care of authentication of the administrator, Instructor as well as the student. This section gives a functional requirement that applicable to the On-Line Exam system. There are three sub modules in this phase. • • Candidate module. Examiner module. • Administrator module. 3.2. Requirement specification 3.2.1. Functional Requirement The functionality of each module is as follows: • Candidate module: The candidate will logon to the software and take his examination. He can also check his previous examinations marks and his details. The candidate will get result immediately after the completion of the examination. • Examiner module: The database is prepared & loaded into the software. Selection for examination can be done language wise by the examiner. The results will be displayed immediately after completion of the examination. • Administrator module: The administrator collects all the results after successful completion of the examination and sends to the head quarters as and when required. 19 The features that are available to the Administrator are: • The administrator has the full fledged rights over the OES. • Can create/delete an account. • Can view the accounts. • Can change the password. • Can hide any kind of features from the both of users. • Insert/delete/edit the information of available on OES. • Can access all the accounts of the faculty members/students. The features available to the Students are: • • Can view the different categories of Test available in their account. Can change password. • Can view their marks. • Can view the various reading material. • Can view and modify its profile but can modify it to some limited range. The features available to the Examiner are: • Can view the different categories of Test conducted by users. • Can change password. • Can view their marks. • Can view and modify Results. 3.2.2. Non-functional requirement Nonfunctional requirements describe system attributes such as Performance, Safety, Security, Availability, Flexibility and portability. That specifies criteria that can be used to determine the operation of a system, rather than specific behaviors. Generally non-functional requirements are "system shall be”. • Performance Requirements: 20 • The system support use of multiple users at a time. • The system calculates result after exam completion. • Safety requirement: The database may get collapse due to virus or operating system failure. Therefore, it is required to take the database backup. • Security Requirements: Factor that affect the system are not allowed .to protect the malicious user, unauthorized person it require authentication. System will allow only valid users to access the system. • Availability Requirements: Students can take exam only during the agreed time, however can open site anytime to access other information anywhere. • Flexibility requirement: Each part of system are independent, so that changing of one part are not affect the other part and new part can be added to increase functionality. • Portability requirement: The application will be built using PHP and HTML which has support to run on any platform. Mysql are used for database storage Constraints anything that we have to do, are required to do, or that places demands on the project. Constraints are schedules, cost limits, and must-haves for the project something which can be accomplished (deliverable) Chapter 4. System model 4.1.Introduction In this system we are use waterfall model to apply these ideas. Which is help us to separate each step and when we finish a one phase the output of it is the input to the next phase. Also, we can backwards if there is a new requirement or to apply any update. 4.2.1. Context diagrams 21 4.2.2. Data flow diagrams (DFD level 0…. Level N) A DFD also known as ‘bubble chart’, has the purpose of clarifying system requirements and identifying major transformations. It shows the flow of data through a system. It is a graphical tool because it presents a picture. The DFD may be partitioned into levels that represent increasing information flow and functional detail. Four simple notations are used to complete a DFD. These notations are given below:DATA FLOW:- The data flow is used to describe the movement of information from one part of the system to another part. Flows represent data in motion. It is a pipe line through which information flows. Data flow is represented by an arrow. PROCESS:- A circle or bubble represents a process that transforms incoming data to outgoing data. Process shows a part of the system that transform inputs to outputs. 22 EXTERNAL ENTITY:- A square defines a source or destination of system data. External entities represent any entity that supplies or receive information from the system but is not a part of the system. EXTERNAL ENTITY:- A square defines a source or destination of system data. External entities represent any entity that supplies or receive information from the system but is not a part of the system. LEVEL ‘0’DFD FOR ONLINE EXAMINATION 23 24 LEVEL 2 DFD FOR STUDNT 4.3. Logic models (Structured English, decision tree/table) 4.4. ER Diagram (optional depending on your design methodology) 25 5.Chapter 5. System Design 5.1 System Over view Design is the first step in the development phase for any techniques and principles for the purpose of defining a device, a process or system in sufficient detail to permit its physical realization. 26 Once the software requirements have been analyzed and specified the software design involves three technical activities - design, coding, implementation and testing that are required to build and verify the software. The design activities are of main importance in this phase, because in this activity, decisions ultimately affecting the success of the software implementation and its ease of maintenance are made. These decisions have the final bearing upon reliability and maintainability of the system. Design is the only way to accurately translate the customer’s requirements into finished software or a system. Design is the place where quality is fostered in development. Software design is a process through which requirements are translated into a representation of software. Software design is conducted in two steps. Preliminary design is concerned with the transformation of requirements into data. 5.2. Design Considerations The purpose of the system it provide system administer institution department and student within central location for organizing several events. The purposes of this system provide the following reason:• No physical presence needed for examination. • No wastage of time during evaluation. • Instant availability of the result. • Starting and completion time are both recorded by the server. • A series of on-line tests are offered by the software for the benefit of the student. In general the system is much more preferred due to these reason across various organization and the world. 5.3 Design goals 27 The design goals represent the desired qualities of online examination system and provide a consistent set of criteria that must be considered when making design decision. Based on non-functionality requirement the following design goals will have to achieve design in order to qualify the system as successful. • Robustness:- the system has to be robust enough to manage any valid input from the user. • Reliability:- The system has to perform the online exam operation with no errors. • The website developed should be extremely reliable and secure so that information about question etc., is not leaked before the actual exam is held • Security: - the system security is one of the most important non-function requirements. • Availability:- • Student can take the exam during previously allotted time slots, however can open site any time to access other information. • The system should be able handle multiple user. • This system must runs on multiple operating systems. 5.4. Architecture of the System We use Three-tier architectures to design our system. Because 3-tierArchitecture increases performance, flexibility, maintainability, Reusability, and scalability while hiding the complexity of distributed processing from the users/clients. The data Layer maintains the applications data such as student data, instructor data, exam data . The middle layer (web/application server) implements the business logic, controller logic and presentation logic to control the interaction between the application’s clients and data. The controller logic processes client requests such as requests to view student’s result, to retrieve data from the database. The business logic dictates how clients can and cannot access application data and how applications process data. A web server is a program that runs on a network server (computer) to respond to HTTP requests. HTTP is the standard protocol for transfer data across the internet. The client layer is the applications user interface containing data entry forms and client side applications. It displays data to the user. The client layer interacts with the web/application server 28 to make requests and to retrieve data from the database. It then displays to the user the data retrieved from the server. 5.5. System Decomposition During subsystem decomposition of online exam, we divide the system into smaller subsystem with strong coherence. The different subsystems should have a lose coupling. The decomposition shows the existence of the following subsystem. • • User management subsystem Account management subsystem 29 • Transaction management subsystem • Storage subsystem • Database subsystem User management subsystem This subsystem responsible for managing different user of the system by taking care of login information of different users. It manages the username and passwords of all users of the system for security purpose. Operations provided by this subsystem are: • Create login() • Update login() • Login() Account management subsystem This subsystem is responsible for managing user account. It provides function for opening an account, updating an account and closing an account. Administrator is the only actor who communicates with this subsystem. This subsystem uses login services of the user management subsystem for authenticating the administrator and also uses the storage subsystem for storing accounts information. Operations provided by this subsystem are: • Login() • Change password() • Add department() • Delete department (). • Edit department() • Create account() • Update account () • • Delete /Create /Update courses(subject) () Close account () Transaction management subsystem 30 This subsystem responsible for managing the transaction. This provides all function for managing variety of transaction like exam details, question, answers, manage student group, result generation and any other thing. Actor of this subsystem is department. Operations provided by this subsystem are: • Create question() • Edit question() • Delete question() • Set time() • Change password() • Update mark of question and answers() Operations provided by the student in this subsystem are: • Choose exam() • Review answer() • See his/her exam mark() • Change password() The database subsystem This subsystem will be implemented by relational database management system used to store the persistent data. The storage subsystem This subsystem will encapsulate the database providing a common interface to other three high level subsystems. It is responsible for getting system related data from different subsystems and issuing DBMS specific calls for information storage and retrieval. 5.6. Hardware/Software mapping Online exam system will be a web-based for online users. The system will run over the windows operating system. The web server will run over wampServer and the programming languages used to developing this system are: HTML, CCS, JS and PHP. We have selected MYSQL as the database management system. 31 The online examination system consists of three independent components. This are : Web server ,online system server and database server. The following UML deployment diagram illustrates the hardware/software mapping for online examination system. 32 Figure Hardware software mapping 5.7. Persistent data management Persistent Data Management described the 33 persistent data stored by the system and the data management infrastructure required for it. The system will use the MYSQL database engine for storing data. This allows the data base to be easily integrated with and accessed by the rest of the system. The database will retain user information (ID No, name, email address etc.), event postings, advertisements and configuration data such as authorized administrator and department. Each of these items will be a separate table. An individual could not have more than one user account. I. Student information table Field Name Data Type Limits Id No Varchar 2-20 characters Name String 3-50 characters Email String 3-50 characters password String 8-30 Characters Format Description The student’s Id No The user’s name Letters ,Special The user’s symbol and spaces email address Any character The user’ password Letters and numbers Letters and spaces II. Question information table Field Name Data Type Limits Course String 2-20 characters code Name String 3-50 characters 34 Format Description Letters and numbers Letters and spaces Course code for question Course name for the question 5.8 . User interface design 5.9 . Interface design 35 36 6. Chapter 6: Implementation 6.1 Introduction 37 Implementation is the stage where the theoretical design is turned into a working system. The most crucial stage in achieving a new successful system and in giving confidence on the new system for the users that it will work efficiently and effectively. The system can be implemented only after thorough testing is done and if it is found to work according to the specification. It involves careful planning, investigation of the current system and its constraints on implementation, design of methods to achieve the change over and an evaluation of change over methods a part from planning. Two major tasks of preparing the implementation are education and training of the users and testing of the system.The more complex the system being implemented, the more involved will be the systems analysis and design effort required just for implementation. 6.2 Hard ware and software acquisition The implementation phase comprises of several activities. The required hardware and software acquisition is carried out. The system may require some software to be developed. For this, programs are written and tested. The user then changes over to his new fully tested system and the old system is discontinued. 7. Chapter 7: Testing 7.1 Introduction Testing is a process of executing a program with the intent of finding an error. Testing is a crucial element of software quality assurance and presents ultimate review of specification, design and coding. 38 System Testing is an important phase. Testing represents an interesting anomaly for the software. Thus a series of testing are performed for the proposed system before the system is ready for user acceptance testing. A good test case is one that has a high probability of finding an as undiscovered error. A successful test is one that uncovers an as undiscovered error. 7.2 Testing Objectives: 1. Testing is a process of executing a program with the intent of finding an error 2. A good test case is one that has a probability of finding an as yet undiscovered error. 3. A successful test is one that uncovers an undiscovered error 7.3 Testing Principles:1. All tests should be traceable to end user requirements 2. Tests should be planned long before testing begins 3. Testing should begin on a small scale and progress towards testing in large 4. Exhaustive testing is not possible 5. To be most effective testing should be conducted by a independent third party The primary objective for test case design is to derive a set of tests that has the highest lively hood for uncovering defects in software. To accomplish this objective two different categories of test case design techniques are used. They are 39 • White box testing. • Black box testing. 7.3.1 White-box testing: White box testing focus on the program control structure. Test cases are derived to ensure that all statements in the program have been executed at least once during testing and that all logical conditions have been executed. 7.3.2 Block-box testing: Black box testing is designed to validate functional requirements without regard to the internal workings of a program. Black box testing mainly focuses on the information domain of the software, deriving test cases by partitioning input and output in a manner that provides through test coverage. Incorrect and missing functions, interface errors, errors in data structures, error in functional logic are the errors falling in this category. 7.4 Testing strategies: A strategy for software testing must accommodate low-level tests that are necessary to verify that all small source code segments has been correctly implemented as well as high-level tests that validate major system functions against customer requirements. Testing fundamentals: Testing is a process of executing program with the intent of finding error. A good test case is one that has high probability of finding an undiscovered error. If testing is conducted successfully it uncovers the errors in the software. Testing cannot show the absence of defects, it can only show that software defects present. 40 7.5 Testing Information flow: Information flow for testing flows the pattern. Two class of input provided to test the process. The software configuration includes a software requirements specification, a design specification and source code. Test configuration includes test plan and test cases and test tools. Tests are conducted and all the results are evaluated. That is test results are compared with expected results. When erroneous data are uncovered, an error is implied and debugging commences. 7.5.1 Unit testing: Unit testing is essential for the verification of the code produced during the coding phase and hence the goal is to test the internal logic of the modules. Using the detailed design description as a guide, important paths are tested to uncover errors with in the boundary of the modules. These tests were carried out during the programming stage itself. All units of Vienna SQL were successfully tested. 7.5.2 Integration testing:Integration testing focuses on unit tested modules and build the program structure that is dictated by the design phase. 7.5.3 System testing: System testing tests the integration of each module in the system. It also tests to find discrepancies between the system and it’s original objective, current specification and system documentation. The primary concern is the compatibility of individual modules. Entire system is working properly or not will be tested here, and 41 specified path ODBC connection will correct or not, and giving output or not are tested here these verifications and validations are done by giving input values to the system and by comparing with expected output. Top-down testing implementing here. 7.5.4Acceptance Testing: This testing is done to verify the readiness of the system for the implementation. Acceptance testing begins when the system is complete. Its purpose is to provide the end user with the confidence that the system is ready for use. It involves planning and execution of functional tests, performance tests and stress tests in order to demonstrate that the implemented system satisfies its requirements. Tools to special importance during acceptance testing include: • Test coverage Analyzer: – records the control paths followed for each test case. • Timing Analyzer: – also called a profiler, reports the time spent in various regions of the code are areas to concentrate on to improve system performance. • Coding standards: – static analyzers and standard checkers are used to inspect code for deviations from standards and guidelines. 7.6 Test Cases: Test cases are derived to ensure that all statements in the program have been executed at least once during testing and that all logical conditions have been executed. 42 Using White-Box testing methods, the software engineer can drive test cases that • Guarantee that logical decisions on their true and false sides. • Exercise all logical decisions on their true and false sides. • Execute all loops at their boundaries and with in their operational bounds. • Exercise internal data structure to assure their validity. The test case specification for system testing has to be submitted for review before system testing commences. 8. Chapter 8 Conclusion and recommendation 8.1. Summary of Final product In this chapter we have seen that the overall concepts of the documentation of the project. 8.2 Conclusion The package was designed in such a way that future modifications can be done easily. The following conclusions can be deduced from the development of the project. • Automation of the entire system improves the efficiency • It provides a friendly graphical user interface which proves to be better when compared to the existing system. • It gives appropriate access to the authorized users depending on their permissions. • It effectively overcomes the delay in communications. • Updating of information becomes so easier. • System security, data security and reliability are the striking features. 43 • The System has adequate scope for modification in future if it is necessary. 8.3 Recommendation While doing this system the team members has faced different challenges. But by the cooperation of all the group members and the advisor the team is now able to reach to the final result. i.e. all the group members strongly fight these challenge and take the turn to the front. 9. Reference [1] Software Requirements Specification for project iTest, 2008 Specification for Problem Based Learning Module, Souman Mandal, 2010. [5] Software Design Specification (SDS) Acropolis Course Management System, 2011 [6] IEEE Recommended Practice for Software Requirements Specifications, Software Engineering Standards Committee of the IEEE Computer Society. 1998 [7] Software Requirements Specification for PPDP Contact Management System (CMS) [8] [11]Software Requirement Specifications, Online Examination system. 10. Appendix Definition of online examination system: Introduction: Online Examination System is a software application which allows a particular company or institute to arrange, conduct and manage any objective examination via online. Purpose: The purpose of this application is to conduct and process various types of certificate/noncertificate exams at different centers across any country via online. Features: 44 • • • • Any institute or company can register their various types of certificate/non-certificate programs and conduct an online examination for the same. Just register the programs, their fees (if paid) and the centers (where the exam will be conducted) in order to start the examination process. Questions and answers would be objective type and the format would be as per the company’s choice. User can select the company, its program, exam schedule and pay fees online in order to give his exam at the selected center. Advantages: • • • • Today, most of the companies or institutes are conducting their exams online to be a part of this fastest growing world. Online Examination System covers almost all type of problems faced by a company or institute while conducting online examinations. User can give any available exam at any available center as per his/her choice. The results of the online exam will help a company or institute to list out the outstanding exam takers all over the country. 45