详细设计说明书.docx
《详细设计说明书.docx》由会员分享,可在线阅读,更多相关《详细设计说明书.docx(36页珍藏版)》请在冰点文库上搜索。
详细设计说明书
软件工程详细设计说明书
1.引言
1.1编写目的
编写详细设计说明书的目的是为了使开发人员在完成概要设计说明书的基础上,完成概要设计的各项功能规定;为程序员写出实际的程序代码提供依据。
它是软件设计阶段所有任务和所有相关人员所需的参考资料。
预期的读者为系统的开发者、使用者和指导老师。
1.2背景
1.开发软件系统的名称:
学生体质测试结果统计分析系统;
2.任务提出者:
;
3.开发者:
;
4.用户:
浙江工业大学全体师生;
5.本系统将使用MySQL作为数据库存储系统。
1.3参考资料
1.本小组成员撰写的《可行性分说明书》;
2.本小组成员撰写的《需求分析说明书》;
3.本小组成员撰写的《概要设计说明书》。
2.系统的结构设计
根据学生体质测试结果统计分析系统的概要设计,本系统按照功能分解,可以分解为学生登录系统、教师登录系统和管理员登录系统。
三个系统又可以分为几个小系统,总的系统结构图,结构流程图如下:
图2.1总体系统结构图
图2.2结构流程图
3.人机交互界面设计
系统的初始界面:
图3.1
3.1学生系统
学生登录后界面:
图3.2
密码修改界面:
图3.3
成绩查询界面:
图3.4
学生的重修申请界面:
图3.5
学生提意见界面:
图3.6
3.2管理员系统
管理员登陆界面:
图3.7
修改密码:
图3.8
信息导入与修改界面:
图3.9
信息导入:
图3.10
信息导入成功提示:
图3.11
信息修改——插入:
图3.12
信息修改——删除:
图3.13
信息修改——更新:
图3.14
科目修改界面——插入:
图3.15
科目修改界面——删除:
图3.16
科目修改界面——插入:
图3.17
重修安排界面:
图3.18
查看学生申请重修界面:
图3.19
查看相关教师信息:
图3.20
发布学生重修安排结果:
图3.21
查看学生对权限的申请:
图3.22
图3.23
3.3教师系统
教师登陆界面:
图3.24
密码修改界面:
图3.25
密码修改界面:
图3.26
查看重修情况:
图3.27
查看学生建议界面:
图3.28
图3.29
成绩录入界面:
图3.30
4.模块设计
4.1.模块1(登录服务)
4.1.1功能
学生、教师、管理员登录系统。
4.1.2输入项
账号、密码
4.1.3输出项
产生SQL语言查询权限表,结果正确登录系统,失败给出相应成功失败提示。
4.1.4流程逻辑
图4.1.4模块1(登录服务)的流程逻辑图
4.1.5接口
硬件接口:
主要就是TCP/IP层中的网络接口层
软件接口:
具体来说开发中可能用到的ADO的常用对象有以下几个:
1.连接对象(Connection):
用来连接数据库。
2.记录集对象(RecordSet):
用来保存查询语句的返回结果。
3.命令对象(Command):
用来执行MySQL的存储过程。
4.参数对象(Parameter):
用来为存储过程或查询提供参数。
4.1.6存储分配
本模块用Java在Myeclipse中进行编码,直接的内存分配由Myeclipse运行时分配。
4.1.7限制条件
1.由于本系统的开发是基于浏览器B/S结构,所以浏览器的语言使用HTML,服务器端的语言使用java,开发人员将不能用其他的开发语言(编写组件除外)。
而数据库也将随之才用MySQL。
2.开发人员在编写代码的过程中需要严格按照软件工程的要求来进行,以利于接下来的测试而后维护升级。
4.1.8测试计划
多次操作测试性能。
4.2.模块2(密码服务)
4.2.1功能
学生、教师、管理员可进行本人的系统登录密码修改。
4.2.2输入项
账号及新、旧密码
4.2.3输出项
生成对应的SQL语言,发送修改数据库权限表,界面给出相应成功失败提示。
4.2.4流程逻辑
图4.3.4模块2(密码服务)的流程逻辑图
4.2.5接口
硬件接口:
主要就是TCP/IP层中的网络接口层
软件接口:
具体来说开发中可能用到的ADO的常用对象有以下几个:
1.连接对象(Connection):
用来连接数据库。
2.记录集对象(RecordSet):
用来保存查询语句的返回结果。
3.命令对象(Command):
用来执行MySQL的存储过程。
4.参数对象(Parameter):
用来为存储过程或查询提供参数。
4.2.6存储分配
本模块用Java在Myeclipse中进行编码,直接的内存分配由Myeclipse运行时分配。
4.2.7限制条件
(1)由于本系统的开发是基于浏览器B/S结构,所以浏览器的语言使用HTML,服务器端的语言使用java,开发人员将不能用其他的开发语言(编写组件除外)。
而数据库也将随之才用MySQL。
(2)开发人员在编写代码的过程中需要严格按照软件工程的要求来进行,以利于接下来的测试而后维护升级。
4.2.8测试计划
测试要点:
每次密码能否修改成功以及密码格式是否能保证
4.3模块3(学生个人基本信息)
4.3.1功能
提供学生个人基本信息查看功能。
4.3.2性能
对性能要求在1-6秒内做出反应。
4.3.3输入项
鼠标点击产生查询条件
4.3.4输出项
生成标准的SQL语句,发送设置浏览区命令
4.3.5流程逻辑
图4.7模块2(学生个人基本信息)的流程逻辑图
4.3.6接口
硬件接口:
主要就是TCP/IP层中的网络接口层
软件接口:
具体来说开发中可能用到的ADO的常用对象有以下几个:
1.连接对象(Connection):
用来连接数据库。
2.记录集对象(RecordSet):
用来保存查询语句的返回结果。
3.命令对象(Command):
用来执行MySQL的存储过程。
4.参数对象(Parameter):
用来为存储过程或查询提供参数。
4.3.7存储分配
本模块用Java在Myeclipse中进行编码,直接的内存分配由Myeclipse运行时分配。
4.3.8限制条件
(1)由于本系统的开发是基于浏览器B/S结构,所以浏览器的语言使用HTML,服务器端的语言使用java,开发人员将不能用其他的开发语言(编写组件除外)。
而数据库也将随之才用MySQL。
(2)开发人员在编写代码的过程中需要严格按照软件工程的要求来进行,以利于接下来的测试而后维护升级。
4.3.9测试计划
模拟多用户查询,测试性能。
4.4模块4(学生体侧结果分析)
4.4.1功能
通过该模块,学生可对自己体质测试结果进行查询
4.4.2性能
灵活性:
窗口响应绝大部分的快捷菜单和控制面板操作
时间性:
响应鼠标单击时间在4——5秒之间
4.4.3输入项
鼠标点击界面响应位置产生查询条件
4.4.4输出项
生成标准的SQL语句,将查询结果数据传送到画图软件(ECHARS/JavaScript),再将所得图片显示在界面上。
4.4.5设计方法(算法)
项目平均成绩=Σ项目历年成绩/年数
男生:
体质评估值=1000米成绩/满分标准*100*30%+50米成绩/满分标准*100*30%+引体向上成绩/满分标准*100*30%+跳远成绩/满分标准*100*10%
女生:
体质评估值=800米成绩/满分标准*100*30%+50米成绩/满分标准*100*30%+仰卧起坐成绩/满分标准*100*30%+跳远成绩/满分标准*100*10%
4.4.6流程逻辑
图5.7模块3(学生体侧结果分析)的流程逻辑图
4.4.7接口
硬件接口:
主要就是TCP/IP层中的网络接口层
软件接口:
具体来说开发中可能用到的ADO的常用对象有以下几个:
1.连接对象(Connection):
用来连接数据库。
2.记录集对象(RecordSet):
用来保存查询语句的返回结果。
3.命令对象(Command):
用来执行MySQL的存储过程。
4.参数对象(Parameter):
用来为存储过程或查询提供参数。
4.4.8存储分配
本模块用Java在Myeclipse中进行编码,直接的内存分配由Myeclipse运行时分配。
4.4.9限制条件
(1)由于本系统的开发是基于浏览器B/S结构,所以浏览器的语言使用HTML,服务器端的语言使用java,开发人员将不能用其他的开发语言(编写组件除外)。
而数据库也将随之才用MySQL。
(2)开发人员在编写代码的过程中需要严格按照软件工程的要求来进行,以利于接下来的测试而后维护升级。
4.4.10测试计划
多次对不同学生的体质结果进行计算分析,检验分析结果是否准确。
4.5模块5(重修申请)
4.5.1功能
统计重修名单,安排课程老师
4.5.3性能
灵活性:
窗口响应绝大部分的快捷菜单和控制面板操作
时间性:
响应鼠标单击时间在2——3秒之间
4.5.3输入项
学生提出重修请求
4.5.4输出项
生成SQL语言,修改数据库的重修表。
(之前未申明)
4.5.5流程逻辑
图4.5.5模块4(重修申请)的流程逻辑图
4.5.6接口
硬件接口:
主要就是TCP/IP层中的网络接口层
软件接口:
具体来说开发中可能用到的ADO的常用对象有以下几个:
1.连接对象(Connection):
用来连接数据库。
2.记录集对象(RecordSet):
用来保存查询语句的返回结果。
3.命令对象(Command):
用来执行MySQL的存储过程。
4.参数对象(Parameter):
用来为存储过程或查询提供参数。
4.5.7存储分配
本模块用Java在Myeclipse中进行编码,直接的内存分配由Myeclipse运行时分配。
4.5.8限制条件
(1)由于本系统的开发是基于浏览器B/S结构,所以浏览器的语言使用HTML,服务器端的语言使用java,开发人员将不能用其他的开发语言(编写组件除外)。
而数据库也将随之才用MySQL。
(2)开发人员在编写代码的过程中需要严格按照软件工程的要求来进行,以利于接下来的测试而后维护升级。
4.5.9测试计划
多次模拟操作,检验结果是否准确。
4.6模块6(提出建议)
4.6.1功能
学生可以就系统或者老师,对不满意或者有待改进的地方提出建议
4.6.2性能
灵活性:
窗口响应绝大部分的快捷菜单和控制面板操作
时间性:
响应鼠标单击时间在2——3秒之间
4.6.3输入项
学生建议
4.6.4输出项
生成SQL语言,修改数据库的建议表。
4.6.5流程逻辑
图4.6.5模块6(提出建议)的流程逻辑图
4.6.6接口
硬件接口:
主要就是TCP/IP层中的网络接口层
软件接口:
具体来说开发中可能用到的ADO的常用对象有以下几个:
1.连接对象(Connection):
用来连接数据库。
2.记录集对象(RecordSet):
用来保存查询语句的返回结果。
3.命令对象(Command):
用来执行SQL语句或MySQL的存储过程。
4.参数对象(Parameter):
用来为存储过程或查询提供参数。
4.6.7存储分配
本模块用Java在Eclipse中进行编码,直接的内存分配由Eclipse运行时分配。
4.6.8限制条件
(1)由于本系统的开发是基于浏览器B/S结构,所以浏览器的语言使用HTML,服务器端的语言使用Java,开发人员将不能用其他的开发语言(编写组件除外)。
而数据库也将随之才用MySQL。
(2)开发人员在编写代码的过程中需要严格按照软件工程的要求来进行,以利于接下来的测试而后维护升级。
4.6.9测试计划
多次测试检验性能。
4.7.模块7(教师个人基本信息)
4.7.1功能
存储教师的基本信息
4.7.2性能
灵活性:
窗口响应绝大部分的快捷菜单和控制面板操作
时间性:
响应鼠标单击时间在2——3秒之间
4.7.3输入项
鼠标点击界面响应位置产生查询条件
4.7.4输出项
生成标准的SQL语句,将查询结果数据显示在界面上。
4.7.5流程逻辑
图4.8.4模块7(教师信息管理)的流程逻辑图
4.7.6接口
硬件接口:
主要就是TCP/IP层中的网络接口层
软件接口:
具体来说开发中可能用到的ADO的常用对象有以下几个:
1.连接对象(Connection):
用来连接数据库。
2.记录集对象(RecordSet):
用来保存查询语句的返回结果。
3.命令对象(Command):
用来执行SQL语句或MySQL的存储过程。
4.参数对象(Parameter):
用来为存储过程或查询提供参数。
4.7.7存储分配
本模块用Java在Eclipse中进行编码,直接的内存分配由Eclipse运行时分配。
4.7.8限制条件
(1)由于本系统的开发是基于浏览器B/S结构,所以浏览器的语言使用HTML,服务器端的语言使用Java,开发人员将不能用其他的开发语言(编写组件除外)。
而数据库也将随之才用MySQL。
(2)开发人员在编写代码的过程中需要严格按照软件工程的要求来进行,以利于接下来的测试而后维护升级。
4.7.9测试计划
多次测试检验性能。
4.8.模块8(成绩管理)
4.8.1功能
通过成绩管理,系统管理所有进行过体测的学生的成绩
4.8.2性能
灵活性:
窗口响应绝大部分的快捷菜单和控制面板操作
时间性:
响应鼠标单击时间在2——3秒之间
4.8.3输入项
老师修改、删除等操作
4.8.4输出项
经过修改以后的新成绩表
4.8.5流程逻辑
图4.8.5模块8(成绩管理)的流程逻辑图
4.8.6接口
硬件接口:
主要就是TCP/IP层中的网络接口层
软件接口:
具体来说开发中可能用到的ADO的常用对象有以下几个:
1.连接对象(Connection):
用来连接数据库。
2.记录集对象(RecordSet):
用来保存查询语句的返回结果。
3.命令对象(Command):
用来执行SQL语句或MySQL的存储过程。
4.参数对象(Parameter):
用来为存储过程或查询提供参数。
4.8.7存储分配
本模块用Java在Eclipse中进行编码,直接的内存分配由Eclipse运行时分配。
4.8.8注释设计
在代码部分的适当位置有中文代码注释。
4.8.9限制条件
(1)由于本系统的开发是基于浏览器B/S结构,所以浏览器的语言使用HTML,服务器端的语言使用Java,开发人员将不能用其他的开发语言(编写组件除外)。
而数据库也将随之才用MySQL。
(2)开发人员在编写代码的过程中需要严格按照软件工程的要求来进行,以利于接下来的测试而后维护升级。
4.9.模块9(查看建议)
4.9.1功能
通过查询,使老师能够了解到学生对老师提出的建议
4.9.2性能
灵活性:
窗口响应绝大部分的快捷菜单和控制面板操作
时间性:
响应鼠标单击时间在2——3秒之间
4.9.3输入项
鼠标点击界面响应位置产生查询条件
4.9.4输出项
生成标准的SQL语句,将查询结果数据显示在界面上。
4.9.5流程逻辑
图4.9.5模块9(查看建议)的流程逻辑图
4.9.6接口
硬件接口:
主要就是TCP/IP层中的网络接口层
软件接口:
具体来说开发中可能用到的ADO的常用对象有以下几个:
1.连接对象(Connection):
用来连接数据库。
2.记录集对象(RecordSet):
用来保存查询语句的返回结果。
3.命令对象(Command):
用来执行SQL语句或MySQL的存储过程。
4.参数对象(Parameter):
用来为存储过程或查询提供参数。
4.9.7存储分配
本模块用Java在Eclipse中进行编码,直接的内存分配由Eclipse运行时分配。
4.9.8限制条件
(1)由于本系统的开发是基于浏览器B/S结构,所以浏览器的语言使用HTML,服务器端的语言使用Java,开发人员将不能用其他的开发语言(编写组件除外)。
而数据库也将随之才用MySQL。
(2)开发人员在编写代码的过程中需要严格按照软件工程的要求来进行,以利于接下来的测试而后维护升级。
4.9.9测试计划
多次操作测试性能。
4.10.模块10(学生、教师信息数据录入)
4.10.1功能
管理员通过此模块,可以一次性导入往年的未录进系统的数据信息
4.10.2性能
灵活性:
窗口响应绝大部分的快捷菜单和控制面板操作
时间性:
响应鼠标单击时间在2——3秒之间
4.10.3输入项
学生、教师信息
4.10.4输出项
产生SQL语言,生成学生、教师信息表。
4.10.5流程逻辑
图11.7模块9(学生、教师信息修改)的流程逻辑图
4.10.6接口
硬件接口:
主要就是TCP/IP层中的网络接口层
软件接口:
具体来说开发中可能用到的ADO的常用对象有以下几个:
1.连接对象(Connection):
用来连接数据库。
2.记录集对象(RecordSet):
用来保存查询语句的返回结果。
3.命令对象(Command):
用来执行SQL语句或MySQL的存储过程。
4.参数对象(Parameter):
用来为存储过程或查询提供参数。
4.10.7存储分配
本模块用Java在Eclipse中进行编码,直接的内存分配由Eclipse运行时分配。
4.10.8限制条件
(1)由于本系统的开发是基于浏览器B/S结构,所以浏览器的语言使用HTML,服务器端的语言使用Java,开发人员将不能用其他的开发语言(编写组件除外)。
而数据库也将随之才用MySQL。
(2)开发人员在编写代码的过程中需要严格按照软件工程的要求来进行,以利于接下来的测试而后维护升级。
4.10.9测试计划
多次操作测试性能。
4.11.模块11(科目信息修改)
4.11.1功能
管理员根据历年改动科目信息对考试科目及标准进行修改。
4.11.2性能
灵活性:
窗口响应绝大部分的快捷菜单和控制面板操作
时间性:
响应鼠标单击时间在2——3秒之间
4.11.3输入项
管理员根据考试信息进行修改。
4.11.4输出项
产生SQL语言,对数据库的科目标准表中的列进行增加删除,或是更改科目标准。
4.11.5流程逻辑
图4.13.5模块11(科目信息表)的流程逻辑图
4.11.6接口
硬件接口:
主要就是TCP/IP层中的网络接口层
软件接口:
具体来说开发中可能用到的ADO的常用对象有以下几个:
1.连接对象(Connection):
用来连接数据库。
2.记录集对象(RecordSet):
用来保存查询语句的返回结果。
3.命令对象(Command):
用来执行MySQL的存储过程。
4.参数对象(Parameter):
用来为存储过程或查询提供参数。
4.11.7存储分配
本模块用Java在Myeclipse中进行编码,直接的内存分配由Myeclipse运行时分配。
4.11.8限制条件
(1)由于本系统的开发是基于浏览器B/S结构,所以浏览器的语言使用HTML,服务器端的语言使用java,开发人员将不能用其他的开发语言(编写组件除外)。
而数据库也将随之才用MySQL。
(2)开发人员在编写代码的过程中需要严格按照软件工程的要求来进行,以利于接下来的测试而后维护升级。
4.11.9测试计划
多次操作测试性能。
4.12模块12(重修安排)
4.12.1功能
通过该模块,给需要重修的同学分配老师
4.12.2性能
灵活性:
窗口响应绝大部分的快捷菜单和控制面板操作
时间性:
响应鼠标单击时间在2——3秒之间
4.12.3输入项
管理员点击查看重修名单,安排课程老师.
4.12.4输出项
产生SQL语言,修改数据库的重修表的教师列.
4.12.5流程逻辑
图4.12.5模块12(重修安排)的流程逻辑图
4.13.6接口
硬件接口:
主要就是TCP/IP层中的网络接口层
软件接口:
具体来说开发中可能用到的ADO的常用对象有以下几个:
1.连接对象(Connection):
用来连接数据库。
2.记录集对象(RecordSet):
用来保存查询语句的返回结果。
3.命令对象(Command):
用来执行MySQL的存储过程。
4.参数对象(Parameter):
用来为存储过程或查询提供参数。
4.13.7存储分配
本模块用Java在Myeclipse中进行编码,直接的内存分配由Myeclipse运行时分配。
4.13.8限制条件
(1)由于本系统的开发是基于浏览器B/S结构,所以浏览器的语言使用HTML,服务器端的语言使用java,开发人员将不能用其他的开发语言(编写组件除外)。
而数据库也将随之才用MySQL。
(2)开发人员在编写代码的过程中需要严格按照软件工程的要求来进行,以利于接下来的测试而后维护升级。
4.13.9测试计划
多次操作测试性能
4.13.模块13(申请增加权限)
4.13.1功能
学生对系统查看权限提出请求,由管理员审核
4.13.2性能
灵活性:
窗口响应绝大部分的快捷菜单和控制面板操作
时间性:
响应鼠标单击时间在2——3秒之间
4.13.3输入项
学生输入申请权限内容
管理员读取权限申请表,更改用户权限
4.13.4输出项
1.产生SQL语言,修改数据库中的权限申请表
2.产生SQL语言,修改数据库中的权限表
4.13.5流程逻辑
图4.13.5模块13(申请增加权限)的流程逻辑图
4.13.6接口
硬件接口:
主要就是TCP/IP层中的网络接口层
软件接口:
具体来说开发中可能用到的ADO的常用对象有以下几个:
1.连接对象(Connection):
用来连接数据库。
2.记录集对象(RecordSet):
用来保存查询语句的返回结果。
3.命令对象(Command):
用来执行MySQL的存储过程。
4.参数对象(Parameter):
用来为存储过程或查询提供参数。
4.13.7存储分配
本模块用Java在Myeclipse中进行编码,直接的内存分配由Myeclipse运行时分配。
4.13.8限制条件
(1)由于本系统的开发是基于浏览器B/S结构,所以浏览器的语言使用HTML,服务器端的语言使用java,开发人员将不能用其他的开发语言(编写组件除外)。
而数据库也将随之才用MySQL。
(2)开发人员在编写代码的过程中需要严格按照软件工程的要求来进行,以利于接下来的测试而后维护升级。
4.13.9测试计划
多次操作测试性能。