在完成软件开发前期工作,结合《需求规格说明书》,并分别与软件使用者和程序员进行了较为深入地探讨和分析的基础上,项目小组(系统分析员)提出了这份软件概要设计说明书。
此概要设计说明书对《学生成绩管理系统》软件的功能分配,模块划分,程序的总体结构,输入输出和接口设计,运行设计,数据结构设计及出错设计等方面作了全面的概括性的说明,为软件详细设计奠定了基础,同时作为系统分析员工作的阶段性总结和程序员进行开发及未来测试的重要文档资料。
《学生成绩管理系统》软件即提供学校对学生成绩的有效管理和学生对成绩的查询
开发单位:福州大学软件学院数据库(1)班
《数据库需求分析与规划》(龚家骧)
《软件工程》(张海潘 )
清华大学计45班软件开发小组, 《<名地录>需求规格说明书》, 1998.
本软件主要提供几方面功能:
本地应用方面:
1. 录入功能
l 提供有权限的人员登入对系统进行管理
2. 查询功能
l 姓名匹配查询;
l 单位及部门匹配查询;
l 电话号码匹配查询(包括多个域);
3. 修改功能
l 修改所有的域,姓名、学号不能为空;
4. 添加功能
l 增加一个新的记录;
5. 删除功能
l 删除一个学生记录;
6. 查询
l 核对人员对系统进行访问;
7. 统计功能
l 对学生个人总成绩或班级平均分等的统计;
网络应用
8. 学生查询
l 提供学生查询自己的成绩;
9. 其他查询
l 提供他人访问学生成绩数据库;
学生名单(student) | |||
字段名 |
字段类型 |
字段长度 |
|
学号 |
int |
10 |
|
姓名 |
varchar |
30 |
|
专业代号 |
int |
5 |
|
班级代号 |
int |
5 |
|
入学时间 |
dateime |
10 |
|
学制 |
carchar |
10 |
|
3.2教学计划表
教学计划 | |||
字段名 |
字段类型 |
字段长度 |
|
专业代号 |
Int |
5 |
|
专业名称 |
varchar |
30 |
|
课程代号 |
Int |
5 |
|
课程名称 |
Varchar |
30 |
|
课程类别 |
Varchar |
10 |
|
开课学期 |
Varchar |
30 |
|
学时 |
Int |
10 |
|
学分 |
Int |
10 |
|
前导课程 |
Varchar |
30 |
|
后续课程 |
Varchar |
30 |
|
备注 |
Varchar |
100 |
|
3.3学生成绩表
学生成绩 | |||
字段名 |
字段类型 |
字段长度 |
|
学号 |
Int |
10 |
|
课程代号 |
Int |
5 |
|
课程类别 |
Varchar |
10 |
|
学分 |
Int |
10 |
|
学时 |
Int |
10 |
|
开课学期 |
Varchar |
10 |
|
课程成绩 |
Int |
5 |
|
考试时间 |
Datetime |
10 |
|
任课教师 |
varchar |
30 |
|
备注 |
Varchar |
100 |
|
4.1 登入模块(M1)
功能:是用户可以进行各种操作的必须前提。
输入项目:用户名、密码。
输出项目:浏览区和基本资料区
程序逻辑:
P1: 检查用户名、密码与数据库是否吻合(完整性和一致性)。若是,转
P2: 产生提示用户名或密码错误的消息窗口;
P3: 用户确认后退出程序运行;
P4: 进入主窗体;
P5: 进入事件等待状态;
4.2 关闭系统模块(M2)
功能:关闭并退出系统,保留相应状态数据。
输入项目:全局变量。
输出项目:更新后的数据库文件和配置文件。
程序逻辑:
P1: 设置数据库和配置文件;
P2: 释放系统资源并退出系统;
4.3 浏览模块(M3)
功能:文护窗口中浏览区中信息的更改和刷新。
性能:这是经常使用的一个模块,对性能要求在1~2秒内作出反应。
输入项目:鼠标或键盘事件。
输出项目:重新设置的浏览区中信息
程序逻辑:
P1: 若事件不是鼠标单击,转P3;
P2: 调用刷新基本资料模块M5,转P11;
P3: 若事件不是鼠标双击或回车,转P10;
P4: 调用详细资料模块M14;
P5: 若返回“添加”,调用修改模块M10;
P6: 若返回“修改”,调用修改模块M9;
P7: 若返回“删除”,调用删除模块M11;
P8: 若返回“打印”,调用打印模块M12;
P9: 转P11;
P10: 若事件不是上下方向键、pageup/pagedown或点击滚动栏,转P11;
P11: 进入事件等待状态;
4.4 刷新浏览模块(M4)
功能:重新经过修改的刷的浏览区。
4.5 基本资料模块(M5)
功能:文护窗口中基本资料区中信息的更改和刷新。
性能:此模块常使用,性能要求反应快。
输入项目:鼠标或键盘事件或手写板。
输出项目:更新后的基本资料区中信息
程序逻辑:
P1: 由接收到的事件更改备注;
P2: 进入等待事件状态;
4.6 刷新基本资料模块(M6)
功能:对更改后的基本资料区进行刷新。
输入项目:对原来记录中memo域的处理方式(更新、刷新)。
输出项目:设置浏览区和数据库。
4.7 系统功能模块(M7)
功能:选择各种系统功能
输入项目:鼠标、键盘或写字板事件。
输出项目:无
程序逻辑:
P1: 若事件为查询,调用查询模块M8,转P9;
P2: 若事件为修改,调用修改模块M9,转P9;
P3: 若事件为添加,调用增加模块M10,转P9;
P4: 若事件为删除,调用删除模块M11,转P9;
P5: 若事件为打印,调用打印模块M12,转P9;
P6: 若事件为统计,调用打印模块M13,转P9;
P7: 若事件为最小化,执行Windows缺省操作,转P9;
P8: 若事件为关闭,调用关闭系统模块M2;
P9: 进入事件等待状态;
4.8 查询模块(M8)
功能:完成查询功能。
性能:响应时间应尽量快。
输入项目:无。
输出项目:无。
程序逻辑:
P1: 进入查询窗体;
P2: 若用户取消,则返回;
P3: 获得查询结果;
P4: 查询结果显示在主窗体上,并等待用户确认;
P5: 若查询结果项数等于零,返回;
测试要点:测试各种查询方式。
4.9 修改模块(M9)
功能:完成修改功能。
输入项目:各种修改。
输出项目:修改后的基本资料
程序逻辑:
P1: 点击要修改的表;
P2: 产生窗体;
P3: 等待用户修改;
P4: 若取消,返回;
P5: 对数据进行修改;
P6: 判断不能为空的字段是否为空;
P7: 为空发出警告,并转到P3;
P8: 若不为空,保存数据到数据库。
P9: 调用刷新浏览模块M4。
P10: 调用刷新基本资料模块M6,返回;
4.10 添加模块(M10)
功能:完成增加功能。
输入项目:无。
输出项目:无。
程序逻辑: