学生选课管理系统的开发

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

第八章项目实训-学生选课管理系统的开

8.1 需求分析

8.1.1 选课工作流程分析

新的学年,系统管理人员首先对学生进行基本的信息录入,然后安排老师和所开的课程,系统默认生成的学生和教师登陆系统密码为888888。学生登陆系统后自身实际情况,查看教师信息,查看课程信息,选择课程。每举行一次考试后由任课老师对成绩录入,任课老师根据实际情况对录入的成绩进行维护,各位同学对以上录入的信息可以根据自己的需要进行适当的查询。

8.1.2 系统具体需求分析

系统的具体需求如下:

●系统管理员学校全体学生的信息管理,对教师和课程信息进行录入和必要的维护。

●教师查看选课学生和成绩录入等。

●学生查询课程、选课、退课和成绩查询等。

8.1.3 系统设计分析

本系统的功能主要分为如下几类

●课程管理用于对各学期课程的开设和修改

●教师信息管理添加、修改和删除教师信息等。

●学生信息管理添加、修改和删除学生信息等。

●成绩管理用于对成绩的输入、修改。

●选课管理用于学生对课程的查询和选课、退课等。

8.2 用户角色及功能结构

本系统用户角色主要有三类:系统管理员、老师和学生。

●系统管理员可进行老师信息管理、学生信息管理和课程信息管理等工作,如图8-1

所示。

●教师可以进行学生信息查询、选课查询和成绩录入等工作,如图8-2所示。

●学生可以进行选课信息查询、选课、退课和成绩查询等工作,如图8-3所示。

管理员模块

课程信息管理

管理员登录

教师信息管理学生信息管理修改密码

图8-1 管理员能图

教师模块

查看成绩信息

教师登录

查看选课学生查看所有课程修改密码

图8-2 教师功能图

学生模块

查看成绩信息

学生登录

查看选课信息

学生选课

修改密码

图8-3 学生功能图

8.3 系统功能模块设计

本系统从功能上可以分为三大模块:学生模块、教师模块和系统管理员模块。以下对各模块进行说明。

● 学生模块:学生登录、查看选课信息、选课、查看成绩和修改密码等。 ● 教师模块:教师登录、查询选课学生、成绩管理和修改密码等。

● 系统管理员模块:管理员登录、教师信息管理、学生信息管理、课程信息管理和修

改密码。系统模块图如图8-4所示。

教师子系统查看成绩信息

教师登录

查看选课学生查看所有课程修改密码

管理员子系统

课程信息管理

管理员登录

教师信息管理学生信息管理修改密码

学生子系统查看成绩信息

学生登录

查看选课信息

学生选课

修改密码选课系统

图 8-4 系统模块图

8.4 数据库设计

8.4.1数据库概念设计

通过对学生选课进行的需求分析、网站流程设计以及系统功能结构的确定,规划出系统中使用的数据实体对象分别为“管理员”、“学生”、“教师”、和“课程”四个实体,核心的实体E-R图在第六章已经给出。

8.4.2 数据库表的逻辑结构设计

本系统定义的数据库中包含以下5张个表,下面介绍这些表的结构。

●t bAdmin (管理员信息表)

表tbAdmin用于保存管理员的基本信息,如表8.1所示。

表8.1 管理员信息表

序号字段描述类型和长度是否为空说明

1 aname 用户名varchar(20)否主键

2 apwd 密码varchar(50) 否MD5加密

表tbStudent用来保存学生信息如表8.2所示

表8.2 学生信息表

序号字段描述类型和长度是否为空说明

1 sno 学号char(10) 否主键

2 sname 学生姓名char(20) 否

3 ssex 学生性别char(2) 是

4 sclass 学生班级char(20) 是

5 sdept 学生系别char(20) 是

6 spwd 学生密码varchar(50) 否MD5加密

表tbTeacher用来保存教师信息如表8.3所示。

表8.3 教师信息表

序号字段描述类型和长度是否为空说明

1 tno 教师编号char(10) 否主键

2 tname 教师姓名char(20) 是

3 tsex 教师性别char(2) 是

4 tdept 教师系别char(20) 是

5 temail 教师邮箱char(50) 是

6 tpwd 教师密码varchar(40) 否MD5加密

表tbCourse用来保存课程信息如表8.4所示。

表8.4 课程信息表

序号字段描述类型和长度是否为空说明

1 cno 课程号char(10) 否主键

2 tno 教师编号char(20) 否外键

3 cname 课程名char(50) 是

4 ccredit 学分float 是

5 cdescribe 课程描述text 是

表tbSC用来保存学生选课信息如表8.5所示。

表8.5 选课信息表

序号字段描述类型和长度是否为空说明

1 scId Id号int 否主键(自增)

2 sno 学号char(10) 否外键

3 cno 课程号char(10) 否外键

4 grade 成绩char(10) 是

8.5 Web.Config文件配置

为了使应用程序方便移植,需要在应用程序配置文件(Web.Config文件)中设置数据库连接信息。连接数据库代码(代码位置:光盘/ElectiveSystem/web.config)如下:

connectionString="server=.;database=dbChooseCourse;uid=ChooseCourse;

pwd=ChooseCourse"/>

......

8.6 公共类的编写

开发项目中以类的形式来组织、封装一些常用的方法和事件,不仅可以提高代码的复用率,也大大方便了代码的管理。

在学生选课系统中共建了4个公共类,具体如下。

●Alert:用于管理在项目中用到的多种页面跳转提示框,如直接跳转、提示信息并

跳转等。

●Common:用于管理在项目中用的公共类,如MD5加密,清除脚本等。

●DBBase:用于管理在项目中对数据库的各种操作,如连接数据库、获取数据表

DataTable等。

●RandomImg:用于管理在项目组用到的获取随机验证码。

因为数据库操作类DBBase类在本书第七章(7.11 数据库操作类DBBase简介和使用)中已经进行了详细的介绍。下面主要介绍RandomImg类、Alert类和Common类的创建过程。1.类的创建

在创建类时,用户可以在该项目中找到App_Code文件夹,如果项目中没有App_Code 文件夹,用户可以在项目上单击鼠标右键,在弹出的菜单中选择“添加文件夹”,添加一个App_Code文件夹。新建好文件夹后点击鼠标右键,在弹出菜单中选择“添加新项”,在弹出的“添加新项”对话框中选择“类”,并将其命名,单击“添加”按钮即可创建一个新类。

相关文档
最新文档