史文丽 郭萌萌
摘 要:国际大学生程序设计大赛是由美国计算机协会主办的,一项旨在展示大学生创新能力,团队精神和在压力下编写程序、分析和解决问题的年度竞赛。系统有自己的题库,所有的题目均为竞赛题目。学生可以通过查看题目列表,选择要练习的题目,并且提交自己的代码,系统判断代码正误后及时反馈结果。为了使学生能在比赛中更好的发挥,系统提供举办比赛的模块,整个过程模仿实际比赛的流程。
关键词:程序设计大赛;在线判题
1 绪论
1.1 课题研究的背景
国际大学生程序设计大赛是由美国计算机协会主办的,一项旨在展示大学生创新能力,团队精神和在压力下编写程序、分析和解决问题的年度竞赛。经过近年的发展,已经成为最具影响力的大学生计算机竞赛。体现到我校主要是一年一度的河南省大学生程序设计竞赛和校级计算机大赛及各种相关程序设计大赛。黄淮学院在线判题系统旨在提供一个专业的平台。方便学生练习比赛题目,举办程序设计比赛,辅助相关专业老师教学。
1.2 研究目的和意义
一个专业的在线判题系统为学生提供了一个更好的平台来学习并且提高算法知识。近几年学校越来越重视学生的专业能力,支持,鼓励学生参加省内外各种专业的程序设计大赛。这些比赛一般有类似的题目形式,比赛流程,黄淮学院在线判题系统的实现完全符合这种题目形式以及比赛流程。从而更加方便的为学生提供练习的方式,更加简单的进行在线比赛,而且可以融入相关专业的教学中去。所以更好的利用该系统可以正真意义的帮助我们的学生学习和提高算法知识。主要研究内容本系统通过对国际大学生程序设计大赛的分析并且结合我校情况提出需求设计。系统考虑到以后可能有更多的功能扩展,深度整合自定义系统架构,从而实现高内聚、低耦合、易扩展的模块化开发。
2 功能介绍
2.1 需求分析用户模块需求
功能:注册,登录,退出,忘记密码,添加用户,查看用户,修改。
用户说明:用户不再区分普通用户和管理员题目。
2.2 模块需求
功能:添加题目,修改题目,查看题目列表,查看题目详情,上传测试数据,查看测试数据,删除测试数据,提交。
查看运行记录说明:部分功能分为普通接口和管理接口。
2.3 比赛模块需求
功能:添加比赛,修改比赛,查看比赛列表,配置比赛题目,查看比赛题目说明:部分功能分为普通接口和管理接口需求用例分析权限模块用例如图1所示。
3 详细设计与实现(部分图)
图查看题目信息顺序图提交题目的顺序图,如图2所示:图交题目顺序图。
4 总结
使用面向对象的方法指导软件开发,具体使用用例图进行面向对象需求分析,使用类图、等面向对象建模工具进行面向对象设计和面向对象的表达。虽然系统目前测试情况良好,基本功能齐全,但是仍然有很多不足之处,需要在今后做更进一步的完善。我会继续努力,将毕业设计遇到的难题带到工作中,在以后的工作中继续进取,不断丰富自己的专业素养。
[参考文献]
[1]高红岩.Struts实用开发指南[M].北京:科学出版 社,2007:3-4.
[2]郑阿奇.J2EE应用实践教程[M].北京:电子工业出 版社,2009:23.
[3]郦文华,姚健,焦建栋,等.运用J2EE框架技术构建公共卫生信息平台[J].计算机技术与发展,2008,18(12):193—196.