大学生学科竞赛管理系统需求分析与设计

2020-06-01 11:15范烜豪刘彬胡进川刘祥
科学大众 2020年3期
关键词:信息系统

范烜豪 刘彬 胡进川 刘祥

摘   要:由于互联网的高速发展,国内竞赛管理系统平台应运而生,但因商业化运营需求,现有竞赛管理系统平台均以电子竞技赛事为主,商业化背景过强,对提高大学生创新与实践能力并没有多大帮助,反而容易造成游戏沉迷。因而建立一个公平、简洁、高效的竞赛系统并服务于大学生群体已成为当务之急。如今,大学生竞赛管理系统是对大学生竞赛管理最有效的方式之一,为解决大学生学科竞赛组织和管理的信息化问题,项目小组拟定结合JSP,CSS,JS技术和MySQL数据库及Servlet技术进行系统研发,以规范竞赛项目申报、过程管理等环节,提高工作效率。

关键词:信息系统;JSP;CSS;JS;MySQL;Servlet

1    项目背景及现状分析

1.1  项目背景

学科竞赛是衡量各大高校办学质量的重要指标之一,是考察大学生专业知识综合运用能力、团队合作能力、创新能力的重要手段,对推动学风建设、促进教育教学改革、促进大学生个性发展、培养应用型人才起着非常重要的作用。目前,攀枝花学院每年有包括计算机类、建筑类、艺术设计类、医学类等约90项各种类别各种等级的大学生学科竞赛,参赛学生逐年递增。由于不同学科竞赛组织方式不同,到目前为止,学校对于竞赛的管理还采用传统的人工管理的方式,虽然在某种程度上勉强可以适应现有需求,但存在的问题也越来越突出,主要表现为:从竞赛立项认定到竞赛成果申报,管理过程烦琐、信息传递不及时、管理人员工作量大且效率低;竞赛数据统计难,易漏易错;竞赛成果无法展示、不利于在师生中开展宣传。

1.2  国内外学科竞赛管理系统现状

在国外,大部分的学校已拥有一套较为完善的竞赛管理系统,或独立开发了适合自己学校需求的竞赛管理系统,可实现学生随时在线浏览竞赛信息,报名参加竞赛和提交作品等,主办方也能方便地发布和管理竞赛项目,工作效率得到了极大提高。在国内,高校大学生竞赛活动可以锻炼学生综合运用知识的能力及创新能力,国家相关部门也对此进行大力倡导并加大对相关活动的资金投入。随着这一类赛事规模和层次的发展,参赛范围变广。现在国内部分高校在竞赛组织管理的相关活动中还采用原始的纸质文档进行信息统计和归类,在一定程度上使相关工作变得烦琐且不利于信息统计。一些高校开发有相关的系统,但仅仅只是在线报名,没有网上展示成果的功能,也没有教师可以上传指导资料这些功能,系统的功能有限,需要完善。建立一个公平、简洁、高效的竞赛管理系统并服务于大学生群体已成为当务之急。

2    系统的总体设计

为了解决以上竞赛组织和管理的问题,结合攀枝花学院学科竞赛管理办法和本项目组所学专业知识,提出“大学生学科竞赛管理系统设计与实现”课题。拟定采用Java服务器页面(Java Server Pages,JSP)、层叠样式表(Cascading Style Sheets,CSS)、直译式脚本语言(Javascript,JS)做前端开发,MySQL作为本系统的数据库,后台用Servlet等技术实现,规范竞赛项目申报、过程管理等环节,提高工作效率。在具体的功能模块上,系统主要由以下3种模块组成,如图1所示。

(1)系统模块:主要是用户和管理员两种身份。用户经过注册得到账号,管理员身份则是由后台直接给出;用户和管理员都可以对自己的基本信息进行完善和修改,而且管理员还可以对用户进行管理。

(2)竞赛模块:对竞赛的增、删、改、查操作。用户拥有查找竞赛、报名竞赛、评价已经参加的竞赛、经过管理员审核可以创建竞赛等功能模块;管理员则拥有竞赛管理、竞赛发布、竞赛申报、竞赛过程管理、竞赛成果管理以及用户管理等功能。

(3)竞赛展示模块:对竞赛进行有效的展示,可对竞赛进行搜索。用户和管理员都可以查看竞赛的基本信息,还可以对竞赛进行关键字搜索和查询。

在数据库设计方面,研究团队为系统定义了用户和管理员权限,用户和管理员不同的角色对应的权限也不相同,用户以及管理员在系统界面上看到的也不相同,所操作的功能也不相同。

在系统功能设计方面,用户可以自行注册,管理员身份则是由后台创建;用户可以查看竞赛、申报竞赛、评价竞赛以及发布竞赛,用户发布竞赛要经过管理员审核后才可发布竞赛;管理员则拥有竞赛管理、竞赛发布、竞赛申报、竞赛过程管理、竞赛成果管理以及用户管理等功能。

3    系统的设计与实现

3.1  前期准备

系统开发前期主要搭建Java开发环境,Tomcat服务器,MySQL数据库。Java开发环境主要进行前后台的开发,Tomcat服务器为项目的发布打包到服务器上,方便可以远程操作,因为Tomcat服务器是一个免费的开放源代码的Web应用服务器,属于轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下普遍使用,所以是开发和调试JSP程序的首选。MySQL数据库对数据进行处理,方便前后端的数据交互。

3.2  实现

3.2.1  数据库设计

数据库的设计主要由MySQL完成,MySQL既能够作为一个单独的应用程序应用在客户端服务器网络环境中,也能够作为一个库而嵌入到其他的软件中。它是一种开放源代码的关系型数据库管理系统(Relational Database Management System,RDBMS),关系数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性;而且MySQL还支持AIX,FreeBSD,HP-UX,Linux,Mac OS,Novell Netware,OpenBSD,OS/2 Wrap,Solaris,Windows等多种操作系统;还能支持多线程,充分利用CPU资源。与其他的大型数据库例如Oracle,DB2,SQL Server等相比,MySQL自有其不足之处,由于MySQL是开放源码软件,因此可以大大降低总体的成本,更为方便。本系统共设计并创建了6个表,分别为user(用户信息表)、player(选手信息表)、race(竞赛信息表)、teacher(指导教师信息表)、team(参赛队伍信息表)、type表,对用户、参赛选手、教师发布的赛事、参赛队伍进行了数据管理,方便前后臺快速准确获取数据,并对数据进行处理。

3.2.2  前台设计

前台设计主要使用JSP,JSTL,CSS,JavaScript等技术进行实现,对前台的页面进行美化以及对前端与后台进行数据交互。JSP技术以Java语言作为脚本语言,为用户的超文本传输协议(Hyper Text Transport Protocol,HTTP)请求提供服务,并能与服务器上的其他Java程序共同处理复杂的业务需求。它具有模塊化的方式,简单、高效地添加动态网页内容,并且可以利用JavaBean和标签库技术复用常用的功能代码,而且继承了Java语言的相对易用性。本次设计采用的JavaScript对页面进行动态功能的添加,JavaScript作为轻量级的脚本语言,简单、高效,并且可以跨平台使用,所以采用JavaScript作为页面动态效果的开发语言。使用JSP进行view和controller进行数据间的传递,实现后台接收前台的数据请求,可以快速地实现前后台的数据交互。

3.2.3  后台实现

该系统使用原生的Java进行开发,再运用JavaWeb相关知识体系进行前台的开发和对后台进行交互。后台的结构如图2所示。

Controller层是控制层,从前台接收请求,再将请求发送给服务层进行逻辑处理,并与数据库进行数据交互,后面在通过json返回给前台。并且当Web服务器接收到一个HTTP请求时,它会先判断请求内容,如果是静态网页数据,Web服务器将会自行处理,然后产生响应信息;如果牵涉到动态数据,Web服务器会将请求转交给Servlet容器。此时Servlet容器会找到对应处理该请求的Servlet实例来处理这次请求,结果会送回Web服务器,再由Web服务器传回用户端。

4    结语

文章结合攀枝花学院的竞赛管理现状,提出了一种由Servlet技术完成的竞赛管理系统,通过该项目的有效实施,对完善攀枝花学院学科竞赛体系,规范竞赛项目的申报、立项、过程执行、总结、奖励等常规环节,提高工作效率,增强管理信息的即时性和信息的共享程度,实现竞赛管理工作无纸化、信息化、智能化有着十分重要的作用。

[参考文献]

[1]李炳乾.智慧型校园背景下学科竞赛系统的建设研究[J].吉林广播电视大学学报,2019(9):5-7.

[2]简国明,蔡润哲,林兴,等.高校学生学科竞赛管理平台的系统设计与实现[J].高师理科学刊,2018(5):43-46.

[3]彭杨丽,徐家喜,陈培培.基于Java EE学科竞赛管理系统的设计与实现[J].电脑知识与技术,2018(19):99-101.

[4]杨月奎.学科技能竞赛管理系统的研究和实现[J].科技经济导刊,2016(7):147.

[5]刘彬.攀枝花学院学术成果展示平台分析与设计[J].攀枝花学院学报,2019(2):74-77.

猜你喜欢
信息系统
基于信息系统的计量标准管理
基于项目化+翻转的物流信息系统课堂教学设计与实践
信息系统管理在社会中的应用
信息系统运行质量评估的研究与实现