《在线测试系统》总体设计说明书**: ***指导教师:***专业名称:软件测试2013年4月9日目录1.引言 (2)1.1编写目的 (2)1.2背景 (2)1.3定义 (2)1.4参考资料 (3)2.任务概述 (3)2.1目标 (3)2.2用户特点 (3)3.总体设计 (3)3.1 本系统完成学生在线测试功能 (3)3.2 运行环境 (4)3.3整个系统操作流图 (5)3.4结构 (6)3.41服务器端结构 (6)3.42客户端结构 (6)3.5人工处理过程 (7)4.接口设计 (7)4.1用户接口: (7)4.2外部接口 (7)5. 运行设计运行设计 (8)5.1运行模块组合 (8)5.1.1学生个人信息 (8)5.1.2学生成绩查询 (8)5.1.3学生修改密码 (9)5.1.4学生测试 (9)5.2运行控制 (10)5.2.1注册 (10)5.2.2修改信息和忘记密码 (10)5.2.3搜索和查询试卷 (11)5.2.4用户留言、试卷更新 (11)5.2.7帮助 (11)5.3运行时间 (11)6.系统数据结构设计 (12)6.1逻辑结构设计要点 (12)测试系统进行设计的时候,首先要考虑的就是其逻辑结构的设计,主要表现在以下几个方面: (12)6.2物理结构设计要点 (13)6.3数据结构和程序的关系 (13)7.系统出错处理设计 (14)7.1出错信息 (14)7.2补救措施 (14)1.引言1.1编写目的本文档的目的在于简单介绍本小组开发的在线测试系统,让读者能够较为清楚的认识本系统的功能和基本数据,让读者知道怎样使用本系统。
本文档的范围包括任务概述,总体设计,接口设计,运行设计,系统数据结构设计,系统出错处理设计。
预期读者为客户代表及程序设计人员1.2背景a.在线测试系统b. 本项目的任务提出者:黄慧开发者:黄慧小组所有成员主要用户是各个院校c. 该软件系统和其他机构的基本的相互来往关系1.3定义My SQL :数据库管理软件DBMS 数据管理系统Windows 7/xp以上运行环境JBOSS:服务器1.4参考资料a 《软件工程》清华大学出版社1997b 《ASPNET动态网站设计》电子工业出版社20072.任务概述2.1目标在线测试系统是由本小组开发的在线测试平台。
目标是为了方便考生们测试,教师阅卷,管理员管理而开发的系统。
该测试系统包括了考生测试,用户管理,测试管理,试卷管理,题库管理等多个功能。
定位于节省测试过程中的成本,方便管理员对测试的管理。
2.2用户特点本系统是面向大众的,广大在校师生的。
方便用户使用。
3.总体设计3.1 本系统完成学生在线测试功能系统的功能如下:在线测试系统学生老师管理员登陆测试系统登陆测试系统设置用户的权限修改密码查询所教学生的分数管理整个测试系统进行测试修改密码系统的维护以及基本操作功能查询分数3.2 运行环境环境名称软件环境硬件环境服务器端操作系统:windows XP数据库:SQL SERVER2005最低配置:CPU为P4 2.66Ghz,内存为512M;客户端IE6.0 以及以上版本能支持IE6.0以及以上版本的操作系统所需要的最低硬件配置3.3整个系统操作流图用户 管理员登陆学生 查看测试规则修改密码开始测试进行查分添加试题 添加用户修改用户判断级别删除用户生成试卷 是否生成试卷删除考题 用户查分3.4结构3.41服务器端结构 3.42客户端结构对于用户实现功能: 对于管理人员实现功能如下:试题管理部分添加试题 查询试题 修改试题 删除试题 対试题进行批改参加测试人员的部分登录 聊天 试题操作 修改 保存 标记检查退出管理人员部分登录对提交的试卷进行操作退出进行保存放弃保存3.5人工处理过程考生:开始测试,进行查分修改密码查看测试规则管理员:添加试题修改考题删除考题添加用户删除用户设置测试参数用户查分4.接口设计4.1用户接口:该在线测试系统系统基于B/S构架,使用浏览器面对用户。
4.2外部接口硬件接口:采用常见的Ethernet接口。
软件接口:软件接口是通过JDBC对MySQL数据库进行连接4.3内部接口采用JSP+Servlet+Javabean的组合,结合xml语言实现系统各模块功能的结合及实现。
5.运行设计运行设计5.1运行模块组合5.1.1学生个人信息学生请求查看自己的个人信息,系统根据学生登录时的信息,在学生信息表中找到符合条件的信息反馈给学生。
查看学生个人信息时序图如2.4所示:图2.4 学生个人信息时序图5.1.2学生成绩查询学生请求查看测试成绩,系统根据学生的基本信息,在学生成绩表中找到符合条件的信息反馈给学生。
查看学生成绩时序图如2.5所示:图2.5 学生成绩查询时序图5.1.3学生修改密码学生请求修改自己的密码,系统根据学生修改的信息,在学生信息表中插入修改的信息并提示学生修改结果。
查看学生修改密码的时序图如2.6所示:图2.6 学生修改密码时序图5.1.4学生测试学生想测试系统请求测试,测试系统为学生查找该学生可以进行的测试科目和相对应的试卷,并把试卷信息反馈给学生。
学生进入测试状态开始答题,并保存试卷。
测试结束时,学生应提交试卷。
学生测试时序图如2.7所示:图2.7 学生测试时序图5.2运行控制5.2.1注册用户输入自己的名字、学号和密码注册用户5.2.2修改信息和忘记密码用户可以对自己的信息进行修改,把用户信息放于数据库。
如果用户忘记密码,可以进行重置,进行信息重新填写。
5.2.3搜索和查询试卷可以对自己做过的试题根据日期或试题名称进行查询试题5.2.4用户留言、试卷更新做过试题之后,用户可以留言,写出自己的感受。
系统管理员可以根据留言,对试题进行增加、删除和修改。
5.2.7帮助可以设置一个聊天面板,在线用户可以交流,但是在测试期间这个功能就会不能使用5.3运行时间考生在做题时,必须设置时间,对自己做题效率进行测试。
这个时间可以由用户自己设置,但是在正常测试情况下,考生必须遵循学校规定,不能对时间进行修改。
6.系统数据结构设计6.1逻辑结构设计要点测试系统进行设计的时候,首先要考虑的就是其逻辑结构的设计,主要表现在以下几个方面:1. 从E-R图向关系模式转化。
数据库的逻辑设计主要是将概念模型转换成一般的关系模式,也就是将E-R图中的实体、实体的属性和实体之间的联系转化为关系模式。
在转化过程中会遇到如下问题:(1)命名问题。
命名问题可以采用原名,也可以另行命名,避免重名。
(2)非原子属性问题。
非原子属性问题可将其进行纵向和横行展开。
(3)联系转换问题。
联系可用关系表示。
2. 数据模型的优化。
数据库逻辑设计的结果不是唯一的。
为了进一步提高数据库使用系统的性能,还应该适当修改数据模型的结构,提高查询的速度。
3. 关系视图设计。
关系视图的设计又称为外模式的设计,也叫用户模式设计,是用户可直接访问的数据模式。
同一系统中,不同用户可有不同的关系视图。
关系视图来自逻辑模式,但在结构和形式上可能不同于逻辑模式,所以它不是逻辑模式的简单子集。
6.2物理结构设计要点在对测试系统进行开发的时候,设计人员一定要做到以下几点:(1)首先必须了解存储器的内部特征,特别是存储结构和存取方法;(2)充分了解使用环境,特别是使用的处理频率和响应时间要求;(3)依据充分了解外存设备的特性。
比如我们要对学生提交的数据进行处理的时候,我们一定要先了解把数据提交给数据库以后,进行存储的过程,采用最简单而有效的方法,使得存储在内存中的数据占用的内存空间最好,这样就很好的对内存资源进行合理使用,从而节省大量资源空间。
6.3数据结构和程序的关系数据结构和程序语言和设计思想的关系。
当我们能把数据结构的学习和程序设计语言,程序设计想法相联系起来的时候,我想我们对数据结构本身的认识已经更加深刻了,我们学习到每一种的新的数据结构的时候我们不再恐慌,因为我们知道了任何一种数据结构都有其共同的共性和特殊的特性,每一种数据结构都是为了一个领域所现实的,从这一方面来说,数据结构本身就具有继承特性,我们可以用一个继承树来表示一个完整的数据结构体系,而每一种数据结构都是继承体系中的一个子节点。
7.系统出错处理设计7.1出错信息本程序多处采用了异常处理的机制,当遇到异常时不但能及时的处理,保证程序的安全性和稳定性,而且各种出错信息能通过页面形式,及时告诉用户出错的原因及解决的办法,使用户以后能够减少错误的发生。
程序的大部分地方还采取了出错保护,如输入内容的长度和类型等减少了用户出错的可能。
1.由于输入信息不符合规范(如:考生分数为负数),称之为软错误;2.由于硬件方面的错误(如:网络传输超时、硬件出错等),称之为硬错误;3.对于一些关键的操作(如:保存考题时),应该提供提示确认机制;4.对于数据、测试文档,都是要提供相应的保密措施设置;7.2补救措施1.对于软错误,需要在添加/修改操作中及时对输入数据进行验证,分析错误的类型,并且给出相应的错误提示语句,传送到客户端的浏览器上;2.对于硬错误,错误类型较少而且比较明确,所以可以在可能出错的地方中输出相应的出错语句,并将程序重置,最后返回输入阶段;3.后备技术说明准备采用的后备技术,当原始数据丢失时启用的副本的建立和启动的技术,例如周期性的把磁盘信息记录在案;4.恢复及在启动技术说明将使用的恢复再启动技术,是软件从故障点恢复执行或是软件从头开始重新开始运行的方法5.对于数据库连接错误,这类错误主要是数据库设置不正确,或SQL Server异常引起的,我们只要取消本次操作,联系管理员对数据库进行检查。
6.对于各种不正当操作可能发生的错误,我们主要是通过刷新页面或者等待系统自动响应来解决问题。