网上选课系统 2.docx
《网上选课系统 2.docx》由会员分享,可在线阅读,更多相关《网上选课系统 2.docx(15页珍藏版)》请在冰豆网上搜索。
网上选课系统2
信息系统分析与设计
课程题目:
网上选课系统
姓名:
专业:
班级:
学号:
指导老师:
摘要
随着在校大学生人数的不断增加,教务系统的数据量也不断的上涨。
针对学生选课这一环节,本系统从学生网上自主选课以及教师的课程发布两个大方面进行了设计,基本实现了学生的在线信息查询、选课功能以及教师对课程信息发布的管理等功能,另外也初步解决了教师在课程信息发布管理上的权限问题。
本程序后台由SQLServer数据库支持,通过使用ASP语言实现动态网页的效果,达到对数据库的操作以完成使用者的要求。
关键字:
选课、课程信息发布、权限、SQLServer、ASP
目录
摘要2
一、设计的可行性4
1.1网上选课系统的产生4
1.2可行性分析4
二、系统概述5
2.1系统基本功能描述5
2.2系统需求分析5
三、系统总体设计6
3.1系统结构设计6
3.2功能概要设计7
3.3数据库设计9
3.3.1数据库概念结构设计9
3.3.2数据库逻辑结构设计10
3.3.4物理结构设计13
四、系统详细设计13
4.1系统各模块功能设计13
4.2系统各模块功能说明:
15
4.3选课模块程序流程图16
五、总结18
六、参考文献18
一、设计的可行性
1.1网上选课系统的产生
网上选课系统是针对在校学生和教师使用,从学生的角度来说,由于学校教学制度的改革,现在大部分高等院校开始实行的是学生的自主选课模式,传统的教学模式(学生按照学生安排好的课程上课)已经不能适应新型的教学手段,如果仍然通过纸上的方式选课,一方面浪费的大量的人力、物力资源,另一方面浪费时间以及人为的统计过程中不可避免出现的差错等情况。
随着高校人数的增多,这种弊端会越来越多的暴露出来。
因此,利用网络,使学生只要在计算机前输入自己的个人选课信息即可完成原来几倍的作业量。
从教师的角度来说,同样是节省了大量的工作量,由于教师提出代课申请完成课程发布的工作较学生选课而言更加的复杂,因此通过网上进行课程发布能大幅度的减少教师的工作量,减少错误的发生几率。
作为教师,也只要通过自己的电脑来操作即可,不用再奔波于教务处和办公室之间。
1.2可行性分析
本系统的可行性分析包括以下几个方面的内容:
1.技术可行性。
由于校园网络的普遍应用,使得网上选课非常的方便,无需再进行网络的建设。
基于B/S模式的选课系统更加适合校园网,学生可以在校园网的任何地方完成选课过程
SQLServer数据库可以开发出实用、简便、高效的基于网络的信息管理系统。
2.经济可行性
校园网已经普及,因此在网络设备上不需要进行大的投入。
加之,B/S模式的系统只要求客户端具备浏览器的基本功能,就能实现网上选课。
因此在校园的计算机实验室,公共机房、宿舍、图书馆,无需安装软件,即可实现网上的选课功能。
因此,从经济上来说,开发网上选课不需要很大的投入,硬件上只需Web服务器和数据库服务器即可。
3.操作可行性。
B/S模式的最大优势就是操作方便、如同浏览网页一样。
综上所述,网上选课系统在高校中是可行的。
二、系统概述
2.1系统基本功能描述
网上选课系统是根据大学的选修课的网上申请和管理需求而进行设计的,目的是实现选修课的网上设置、申请功能。
根据大学选修课管理的基本过程,网上选课系统应具备课程设置、课程查询、学生选课、管理员管理等基本功能要求。
系统的主要使用者有学生、开课教师和教务管理人员。
2.2系统需求分析
通过对系统需求进行分析,我们可以确定系统中有三类用户:
管理员、教师和学生。
各类用户的具体描述如下:
(1)管理员
描述:
管理员维护整个系统,包括设置选课时段,选课前学生不可登录;选课结束,学生只可查询,管理员对选课结果进行统计;查询选课情况,对学生的选课申请进行处理,进行用户管理;限制最大选课人数;排课、发布选课信息;数据备份和恢复等。
(2)教师
描述:
教师撰写教师反馈,反馈选课信息,对排课者提出反馈意见,供排课者在排课时参考使用。
查询课程基本情况、学生情况。
(3)学生
描述:
在选课系统中查询课程、教室信息,查看教室反馈,提交选课申请,撤销申请,查询选课情况,登录系统,进行个人信息修改等与选课有关的活动。
根据上面所述,对系统进行了分析,分为三个主要功能,即登录控制、排课和选课,分别对应三个子系统,即登录子系统、排课子系统和选课子系统。
其中,登录子系统是前提,排课子系统是基础,选课子系统是关键。
登入子系统区分排课者(即系统管理员),教师和学生这三者的不同身份,给出不同的权限,在页面中根据身份判断其相应具有的权限,进行不同的操作。
排课子系统主要供排课者使用,其中设定选课时间段,进行排课并检测排课冲突,发布选课信息都是选课的前提和基础。
选课子系统是本系统要实现的最终目的,选课子系统主要供学生选课使用,在这里可以进行与选课有关的活动,包括课程浏览查询、选课、退选课程。
三、系统总体设计
3.1系统结构设计
网上选课系统功能结构图的绘制,根据需求分析阶段,可画出网上选课系统功能结构图,如图1所示:
图1系统总体业务流程图
3.2功能概要设计
(1)用户登录
用户登录系统,当输入学号或密码有误时,返回登录界面显示提示信息。
如果验证成功,则进入主界面。
当没有注册时,注册完成后自动登录。
(2)用户注册
用户在正式注册开始前会对你注册的学号进行检测,看该学号是否存在。
用户注册需填写学号,密码,姓名,性别,注册日期,学院,专业,班级且学号不能和别人的重复。
一旦不满足上述条件则应返回注册页面并且显示相应的错误信息。
正确填写后系统更新数据库并完成自动登录。
(3)查看备选课程
用户可以查看到所有的备选课程,以及该课程的具体信息,在查看备选课程的时候可以利用模糊查询来查找相关的课程信息。
(4)选课
当用户点击此键后,选课成功,当该课程所需人数已满时,选课失败,且提示失败信息。
当该课程已选过的时候不能重复选课了,如果用户继续点击,则提示给用户失败信息
(5)查看已选课程
当用户点击此键后,可以查看到用户已经所选的所有课程。
并且显示这些课程的具体信息。
在查看的信息表前面有一可选项,当选中后提交就执行了删除的操作。
(6)删除课程
当用户点击此键后,可以删除课程。
并且显示提示信息。
(7)查询课程
该功能支持模糊查询。
如果直接查询则显示所有信息,如果根据学分或课程号进行模糊查询,只显示在限制范围的信息。
(8)查看学籍信息
用户可以查看相应的个人信息。
该信息的修改权属于数据管理员,用户不能进行修改。
(9)修改密码
已注册用户有权修改自己的密码。
该功能需要填写原始密码,以及两次输入新密码,如果有误,则提示修改不成功。
且所填写内容不能为空。
根据前面需求分析所述,可以画出功能结构图。
如图2所示:
图2功能结构图
3.3数据库设计
数据库在一个信息管理中占有非常重要的地位,数据库结构设计的好坏直接对应用系统的效率以及实现的效果产生影响。
合理的数据库结构设计可以提高数据库存储的效率,保证数据的完整性和一致性。
3.3.1数据库概念结构设计
根据上面的设计规划出得实体有:
学生信息实体,选课信息实体,课程信息实体,教室信息实体,院系信息实体。
各实体的描述E-R图如下图3:
图3网上选课系统E—R图
3.3.2数据库逻辑结构设计
由于客户关系管理系统的数据处理量不是很大,所以选择了SQL数据库作为后台处理数据库。
SQL数据库是中小型数据库管理软件的最佳选择,它是在Windows环境下开发的一种全新的数据库系统,具有大型数据库所具有的一些基本的功能,并且可以设置用户组或用户的密码和权限,保证数据库的安全。
数据库的概念结构设计完毕后,可以将上面的数据库概念转换成某种数据库系统多支持的实际数据结构,也就是数据结构模型。
学生表:
用于记录学生的详细信息
教师表:
用于记录教师的详细信息
课程表:
用于记录课程信息,包括上课时间等
部门表:
用于记录学校各部门的信息,包括专业学院等
规则表:
用于记录规则的详细信息
管理员表:
用于记录管理员的详细信息
表1学生选课信息表
名称
类型
主键
长度
学号
varchar
Yes
1-50
姓名
varchar
No
1-50
系别
char
No
1-12
专业
varchar
No
1-12
班级
varchar
No
1-12
学期
varchar
No
1-12
课程号
char
No
1-12
所选课程
varchar
No
1-50
表2教师信息表
名称
类型
主键
长度
教师号
varchar
Yes
1-50
姓名
varchar
No
1-50
性别
char
No
1-50
所属学院
varchar
No
1-50
职称
char
No
1-50
密码
char
No
1-50
表3课程信息表
名称
类型
主键
长度
课程号
varchar
Yes
1-12
课程名称
varchar
No
1-50
教师号
char
No
1-12
学期
char
No
1-12
上课时间
char
No
1-50
学分
char
No
1-12
总人数
varchar
No
1-50
表4部门表
名称
类型
主键
长度
院系号
varchar
Yes
1-12
院系名
varchar
No
1-50
表5规则表
名称
类型
主键
长度
日期
varchar
Yes
1-12
课程号
varchar
No
1-50
表6管理表
名称
类型
主键
长度
管理员姓名
varchar
Yes
1-12
密码
varchar
No
1-50
3.3.4物理结构设计
在物理结构中,数据的基本存取单位是存储记录。
有了逻辑记录结构后,就可以设计存储记录结构,一个存储记录可以和一个或多个逻辑记录相对应。
必须深入了解给定的DBMS的功能,DBMS提供的环境和工具、硬件环境,特别是存储设备的特征。
本系统采用聚集和索引的方法存储文件,建立多个索引文件,缩短存取时间。
四、系统详细设计
4.1系统各模块功能设计
模块设计的主要方法是结构化方法,主导思想是以系统的逻辑功能设计和数据流关系为基础,采用“自顶向下,逐步求精”的设计方法,将本系统分解为功能明确,易于修改,大小适中的模块结构。
本系统主要分为三大模块:
登录模块、排课模块、选课模块。
系统各模块功能图如下图4所示:
图4系统功能模块图
4.2系统各模块功能说明:
1、登录模块:
选择不同身份登录系统
本系统有三种类型的用户:
管理员、教师和学生。
当不同的用户登录系统选择不同的用户类型时,他们就会分别拥有不同的权限。
管理员权限最大,主要是拥有排课权限、设置选课时段权限和发布选课信息权限。
教师的主要权限是反馈排课信息。
学生的主要权限是进行选课,退课。
(1)修改密码
每个用户登录后,都可更改初始密码,以增强系统的安全性。
(2)退出
每个用户登录系统后单击退出,就可退出系统。
2排课模块:
本模块是选课系统的基础
(1)已排排课表
管理员在排课过程中,可以点击已排排课表来显示已经排好的选课信息,并可对此信息进行增、删、改、查。
在排课者提交排课表后,系统应当确保该排课方案中没有时间冲突和教室冲突。
如果有冲突,系统应该提示排课者具体冲突产生的原因。
(2)备份排课表
管理员对排课信息进行修改后,可以点击备份排课表,对新的排课信息进行备份。
(3)导入排课表
管理员可以把以前的排课信息导入到排课表,这样可以增加排课的灵活性和方便性。
此外,管理员还可以把以前的排课信息删除。
(4)对未排的课程排课
排课者可以对课程信息表,院系信息表,教师表中的信息进行联合查询后,在教学楼信息表中选择相应的教室,并选择相应的时间。
在排课者提交排课表后,系统应当确保该排课方案中没有时间冲突和教室冲突。
如果有冲突,系统应该提示排课者具体冲突产生的原因。
(5)选定选课时间段
排课者应该设定选课时间段。
学生只能在此设定的时间段内选课。
如果学生不再选课时间段内选课,系统应该显示提示信息。
(6)发布选课信息
排课完成以后,排课者可以在选课系统中发布关于选课的各种信息。
(7)查看教师反馈
排课和选课模块都可查看教师反馈
3选课模块
(1)查看可选择的课程信息
学生在选课时可以查询所有课程的详细信息,如课程简介、课时、学分、考察方式等内容。
学生也可以按课程号查询选课信息,或者按教师号查询选课信息。
(2)提交选课申请
学生若想选择某门课程,只有点击相应的课程号,就可选课。
如果该选课操作引起选课冲突(如超过最大选课人数或重复选择同一门课程),系统就会提示出错信息。
(3)退课
学生在选课时间段内可以删除某门已选的课程。
该讯息被提交到服务器,服务器返回该删除信息为弹出式窗口。
(4)显示学生选课表
学生选完某门课程后,在选课页面的左侧,就可以显示该学生相应的选课信息。
(5)查看教师反馈
排课和选课模块都可查看教师反馈。
4.3选课模块程序流程图
选课子系统是本系统的核心,也是用户使用最多的子系统。
其流程图如下图5所示:
图5选课流程图
五、总结
本系统采用B/S结构,界面简洁,操作方便。
本系统可以实现“教师反馈”,“选课查询”,“课程查询”,“课程设置”,“教师安排”,“课表查询”,“排课系统”,“进入选课”等功能,达到了选课系统的基本要求,具有实用价值。
通过本次实验设计,我对ASP、数据库等方面的知识有了进一步的认识,尤其是存储过程的使用。
同时,我充分体会到理论知识的重要性,但更加体会到实践的重要性。
只有通过实践,我们才能发现并解决问题,才能真正掌握一项技术。
我会在将来的软件设计、开发过程中进一步学习,不断提高自己的专业技能。
六、参考文献
[1]《信息系统分析与设计》杜娟编著;清华大学出版社
[2]《ASP动态网站开发教程》陈建伟陈焕英编著;清华大学出版社
[3]《数据库原理及应用教程》陈志泊王春玲编著;人民邮电出版社
[4]《网上选课系统分析与设计》