学生选课系统的设计与实现--毕业设计(5)

2019-04-16 17:41

生),系统进行验证输入信息,查询用户信息表,如果正确,进入系统进行正常操作,进行排课,发布公告,修改信息(密码),最后退出;如果错误,则直接提示并退出系统。

以管理员为例,数据流图如图3-6。

验证失败系统管理员输入登录信息用户名,密码系统查询管验证通过理用户信息表进入系统退出用户名,密码管理用户信息表输入正确信息修改信息图3-6 管理员登陆数据流图

排课系统数据流分析:排课的数据以课程信息表,教室信息表,教师信息表,院系信息表的数据为基础,首先进行排课,将排课的结果进行冲突检测(主要检测:时间冲突,地点冲突等)。如果有冲突,则会重新进行排课,知道无冲突为止。若无冲突,则会更新排课表,并产生选课通知。排课数据流图如图3-7。

课程信息课程信息表排课结果对课程进行排课无冲突备份备份排课表备份检测排课冲突有冲突教室信息表教室占用信息院系名教师名院系信息表选课通知表排课表排课表教师信息表备份排课表图3-7 排课过程流程图

选课系统数据流分析:选课信息以排课表数据,选课通知表,教师返回表数据为基础进行查看,另外,当学生选择后,系统会对这门课程信息进行冲突检测,如果有冲突,则会选课失败,提示用户重新选课,如果没有则会更新学生选课表,提示成功。用户学生选课数据流图如图3-8。

16

新增选课信息退课排课表变化的选课信息学生选课表进行选课无冲突删除该选课信息选课通知表查询选课信息课程号教师返汇表冲突

图3-8 选课过程流程图

综上所述,得出学生选课管理系统的总体数据流图如图3-9。 选课结果选课排课结果与选课公告登陆信息学生学生选课表选课结果管理员返汇信息信息登陆课程表排课排课公告排课结果排课结果教师返汇表排课表返汇信息写返回排课结果与选课公告信息登陆信息教师排课结果选课公告图3-9 学生选课管理系统总体数据流图

3.4 功能模块分析

模块设计的主要方法是结构化方法,主导思想是以系统的逻辑功能设计和数据流关系为基础,采用“自顶向下,逐步求精”的设计方法,将本系统分解为功能明确,易于修改的模块结构。

模块划分如图3-10。

17

网上选课管理系统登录排课选课退出修改信息师根,据学身份生()管进理行员登,陆教对未排课课的课程进行排已排排课表备份排课表插入排课信息发布选课通知查看可选课程信息提交选课申请退课显示学生课程表图3-10 系统功能模块图 学生选课系统需要满足来自三方面的需求,学生、教师、管理员。

学生的需求是查询院系的课程、学生选课情况及学生信息的修改;教师对选课系统学生选课情况进行操作,同时形成学生选课查看确认;学生可以直接查看选课情况,学生可以根据本人学号和密码登录系统,还可以进行本人学科成绩情况的查询和维护部分个人信息。一般情况下,学生只应该查询和维护本人的选课情况和个人信息,若查询和维护其他学生的选课及成绩查询信息,就要知道其他学生的学号和密码。这些是很难得到的,特别是密码,所以不但满足了学生的要求,还保护了学生的个人隐私。

教师的需求是及时的获知排课信息,并且及时的将返汇信息交给管理员。 管理员的需求是可以正确的,合理的对现存课程进行排课,并且会备份产生的排课表,以备下次检测冲突时使用。排课后,会及时的将课程信息发布出去,通知同学对课程在规定的选课时段内进行选课。 教师与管理员的信息管理需求与学生类似,这里不再赘述。综上需求,可以将选课管理系统划分为三个模块,即登陆信息管理,排课信息管理,选课信息管理。

3.5 网络拓扑结构分析

网络拓扑结构图如图3-11。

18

应用服务器应用服务器数据库服务器数据库服务器图3-11 网络拓扑结构

具体分析:本系统是基于B/S模式的,严格上讲属于网站建设。所以本系统需

要有数据库服务器作为数据存储,应用服务器作为前台显示与数据中转。

3.6 安全性分析

随着Internet的发展,Web技术日新月异,人们已经不再满足于静态HTML技术,更多的是要求动态、交互的网络技术。继通用网关接口(CGI)之后,微软推出的IIS+ASP的解决方案作为一种典型的服务器端网页设计技术,被广泛应用在网上银行、电子商务、网上调查、网上查询、BBS、搜索引擎等各种互联网应用中。与此同时,SQL Server数据库作为微软推出的新一代大型数据库拥有数据遍历与查询速度较快,管理方便,具有较大的用户群体。本系统采用的是IIS + ASP + SQL Server,为当前主流模式。但是,该解决方案在为我们带来便捷的同时,也带来了严峻的安全问题。

在本系统中,主要是在登陆时用session验证,与数据库的安全访问来避免网络攻击。

程序设计中容易被忽视浏览器地址问题。ASP代码使用表单实现交互,而相应的内容会反映在浏览器的地址栏中,如果不采用适当的安全措施,只要记下这些内容,就可以绕过验证直接进入某一页面。例如在浏览器中敲入“...page.asp?x=1”,即可不经过表单页面直接进入满足“x=1”条件的页面。因此,在验证或注册页面中,我们采用了Session验证避免这种问题,如果当前用户的session不存在,程序会自动终止本次交互,防止了随意访问页面。 另外,SQL注入攻击也是网上极为常见的攻击方式,当用户输入信息后(主要是在登陆时),系统会根据已设定好的数据格式进行检测,如果不符合会提示用户重新输入。并且在利用合法数据进行查询或插入时,也会用参数格式转换(例如加单引号)防止输入数据包含关系表达式,以至于会造成数据泄漏。

19

第四章 系统统计

4.1 系统结构统计

根据上章的分析,可以知道本系统的数据流向为:用户界面输入数据,页面接收数据,页面处理数据,页面向后台发送数据,后台对数据进行处理,根据数据的格式区别生成SQL查询语句,对数据库进行操作,数据返回给用户。

由此可以得出,本系统的结构设计如图4-1。 用户浏览器视图(aspx)Action(JavaScript)Action(调用dll)业务逻辑接口数据操作图4-1 系统结构设计图 系统结构设计主要包括三层:表示层,业务逻辑层,持久层和数据库层。 表示层主要的任务是与用户接触,并可以对用户输入的数据进行一次初步的处理,使其格式适应业务逻辑层处理,包括前台JavaScript与后台页面dll;业务逻辑层主要的任务是对数据进行二次处理,并生成Sql操作语句,本系统主要的排课,选课算法也在其中;持久层的主要任务是根据业务逻辑层的数据对数据库进行操作,包括对数据库各个表的查询,修改,删除,添加操作。 数据库层的设计会在下面介绍。

4.2 数据库设计

学生选课管理系统的要求是要准确快捷地管理学生的信息。学生隶属班级,学院;学生需要有课程,学分,成绩,而这些又都要靠教师或者管理人员来添加。由此总结出如下需求信息:

20


学生选课系统的设计与实现--毕业设计(5).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:北京邮电大学数字信号处理习题答案第5章

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: