1、某高校选课系统分析与设计1系统介绍选课是高校行政管理工作中的重要一项,而且是每个学期必须面对的。选课工作做不好,学生不知道自己将要学习的课程,老师也不知道自己将要讲授的课程,教务处的排课计划、教室安排等其他调度工作也无从做起。因此,如何解决高校教务管理中的选课工作便成为了各大高校面临的很实际的问题。2系统分析2.1 可行性分析2.1.1 经济上的可行性 系统界面友好,操作简单,系统的配置要求不高,实现可行,因此经济可行。该系统可以容易实现学生、老师与学校之间的联系,在Internet上实现完成部分教务工作,提高办事效率。2.1.2 技术上的可行性 随着网络的蓬勃发展,越来越多的机构将教务管理与
2、网络融合到一起,以方便管理。在这样一个社会背景下,基于Windows和SQL Server 2005 ,运用先进的ASP.NET技术、先进的C#语言,采用B/S模式开发的学生网上选课系统,将学生、老师、管理员有机地结合在一起,有效地提高管理水平和效率。随着科学技术的不断提高,计算机科学日渐成熟,基于以上的技术在现今比较容易实现。2.1.3 社会可行性随着近几年高校的持续扩招,学生人数逐年增加。为了满足广大学生的求学需要,各个高校的师资力量、硬件配置也随之增强。这样一来,日常行政部门的工作也就越来越繁重,这一点在选课这块显得尤为突出。而传统的手工操作,即费时又费力,而且容易出错,工作效率较低。因
3、此,拥有一套实用、高效、完善的在线选课系统就显得尤为重要,它可以提升高校的教育质量和教学管理质量,提高工作效率,降低行政成本。2.2 详细调查2.2.1组织结构图选课管理系统组织结构图2.2.2业务流程图学生选课工作的一般过程是:教务处发通知,通知教师将申报课程名单给教务处,教务处审批,审批合格后将课程及上课时间和每门课程的名额限制公布给学生,不合格的退还给教师,学生在规定的时间内选课,正确的选课结果交给教务处错误的返回给学生。选课管理系统业务流程图2.2.3数据流程图根据系统功能要求,画出学生选修课管理系统的分层DFD图。首先画出顶层的DFD图。顶层确定了系统的范围,其外部实体为教师、学生。
4、在顶层DFD图的基础上再进行分解,做进一步分解:(1) 用户登录获取用户输入的用户名及密码;若出现用户名、密码错误或不匹配现象,反馈错误提示;在用户名及密码都正确的前提下,支持密码修改。(2) 选课首先发布选课通知,即先对教师发出通知(教师得到通知后才可申请教课),然后对学生发出通知(此时已安排完有关选修课的所有信息)创建课程指定任课教师设定课程的人数和开课时间安排分配账号及密码(由于是管理员操作此部分)。(3) 教师开课获取教师申请教课的信息,包括教师信息及其所要教的课程信息;提供教师浏览课程的功能,即课程时间、教室等的安排;并提供查询学生选课情况的功能,即选此门课程的名单等;处理和统计教师
5、对学生成绩的评定。(4) 学生选课提供学生修改个人信息的功能;提供学生浏览全部选修课信息的功能,然后接受学生的选课操作;获取学生及其所选课程的信息后,提供学生浏览自己所选课程的安排情况;得到选课系统的指令,在相应时间内可以让学生修改自己的选课;将选课系统统计好的成绩信息反馈给学生供其浏览。通过以上分析,建立第一层DFD图课程信息添加:管理员用户登录后,进入课程信息管理功能单元,输入课程号,课序号,课程名称,教师姓名,这些数据后提交数据,完成课程信息地添加操作,此时在选课表中将出现刚才添加的课程的有关信息。 课程信息修改:管理员用户登录后,进入课程信息管理功能单元,如果是已经登录了,选择要修改的
6、课序号,选定后就可以修改该选定课程的课程编号,课序号,课程名称,教师姓名,提交后就得到该门课程修改后的信息。 课程信息删除:管理员用户登录后,进入课程信息管理功能单元,如果是已经登录,选择要删除的课程的课序号,提交后,就将选定课程删除了。 已选课程信息的维护:管理员用户登录后,进入选课程功能单元,就可以看到学生已选的课程,可以通过选择相应的课程号来将相应学生的选课记录删除。 用户信息添加:管理员用户登录后,进入用户信息管理功能单元,如果是已经登录进入,输入用户名,用户密码,但是此时的用户必须与学生信息管理系统中的学生相对应,即用户必须是存在的。提交后就将新用户添加到了用户组里面,即这个用户可以
7、使用该系统了。 用户信息修改:管理员用户登录后,进入用户信息管理功能单元,如果是已经登录进入,选择要修改的用户的用户名,点击后就可以修改该用户的密码。点击提交后就完成了该用户信息的修改,就得到了该用户修改后的信息。用户信息删除:管理员用户登录后,进入用户信息管理功能单元,如果是已经登录进入,选择要删除的用户的用户名,提交之后就将该用户删除了。用户组里面将不存在改用户。在第一层分解的基础上,对四个加工进一步分解,建立第二层DFD图教师开课:教师将课程及个人信息交由教务处审批,如果教务处审批合格,将课程表公布给学生,如果不合格,则反馈给教师修改。教师开课数据流程图学生选课:学生用户登录后,进入选课
8、管理功能页面,浏览选课信息,学生可以选择要选修的课程,如果限定的课程开设人数已满,或是不足规定人数取消该课程安排的信息,个人在规定日期前就可以修改选课。学生选课业务流程图用户登录:学生用户输入用户名及密码,如果是有效信息,即可以登录选课及成绩查询,如果是无效的信息,则反馈给学生;教师用户输入用户名及密码,如果是有效信息,即可以登录,录入成绩和查询选课信息,如果无效反馈给教师。教师用户登录数据流程图学生用户登录数据流程图2.2.4.数据字典 数据流编号: D1名称: 选课单描述:学生根据可选课程提交的选课记录信息来源:学生 去向:报名数据流组成:选课单编号+学生(选课时)基本信息+所选课程信息+
9、选课单状态单位时间流量 : 10KB/S 编号: D2名称: 课程表描述:教务处发给学生的课程表来源:教务处 去向: 学生数据流组成:课程表编号+课程(选课时)基本信息+上课时间+上课地点单位时间流量 : 10KB/S 编号: D3名称: 所申请的课程表描述:教师提出申请的课表来源:教师 去向:教务处数据流组成:所申请的课程表编号+课程(选课时)基本信息+上课时间+所申请的课程表状态单位时间流量 : 10KB/S 编号: D4名称:课程安排描述:教务处安排的课程来源:教务处 去向:教师开课模块,学生选课模块数据流组成:课程安排编号+课程(选课时)基本信息+上课时间+上课地点单位时间流量 : 1
10、0KB/S编号: D5名称: 学生信息描述:学生的个人信息来源:用户登录模块去向: 学生选课模块数据流组成:学生信息表编号+学生姓名+学生学号+学生专业单位时间流量 : 10KB/S编号: D6名称: 教师信息描述:教师的个人信息来源:用户登录模块 去向:教师开课模块数据流组成:教师信息表编号+教师姓名+教师所在系名单位时间流量 : 10KB/S编号: D7名称: 学生名单描述:学生选课名单来源:管理员 去向:教师数据流组成:学生名单编号+学生姓名+学生学号+学生专业单位时间流量 : 10KB/S 编号: D8名称:学生用户名密码描述:学生登录的凭证来源:学生 去向: 用户登录模块数据流组成:
11、学生用户名密码编号+学生用户名+用户名密码单位时间流量 : 10KB/S 编号: D9名称:教师用户名密码描述:教师登录的凭证来源:教师 去向: 用户登录模块数据流组成:教师用户名密码编号+教师用户名+用户名密码单位时间流量 : 10KB/S编号: D10名称: 信息录入描述:管理员向系统录入的信息来源:管理员 去向: 选课数据流组成:信息录入编号+教师姓名+教师所教课程+课程序号+课程表单位时间流量 : 10KB/S编号: D11名称: 课程统计描述:课程的详细信息来源:选课 去向:管理员数据流组成:课程统计编号+课程人数+学生选课程信息+选课单状态单位时间流量 : 10KB/S编号: D1
12、2名称: 不审批的课程描述:教师申请不符合的课程来源:申请开课模块去向: 教师数据流组成:不审批的课程编号+课程名称+课程序号+选课单状态单位时间流量 : 10KB/S编号: D13名称: 成绩信息描述:教师录入的成绩来源:教师 登录模块去向: 学生成绩文档数据流组成:成绩信息编号+课程名称+课程序号+学生姓名+学生学号+学生得分情况单位时间流量 : 10KB/S编号: D14名称:添加描述:将学生信息添加到报名表来源:报名模块 去向: 学生报名表文档数据流组成:添加编号+课程名称+课程序号+学生姓名+学生学号单位时间流量 : 10KB/S 编号: D15名称: 修改描述:修改选课来源:修改模
13、块 去向: 学生报名表文档数据流组成:修改编号+课程名称+课程序号+学生姓名+学生学号单位时间流量 : 10KB/S编号: D16名称: 查询描述:成绩查询来源:学生登录模块去向: 学生成绩文档数据流组成:查询编号+学期+课程序号+学生得分情况单位时间流量 :开放期间10KB/S编号: D17名称: 选课描述:登录系统选课来源:登录模块去向: 选课文档数据流组成:成绩信息编号+课程名称+课程序号+学生姓名+学生学号+学生得分情况单位时间流量 :开放期间10KB/S编号: D18名称: 教师用户有效信息描述:正确的用户名密码来源:审核模块去向: 登录模块数据流组成:教师用户有效信息编号+用户名+
14、密码+单位时间流量 :开放期间10KB/S编号: D19名称: 教师用户无效信息描述:错误的用户名密码来源:审核模块去向: 登录模块数据流组成:教师用户无效信息编号+用户名+密码+单位时间流量 :开放期间10KB/S编号: D20名称: 学生用户有效信息描述:正确的用户名密码来源:审核模块去向: 登录模块数据流组成:学生用户有效信息编号+用户名+密码+单位时间流量 :开放期间10KB/S编号: D21名称: 学生用户无效信息描述:错误的用户名密码来源:审核模块去向: 登录模块数据流组成:学生用户无效信息编号+用户名+密码+单位时间流量 :开放期间10KB/S 处理逻辑处理逻辑编号:P2.1处理
15、逻辑名称:申请开课简述:课程审核输入的数据流:课程及个人信息处理:审核输出的数据流:课程表,不审批的课程处理的频率:每学期一次处理逻辑编号:P3.1处理逻辑名称:在线报名简述:学生报名选课输入的数据流:学生信息处理:浏览课程,选课添加输出的数据流:选课单处理的频率:每学期一次处理逻辑编号:P3.2处理逻辑名称:报名简述:学生报名选课输入的数据流:选课单处理:选定课程,选定教师,选定上课时间,选定上课地点输出的数据流:添加处理的频率:每学期一次处理逻辑编号:P3.3处理逻辑名称:修改简述:退课修改输入的数据流:修改的课程信息处理:浏览课程,修改课程,修改教师,修改上课时间,修改上课地点输出的数据
16、流:修改处理的频率:每学期一次处理逻辑编号:P4.1处理逻辑名称:审核简述:用户身份审核输入的数据流:用户名密码处理:教师身份认证,学生身份认证输出的数据流:有效的用户信息,无效的用户信息处理的频率:每学期一次 处理逻辑编号:P4.2处理逻辑名称:登录简述:用户登录输入的数据流:有效的信息处理:用户进入到系统输出的数据流:查询,选课,成绩信息处理的频率:每学期一次 数据存储编号:F1名称:学生成绩描述: 存放成绩信息数据结构:学生学号+课程号+分数主键:学生学号,课程号相关联的处理:登录编号:F2名称:选课信息描述: 存放课程信息数据结构:学生学号+课程号+教师编号主键:课程号相关联的处理:登
17、录 编号:F3名称:学生报名表描述: 存放学生信息数据结构:学生学号+课程号主键:学生学号相关联的处理:报名,修改 编号:F4名称:课程报名表描述: 存放教师申请的课程信息数据结构:教师编号+课程号主键:教师编号,课程号相关联的处理:登录 实体外部实体编号:S1外部实体名称:学生简述:选课的主体输入的数据流:不合格的选课单,课程表输出地数据流:选课单 外部实体编号:S2外部实体名称:教师简述:教课的主体输入的数据流:不审批的课程单,课程表输出地数据流:所申请的课程 外部实体编号:S3外部实体名称:教务处简述:管理选课的主体输入的数据流:课程统计输出地数据流:信息录入3系统设计3.1功能结构图3
18、.2. 数据库概念模型设计(E-R图)E-R 图实体教师-属性图实体学生-属性图实体课程-属性图实体联系图3.3数据库设计3.3.1表的设计表1:学生信息表名称数据类型长度是否允许为空自动编号int10No学生学号nvarchar(50)50No姓名nchar8Yes性别char2Yes民族nchar10Yes政治面貌char10Yes联系方式nchar11Yes家庭住址nchar50Yes邮政编码nchar10Yes备注nchar50Yes表2:教师信息表名称数据类型长度是否允许为空教师编号nchar10Yes教师姓名nchar10Yes性别nchar10Yes民族nchar10Yes家庭住
19、址nvarchar50Yes联系方式nvarchar50Yes表3:课程信息表名称数据类型长度是否允许为空课程编号nvarchar(50)50No课程名称nchar(30)30Yes学期nchar(20)20Yes表4:成绩信息表名称数据类型长度是否允许为空成绩编号int10No学期nchar(20)20Yes学生学号nvarchar(50)50No课程编号nvarchar(50)50No课程名称nvarchar(50)50Yes分数Int10Yes表5:申请课表名称数据类型长度是否允许为空教师编号nchar10No教师姓名nchar10Yes课程编号nchar10Yes课程名称nchar10
20、Yes表6:选课信息表名称数据类型长度是否允许为空学生学号nchar10Yes课程编号nvarchar50Yes课程名称nchar10Yes表7:教师分配表名称数据类型长度是否允许为空教师姓名nchar10Yes教师编号nchar10Yes课程编号nvarchar50Yes课程名称nvarchar50Yes表8:通知信息表名称数据类型长度是否允许为空通知编号int10No通知内容varchar50No表9:角色信息表名称数据类型是否允许为空RolenamebitYes浏览课程bitYes学生之在线选课bitYes学生之修改选课bitYes学生之成绩查询bitYes教师之申请教课bitYes教师
21、之查询学生选课情况bitYes教师之成绩评定bitYes管理员之录入选课信息bitYes教师之浏览通知表bitYes用户信息修改bitYes管理员之用户管理bitYes管理员之统计学生选课信息bitYes管理员之发放通知bitYes管理员之课程管理bitYes表10:用户信息表名称数据类型是否允许为空RolesbitYesUserIDbitYesPasswordbitYes3.3.2创建数据表的代码成绩信息表CREATE TABLE dbo.成绩信息表( 成绩编号 int IDENTITY(1,1) NOT NULL, 学期 nchar(20) COLLATE Chinese_PRC_CI_A
22、S NULL, 学生学号 nvarchar(50) COLLATE Chinese_PRC_CI_AS NOT NULL, 课程编号 nvarchar(50) COLLATE Chinese_PRC_CI_AS NULL, 课程名称 nvarchar(50) COLLATE Chinese_PRC_CI_AS NULL, 分数 int NULL, CONSTRAINT PK_成绩信息表_0DAF0CB0 PRIMARY KEY CLUSTERED ( 学生学号 ASC)WITH (IGNORE_DUP_KEY = OFF) ON PRIMARY) ON PRIMARY角色信息表CREATE T
23、ABLE dbo.角色信息表( Rolename varchar(15) COLLATE Chinese_PRC_CI_AS NULL, 浏览课程 bit NOT NULL, 学生之在线选课 bit NULL, 学生之修改选课 bit NULL, 学生之成绩查询 bit NULL, 教师之申请教课 bit NULL, 教师之查询学生选课情况 bit NULL, 教师之成绩评定 bit NULL, 管理员之录入选课信息 bit NULL, 管理员之课程管理 bit NULL, 管理员之发放通知 bit NULL, 管理员之统计学生选课信息 bit NULL, 管理员之用户管理 bit NULL,
24、 用户信息修改 bit NULL, 教师之浏览通知表 bit NULL) ON PRIMARY教师分配表CREATE TABLE dbo.教师分配表( 教师姓名 nchar(10) COLLATE Chinese_PRC_CI_AS NULL, 教师编号 nchar(10) COLLATE Chinese_PRC_CI_AS NULL, 课程编号 nvarchar(50) COLLATE Chinese_PRC_CI_AS NULL, 课程名称 nvarchar(50) COLLATE Chinese_PRC_CI_AS NULL) ON PRIMARY教师信息表CREATE TABLE db
25、o.教师信息表( 教师编号 nchar(10) COLLATE Chinese_PRC_CI_AS NULL, 教师姓名 nchar(10) COLLATE Chinese_PRC_CI_AS NULL, 性别 nchar(10) COLLATE Chinese_PRC_CI_AS NULL, 民族 nchar(10) COLLATE Chinese_PRC_CI_AS NULL, 联系方式 nvarchar(50) COLLATE Chinese_PRC_CI_AS NULL, 家庭住址 nvarchar(50) COLLATE Chinese_PRC_CI_AS NULL) ON PRIM
26、ARY课程信息表CREATE TABLE dbo.课程信息表( 课程编号 nvarchar(50) COLLATE Chinese_PRC_CI_AS NOT NULL, 课程名称 nchar(30) COLLATE Chinese_PRC_CI_AS NULL, 学期 nchar(20) COLLATE Chinese_PRC_CI_AS NULL, CONSTRAINT PK_课程信息表_7E6CC920 PRIMARY KEY CLUSTERED ( 课程编号 ASC)WITH (IGNORE_DUP_KEY = OFF) ON PRIMARY) ON PRIMARY申请课表CREATE
27、 TABLE dbo.申请课表( 教师编号 nchar(10) COLLATE Chinese_PRC_CI_AS NOT NULL, 教师姓名 nchar(10) COLLATE Chinese_PRC_CI_AS NULL, 课程编号 nchar(10) COLLATE Chinese_PRC_CI_AS NULL, 课程名称 nchar(10) COLLATE Chinese_PRC_CI_AS NULL, CONSTRAINT PK_申请课表 PRIMARY KEY CLUSTERED ( 教师编号 ASC)WITH (IGNORE_DUP_KEY = OFF) ON PRIMARY) ON PRIMARY通知信息表CREATE TABLE dbo.通知信息表( 通知编号 int IDENTITY(1,1) NOT NULL, 通知内容 varchar(50) COLLATE Chinese_PRC_CI_AS NOT NULL, CONSTRAINT PK_通知信
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1