数学与计算机学院 课程设计说明书
课 程 名 称: 软件工程与数据库课程设计 课 程 代 码: 6014419
题 目: 选修课程管理系统 年级/专业/班: 学 生 姓 名: 学 号: 开 始 时 间: 2012年 6 月 8 日 完 成 时 间: 2012年 6 月 20 日 课程设计成绩:
学习态度及平技术水平与实时成绩(30) 际能力(20) 创新(5) 说明书(计算书、图纸、总 分分析报告)撰写质量(45) (100) 指导教师签名: 年 月 日
摘 要
随着计算机的普及,越来越多的软件被运用在生活中,帮助人们完成各种各样复杂的事情。选修课管理系统就是其中一个,帮助管理学校每学期开设的课程,学生的上课情况,教师的任教情况,学生成绩等等。使得学生、老师及学校的学习、工作能够越来越方便。 关键词:数据库;计算机;面向对象;窗体程序
目 录
引 言 ............................................................................................................................ 1
1.需求分析 .................................................................................................................... 2 1.1系统分析 ............................................................................................................. 2 1.2用户需求 ............................................................................................................. 2 2.概要设计 .................................................................................................................... 3 2.1系统流程图 ......................................................................................................... 3 2.2系统功能模块设计 ............................................................................................. 4 2.3系统总体设计 ..................................................................................................... 5 3.数据库设计 ................................................................................................................ 5 3.1概念模型设计 ..................................................................................................... 5 3.2逻辑结构设计 ..................................................................................................... 7 3.3物理结构设计 ..................................................................................................... 8 4.程序模块设计 ...................................................................................................... 11 4.1开发环境及数据库连接 ................................................................................... 11 4.2登录模块设计 ................................................................................................... 11 4.3学生界面模块设计 ........................................................................................... 12 4.4教师界面模块设计 ........................................................................................... 12 4.5教师界面模块设计 ........................................................................................... 13 5.系统测试 .................................................................................................................. 14 5.1测试环境 ........................................................................................................... 14 5.2测试用例及结果 ............................................................................................... 14 5.2.2功能测试 ........................................................................................................... 14 结 论 .......................................................................................................................... 23 致 谢 .......................................................................................................................... 24 参考文献 ...................................................................................................................... 25
选修课程管理系统
引 言
数据库是按照数据结构来组织、存储和管理数据的仓库,它产生于距今五十年前,随着信息技术和市场的发展,特别是二十世纪九十年代以后,数据管理不再仅仅是存储和管理数据,而转变成用户所需要的各种数据管理的方式。数据库有很多种类型,从最简单的存储有各种数据的表格到能够进行海量数据储存的大型数据库系统都在各个方面得到了广泛的应用。
本次课程设计在于使学生学习数据库理论知识后,通过已学的编程知识。更加深刻了解数据的运行机制及数据储存,学习到了如何将现实中的数据抽象出来通过程序保存到数据库当中。
我本次的课程设计题目是:选修课程管理系统。其任务是:1、设计学生选课录入界面及学生选课查询界面;2、设计课程输入界面和学生选课表及课程选修情况查询界面;3、根据学生库和课程库,输出学生课程表。
1
选修课程管理系统
1.需求分析
随着学校的招生规模逐步扩大,学生、教师的学习变得越发的难以管理。特别是认为管理,越来越困难。所以,必须采用一种自动化的管理工具。选修课管理系统就应运而生了。目前,这类管理系统样式很多。本次课程设计只是对这些系统有些了解而已,完成一些简单的功能。根据分析系统必须包括如下用户功能需求:
1、 学生对自己的上课情况的了解,即学生个人课表。
2、 学生对自己的期末成绩的了解。 3、 学生对自己课程进行选定的功能。
4、 教师对自己的上课情况的了解,即教师个人课表。 5、 教师对任教科目成绩的评定功能。 6、 管理员添加各种信息的功能。 1.1系统分析
本次课程设计的任务如下:
1、设计学生选课录入界面及学生选课查询界面;
2、设计课程输入界面和学生选课表及课程选修情况查询界面; 3、根据学生库和课程库,输出学生课程表。
根据任务不难看出,首先需要建立数据库,以保存各种信息。根据要求抽象5张表,分别是:学生表、教师表、管理员表、课程表、选课表。然后,根据要求建立界面,包括登陆界面、学生界面、教师界面、管理员界面等等。最后,添加代码联系各个界面与数据库。
1.2用户需求
通过系统功能的分析,结合题目要求总结出如下的需求信息: (1) 学生的需求:能进行选课,自己的选课情况,课程的成绩。 (2)教师的需求:能查看自己的个人信息,及所有学生的本门课程的成绩信息,并能进行增加和修改。
(3)管理员的需求:对学生选课情况进行管理,对各类用户进行添加。
2
选修课程管理系统
2.概要设计
2.1系统流程图
1、学生用户流程图
登陆 2、教师用户流程图
判定 网学成上生绩选课查课 表 询 退出
图2.1 学生用户流程图
登陆 判定 教添师加课成表 绩 退出
3 选修课程管理系统
图2.2 教师用户流程图
3、管理员流程图
登陆 判定 添加学生 添加教师 添加管理员 添加课程 退出
图2.3 管理员流程图
2.2系统功能模块设计
系统主要功能如图2.4所示: 登 录功 能 查询成绩 学生查询课表 网上选课 教师查询课表 添加成绩 添加学生 添加教师 添加管理员 添加课程 选修课管理系统 图2.4 系统更能图
4
选修课程管理系统
2.3系统总体设计
本系统为选修课管理系统,其功能模块为:登陆模块、学生界面模块、教师界面模块、管理员模块。
登录模块:用户通过登陆界面的输入框,输入自己的用户名及密码,选择相应的用户类型进行身份验证登录。然后进行下一步操作。
学生界面模块:验证成功的学生用户,在此界面选择具体的操作。包括选课、查询课表和查询成绩的操作。
教师界面模块:验证成功的教师用户,在此界面可选择查询自己课表,以及为学生添加科目成绩的操作。
管理员界面模块:验证成功的管理员用户,在此界面选择添加具体添加操作,可添加学生、教师、管理员和课程。
3.数据库设计
3.1概念模型设计
3.1.1 设计原理
将需求分析得到的用户需求抽象为信息结构即概念模型的过程就是概念设计。也就是通过对的到得用户需求性的文字描述转化为E-R模型的过程。 3.1.2 概念模型
在我的数据库系统中共有6个实体:学生、教师、管理员、课程、选课。 ① 学生的属性:学号、姓名、性别、密码 ② 教师的属性:工号、姓名、性别、密码 ③ 管理员的属性:工号、密码
④ 课程的属性:课程代码、课程名、学分、学时、任课老师、上课时间 ⑤ 选课属性:课程代码、课程名、学分、学时、任课老师、上课时间、选
课学生学号、成绩 各个实体的E-R图如下:
5
学号 姓名 性别 密码 选修课程管理系统
学生 图3.1 学生E-R图
教师 图3.2 教师E-R图
课程代码 课程代码 选课 课程名 学分 学时 任课老师 课程 图3.4 课程E-R图 课程名 学分 管理员 图3.3 管理员E-R图
学时 任课老师 上课时间 工号 密码 工号 姓名 性别 密码 6
选修课程管理系统
上课时间 选课学生学号 成绩 图3.5 选课E-R图
系统E-R图:
m n 学生 选修
m n
1 m
1 m
管理员 图3.6 系统E-R图
教师 教授 任教 课程 3.2逻辑结构设计
逻辑结构设计就是把E-R图向关系模型(关系模型、网状模型、层次模型)转换,将概念结果转换为某个DBMS所支持的数据模型,并对其进行优化。 3.2.1 将实体转换为关系模式 有E-R图得到的关系模型为:
学生(student_No, student_Name, student_Sex, student_Password) 教师(teacher_No, teacher_Name, teacher_Sex, teacher_Password) 管理员(manager_No, manager_Password) 课程
(course_No,course_Name,course_Credit,course_Time,course_Teacher,course_Dtime)
选课(scourse_No, scourse_Name, scourse_Credie, scourse_Time,
7
选修课程管理系统
scourse_Teacher, scourse_Dtime, scourse_Sno, scourse_Scorse) 3.2.2将联系转换为关系模式
student_No->student_Name,student_No->student_Sex,student_No->student_Password
teacher_No->teacher_Name, teacher_No ->teacher_Sex, teacher_No ->teacher_Password
manager_No->manager_Password
course_No->course_Name, course_No ->course_Credit, course_No ->course_Time, course_No ->course_Teacher, course_No ->course_Dtime
3.3物理结构设计
3.3.1 基本表设计 1、学生表
表3.1 学生信息表
字段名 student_No student_Name student_Sex student_Password 创建学生表的SQL语句如下: Creat table student
(student_No int primary key, student_Name nchar(10), student_Sex nchar(10), student_Password int ); 2、教师表
表3.2 教师信息表
字段名 teacher_No 字段描述 工号 字段类型 Int 字段描述 学号 姓名 性别 密码 字段类型 Int nchar(10) nchar(10) Int 8
选修课程管理系统
teacher_Name teacher_Sex teacher_Password 创建教师表的SQL语句如下: Creat table teacher
(teacher_No int primary key, teacher_Name nchar(10), teacher_Sex nchar(10), teacher_Password int ); 3、管理员表
姓名 性别 密码 Char Char Int 表3.3 管理员信息表
字段名 manager_No manager_Password 创建管理员表的SQL语句如下: Creat table manager
(manager_No int primary key, manager_Password int ); 4、课程表
表3.4 课程信息表
字段名 course_No course_Name course_Credit course_Time course_Teacher course_Dtime 字段描述 课程代码 课程名 学分 学时 任课教师 上课时间 字段类型 Int Char Int Int Char Char 字段描述 工号 密码 字段类型 Int Int 9
选修课程管理系统
创建课程表的SQL语句如下: Creat table course
(course_No int primary key, course_Name nchar(20), course_Credit int, course_Time int,
course_Teacher nchar(20), course_Dtime nchar(100) ); 5、选课表
表3.5 选课信息表
字段名 scourse_No scourse_Name scourse_Credit scourse_Time scourse_Teacher scourse_Dtime scourse_Sno scourse_
创建选课表的SQL语句如下: Creat table scourse (scourse_No int, scourse_Name nchar(20), scourse_Credit int, scourse_Time int,
scourse_Teacher nchar(20), scourse_Dtime nchar(100) scourse_Sno int,
10
字段描述 课程代码 课程名 学分 课时 任课教师 上课时间 选课学生学号 成绩 字段类型 Int Char Int Int Char Char Int Int 选修课程管理系统
scourse_Scores int,
primary key(scourse_No,scourse_Sno) );
4.程序模块设计
4.1开发环境及数据库连接
本程序采用Microsoft SQL Server 2008建立数据库,使用Microsoft Visual Studio 2010连接数据库。连接如下:
String ConnnectionString = \"Data Source=localhost;Integrated Security=SSPI;Initial CataLog=学生选课系统\"; conn = new SqlConnection(ConnnectionString);
4.2登录模块设计
4.2.1设计思路
本模块包括管理员、教师和学生的登陆,用户输入账号和密码后连接数据库查询是否正确,正确则登陆系统,错误则给出相关的提示信息。 4.2.2实现方法
流程图4.1如下:
登录验证 进入学生界面 进入教师界面 进入管理员界面 退出 数据库 图4.1 登录界面流程图
11
选修课程管理系统
4.3学生界面模块设计
4.3.1设计思路
本模块通过登陆成功的学生进行操作,具体操作包含查询个人课表、网上选课和查询成绩。通过不同的按钮进入相关的界面。查询操作均是由数据库根据登录信息读出,而选课操作通过学生的选定将信息保存到数据库。 4.3.2实现方法
图4.2 学生界面流程图
退出 数据库 网上选课 学生个人课表 查询成绩 学生操作 4.4教师界面模块设计
4.4.1设计思路
本模块通过登陆成功的教师进行操作,具体操作包含添加成绩、教师个人课表查询。其中添加成绩是通过添加成绩界面列出的学生进行添加成绩,然后保存到数据库。教师个人课表查询是通过学生选课信息显示到课表界面,是数据库的读出。
12
选修课程管理系统
4.4.2实现方法
教师操作 添加成绩 数据库
退出 图4.3 教师界面流程图
教师个人课表 4.5教师界面模块设计
4.5.1设计思路
本模块通过登陆成功的管理员进行操作,管理员拥有最高权限。具体操作包含添加教师、添加学生、添加管理员和添加课程。这些操作均是向数据库里录入数据。 4.5.2实现方法
管理员操作 添加学生 添加教师 添加管理员 添加课程 13
选修课程管理系统
数据库 退出 图4.4 管理员界面流程图
5.系统测试
5.1测试环境
系统测试的时候主要是黑盒测试,进行功能的验证。 工具:Windows XP 、Windows 7
5.2测试用例及结果
5.2.1 界面测试
测试界面是否整洁美观,检查所有的页面是否能够正确的显示,每个页面的风格是否一致,界面是否有错别字,页面每一个链接是否有对应的界面,页面控件和操作按钮的位置是否合理,界面中的下拉列表的值是否正确,是否有重复的值。
界面测试结果,界面整洁美观,界面风格一致,无错别字,控件按钮位置合适易于操作,输入框、下拉列表等显示正确。 5.2.2功能测试 1、登录测试 测试用例编号 1 516(正确) 2 516(正1(正确) 学生(正确) 2(错误) 学生(正提示登录失败,停留在登陆界面 登录成功,进入学生界面 账号 密码 用户类别 预期结果 14
选修课程管理系统
确) 3 516(正确) 4 517(错误) 确) 1(正确) 教师(错误) 1(正确) 学生(正确) 提示登录失败,停留在登陆界面 提示登录失败,停留在登陆界面 用例2、3、4的实际结果,如图5.1所示:
图5.1 登录测试
用例1的实际结果,如图5.2所示:
图5.2 登录测试
15
选修课程管理系统
2、学生界面测试 测试用例编号 1 2 3 4 5 界面操作 点击信息查询 点击网上选课 点击成绩查询 点击学生个人课表 点击课程列表中确定按钮 用例1的实际结果,如图5.3所示: 预期结果 出现成绩查询、学生个人课表两项下拉菜单 出现课程列表 出现选修课成绩 出现学生个人课表 提示选课成功
图5.3 学生界面测试
用例2的实际结果,如图5.4所示:
图5.4 学生界面测试
16
选修课程管理系统
用例3的实际结果,如图5.5所示:
图5.5 学生界面测试
用例4的实际结果,如图5.6所示:
图5.6 学生界面测试
用例5的实际结果,如图5.7所示:
图5.7 学生界面测试
3、教师界面测试 测试用例编号 1 2 界面操作 点击信息查询 点击教学评价 预期结果 出现教师个人课表下拉菜单 出现添加成绩下拉菜单 17
选修课程管理系统
3 4 点击添加成绩确定按钮 点击教师个人课表 提示:更正完毕!!! 出现教师课表 用例1的实际结果,如图5.8所示:
图5.8 教师界面测试
用例2的实际结果,如图5.9所示:
图5.9 教师界面测试
用例3的实际结果,如图5.10所示:
18
选修课程管理系统
图5.10 教师界面测试
用例4的实际结果,如图5.11所示:
图5.11 教师界面测试
4、管理员界面测试 测试用例编号 1 2 3 4 5 界面操作 点击添加 点击添加学生 点击添加教师 点击添加管理员 点击添加课程 预期结果 出现添加学生等下拉菜单 出现添加学生界面 点击添加教师界面 点击添加管理员界面 点击添加课程界面 用例1的实际结果,如图5.12所示: 19
选修课程管理系统
图5.12 教师界面测试
用例2的实际结果,如图5.13所示:
图5.13 教师界面测试
用例3的实际结果,如图5.14所示:
20
选修课程管理系统
图5.14 教师界面测试
用例4的实际结果,如图5.15所示:
图5.15 教师界面测试
用例5的实际结果,如图5.16所示:
21
选修课程管理系统
图5.16 教师界面测试
22
选修课程管理系统
结 论
通过本次数据库系统课程设计,我对Visual Studio 2010和SQL Server 2008的使用有了初步的了解。能够在Visual Studio 2010里面使用C#语言进行简单的编程,并在编程中连接数据库获取信息进行相关的操作,这和以前相比有了很大的进步。但是在完成过程中存在许多问题,比如在操作、空见等方面还不熟悉。总体来说本次课程设计收获颇多,但还需以后的不断努力。
23
选修课程管理系统
致 谢
在本次课程设计中首先要感谢的是我的指导老师谭三老师,他在课程设计中为我们提供了很多的帮助,其次还要感谢我的同学,还有网上许多优秀的资料等,最终才完成了这次课程设计。
24
选修课程管理系统
参考文献
[1].《软件工程》 郑人杰等编著 人民邮电出版社 [2].《C#程序设计》 杨树林等编著 清华大学出版社 [3].《数据库系统概论》 王珊等编著 高等教育出版社 [4]. 《软件工程概论》 张海藩 清华大学出版社
[5]. 《数据库管理系统实现技术》 周龙骧 中国地质大学出版社 [6]. 《实用软件工程基础》
编著 清华大学出版社
25 陈明
因篇幅问题不能全部显示,请点此查看更多更全内容