管 峰,陈 昌,张维多
(北京天文馆,北京 100044)
北京天文馆按有关要求,为进一步培养全民对天文知识的兴趣,普及全民天文知识,已完成多次天文知识竞赛活动,并取得有明显收益。因全民对天文知识的兴趣不断提升,原有的天文知识竞赛报名管理系统功能已不能满足当前需求,现拟重新建设一套天文知识竞赛报名管理系统,实现天文知识竞赛活动的报名管理、队伍管理、竞赛管理、资料汇总等功能[1]。该系统分为预赛、决赛和国际赛事报名管理模块。系统要求达到可视化界面设计风格简洁,布局合理,易操作,系统架构简单清晰,易扩展,功能完备。
笔者结合自己多年的经验,立足天文知识竞赛报名管理系统的需求,从整体架构和功能模块分析,详细阐述了天文知识竞赛报名管理系统的设计实现方法。
结合天文知识竞赛报名管理系统的需求,本系统应该包含预赛、决赛及国际赛模块,三个模块相互独立又相互联系。预赛和决赛分高低年级组,分别主要通过分数线来判定是否通过该级别的赛事;国际赛主要通过分数和年龄来共同判定是否能够参赛。整体结构如图1所示。
由图1可知,学生通过用户注册后参加预赛部分,老师在决赛报名阶段进行注册后与学生组队参加决赛。通过预赛的学生可以参加决赛,通过决赛的学生由北京天文馆带队参加国际赛事。系统管理员具有系统最高权限,可以在整个报名管理过程中获取报名信息,协调和管理整个报名过程[2]。
图1 报名管理系统整体结构图
整个报名管理系统主要分为用户注册登录模块、普通用户模块(学生和老师)和系统管理员模块。
2.1.1 用户注册模块
老师和学生参加竞赛都需要提前注册,学生在参加预赛前进行注册,而老师在决赛前进行注册。
1) 用户注册时,需要填入用户名、姓名、身份证或港澳台证、手机号以及邮箱,并设置登录密码。
2) 系统对用户名的重复性进行查重校验,确保用户名的唯一性。
3) 系统对身份证或港澳台证号码进行正确性和合法性校验,确保证件号码的正确性[3]。
4) 系统对手机号码的位数进行校验,确保手机号的正确性。
5) 系统对邮箱的格式进行校验,确保邮箱格式的正确性。
6) 设置登录密码,字母+数字,字母大小写结合,保证密码的安全度。
7) 当以上1-5条系统都校验通过,密码设置符合要求,用户注册成功。
2.1.2 忘记密码模块
1) 用户登录系统时发现忘记了密码,可以点击“忘记密码”,通过手机号码或邮箱进行验证,找回密码。
2) 用户通过手机号码验证找回密码:点忘记密码,输入手机号码或用户名,点击发送验证码,输入验证码,重置密码[4]。
3) 用户通过邮箱验证找回密码:点忘记密码,输入邮箱名称,点击发送验证码,验证码发送到邮箱,输入验证码,重置密码。
4) 若手机号和邮箱验证错误时,系统弹出对话框:“联系组委会”。
2.1.3 用户登录模块
用户可以使用用户名、手机号码或者邮箱名,预设的登录密码进行系统登录。用户登录成功后,进入个人管理页面。
普通用户功能贯穿预赛、决赛和国际赛事三个阶段,主要包含以下几个功能模块。
2.2.1 个人中心
支持用户修改手机号、邮箱、登录密码,成绩查询和公告信息等信息。
2.2.2 预赛报名模块
学生预赛报名,填报报名信息。仅学生身份用户可进行预赛报名。报名信息模块需要填写学校所在省/直辖市+区县、学校名称、年级以及学校地址。学校所在省/直辖市+区县通过下拉菜单的方式实现。学校名称通过手动填写。年级分为初一至初三,高一至高三,通过下拉菜单的方式实现[5]。学校地址通过手动填写。
以上信息填写完毕后,点击提交,报名成功,按照时间顺序生成了4位报名次序和10位考号,考号组成:年份(4位)+考试所在地(2位)+报名次序(4位)。报名成功生成准考证信息,支持用户打印准考证。用户可查看报名情况以及准考证信息。
2.2.3 成绩查询
学生登录系统可查看(初赛、决赛)考试成绩,以及是否通过。
2.2.4 决赛报名模块
决赛部分支持老师报名和学生报名。
管理员在预赛成绩出来后进行决赛分数线的划定,管理员也有自由分配考生是否可以入围决赛的权利。
老师报名时需要注册个人信息,注册方法同学生参加预赛注册。老师需要输入学校信息。老师报名成功后可创建队伍,创建队伍时需要输入队名、组队单位等信息。老师可以对队伍的队员进行管理,支持邀请学生或其他老师入队。
学生报名支持选择自行参赛或接受邀请入队参赛。报名截至日期到期,既没有选择自行参赛也没接受邀请入队的学生视为弃权。自行参赛的学生由管理员分配加入北京天文馆的队伍。学生可查看已加入的队伍信息。
报名成功的老师和学生可以录入行程信息。包括到达方式(火车、飞机、大巴、其他)、到达时间+航班号/车次、离开时间+航班号/车次。报名成功的老师和学生,可以查看准考证信息,并打印准考证。组队完成生成各个队伍PDF信息,可每年编辑。
2.2.5 国际奥赛报名
决赛通过并且符合年龄筛选的学生可以报名参加次年的国际比赛。系统管理员首先给出决赛通过分数线,根据分数线初筛考生,再者,管理员给出参加国际赛事的年龄上限,根据考生生日判定高年组或低年组。接着,通过下拉菜单的形式选择OAA、IAO、APAO,输入护照号和护照有效日期。国际赛事由北京天文馆带队参加。
系统管理员区别于普通用户,具有最高权限,在整个报名管理阶段起着协调作用。主要具有成绩导入、设定分数线、考生和老师信息的导出等权限。
1) 成绩导入。将Excel文件的考试成绩导入系统。
2) 设定分数线(初赛、决赛)。
3) 系统根据管理员设定的初赛分数线,自动判别学生是否进入决赛。
4) 考生导出。支持将系统中报名成功的学生、老师进行Excel文件导出。
5) 管理员具有调整学生是否进入决赛的权限。
6) 管理员具有审核老师组队的功能。
7) 对自行参赛的学生管理员可以分配加入队伍,并可自由调剂队伍成员。
8) 设定年龄范围筛选学生。在国际赛事报名阶段,在通过分数线的考生基础上,设定参赛年龄上限进行筛选入围考生。
9) 生成和获取每个参加国际赛事的学生的确认函,可编辑。
10) 可以获取考生在预赛、决赛和国际赛事报名成功后的大表(包含考生姓名、考号、护照号、护照有效期、高年组或低年组、报名何种考试、年份)。
综上所示,通过对天文知识竞赛报名管理系统各个模块的详细阐述,充分展示了该报名管理系统的各项功能。该系统的所有功能基本上满足了现有条件对天文知识竞赛报名管理的要求,可以在一定程度上提高组委会组织赛事的效率,提升天文知识竞赛报名的智能化和自动化程度。