节点文献

程序设计竞赛系统的设计及实现

Design and Implementation of Programming Contest System

【作者】 李丽新

【导师】 刘磊;

【作者基本信息】 吉林大学 , 软件工程, 2008, 硕士

【摘要】 程序设计竞赛系统是在互联网的基础上兴起的,随着WEB数据库技术的发展日趋成熟,国内的网络化竞赛正逐渐兴起。程序设计竞赛系统是一套基于B/S体系,采用数据库SQL Server和先进的J2EE技术开发的,以组织客观、公正、科学合理和竞赛为目的的标准化竞赛系统。该系统定位在基于网络的在线竞赛答题和排名管理系统,提供极其方便的创建大量问题的方法,这些发送到网上的内容可以是开放性的,使任何人都可以获得;也可以是保密的有严格限制,通过系统来限制参赛选手的使用功能,学习竞赛两相宜。本文介绍了基于J2EE技术利用struts和hibernate框架技术建立一个WEB程序设计竞赛系统的过程。内容简介如下:开发程序设计竞赛系统的背景、目的和意义,系统的设计思想,并对开发工具进行了介绍。从目前实际竞赛需求分析入手,阐述了系统应有的功能及系统结构分析。完成了数据库需求分析,概念结构设计,用详细的图表表达了事物之间的相互关系。完成了平台的系统设计,详细介绍了系统功能设计,系统的工作方式,系统的功能模块及系统的工作数据流。关键技术的研究部分阐述了在系统实现的过程中,如何保证系统的安全性、灵活性和可扩展性都是非常关键的问题。给出了系统WEB站点的建立与运行。最后阐述了系统测试的方法,测试的结果分析和解决办法。

【Abstract】 In recent years, as Internet technology advanced, online examination and contest system has become one of the most active areas in network research and application. In developed countries, the system has been widely adopted and has become the integral part of the modern education. It is ideal for personalized learning experiences. Domestically, online examination and contest system is still in its infancy. Traditional way of examination is no longer apt to the development of modern education, and as a result, it becomes an important and urgent task to develop an examination and contest system which fits our unique educational requirement. At present, Internet technology grows rapidly worldwide, and people pay more and more attention to online applications. Web-based examination and contest system was born under this circumstance. Although traditional way of examination is still widely used, web-based applications are gaining recognition and popularity, the birth of online examination system that serves as an integral part of the educational system is at dawn. For a long time, this system has not been widely adopted due to the limitation of technology and specific requirements of examination by itself. We have done an extensive and in-depth research on above-mentioned aspects, including the composition of online examination and contest system, the operational mechanism, applied technology and implementation. Here we describe in details on the system development methodology, overall planning, design goal and implementation, strives to improve and perfect the online examination and contest system.Programming Contest system is based on B/S architecture. It is developed using SQL Server and advanced J2EE technology. The goal is to organize objective, fair and scientifically sound standard contest system. The system is web-based online question/answer and ranking management system. It provides extremely convenient way to generate a large number of questions and answers. These online contents can be open, so anybody can access it, or system’s functionality can be strictly restricted for the contenders. The system is oriented for both learning and contest. This article elaborates the system in the following aspects:1. Background, specific aim, system design and development tools used. As computer technology advancing, people need more than ever a system which meets the need for programming contest. It should enable contestant to compete together and grade them too. This system is designed to meet these needs.2. The article elaborated the functional and structural requirement for current contest system. The article completed the database requirement analysis, conceptual structure design, using ERD diagrams to illustrate the relationships between entities. In the process of designing the system, we divided the system to several modules, trying to assign only one function per module, inter-module communication was done through parameter passing. The main functionality of the system was focused on contestant’s programming design section, and the scale needs to be expanded. The system provided contestants convenient, fast and efficient operational function, allowing contestants to demonstrate their true skills, moreover, it is also responsive and fast, such as in the applications of user login, source code submission and ranking system searching etc.3. The article completed the platform’s system design, and illustrated in detail on system functional design, the system workflow, system functional module and system data flow.4. In the key technology research section, the article demonstrated how to guarantee the system security, flexibility and scalability. The system utilized login encryption technology to improve system security. Furthermore, based on the extensive analysis of the access strategy for permanent storage data, we designed and implemented lightweight DAO (Data Access Object) patter and J2EE framework.5. This article also discussed web site deployment and its operation.6. Lastly, the article discussed testing methodology and testing result analysis. The final stage of the system design is the system testing and evaluation stage. The task of testing is to discover and eliminate bugs produced during requirement analysis, design and coding stages so as to produce a functional product. The task of evaluation is to ensure the system meet customer’s function specification, making sure the system has good performance and ease of maintenance and upgrade. In the test process, we used unit test, integrated test and validation test, respectively. The system implemented most expected functions, but there are still flaws. During testing process, we have used as many appropriate test cases as possible, testing thoroughly on important logic paths and data structure. However, no mater we used white box testing or black box testing, it is impossible to do full code coverage testing, because one small subset in the logical path can produce a large amount of test data, which made it impossible under test environment.In order to help readers understand the system design process, this thesis has incorporated numbered diagrams with detailed illustration and explanation.This article firstly introduced the background and significance of the research, summarized domestic research findings on examination and contest system, demonstrated system design and contest workflow etc..; secondly, the article analyzed and designed individual subsystem; finally, the article showed implementation of the examination and contest system. Due to the time and resource limitation, the author’s research on the subject is still incomplete, a few areas of system design and development remain to be addressed:1. To further strengthen the systemic capability on automatic evaluation, e.g. using Artificial Intelligence to improve the accuracy of the grading system.2. Using Artificial Intelligence, Data Mining and neural network knowledge to improve the smart statistical analysis module.3. Further research on knowledge point structure system. The examination and contest system uses layer to model the knowledge point system structure. But in real world, the knowledge point system is more complex. How we can use net to model the knowledge point and how we use net knowledge point system in evaluation system are directions for further research.

【关键词】 程序设计竞赛B/SJ2EEStrutsHibernateSQL Server
【Key words】 Programming ContestB/SJ2EEStrutsHibernateSQL Server
  • 【网络出版投稿人】 吉林大学
  • 【网络出版年期】2009年 07期
节点文献中: 

本文链接的文献网络图示:

本文的引文网络