程序设计竞赛系统的设计及实现
详细信息    本馆镜像全文|  推荐本文 |  |   获取CNKI官网全文
摘要
程序设计竞赛系统是在互联网的基础上兴起的,随着WEB数据库技术的发展日趋成熟,国内的网络化竞赛正逐渐兴起。程序设计竞赛系统是一套基于B/S体系,采用数据库SQL Server和先进的J2EE技术开发的,以组织客观、公正、科学合理和竞赛为目的的标准化竞赛系统。该系统定位在基于网络的在线竞赛答题和排名管理系统,提供极其方便的创建大量问题的方法,这些发送到网上的内容可以是开放性的,使任何人都可以获得;也可以是保密的有严格限制,通过系统来限制参赛选手的使用功能,学习竞赛两相宜。本文介绍了基于J2EE技术利用struts和hibernate框架技术建立一个WEB程序设计竞赛系统的过程。内容简介如下:
     开发程序设计竞赛系统的背景、目的和意义,系统的设计思想,并对开发工具进行了介绍。
     从目前实际竞赛需求分析入手,阐述了系统应有的功能及系统结构分析。完成了数据库需求分析,概念结构设计,用详细的图表表达了事物之间的相互关系。
     完成了平台的系统设计,详细介绍了系统功能设计,系统的工作方式,系统的功能模块及系统的工作数据流。
     关键技术的研究部分阐述了在系统实现的过程中,如何保证系统的安全性、灵活性和可扩展性都是非常关键的问题。
     给出了系统WEB站点的建立与运行。
     最后阐述了系统测试的方法,测试的结果分析和解决办法。
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.
引文
[1].唐文胜,谭健.利用OLE自动化实现计算机无纸化考试系统中对WORD的有效评分.电脑与信息技术, 2000.
    [2].马莉.基于Internet远程考试系统[J ] .计算机工程与应用, 2001.
    [3].魏雅.基于网络的考试系统[J].中国科技信息.2005.
    [4].魏希三.B/S模式的网上考试系统中关键模块的设计及实现[J].福建电脑,2004.
    [5].裘琳玲,刘成斌.试论基于B/ S模式的上机考试系统.计算机与现代化, 2005.
    [6].周苏,王文编著.软件工程学教程[M] .北京:科学出版社,2002.
    [7].朱三元编著.软件工程技术概论[M].北京:科技出版社,2002.
    [8].周苏编著.软件工程及其应用[M].天津:天津科学技术出版社,1992.
    [9].神龙工作室.新编Dreamweaver MX 2004中文版入门与提高[M].人民邮电出版社,2004.
    [10].吕志宏,魏东开. Dreamweaver MX互动网页圣经[M].北京:电子工业出版社,2003.
    [11].Sun Microsystems. The Java Tutorial [J] . java sun com ,2003.
    [12].萨师煊,王珊主编.数据库系统概论[M].北京:高等教育出版社,2000.
    [13].黄铁英,华中平主编.数据库应用技术—SQL Server 2000简明教程[M].北京:中国水利水电出版社,2000.
    [14].Query Processing in Perallel Relational Database systes.IEEE Computer Society Press,1994.
    [15].刘耀儒.新概念SQL Server2000教程[M].北京:科海集团公司出品,2001.
    [16]. (美)伯伊恩斯(Buyens,J.). Web数据库开发学习指南[M].机械工业出版社,2002.
    [17].萨师煊,王珊.数据库系统概论[M].北京:高等教育出版社,1991.
    [18].闪四清.数据库系统原理与应用[M].北京:清华大学出版社,2001.
    [19].陈志泊,李冬梅,王春玲编.数据库原理及应用教程.人民邮电出版社. 2002.
    [20].李赫雄,许宏泰,唐家才. SQL Server 2000应用程序开发.北京:人民邮电出版社, 2001.
    [21]张海藩.软件工程[M].人民邮电出版社,2002.
    [22]阎宏. JAVA与模式[M] .北京:电子工业出版社,2002.
    [23]Shaw M, Garlan D. Software architecture: perspectives on an emerging discipline. Parentice Hall, 1996.
    [24]Jeff Garland Richard Anthony Large - Scale Software Architecture:APractical Guide Using UML,2003.
    [25]Bruce Eckel . Thinking of Java[M] . Beijing :China Machine Press , 2002.
    [26]张靓,顾慧敏. Java案例开发[M] .北京:中国水利水电出版社, 2005.
    [27]Joshua Bloch著,闻山等译. J ava高效编程指南[M] .北京:机械工业出版社,2002.
    [28]D Souza D,Wills A CObject,Components and Frameworks with UML;The Catalysis Approach Addison Wesley,Reading,MA,1999.
    [29]赛奎春,王国辉,牛强等. ASP工程应用与项目实践.北京:机械出版社, 2005.
    [30]赵增敏,张迪等编著. Dreamweaver MX动态网站设计[M].北京:机械工业出版社,2004.
    [31]邹婷,胡崧主编. Dream weaver MX 2004标准教程[M] .北京:中国青年出版社,2004.
    [32]张长富. JavaScript动态网页编程实例手册[M].海洋出版社,2005.
    [33]何东健.网页设计与Web编程[M].西安::西安交通大学出版社,2004.
    [34]肖孟强曲秀清编.软件工程—原理、方法与应用.中国水利水电出版社. 2005.
    [35]Wiley JohnSons ,Hung Quoc Nguyen. Test Planning for Internet2Based Systems[J] . Testing Applications on t he Web ,2000.
    [36]Holl and JH.Adaptationin Nature and Artificial Systems[M]1US:The University of Michigan Press ,1975.

© 2004-2018 中国地质图书馆版权所有 京ICP备05064691号 京公网安备11010802017129号

地址:北京市海淀区学院路29号 邮编:100083

电话:办公室:(+86 10)66554848;文献借阅、咨询服务、科技查新:66554700