Font Size: a A A

Design And Implementation For On-line Test System Of C Language

Posted on:2010-10-12Degree:MasterType:Thesis
Country:ChinaCandidate:J X WangFull Text:PDF
GTID:2178360302466010Subject:Software engineering
Abstract/Summary:PDF Full Text Request
In view of the urgent demand to C language on-line test system in our institute, I designed a C language on-line test and automatically scoring system in combination with the specific lab environment and former procedure of the on-line test in our college. The purpose of the test system is aiming to reduce the grading workload and improve the objectivity and justness.My paper is going to analyze from the following aspects:1. Setting of the aim of systemConforming to the lab environment and the procedures and regulations of online test, system's functions are defined:(1) system is able to download examination questions to clients automatically;(2) system can upload examination questions to servers automatically;(3) system can identify and grade the files uploading by students automatically;(4) system is able to create a EXCLE based on students'score;In system design, it discusses the basis for system development and category of functional modularity. Firstly, it has to make sure that examination questions are blank completion and programming. Secondly, it describes the specific environment of lab. These are the basis of procedure development of client and prevention of cheating. Lastly, it divides the system into two sub-procedure which are independent formally but integrative logically, which operates according to clients and servers.3. the realization of clientClient will achieve three functions which are downloading examination questions, help students for downloading Visual C++ 6.0 and uploading candidates'files. This system features in its logging function. For simplifying students'operations, only student ID, name and table number are necessary to input for logging. It requires a complicated design. During programming, some accidental situations have to be considered besides normal ones particularly for the system which is going to be practiced. It needs a comprehensive consideration. For students'convenient, only student ID, name and table number are required, but it is possible students input some unreal names, student ID as well as table numbers. I design that each one is allowed to submit once even restarting computer in order to the problems discussed above. The solving way is the system obtains the clients'IP as long as it logs on and submits relevant files to FTP server as well as creating a file in FTP server naming by the clients'IP. Therefore, the system of client is going to verdict the submissions if it has a file naming by the client IP in FTP server when it submits. It will refuse the submission if the file doesn't exist. Winsock is the control to get local IP at logging interface. It regulates that student has to input their real name and student ID, or there is no grade; helps students downloading Visual C++ 6.0 which realized by transferring Shell function; connects FTP, uploads and downloads examination questions which achieved by windows api function.4. the realization of grading procedure.Grading procedure is the spirit of C language system. The theory is: it adopts static grading for blank completion, which is comparatively easy. For programming, system combines comparison of outdat's result and static grading. In general, system will check exe when programming grading is operating. It compares the content of generated outdat and the content of standard outdat. It will transform into the static grading if exe doesn't exist or it is impossible to generate exe, i.e., comparing the key words of the contents. It is also going to transform into the static grading if the content in outdat is not in tune with standard"out.dat". System will grade according to a comprehensive conditions. With regard to programming grading, all test system has the same procedure which is comparison of destination files. I made a sophisticated design on this issue. Students are opportunistic in processing programming. The first one is the programming is generated in client in the light of questions and the content of"in.dat"files and revised the content in"out.dat"files. System considers this situation by operating the exe file in students'files instead of comparison between"out.dat"in candidate's file and standard"out.dat"file.What's more, exe will operate server's"in.dat"file which has a different content with client's"in.dat". It avoid students opportunistic behavior to some extent. The second problem is that student might figure out to get a generated exe file by trickery, such as only setting"return 0;"in subfunction. It is possible to generate exe, and the"out.dat"coming from this exe is definitely wrong. However, system is still going to give a reasonable grade.The following part of my paper describes how to grade in blank completion and programming. This is discussed by several teachers and I especially in programming grading which is in tune with the students'characteristics of our college.The advantage of this system is, from the perspective of grading, grading normal programming in a short time to reach the aim of teachers'grading which is similar to the effect of manual work. Moreover, it is convenient to put into practice under the frame of C-S of lab. Because this system is designed for practice, users have no chance to get the result by trickery in every step of system. From the facet of perfection of system's function, it still has deficiencies comparing to other similar systems. Some systems give feedback to students such as the position of error code which is the main deficiency of my system. Besides, this system needs manual operation like input of answers and setting up of FTP server which I will perfect in the future teaching and researching.
Keywords/Search Tags:test system, automatic grading, C language
PDF Full Text Request
Related items