陈梦圆+廖斌
摘 要:分析了教务处教师打分模块的优缺点,设计了一个为教师所喜爱的美化版打分显示界面,为维护人员提供一个改进和完善的样例。采用ASP.NET三层架构思想,在实现课程名称、任课教师、平时成绩、期末成绩查询基础上,给予教师更大的自由空间完成学生成绩的判定,更自由地设计平时与期末成绩的比例,并提供保存功能,便于对成绩进行修改。设定访问权限防止成绩被擅自修改,保证了系统的安全性和数据的可靠性。
关键词关键词:ASP.NET;教务系统;背景色;视图;数据集
DOIDOI:10.11907/rjdk.161690
中圖分类号:TP319
文献标识码:A 文章编号:1672-7800(2016)008-0101-03
0 引言
现代社会管理越来越系统化、网络化,大量的数据需要一种系统化、逻辑性强、操作简单、可批量处理的工具进行管理。学校每年的学生成绩录入是一项非常复杂且极易出错的工作。教务处的教务系统虽然使用多年,但仍然存在许多不足,如教务管理系统主页比较混乱,不方便用户使用;系统内某些页面的链接不能完全实现,一些功能未能真正提供方便;教师打分模块并发操作存在一些问题;系统不够简洁,用户不能直接使用操作。针对这些不足,本文进行了修改和完善,同时简化了操作,添加了许多人性化的设计[1],使用户体验感产生了质的飞跃。
1 ASP.NET三层架构思想
ASP.NET三层架构[2]自底向上分为数据访问层、业务逻辑层和表示层。数据访问层使用强类型的数据集,通过结构化查询SQL语句实现对数据表的查询、插入、更新、删除等操作。业务逻辑层是在数据访问层和表示层之间数据交换的媒介,按照系统业务需求来调用数据访问层中的数据集方法,并将各种业务规则集合到一个逻辑中。表示层是为客户提供用于交互的前端用户显示界面,帮助用户认识和定位应用服务,将业务逻辑层中传递的数据以美观、明了的方式呈现,主要由ASP.NET页面实现。上述三层架构如图1所示,下面基于三层架构对网页版教务系统设计与实现进行阐述。
2 教师打分模块设计
2.1 数据库设计
数据库是按照数据结构来组织、存储和管理数据的仓库。随着信息技术和市场的发展,特别是20世纪90年代以后,数据管理不再仅仅是存储和管理数据,而是转变成用户所需要的各种数据管理方式。数据库有多种类型,从最简单的存储各种数据的表格到海量数据存储的大型数据库系统,都得到了广泛的应用。
充分有效地管理和利用各类信息资源,是进行科学研究和决策管理的前提条件。数据库技术是管理信息系统、办公自动化系统、决策支持系统等各类信息系统的核心技术,是进行科学研究和决策管理的重要技术手段。一个应用系统没有数据库就不能称之为系统。数据库设计的好坏直接关系到应用系统的执行效率,包括数据的一致性和完整性。
设计数据库系统要充分了解用户各方面需求,包括现有的以及将来可能增加的需求。数据库设计步骤:①数据库需求分析;②数据库概念结构设计;③数据库逻辑结构设计。
通过对教务管理系统功能需求的分析,数据库管理要进行各种数据输入输出以及数据的修改,提供各类信息的添加、删除、修改和更新等功能[3-4]。主要有:①学生、教师、管理员、课程的基本信息;②学院、年级、班级等信息;③学生成绩信息;④学生选课信息;⑤教师课程信息;⑥成绩分析的相关信息。
本系统涉及较多数据,所以对数据的处理较为复杂。对数据的处理主要包括以下几个方面:①针对系统中使用的基本信息,设计了相关的基本表存放基本信息,例如:班级代码表、成绩比例表、公告表等;②对于一些临时使用的数据,改用视图来实现,简化用户操作,对机密数据提供安全保护,实现逻辑数据的独立性。本系统中设计的视图有:必修课视图、成绩单视图、课表视图等;③为了更好保证系统的安全性,采用了一些存储过程对数据库中的数据进行处理。使用存储过程减少了网络通信量,给用户提供了更加流畅的视觉效果和操作。
2.2 用户界面设计
主要功能在主界面上以大方块的形式展示,在每个页面中,都一个圆形下图标,点击展开,用户可以随意切换到任一界面(与教师功能模块有关的界面),方便教师用户使用。教师功能模块包含10个基本功能:
(1)查看与修改基本信息:教师可以修改姓名、性别、年龄、学院、职称以及个人简介等基本信息,还包括不能更改的信息,比如职工号等;维护更新自我信息,便于查看及学校登记管理。
(2)修改密码:分别有“原始密码”、“新密码”和“确认密码”文本框,只有原始密码正确并且两次输入的新密码一致时,才能更新密码。倘若用户忘记了原始密码,可以通过 “找回密码”来修改密码,完成密码修改不需要输入原始密码。
(3)打分功能:教师可以对学生的成绩进行录入。界面上有3个下拉框:选择课程、专业班级、打分比例。成绩分为平时成绩和考试成绩,计算总成绩时根据教师选择的打分比例进行最终总成绩计算。当输入平时成绩后,如果输入正确,焦点自动定位到同一行的第二个文本框,总成绩根据下拉框选择的打分比例自动计算出总成绩。否则,会弹出对话框提示“某同学的平时成绩输入错误,请重新输入”,并且焦点自动定位到出错的那个文本框;同理,当输入考试成绩后,如果输入正确,那么这个文本框失去焦点后,焦点自动定位到下一行的平时成绩文本框,同时根据同一行的两个文本框中的分数,按照打分比例自动计算出总成绩并显示在总成绩栏,否则,会弹出对话框提示“某同学的考试成绩输入错误,请重新输入”,并且焦点自动定位到出错的那个文本框。当输入完本页面的所有学生成绩后,才允许教师提交成绩。一旦提交,数据就不能修改。如果不是所有的成绩都输入完毕或者有学生的成绩输入错误,系统会禁止用户提交数据。当然,点击本页面的保存按钮,可以将数据保存到数据库中,下次还能再修改。当一个学生的总成绩不及格时,总成绩那一栏的背景颜色就会发生变化,而成绩合格者不会发生变化。
(4)查看成绩详细情况:查看成绩分为两个部分:①在打分界面直接查看分数。在这里可以看到每个班级的成绩情况。当教师点击提交按钮后,“提交按钮”和“保存按钮”就会自动消失,取而代之的是一个icon小图标,点击展开这个班这门课程的成绩情况,比如:最高分、最低分、平均分、过关率等;②在查看分数界面查看每门课的成绩分布。这里不是具体到每一个班,而是针对一门课程。在右边显示这门课程对应的成绩分布,比如:最高分、最低分、平均分、过关率等。当某同学的总成绩不及格时,该同学所在行的总成绩一栏背景颜色会更加显眼。通过查看学生的成绩分布情况,可以帮助教师了解学生的学习情况,制定教学计划,有针对性地进行辅导,从而提高学习成绩。
(5) 教师信息:在教师功能模块的每一个界面上都有教师基本信息。有的是直接展示,有的是鼠标滑过才会显示。
(6)查看某个学生的成绩:在打分模块,有一个输入学生学号的文本框,通过输入需要查找学生的学号,点击“just do it”按钮,在表格中就会将该学生突出显示:该学生所在一行的背景颜色发生变化,并且滚动条会自动定位到该学生;在查分模块[5],有一个输入学生姓名的文本框,通过输入需要查找学生的姓名,点击“搜索”按钮或者直接回车,就会查询到该学生,如果有多个学生的姓名是一样的,那么这些学生所在行的背景颜色都会发生变化。在这两个模块,点击撤销按钮,界面恢复,文本框清空,上次查找学生的背景颜色恢复原来的颜色。
(7)查看学生:在打分界面,将鼠标滑到学生姓名,可以查看对应学生的头像。教师可以根据学生在课堂上的表现从而评出该学生的平时成绩。
(8)查看课程:周课表和今日课表。周课表:以课程格子的形式展示教师这一周的课表;今日课表:根据计算机显示的星期,显示教师当天的课表。
(9)新闻公告:这个页面显示的是管理员发布到网上的一些新闻和公告。教师可以在这个页面看到一些关于本校的新闻,比如:各种讲座以及讲座的具体信息,本校发生的一些重大事件等信息。
(10)天气:这是一个直接连接到天气网的页面,用户可以点击查看各个城市的天气。
2.3 业务逻辑与数据访问设计
教师打分模块主要通过数据集的方式来绑定和获取数据源,采用了三级联动的方式,根据教师所执教的课程、执教的班级,显示该班所有选修了这门课的学生基本信息并提供打分功能,还可以根据学号来单独获取学生的基本信息并完成打分功能。
系统可通过修改平时成绩和期末成绩所占比例来计算最终成绩。在输入了平时成绩和期末成绩之后,还可以根据成绩所占比例批量得出学生的最终成绩。
在输入了成绩之后,为方便教师修改或提交,系统还提供了可以修改的保存按钮,和不可修改的提交按钮。在点击了保存按钮之后,会将成绩写进数据库,同时不改变为了区分保存和提交而设计的标志位。在点击了提交按钮之后,在将成绩写进数据库的同时,还会修改标志位为不可修改,即改成绩已经被锁死进了教务系统,不可再次修改,保证了成绩的安全性。
3 实验结果与分析
系统的软件开发环境:Window7、SQL Server 2008 r2、Visual Studio 2010、360浏览器、谷歌浏览器;系统的硬件开发环境:Intel Core i5及以上、4GB以上、最低20G硬盘空间。与其它教务系统中的打分模块相比,本文教师打分模块更加人性化,提供了搜索学生功能,可以查询学生的基本信息及课程信息,如果平时成绩和考试成绩占总成绩的比例改变还可以修改总成绩;可以批量计算学生的成绩并且采用背景色变换方式,当搜索到学生的时候,其背景色会发生改变。右下角的综合模块将该模块与别的模块联系得更加紧密,可以在不同的模块和功能之间相互切换。学生成绩可以保存,但在提交之后就不可修改,保证了学生成绩的安全性。系统主界面整体做了简化,由几个主要模块组成,整体整洁,给人一目了然的感觉。系统内的链接都能实现相应功能。因为采用了存储过程,所以整体速度变快,更加方便用户使用。
4 结语
针对高校教务系统教师打分模块存在的不完善和操作较为复杂的问题,采用了SQL 2008 R2作为数据平台进行了改进,功能更为完善,界面更加人性化。对部分数据进行了测试,表现良好。由于本文模块以自行设计的数据库为数据基础,仅在数据量较小的情况下进行了测试,如何提高该模块的兼容性以及面对大数据量时的适应性将是下阶段研究的重点。
参考文献:
[1]吴志祥.高级Web程序设计[M].北京:科学出版社,2013:60-67.
[2]杨亚菁.以项目实践为导向的ASP.NET课程层次化教学研究[J].软件导刊,2012(6):76-86.
[3]叶海智.基于微信的图书馆移动信息服务设计与实现[J].软件导刊,2013(5):71-72.
[4]邁耶.CSS权威指南[M].北京:中国电力出版社,2008(5):76-86.
[5]钱凌.一个基于本体和规则推理的查询系统的设计与实现[D].南京:东南大学,2006(9):58-61.
(责任编辑:杜能钢)