学生选课管理系统分析报告.docx
《学生选课管理系统分析报告.docx》由会员分享,可在线阅读,更多相关《学生选课管理系统分析报告.docx(17页珍藏版)》请在冰豆网上搜索。
![学生选课管理系统分析报告.docx](https://file1.bdocx.com/fileroot1/2023-1/23/d3914655-c9c4-4947-b8c1-859ecc7e1d75/d3914655-c9c4-4947-b8c1-859ecc7e1d751.gif)
学生选课管理系统分析报告
学生选课管理系统
分析报告
一、背景介绍3
1、选题背景3
2、系统改进的必要性3
二、管理功能层次分析4
三、现有流程分析6
(-)现有业务流程6
(二)现有数据流程9
四、存在的问题12
(-)选课流程问题12
1、登录问题12
2、选课过程12
(二)选课系统信息不完备12
五、改进方案13
(-)业务流程优化13
(二)数据流程优化16
(三)系统信息完善18
(四)数据库设计19
1、实体关系图的概念设计19
2、实体关系图19
3、数据表文件的结构和说明21
六、可行性分析24
1、经济可行性分析24
2、技术可行性分析24
3、组织与管理可行性分析24
4、操作的可行性分析25
七、总结25
一、背景介绍
1、选题背景
教务处在正常运营中必须面对大量课程、学生信息以及两者间相互联系产生的选课信息。
如此繁杂的信息如果用人工的方式进行信息的采集与匹配,势必会在复杂繁多的数据中出现错误,而检查成本确是相当高昂的。
同时,教务处的管理效率也不会太高。
因此需要对课程资源、学生信息、选课信息、修改信息进行管理,及时了解各个环节中信息的变更,有利于管理效率的提高。
这也就是学生选课系统。
学生选课系统,分为三大模块:
学生模块,教师模块和管理员模块。
对于用户模块来说,分三个部分,首先学生用户可以通过输入账号密码在网上完成选课,查询课表并修改自己的信息;其次,教师用户在登录可以查看担任的课程,可以查看所选自己课程的学生信息。
而管理员模块,则可以添加、查询、修改、删除、查看所有学生和教师用户课程排布的信息,并且可以对其信息进行简单的管理。
该系统用于提高教务处的工作效率,有利于学校加速其实现教务信息化的进程,方便用户之间信息的交流,简化学生选课的流程。
2、系统改进的必要性
鉴于选课系统能提高管理机构的管理效率,也就是教务处的管理效率,同时也简化了学生的选课程序。
于教务处而言,管理和维护选课系统关系到其自身的效率,选课系统的繁杂,在一定程度上会相对的增加教务处的管理负担。
而选课系统并不是万能的,在学生选课过程中也会出现一些特殊情况,如专业课选不上,这些都只能通过和教务处协调来解决。
而这些问题的出现,也说明了我们现行的选课系统并不是特别完善的,需要对系统进行改进,从而减少出错的可能性。
对于学生而言,在实际生活但中有出现这样一种状况,有时候专业课选不上,有时候自己选课的时候明明是选了这门课,但是在期末的时候发现没有这门课。
这对于学生来说也是存在很大的风险的。
实际情况是有同学的体育课与必修课冲突,并列了时间,这可以视为是教务处信息出现错误。
信息匹配出现问题。
而对于教师来说,对于所选课程的学生的成绩录入是一个花费时间较长的工作,需要一个一个的录入。
这样发生意外的情况会多一些。
同样对教师的工作效率影响也挺大。
一些简单的问题,出现在学生、教师以及教务处之间,这也表明我们的选课系统仍然存在问题,也需要对其进行改进,山此提高教务处的工作管理效率,减少失误的发生。
以至于学生、教师以及教务处之间都能够达到最优化。
二、管理功能层次分析
教务处:
对学生、教师选课进行管理和统汁,及系统状态的查看、维护,并生成选课报表,排课报表。
所涉及的信息包括课程信息,教师信息以及学生信息。
根据教学任务,负责编制全校课表排课表,编制学分制班级课表,学分制各年级的排课、选课各项工作。
教师:
确认教学及自己的开课情况,学主选课情况,以及期末登记学生成绩等。
学生:
根据本人的学号和密码以及验证码登陆系统,进行相关操作。
可以核实自己的选课信息,查看教师教室、上课时间等课程信息以便选课,查看选课结果,个人课表等。
管理功能结构层次图
三.现有流程分析
(一)现有业务流程
第二轮选课:
第二轮选课
第三轮选课:
教务处
业务流程说明:
第一轮:
初选时每门课程无容量限制,选课的先后对结果无影响,当选课人数超过额定的容量时,系统将进行随机筛选。
同学们在初选结束后,关注自己所选课程的随机筛选结果,如果被筛选出去,就需要准备进行笫二轮选课。
第二轮:
系统将对初选报名人数超额的课程自动随机筛选,只保留讣划人数。
同学们可以在第二轮选课阶段查看筛选情况,被筛掉的同学按照先到先选的原则,选择其他未满员的课程,选满为止。
第三轮:
本轮为补、改选和跨专业选课,学生可对已选课程进行退选、补选;对全校各年级、各专业开放所有容量未选满的专业限选课,学生通过跨专业选课所选的课程学分均作为自山选修课学分。
(二)现有数据流程
数据流程图:
二层数据流程图
本专业选课信息
三层数据流程图第一轮选课管理系统处理
本专业选课信息
第一轮选课
>D1学生选课信息数据库
选课数据
三层数据流程图第二轮选课管理系统处理
第二轮选课
第一轮选
课信息・D2学生选课信息数据库
三层数据流程图第三轮选课管理系统处理
第一轮选课信息
其他专业选
P2.3.2
D3
—亠课信恩
字王地珠诣应数姑丿年►
跨专业选课
、课数据
▲
第二轮选课信,常
D
4
第三轮选课査询信息
学生数据
学生选课变动数据
►
P2.3.1
试听后退、选课
选课数据
学生选课信息任教信息数据库
反馈信息
数据流程图说明
学生选课数据流程图主要是将教务处排课、学生选课及选课信息查询等过程中所掌握的相应的数据进行处理的过程,绘制成一套完整的数据流程图。
学生选课管理系统需要实现的是将所有的山教务处输入的数据转换为学生与教师所需的数据信息,并将处理后的数据信息反馈给教务处。
现有的和改进后的学生选课管理系统数据流程图均主要分三个层次,分别为学生选课管理系统的顶层数据流层图,二层数据流程图,三层数据流程图。
学生选课管理系统顶层数据流程图主要是反映学生选课管理系统从运行环境,即教务处中取得经山系统匹配的本专业和其他专业选课信息的输入数据和为学生、教师提供选课的查询信息以及反馈给教务处的选课信息等输出数据。
笫二层数据流程图,需要对顶层数据流程图中“学生选课管理系统处理”这一操作进行分解,以得到更详细的系统处理过程。
。
第三层数据流程图,是对第二层学生选课数据流程图中每一轮选课系统处理的继续分解,提供选课信息数据流向的详细信息。
至此,学主选课管理系统的所有处理都基本明确,可以得到一套相对完整的分层的学生选课管理信息系统的数据流程图。
四、存在的问丿
(一)选课流程问题
1、登录问题
我校的选课分为三轮,第一轮和第三轮山于登陆时间分散的原因,不存在系统繁忙登陆不上的问题。
但在第二轮选课的开始,除了因上课无法及时抢课的同学,其余所有要抢课的学生儿乎同时登录教务管理系统,人数太多,服务器根本无法承受,就导致了所有人都无法登录,不断的刷新,不断地被提醒系统繁忙,即便侥幸登录进去,不久就会自动退出。
不仅系统崩溃,选课的同学也都很崩溃。
这也是我们学校选课系统中存在的最大的问题。
2、选课过程
首先,我们学校有三轮选课,在两个学期,时间战线拉的比较长。
其次,选课过程中操作比较繁琐,对于教务处已经安排了老师的必修课程,我们还是要选中提交,没有任何意义。
并且每一门课程需要选择是否预订教材,事实上,这跟我们实际有没有教材完全没有影响,这项设计完全是形同虚设,但在选课时,必须选中是或否才能提交。
这就很不合理。
(二)选课系统信息不完备
进入选课系统,每一门课程都有课程介绍和对应授课老师介绍的设置,但实际上课程介绍没有内容,老师介绍也都很简单,同学从中儿乎得不到什么有用的信息。
尤其对于选修课,从课程名称上只能了解大概的内容,但很多名称都太笼统,所包含内容非常宽泛,同学们根本无法了解具体会学习哪些方面。
还有一些选修课,大多数同学从课程名称里什么也得不到,不知道这门课是讲什么的。
因此,很多同学上了课之后才发现与想象当中大相径庭,有些并非兴趣所在,有些则非能力所擅长。
学生在选课过程中可能会出现必修课漏选的情况,系统并没有相应的提醒,也没有每个学期应选课程学分的参照比对,一些同学可能会因此没有选到课,带来
很多麻烦。
笫二轮选课管理系统
开学后第二轮选课
业务流程优化说明:
排队系统介绍:
进入选课系统之前,为确保服务器正常运转,将引入排队系统。
排队系统,是根据服务器承载能力,对超额访问进行限制的系统。
在访问人数超过服务器承载能力之后,发出登陆请求的用户将经过排队后才能进入服务器。
此时用户不能即刻进入选课系统,用户界面将显示用户在队伍中的位置(之前还有多少人),以及预计排队时间。
当已进入选课系统的用户退出以后,排队用户才可以进入系统。
已进入服务器的用户如果长时间没有响应,将踢出系统。
引入排队系统能在一定程度上减轻服务器压力,保证先进入系统的用户能正常使用系统一切可用功能。
缓解以往过多用户同时登录时系统崩溃,所有用户都无法使用系统的问题。
如此能大幅度提高服务器使用效率,保证系统在访问高峰期也能正常使用。
业务流程说明:
第一轮选课:
初选时必修课山教务处统一安排,学生登录系统确认是否有错。
如果有误反映至教务处。
选修课每门课程无容量限制,选课的先后对结果无影响,当选课人数超过额定的容量时,系统将进行随机筛选。
系统将对初选报名人数超额的课程自动随机筛选,只保留汁划人数。
学生在初选结束后,查看自己所选课程的随机筛选结果,如果被筛掉,准备进行笫二轮选课。
在第一轮选课结束后,学生仍可复查课程表。
系统也将选课结果反馈至教务处。
教务处根据系统数据以及学生反映情况在假期进行课程调整,增补或者缩减。
第二轮选课:
同样在进入选课系统之前,为确保服务器正常运转,将引入排队系统。
根据服务器承载能力进行限制访问。
后发出请求的用户将排队进入服务器。
已进入服务器的用户如果长时间没有响应,将踢出系统。
本轮在开学后进行,为跨专业选课以及选修课的抢选。
本轮按照先到先选的原则,学生选择未满员的课程,选满为止。
同时在试听过后,学生可对已选课程进行退选、补选。
并对全校各年级、各专业开放所有容量未选满的专业限选课,学生通过跨专业选课所选的课程学分均作为自山选修课学分。
按照先到先选的原则学生选择未满员的课程,选满为止。
(二)数据流程优化
二层数据流程图
三层数据流程图第一轮选课管理系统处理
改进后数据流程图说明:
改进后的数据流程图与现有的数据流程图的主要不同之处在于由三轮选课查询信息数据的输出改进为两轮选课查询信息数据输出。
改进前后的不同在顶层数据流程图体现为减少了流向学生的第三轮选课查询信息数据的输出。
第二层数据流程图的改进是将三轮选课系统处理融合、精简为两轮选课系统处理,并将笫三轮选课系统处理的其他专业选课信息数据的输入,选课查询信息的输出改进到笫二轮选课系统处理。
改进后的第三层数据流程图相较于改进前,在笫一轮山学生选课信息数据库流出的学生数据进一步细化为必修课固定数据、选修课变动数据,并对系统随机筛选后的数据进行系统处理,由教务处调整后再输出相应数据;第二轮增加了本专业抢选课处理后的数据反馈给教务处处理,酌情增减课程环节。
(三)系统信息完善
由于系统信息不完善给同学们带来了诸多不便,因此针对这个问题,我们也提出了改进方案。
1、课程介绍一定不能是形同虚设的,要介绍这门课会讲授的内容,有一个教学大纲,方便同学了解并做出选择。
2、对于老师的介绍,不能只有学历和现在的职位,还应该有老师擅长的领域,研究方向,科研项H等的介绍。
学生需要通过老师学习的不仅仅是课堂上讲授的知识,还应该有更多的课外知识。
3、选课结束后,系统自动生成如下表格,学生在选课之后进行信息核对,跟查询课程表同理。
己选课程核对表
课程名称
本学期应选学分
本学期已选学分
未选学分
是否选满
必修课
通识基础课
大学科基础课
专业必修课
专业方向课
实践环节课
选修课
通识核心课
通识选修课
自由选修课
体育项目
英语模块课
计算机应用模块课
公选课
跨专业选修课
(四)数据库设计
1、实体关系图的概念设计
在我们的数据库系统中共有6个实体:
学生、教师、管理员、专业、院系、课程。
(1)学生的属性:
学号、姓名、性别、生日、密码
(2)教师的属性:
工号、姓名、性别、生日、密码、职称
(3)管理员的属性:
工号、姓名、性别、生日、密码、权限标志
(4)专业的属性:
专业号码、专业名、辅导员、联系方式、专业介绍
(5)院系的属性:
系号码、系名称、系主任、联系方式、系介绍
(6)课程的属性:
课程号码、学时、学分、课程介绍
(7)控制设置属性:
选课控制、成绩录入控制
2、实体关系图
各个实体的E-R图如下所示:
然后,将以上实体之间联系表示出来,画出数据库系统的E-R图,如下:
3、数据表文件的结构和说明
3.1逻辑转换
根据E-R图可以将系统中的概念模型转换为具体的表(即关系)结构,共分为7
个关系,详细信息如下所示:
学生(学号、专业号码、姓名、性别、密码)
教师(教师工号、系号码、姓名、性别、密码、职称)管理员(管理员工号、姓名、性别、密码、权限标志)专业(专业号码、系号码、专业名、辅导员、联系方式、专业介绍)院系(系号码、系名称、系主任、联系方式、系介绍)
课程(课程号码、学时、学分、课程介绍)
选课信息(学号、课程号码、教师工号、成绩)
3.2数据表文件的结构和说明
为方便,根据上述文字描述,用英文简写为表和列取名,确定列的数据类型及必
要的约束规则,给出如下所示数据库表的基本结构及说明:
(1)学生信息表(tb_student)
列名
说明
数拯类型
约朿
StudentNum
学号
char(1O)
主码
MajorNum
专业号码char(10)
notnull引用tbmajor的外码
StudentName
姓名
varchar(10)Notnull
StudentSex
性别
char
(2)
notnull,取勢或女
StudentPassword
密码
varchar(20)notnull,
(2)教师信息表(tb_teacher)
列名
说明
数据类型
约朿
TeacherNum
教师工号
char(10)
主码
DeptNum
院系号码
char(10)
notnull,引用tbdept的外码
TeacherName
姓名
varchar(10)
notnull
TeacherSex
性别
char
(2)
notnull,取“男”或"女”
TeacherTitle
职称
varchar(20)
(3)管理员信息表(tb_manager)
列名说明1数据类型
约朿
ManagerNum
管理员工号|char(10)
主码
ManagerName
姓名|varchar(10)
notnull
ManagerSex
性别|char
(2)
notnull,取:
男域妆”
(4)专业信息表(tb_major)
列名
说明
数据类型
约束
MajorNum
专业号码
char(10)
主码
DeptNum
系号码
char(10)
notnull,引用tbdept的外码
MajorName
专业名
varchar(20)
notnul
MajorAssistant
辅导员
varchar(10)
notnull
MajorTel
联系方式
varchar(15)
notnull
(5)院系信息表(tb_dept)
列名
说明
数据类型
约束
DeptNum
系号码
char(10)
主码
DeptName
系夕1称
varchar(20)
notnull
DeptChairman
系主任
varchar(10)
[notnull
DeptTel
联系方式
varchar(15)
[notnull
DeptDesc
系介绍
text
[notnull
(6)课程信息表(tb_course)
列需
说明
数据类型
约束
CourseNum
课程号码
char(10)
主码
CourseName
课程名
varchar(20)
notnull
CourseCredit
学分
float
notnull
CourseClass
学时
smallint
notnull
CourseDesc
课程介绍
text
notnull
(7)选课信息表(tb_choose)
列名
说明
数据类型
约朿
StuCourselD
选课编号
int
主码,自动递增
StudentNum
学号
char(10)
notnulL引用tbstudent的外码
CourseNum
课程号码
char(10)
potnull,引用tbcourse的外码
TeacherNum
教师工号
char(10)
notnull,引用tbstudent的外码
Grade
成绩
smallint
(8)控制设置表(tb.ctrl)
列名
说明
数据类型
约束
IfTakeCourse
选课控制
char
(1)
notnull,取"0"或"1”
IflnputGrade
成绩永入控制
char
(1)
notnull,取9”或鋼”
备注:
选课和成绩录入功能的开放和禁止,0为禁止,1为开放。
六、可行性分析
原系统为正方教务管理系统的一个子系统一一学生选课系统,主要用于学校的学生选课管理。
通过使用该系统可以加强学校对学生选课的管理,实现学校学生选课管理的自动化、系统化、高效化。
提高学校的管理效率。
考虑到学校投入约束、改进系统成本等问题,我们针对原系统流程复杂、高峰期难以登陆等种种问题提出的修改意见,还需经过可行性分析。
1、经济可行性分析
解决登录难的问题,最简单直接的方式就是购买先进的服务器。
但这明显与预算要求不符合。
因此我们的改进方案以流程改进为主,对现有实物资源不做变动,旨在提高资源的运用效率。
同时改进系统不可避免的会造成人力成本的增加,因此我们的改进更多体现在对程序的优化,力求在最低成本限制内对系统进行尽可能有效的改进。
因此现今学校的系统开发的预算可以满足此次对该学生选课管理系统进行修改的投入。
2、技术可行性分析
本次改进只是针对流程设计的改进,技术上没有多大难度。
具体难度体现在对程序结构的优化以及功能顺序调整。
我们的改进引入了排队系统,不过该系统需要做的只是一个逻辑判断与信息反馈,属于难度不高的程序设计。
学校现有一批从事管理信息系统开发与维护的技术人员,并且我校还有计算机科学专业。
于此同时,据了解,现在为我校提供该教务系统的方正公司,也会根据用户的要求对此系统进行改进升级。
因此我校有能力在现有选课系统上加以改进,从而达到优化系统的LI的。
3、组织与管理可行性分析
管理信息系统是管理人员进行决策的辅助手段,原有系统流程的复朵性加大了管理的难度,在一定程度上降低了管理效率。
优化后的流程简单易操作,减轻了管理压力,组织起来也能收到更好的效果。
更重要的是改进后的系统解决了高峰期难以登陆的问题,并且使信息反馈路径更为清晰。
在一定程度上减少了因系统问题造成的选课问题,减轻了教务处人工操作量,提高了组织管理效率。
4、操作的可行性分析
该学生选课系统界面设计变得更加全面,内容增添要求比以往更高。
针对以往系统中标识不明的问题进行了优化,使界面更加易懂,给予用户的信息反馈更加清楚,在关键环节的提示更为到位。
优化第一轮选课时直接植入课表,同学无需再重复操作选择必修课,较少了操作步骤。
同时管理员管理更加方便,用户查询也很简单,丰富了学生的可使用性,也在很大程度上改进了操作的便利性。
从以上四点来看,我们小组对于选课系统的改进是切实可行的,并且可以提高系统效率,解决一直困扰同学的诸多问题。
使系统更加简洁、易于操作。
七、总结
此次作业我们运用了结构化的方法针对我校现有的管理信息系统的学生选课系统进行分析、改进与重新设计。
我校现行的学生选课分三轮进行。
第一轮选课,我们进行本专业可选必修和选修课程的预选。
笫二轮选课,选课人数超过选课容量的课程,系统将随机筛选,剩余课程最大容量的同学人数。
第三轮选课,是为期一星期的跨专业选课和试听后的退、选课。
我校选课系统相对比较完善,设计人性化,但仍存在第二轮选课时登录困难,程序繁琐,信息不完整等有待改进的问题。
针对登录困难问题,我们提出了引进排队系统的解决方案,在缓解系统登录压力的同时使同学们的选课更加公平,更加高效。
我校现行选课方案分三轮进行,程序繁琐,持续时间长,效率有待提高,对此,我们将选课过程融合后精简为两轮选课。
改进后,学生本专业的必修课程将山系统直接植入。
改进后的笫一轮选课为本专业选修课程的预选和系统随机筛选。
开学后进行第二轮的跨专业和选修课选课,选修课选课包括抢选和试听后的退、选课。
我校现有选课系统还存在信息不完整的问题。
学生应选、已选课程的性质和学分信息等欠缺,教师信息、课程介绍等信息不完整。
我们认为可通过在系统内建立一张反映学生每学期应选、已选课程的信息对照表,完善教师信息、课程介绍等来改善这一问题。
我们小组在完成这次作业过程中,积极讨论,明确分工,中间也遇到一些问题,但通过及时向老师进行请教,最终使之得以解决。
这次作业对我们来说是一个新的挑战。
在实践过程中我们发现没有真正动手做仅仅在课堂上的理解是不够的。
作业涉及的很多知识我们不熟悉,从头至尾遇到很多问题,但我们查阅了大量的资料及不断地修改之后,一份完整的报告才得以成形。
通过这次作业我们深刻的体会到做学问一定要严谨,无论是业务流程图的判断还是数据流程图的分层,每一个细节都要准确无误,否则可能失之毫厘差以千里。
虽然这次作业做的很辛苦,中间也遇到一些困难,但的确颇有收获。