文档内容
详细设计说明书
密 级:
文档编号: 第 版
分册名称: 第 册/共 册
校级(公共课)学生成绩管理系统
详细设计说明书
1.00版
中南大学 (某专业某年级某人)
总页数 正 文 附 录 生效日期:
编制: 审核: 批准:
详细设计说明书
1.引言...............................................................................................................................................3详细设计说明书
1.1编写目的..............................................................................................................................3
1.2项目背景..............................................................................................................................3
1.3定义......................................................................................................................................3
1.4参考资料..............................................................................................................................3
2.总体设计.......................................................................................................................................4
2.1需求概述..............................................................................................................................4
2.2软件结构..............................................................................................................................4
3.程序描述.......................................................................................................................................4
3.1数据库模块..........................................................................................................................9
3.2成绩录入模块....................................................................................................................14
3.3统计打印模块....................................................................................................................20
4. 接口设计.....................................................................................................................................22
4.1外部接口...........................................................................................................................22
4.2内部接口............................................................................................................................23
5. 数据库设计.................................................................................................................................23
1.引言
1.1 编写目的
为明确软件需求、安排项目规划与进度、组织软件开发与测试,撰写本文档。详细设计说明书
本文档供项目经理、设计人员、开发人员参考。
1.2 项目背景
a. 项目的委托单位:中南大学
开发单位:李明
主管部门:中南大学信息学院
b. 该软件系统与其他
1. 本软件系统的名称:校级(公共课)学生成绩管理系统
2. 该软件系统同其他系统或其他机构的基本的相互来往关系:该系统基于IE浏览器,版本
为6.0及以上,支持windows系列平台。
1.3 定义
定义关键词如下:
HTTP —— Hyper Text Transfer Protocol.(超文本传输协议)
IIS —— Internet 信息服务.
HTML —— Hyper Text Markup Language(超文本标记语言).
ASP——Active Server Pages
ODBC ——开放数据库连接
ADO ――活动存储对象
IPO —— input & process & output(输入、处理、输出)
CGI―― Common GateWay interface (公用网关接口技术)
1.4 参考资料
GB/T 11457:软件工程术语
GB/T 8566 —1995:计算机软件开发规范
GB 8567:计算机软件产品开发文件编制指南
国简标准-软件详细设计说明书
2.总体设计
2.1 需求概述
校级(公共课)学生成绩管理系统分3个模块:数据库模块、成绩录入模块和统计打印模
块。
数据库模块需要实现如建库、增加、插入、删除、修改、合并、查询等基本操作。
成绩录入模块需要实现功能如下:录入方式(顺序、非顺序)自动查错、灵活的输入(权—交
互)对特殊情况的标志及处理、统计打印全校补考成绩。
统计各任课老师所教各班的考试成绩(平均、分段)。
统计打印需要实现功能如下:统计打印一个班考试成绩(上中、中下、下中、下末)
统计打印一个班汇总成绩:(上、下)
统计打印全校考试成绩(分段、平均),统计打印全校汇总
统计打印各班补考成绩。
2.2 软件结构
系统构成图如下:
1. 数据库模块:详细设计说明书
建 立
增加
插入
管理员
删除 数据库
修改
合并
查询
2.成绩录入模块:
录入方式 自动查错
顺序
非顺序
灵活的输入 对特殊情况
(权—交互) 的标志及处
理
3.打印统计模块:详细设计说明书
班考试成绩(上中、中下、下中、下末)
班汇总成绩(上、下)
统计打印
全校考试成绩(分段、平均)
全校汇总成绩
各班补考成绩
2.2.1登录模块:
子模块名称 子模块标识符 父模块名称
验证用户名密码 L1 登录模块
判断用户类别并跳转 L2 登录模块
2.2.2数据库模块
子模块名称 子模块标识符 父模块名称
添加操作 添加课程
添加教师 数据库模块
添加学生 M1
添加管理员
删除操作 删除学生 数据库模块
删除管理员
删除教师 M2
删除课程
修改操作 修改管理员信息 数据库模块
修改教师信息 M3
修改课程信息
查看操作 查看管理员信息 数据库模块详细设计说明书
查看教师信息 M4
查看课程信息
2.2.3成绩录入模块
子模块名称 子模块标识 父模块名称
个人信息操作 T1 数据库端
学生成绩操作 考试成绩统计 T2 数据库端
给定平时成绩
计算总成绩
文档管理 查看学生上交的 T3 数据库端
文档
2.2.4统计打印模块
子模块名称 子模块标识符 父模块名称
批改出成绩 S1 成绩录入端
对成绩进行排序 S2 成绩录入端
查看 查看平均成绩 S3 成绩录入端
查看总成绩
流程图为:详细设计说明书
输入用户名
和密码
系统判别用
户名和密码
NO YES
显示出错
信息 进 入 数
据 库 模
块
M M
M
1 2
M
3
4
根据要做的操作判
断进入哪个模块
进入成绩录 进入统计打
入模块 印模块
传输数据
T
1
T
T S1
2
S2 S3
3详细设计说明书
3.程序描述
【逐个模块给出以下的说明:】
3.1 数据库模块
3.1.1 功能
用户在登录界面输入用户名和密码,系统验证是否正确,并根据用户名判断用户类别,
并跳转到相应的子模块;
3.1.2 性能
项目名称 输入 处理 输出 数据来源 权限设置
1. 用户名和密码 身份验证 根据用户要进 管理员输 管理员操作
管理员输 行的操作判定 入
入 下一步进入的
模块
3.1.3全局数据变量
名称 标识符 类型 使用方式 访问方式 描述
数据库连接 conn SqlConnectio 产生数据库连 只读 在Web.config中
n 接操作动作 定义连接字符串
数据库命令 cmd SqlCommand 产生数据库操 读写 在每个页面定义
作动作
数据适配器 da SqlDataAdapt 产生填充数据 读写 在每个页面定义
er 集的操作动作
数据集 ds DataSet 存放数据 读写 在每个页面定义
数据表格 dg DataGrid 显示数据 读写 根据页面需要定义
数据读取 Dr DataReader 读取数据 只读 在每个页面定义详细设计说明书
3.1.4局部数据变量
名称 标识符 类型 使用方式 访问方 描述
式
标识 Tag Int 仅使用 只读 标志函数过程中的
状态, 根据页面需
要定义
标识 Tag1 Int 仅使用 只读 标志函数过程中的
状态, 根据页面需
要定义
数据视图 dv DataView 仅使用 只读 为数据表格提供数
据,根据页面需要定
义
父结点ID intId String 仅使用 只读 根据页面需要定义
链接地址 urlTopic String 仅使用 只读 根据页面需要定义
树结点对象 tmpNd TreeNode 仅使用 只读 根据页面需要定义
DropDownList mycontrol1 DropDownList 仅使用 只读 控制DataGrid中绑
对象 定的DropDownList
根据页面需要定义
DropDownList mycontrol2 DropDownList 仅使用 只读 控制DataGrid中绑
对象 定的DropDownList
根据页面需要定义
DropDownList mycontrol3 DropDownList 仅使用 只读 控制DataGrid中绑
对象 定的DropDownList
根据页面需要定义
用户名 uid String 仅使用 只读 DataGrid中绑定列
中用户名的值
根据页面需要定义
课程 Course String 仅使用 只读 DataGrid中绑定的
DropDownList所选
取课程的值,
根据页面需要定义
年级 grade String 仅使用 只读 DataGrid中绑定的
DropDownList所选
取年级的值,
根据页面需要定义
班级 Class String 仅使用 只读 DataGrid中绑定的
DropDownList所选
取班级的值,
根据页面需要定义
课程号 number String 仅使用 只读 DataGrid中绑定列
中课程号的值
根据页面需要定义详细设计说明书
3.1.5存储过程
名称 使用参数 描述
ChooseID @uid 从索引表中读取相应用户
的信息
delete_CourseTable @number 删除课程表中相应教师的
信息
delete_IndexTable @uid 从索引表中删除相应用户
的信息
insert_AdminTable @uid @password 从索引表中添加用户的信
@priority 息
insert_CourseTable @CourseNumber 从课程表中添加课程信息
@CourseName
insert_Student @uid 从索引表中添加学生信息
@password
@name
@priority
@grade
@Class
nsert_StudentTable @uid 从学生表,考试表中添加
@courseNO 学生所学课程号
insert_Teacher @uid 从索引表,教师表中添加
@password 教师信息
@name
@priority
@course
@grade
@Class
search @name 从索引表中查询相应的用
@uid 户信息
@priority
search_AdminTable @name 从索引表中查询相应的管
@uid 理员信息
search_Course @courseNO 从课程表中查询相应的课
@name 程信息
search_Teacher @name 从教师表,索引表中查询
@uid 相应的教师信息详细设计说明书
select_AdminTable 无 从索引表中读取管理员的
信息
select_All @uid 从索引表中读取相应用户
的信息
select_Course 无 从课程表中读取课程的信
息
select_Student 无 从索引表中读取学生的信
息
select_Teacher 无 从索引表,教师表中读取
教师的信息
update_All @uid1 更新索引表中用户的信息
@uid2
@password
@name
@sex
@grade
@Class
update_CourseTable @number 更新课程表中课程的信息
@name
update_Student @uid 更新索引表中学生的信息
@grade
@Class
update_Teacher @uid 更新教师表中教师的信息
@course
@grade
@Class详细设计说明书
3.1.6关系图详细设计说明书
3.1.7 限制条件
只有身份为管理员的用户可以进入 ,不能跳过登录页面直接进入。
3.1.8 测试要点
1、驱动模块和承接模块
2、前置条件
3、测试用例 ―― 输入和预期结果
3.2 成绩录入模块详细设计说明书
3.2.1 功能
成绩录入模块需要实现功能如下:录入方式(顺序、非顺序)自动查错、灵活的输入(权—
交互)对特殊情况的标志及处理、统计打印全校补考成绩。统计各任课老师所教各班的考试
成绩(平均、分段)。
3.2.1 性能
3.2.1.1 添加操作
项目名称 输入(全部由院系输入) 处理 输出 数据来源 权限设置
1. 姓名,性别,用户名,密码 将教师信息添 输出教师 管理员输 教师能够更
添加教师 权限 加到数据库 添加成功 入 改自己的信
界面 息
2. 课程号,课程名 将课程信息添 输出课程 管理员输
添加课程 加到数据库 信息添加 入
成功界面
3. 姓名,性别,年级,班级 将学生信息添 输出学生 管理员输
添加学生 加到数据库 信息添加 入
成功界面
4. 姓名,性别,用户名,密码 将管理员信息 输出管理 管理员输 管理员可以
添加管理 权限 添加到数据库 员信息添 入 修改自己的
员 加成功界 信息
面
3.2.1.2 删除操作
项目名称 输入(全部由院系输入) 处理 输出 数据来源 权限设置
1. 用户名 将教师信息从 输出教师 管理员输 管理员操作
删除教师 数据库消除 删除成功 入
界面
2. 课程号 将课程信息从 输出课程 管理员输 管理员操作
删除课程 数据库消除 删除成功 入
界面
3. 学号 将学生信息删 输出学生 管理员输 管理员操作
删除学生 除到数据库 信息删除 入
成功界面
4. 用户名,密码 将管理员信息 输出管理 管理员输 管理员操作
删除管理 删除到数据库 员信息删 入
员 除成功界
面详细设计说明书
3.2.1.3 修改操作
项目名称 修改(全部由院系输入) 处理 输出 数据来源 权限设置
1. 所教课程的课程名,年级, 将修改后的教 输出教师 管理员输 管理员操作,
修改教师 班级 师信息保存到 信息修改 入 教师能够更
信息 在数据库中 成功界面 改自己的信
息
1. 课程号,课程名 将修改后的课 输出课程 管理员输 管理员操作
修改课程 程信息保存到 信息修改 入
信息 在数据库中 成功界面
1. 姓名,性别,用户名,密码 将修改后的管 输出管理 管理员输 管理员能够
修改管理 理员信息保存 员信息修 入 更改自己的
员信息 到在数据库中 改成功界 信息
面
3.2.1.4 查看操作
项目名称 查看(全部由院系输入) 处理 输出 数据来源 权限设置
1. 在总表中查询 查看教师在数 教师在数 管理员输 管理员操作
查看教师 按教师用户名查询教师基 据库中的信息 据库中的 入
信息 本信息; 信息,除
密码。
1. 在课程表中查询 查看课程在数 输出课程 管理员输 管理员操作
查看课程 按课程号查询 据库中的信息 号,课程 入
信息 名,所任
老师,
1. 在总表中查询 查看管理员在 管理员姓 管理员输 管理员操作
查看管理 按用户名查询 数据库中的信 名 , 性 入
员信息 息 别,用户
名,
权限
3.2.3 全局数据变量
名称 标识符 类型 使用方式 访问方式 描述
数据库连接 sqlCon SqlConnectio 产生数据库连接 只读 在Web.config中定
nection n 操作动作 义连接字符串
数据库命令 SqlCommand 产生数据库操作 读写 在每个页面定义
sqlComm 动作
and
数据适配器 SqlDataAdapt 产生填充数据集 读写 在每个页面定义
sqlData er 的操作动作
Adapter
数据集 DataSet 存放数据 读写 在每个页面定义
dataSet
数据表格 DataGri DataGrid 显示数据 读写 根据页面需要定义详细设计说明书
d
数据读取 sqlData DataReader 读取数据 只读 在每个页面定义
reader
3.2.4局部数据变量
名称 标识符 类型 使用方式 访问方式 描述
考试次数 HomeworkDropDo DropDownList 仅使用 只读 绑定学生考试次数
DropDownLis wnList
t
课程 CourseDropDown DropDownList 仅使用 只读 绑定学生所能够选择
DropDownLis List 的科目
t
用户名 UserID String 仅使用 只读 DataGrid中绑定列中
用户名的值
根据页面需要定义
考试次数 SelectedHomewo String 仅使用 只读 DataGrid中绑定的
rk DropDownList所选取
课程的值,
根据页面需要定义
年级 grade String 仅使用 只读 DataGrid中绑定的
DropDownList所选取
年级的值,
根据页面需要定义
班级 Class String 仅使用 只读 DataGrid中绑定的
DropDownList所选取
班级的值,
根据页面需要定义
课程号 SelectedCourse String 仅使用 只读 DataGrid中绑定列中
课程号的值
根据页面需要定义
平时成绩 DisciplinePerc Int 仅使用 可读写 平时成绩比例
比例 entage
期末成绩 FinalPercentag Int 仅使用 可读写 期末成绩比例
比例 e
成绩(单 HomeworkScore Int 仅使用 可读写 单次成绩
次)
3.2.5存储过程
名称 参数 使用说明
CheckCourse @teacherid varchar(12) 返回教师的课程详细设计说明书
CheckRight @userid varchar(12) 返回教师所管辖的年级和班
级
Download @homework int, @teacherid 更新学生考试情况
varchar(12),
@CourseNumber int
DownloadStudent @homework int, @teacherid 检查单个学生考试情况
varchar(12), @studentid
varchar(12),
@CourseNumber int
SelectAllCourse 返回所有课程
SelectAllStudentHomework @homework int, @userid 查询所有学生的某次考试成
varchar(12), 绩
@CourseNumber int
SelectAllStudentScore @userid varchar(12), 返回所有学生的总成绩信息
@CourseNumber int
SelectCourse @grade int 返回该年级的所有课程
SelectDownload @teacherid varchar(12), 返回教师能够下载的所有考
@homework int, 试的连接
@CourseNumber int
SelectStudentHomework @userid varchar(12), 返回某个学生的某次考试成
@homework int, @teacherid 绩
varchar(12),
@CourseNumber int
UpdateStudentAverage @userid varchar(12), 计算某个学生的平均成绩
@teacherid varchar(12)
UpdateStudentHomework @userid varchar(12), 给学生的某次考试打分
@homework int,
@homeworkscore int,
@teacherid varchar(12),
@CourseNumber int
UpdateStudentScore @userid varchar(12), 给学生评定平时成绩和期末
@disciplinescore int, 成绩
@finalscore int,
@teacherid
varchar(12)
UpdateStudentTotalScore @homeworkper int, 计算学生总成绩
@disciplineper int,
@finalper int,
@CourseNumber int,
@TeacherID varchar(12)详细设计说明书
3.2.6 限制条件
只有身份为教师的用户可以进入,不能跳过登录界面直接进入
3.2.7 测试要点
1、驱动模块和承接模块
2、前置条件
3、测试用例 ―― 输入和预期结果
3.3 统计打印模块
3.3.1 功能
统计打印需要实现功能如下:统计打印一个班考试成绩(上中、中下、下中、下末)
统计打印一个班汇总成绩:(上、下)
统计打印全校考试成绩(分段、平均),统计打印全校汇总
统计打印各班补考成绩。
3.3.2 性能
3.3.2.1个人信息操作
项目名称 输入(全部由院系输入) 处理 输出 数据来源 权限设置
1. 用户名,密码,姓名,性别, 修改个人在数 输出教师 教师输入 教师操作
修改个人 所授课程 据中的信息 修改成功
信息 界面
3.3.2.2学生成绩批改操作
项目名称 输入(全部由院系输入) 处理 输出 数据来源 权限设置
1. 考试分数 批改学生相应 输出考试 教师输入 教师操作
学生考试 的考试成绩 批改成功详细设计说明书
计分 界面
3.3.2.3 学生成绩排序操作
项目名称 输入(全部由院系输入) 处理 输出 数据来源 权限设置
1. 考试分数 老师评改出考 输出考试 教师输入 教师操作
考试成绩 试成绩 成绩
统计
2. 各科成绩分数 电脑计算出平 输出平均 教师输入 教师操作
给定平均 均成绩 = 某科 考试成绩
成绩 考试成绩*相应
学分然后再算
出总合,然后再
除以考试科目
数
3. 各科考试成绩 电脑计算出总 输出总成 系统输入 教师操作
计算总成 成绩 = 某科考 绩
绩 试成绩*相应学
分然后再算出
总合
3.3.2.4 文档管理
项目名称 输入(全部由院系输入) 处理 输出 数据来源 权限设置
1. 查看命令 连接到相应科 输出所有 教师输入 教师操作
查看学生 目的子文件夹 学生文档
成绩文档
3.3.3全局变量
名称 标识符 类型 使用方式 访问方式 描述
数据库连接 conn SqlConnecti 产生数据库连 只读 在Web.config中
on 接操作动作 定义连接字符串
数据库命令 cmd SqlCommand 产生数据库操 读写 在每个页面定义
作动作
数据适配器 da SqlDataAdap 产生填充数据 读写 在每个页面定义
ter 集的操作动作
数据集 ds DataSet 存放数据 读写 在每个页面定义
数据表格 dg DataGrid 显示数据 读写 根据页面需要定义
数据读取 Dr DataReader 读取数据 只读 在每个页面定义详细设计说明书
Session对象 Session["Use Session 仅使用 只读 控制页面运行顺序
rID"]
3.3.4局部数据变量
名称 标识符 类型 使用方式 访问方式 描述
DirectoryIn DirectoryO Directory 仅使用 只读 保存文件目录
fo perator Info
对象
FileInput对 FileInput FileFiled 仅使用 只读 上传文件
象
DropDownLis Dropdownl DropDow 仅使用 只读 控制DataGrid中绑定的
t对象 ist1 nList DropDownList
根据页面需要定义
DropDownLis Dropdownl DropDow 仅使用 只读 控制DataGrid中绑定的
t对象 ist1 nList DropDownList
根据页面需要定义
用户名 uid String 仅使用 只读 DataGrid中绑定列中用
户名的值
根据页面需要定义
课程 Course String 仅使用 只读 DataGrid中绑定的
DropDownList所选取课
程的值,
根据页面需要定义
3.3.5 限制条件
在硬件中必须配有打印机,在排序前必须选择好排序的要求,如:是排出平均成绩的名
次还是总成绩的名次。
3.3.6 测试要点
1、驱动模块和承接模块
2、前置条件
3、测试用例 ―― 输入和预期结果详细设计说明书
4.接口设计
4.1 外部接口
软件接口:系统利用Visual C#提供与SQL Server2000连接进行访问数据库的操作。
服务器程序可利用SQL Server2000提供的对数据库备份的操作实现对数据
库的备份操作。
在网络软件接口方面,采取一种无差错的传输协议进行连接。
硬件接口:输入:采用键盘鼠标以及Visual C#的标准输入/输出进行输入处理。
输出:采用Visual C#的标准输入/输出或其它输出设备对输出进行处理。在
统计打印模块还需要有打印机的参与。
在网络传输部分,在网络硬件部分,为了实现高速传输,将使用高速ATM。
4.2 内部接口
数据库模块的操作由管理员通过密码登陆,然后对数据库进行相应的操作。通过对数据
库要进行的不同的操作来决定调用另外的哪个模块。模块间采用函数调用、参数传递、返回
值的方式进行信息传递。
5.数据库设计
本系统所选用的DBMS为SQL SERVER,系统主要是维护5张数据表:
1. 学生信息表详细设计说明书
2. 成绩表
3. 补考成绩表
4. 平均成绩表
5. 总成绩表详细设计说明书