四概要设计说明书.docx
《四概要设计说明书.docx》由会员分享,可在线阅读,更多相关《四概要设计说明书.docx(32页珍藏版)》请在冰豆网上搜索。
四概要设计说明书
四、概要设计说明书
1.引言2
1.1编写目的2
1.2项目背景2
1.3定义2
1.4参考资料3
2.任务概述3
2.1目标3
2.2运行环境3
2.3需求概述3
2.4条件与限制5
3.总体设计5
3.1处理流程5
3.2总体结构和模块外部设计6
3.3功能分配7
3.4类图设计8
3.5时序图设计9
4.接口设计12
4.1外部接口12
4.2内部接口13
5.数据结构设计14
5.1逻辑结构设计14
5.2物理结构设计14
5.3数据结构与程序的关系20
6.运行设计21
6.1运行模块的组合21
6.2运行控制21
6.3运行时间21
7.出错处理设计22
7.1出错输出信息22
7.2出错处理对策22
8.安全保密设计22
9.维护设计22
1.引言
1.1编写目的
在本学生综合成绩管理系统项目的前一阶段,也就是需求分析阶段中,已经将系统用户对本系统的需求做了详细的阐述,这些用户需求已经在上一阶段中通过对一些班级班长以及学生会成员的询问获得,并在需求规格说明书中得到详尽得叙述及阐明。
本阶段已在系统的需求分析的基础上,对学生综合成绩管理系统做概要设计。
主要解决了实现该系统需求的程序模块设计问题。
包括如何把该系统划分成若干个模块、决定各个模块之间的接口、模块之间传递的信息,以及数据结构、模块结构的设计等。
在以下的概要设计报告中将对在本阶段中对系统所做的所有概要设计进行详细的说明。
在下一阶段的详细设计中,程序设计员可参考此概要设计报告,在概要设计对学生综合成绩管理系统所做的模块结构设计的基础上,对系统进行详细设计。
在以后的软件测试阶段也可参考此说明书,以便于了解在概要设计过程中所完成的各模块设计结构,或在修改时找出在本阶段设计的不足或错误。
1.2项目背景
a.项目的委托单位、开发单位和主管部门
本项目由哈工大(威海)软件工程专业软件工程课程设计提出。
b.该软件系统与其他
该系统的使用者为哈工大(威海)所有在校学生。
该系统与其他系统没有关联。
1.3定义
日常行为活动
在每学期中参加的学校,院系等组织的活动,包括学院卫生,征文比赛,校运会,国旗班等。
个性发展活动
学生在竞赛,学生活动等方面的优秀表现,像班委,学生会,省级以上竞赛等
体能
学校每学期进行的体能测试项目,包括跳远,1000米跑步等项目
1.4参考资料
a.项目经核准的计划任务书
b.项目开发计划
c.软件工程文档模板
d.史济民等《软件工程——原理、方法与应用》(第二版)高等教育出版社
2.任务概述
2.1目标
本系统旨在开发一个学生综合成绩管理平台,它将实现学生在网上进行同学互评,并查看互评结果,在网上查询自己的纯成绩及排名、综合成绩及排名。
管理员可以对班级及同学进行管理。
实现综合成绩自动化计算。
并且可以通过图表形式展示班级纯成绩和综合成绩变化情况和排名情况。
2.2运行环境
操作系统:
linux
支持环境:
django1.3及以上
数据库:
Mysql
2.3需求概述
编号
需求名称
输入
处理
输出
0101
登录
用户名,密码,验证码
验证正确性,登陆
错误信息
0102
退出
退出请求(界面点击)
退出系统
登陆页面
0103
初始化同学密码
学生学号
初始化其密码为000000
初始化成功
0104
修改密码
新密码和确认密码
更新用户密码
登陆页面
0105
导入纯成绩
Xls文件
根据文件插入同学信息
插入成功
0106
查看同学纯成绩
搜索信息
进行ajax搜索
跟搜索有关的同学信息
0107
查看班级平均纯成绩
无
计算班级平均成绩
以折线图显示图表信息
0108
日常活动设置
级别和活动名称
添加活动记录
添加成功信息
0109
个性发展设置
个性发展大类和名称
添加个性发展记录
显示添加成功
0120
添加班级
班级名称或班号
添加班级
添加成功
0121
修改班级
班级新信息
更新班级信息
更新成功
0122
删除班级
班号
删除班级和班级的同学
删除成功
0123
添加学生
学号,姓名,性别,班级
添加同学记录
添加成功
0124
修改学生
学生新的信息
更新学生信息
更新成功
0125
删除学生
学号
删除学生信息
删除成功
0126
设置综合成绩计算规则
日常活动,体能和个性发展及互评分
添加综合成绩设置记录
添加成功
0127
查看同学综合成绩及排名
查找信息
跟查找信息有关的同学成绩信息
成绩信息
0128
查看班级平均综合成绩及排名
无
各个班级平均综合成绩及排名
折线图信息
0129
故障处理
无
直接操作数据库中表
无
0130
设置互评信息
各个班优良中比例
设置互评记录
设置成功
0131
查看互评信息
查找信息
和查找有关的互评信息
互评信息
0201
登录
学号,密码和验证码
验证并登陆
出错信息
0202
退出
退出请求(界面点击)
退出系统
登陆页面
0203
修改密码
新密码和确认密码
修改密码
登陆页面
0204
查看个人详细信息
点击查看详细信息
查看同学详细信息
自己详细信息
0205
进行互评
互评人和互评结果
保存互评记录
无
0206
查看互评
查找信息
和查找有关的互评信息
互评信息
0207
查看同学纯成绩
搜索信息
进行ajax搜索
跟搜索有关的同学信息
0208
查看班级平均纯成绩
无
计算班级平均成绩
以折线图显示图表信息
0209
查看同学综合成绩及排名
查找信息
跟查找信息有关的同学成绩信息
成绩信息
0210
查看班级平均综合成绩及排名
无
各个班级平均综合成绩及排名
折线图信息
2.4条件与限制
(1)开发期限为2012年12月10-日~12月23日共计14天。
(2)开发语言为python语言。
(3)开发设备为个人电脑以及机房电脑。
(4)界面友好,适当扩展。
(5)无经费预算。
(6)最终成果为:
最终成品和各种开发文档。
3.总体设计
3.1处理流程
学生登录后处理流程:
管理员登录后处理流程:
3.2总体结构和模块外部设计
Excel表格形式:
学期学号成绩
总体结构:
3.3功能分配
模块
功能需求
权限管理
学生,班级信息管理
纯成绩
管理
互评管理
活动管理
综合测评管理
登录
√
退出
√
初始化同学密码
√
修改密码
√
导入纯成绩
√
查看同学纯成绩
√
查看班级平均纯成绩
√
日常活动设置
√
个性发展设置
√
添加班级
√
修改班级
√
删除班级
√
添加学生
√
修改学生
√
删除学生
√
设置综合成绩计算规则
√
查看同学综合成绩及排名
√
查看班级平均综合成绩及排名
√
故障处理
√
设置互评信息
√
查看互评信息
√
进行互评
√
3.4类图设计
3.5时序图设计
3.5.1查询成绩设计
3.5.2修改密码设计
3.5.3互评设计
3.5.4同学管理设计
3.5.5综合管理设计
4.接口设计
4.1外部接口
用户界面:
要对用户操作有良好的反馈处理,例如:
当管理员添加已经存在的同学时的反馈和添加成功时的反馈。
要方便用户操作,如查询排序等功能要尽可能简单,并以易于查看的方式展示内容,例如要通过折线图和饼状图展示各个班级的成绩情况。
可以将班级纯成绩和综合成绩信息(折线图)通过png图片以及pdf等导出来,并实现打印功能。
可以将学生纯成绩和综合成绩,以pdf,xls,csv格式导出,并实现打印预览功能。
硬件接口:
处理器要求:
PentiumⅡ或以上
运行环境:
python2.5及以上
内存要求:
512MB以上
软件接口:
操作系统:
linux系统即可
数据库:
mysql
开发工具:
vim,chrome
版本管理:
svn
开发语言:
python,javascripte,html,css
开发框架:
django,jquery,datatables,highchats
4.2内部接口
模块间接口采用数据耦合方式,通过参数表传递数据,交换信息:
5.数据结构设计
5.1逻辑结构设计
同学:
(姓名,学号,班级,性别,密码)
互评:
(评价学生,被评价学生,学期,评价,状态,开始日期,结束日期,没办各项的)
成绩:
(学生,成绩,学期)
班级:
(名称,班号)
综合成绩:
(互评分数,日常行为分数,个性发展分数,纯成绩,体能分数)
个性发展:
(组织活动(班长,学生会),比赛(数学建模))
日常行为:
(学院(学院卫生,学院的比赛),学校(校级的比赛,校级的活动))
验证码:
(条目,结果,过期时间,显示密文)
5.2物理结构设计
1.assessment的数据字典:
互评设置
字段名
数据类型
长度
可否为空
键引用
字段含义
备注
id
int
11
否
主键
ID
term
varchar
16
否
学期
unique
excellent
int
11
否
优
good
int
11
否
良
ordinary
int
11
否
中
begindate
date
0
否
开始日期
enddate
date
0
否
结束日期
2.auth_group的数据字典:
字段名
数据类型
长度
可否为空
键引用
字段含义
备注
id
int
11
否
主键
ID
name
varchar
80
否
3.auth_group_permissions的数据字典:
字段名
数据类型
长度
可否为空
键引用
字段含义
备注
id
int
11
否
主键
ID
group_id
int
11
否
permission_id
int
11
否
4.auth_message的数据字典:
字段名
数据类型
长度
可否为空
键引用
字段含义
备注
id
int
11
否
主键
ID
user_id
int
11
否
message
longtext
0
否
5.auth_permission的数据字典:
字段名
数据类型
长度
可否为空
键引用
字段含义
备注
id
int
11
否
主键
ID
name
varchar
50
否
content_type_id
int
11
否
codename
varchar
100
6auth_user的数据字典:
字段名
数据类型
长度
可否为空
键引用
字段含义
备注
id
int
11
否
主键
ID
username
varchar
30
否
first_name
varchar
30
否
last_name
varchar
30
否
email
varchar
75
否
password
varchar
128
否
is_staff
tinyint
1
否
is_active
tinyint
1
否
is_superuser
tinyint
1
否
last_login
datetime
0
否
date_joined
datetime
0
否
.7.auth_user_groups的数据字典:
字段名
数据类型
长度
可否为空
键引用
字段含义
备注
id
int
11
否
主键
ID
user_id
int
11
否
group_id
int
11
否
8.auth_user_permissions的数据字典:
字段名
数据类型
长度
可否为空
键引用
字段含义
备注
id
int
11
否
主键
ID
user_id
int
11
否
permission_id
int
11
否
9.behavior的数据字典:
日常行为活动
字段名
数据类型
长度
可否为空
键引用
字段含义
备注
id
int
11
否
主键
ID
actlevel
varchar
1
否
级别
0学校,1学院
name
varchar
16
否
名称
10.captcha_captchascore的数据字典:
字段名
数据类型
长度
可否为空
键引用
字段含义
备注
id
int
11
否
主键
ID
challenge
varchar
32
否
response
varchar
32
否
hashkey
varchar
40
否
expiration
datetime
0
否
11.class的数据字典:
班级
字段名
数据类型
长度
可否为空
键引用
字段含义
备注
id
int
11
否
主键
ID
classid
varchar
10
否
班号
unique
classname
varchar
20
否
班级名称
performance的数据字典:
综合测评设置
字段名
数据类型
长度
可否为空
键引用
字段含义
备注
id
int
11
否
主键
ID
excellent
double
0
否
优分数
good
double
0
否
良分数
ordinary
double
0
否
中分数
physical
double
0
否
体能分数
behavior
double
0
否
日常行为分基础分
development
double
0
否
单项最高分
moral
double
0
否
互评最高分
behaviorup
double
0
否
日常行为最高分
term
varchar
16
否
学期
unique
13.comperformancebehaviorscore的数据字典:
日常活动加分
字段名
数据类型
长度
可否为空
键引用
字段含义
备注
id
int
11
否
主键
ID
student_id
int
11
否
外键
同学
comperformance_id
int
11
否
外键
综合成绩管理
behavior_id
int
11
否
外键
日常行为
score
double
0
否
分数
14.comperformancedevelopmentscore的数据字典:
个性发展分
字段名
数据类型
长度
可否为空
键引用
字段含义
备注
id
int
11
否
主键
ID
student_id
int
11
否
外键
学生
comperformance_id
int
11
否
外键
综合成绩管理
development_id
int
11
否
外键
个性发展
score
double
0
否
分数
15.comperformancephysicalscore的数据字典:
体能加分
字段名
数据类型
长度
可否为空
键引用
字段含义
备注
id
int
11
否
主键
ID
student_id
int
11
否
外键
同学
comperformance_id
int
11
否
外键
综合成绩管理
score
double
0
否
分数
16.development的数据字典:
个性发展活动
字段名
数据类型
长度
可否为空
键引用
字段含义
备注
id
int
11
否
主键
ID
parent
varchar
1
否
个性发展大类
0组织管理,1创新,2其他
name
varchar
11
否
个性发展名称
17.django_content_type的数据字典:
字段名
数据类型
长度
可否为空
键引用
字段含义
备注
id
int
11
否
主键
ID
name
varchar
100
否
app_label
varchar
100
否
model
varchar
100
否
18.django_session的数据字典:
字段名
数据类型
长度
可否为空
键引用
字段含义
备注
session_key
varchar
400
否
主键
ID
session_data
longtext
0
否
expire_date
datetime
0
否
19.django_site的数据字典:
字段名
数据类型
长度
可否为空
键引用
字段含义
备注
id
int
11
否
主键
ID
domain
varchar
100
否
name
varchar
50
否
20.grade的数据字典:
成绩
字段名
数据类型
长度
可否为空
键引用
字段含义
备注
id
int
11
否
主键
ID
term
varchar
16
否
学期
student_id
int
11
否
外键
同学
score
double
0
否
分数
21south_migrationhistory的数据字典:
字段名
数据类型
长度
可否为空
键引用
字段含义
备注
id
int
11
否
主键
ID
app_name
varchar
255
否
migration
varchar
255
否
applied
datetime
0
否
22.student的数据字典:
学生
字段名
数据类型
长度
可否为空
键引用
字段含义
备注
id
int
11
否
主键
ID
user_id
int
11
否
realname
varchar
16
否
姓名
theclass_id
int
11
否
外键
班级
sex
varchar
1
否
性别
0男,1女
performancescore的数据字典:
综合测评分数
字段名
数据类型
长度
可否为空
键引用
字段含义
备注
id
int
11
否
主键
ID
student_id
int
11
否
外键
同学
comperformance_id
int
11
否
外键
综合成绩管理
score
double
0
否
综合成绩分数
assrssmentscore
double
0
否
互评分数
24.django_admin_log的数据字典:
字段名
数据类型
长度
可否为空
键引用
字段含义
备注
id
int
11
否
主键
ID
action_time
datetime
0
否
user_id
int
11
否
content_type_id
int
11
是
object_id
longtext
0
是
object_repr
varchar
200
否
action_flag
smallint
5
否
change_message
longtext
0
否
25.assessmentrecord的数据字典:
互评记录
字段名
数据类型
长度
可否为空
键引用
字段含义
备注
id
int
11
否
主键
ID
assessment_id
int
11
否
外键
互评
result
varchar
1
否
评价结果
0优,1良,2中,3无
ostudent_id
int
11
否
外键
评价同学
dstudent_id
int
11
否
外键
被评价同学
26.assessmentrow的数据字典:
每人互评记录
字段名
数据类型
长度
可