1《JavaWEB程序设计》软件详细设计说明书学院:计算机学院班级:15级6班姓名:甘语楠学号:151106004指导教师:唐自力课设时间:2017-03-17至2017-06-022软件详细设计说明书1.引言1.1编写目的说明在线测试这一模块各部分的功能和结构,便于公司技术人员以后的查询和维护工作。2.总体设计2.1需求概述在原来精华网的基础上增加在线测试这一功能模块,实现教师出题、学生在线考试(自由测试、单元测试、模拟考试)、错题本,以及相关的系统维护功能。2.2软件结构在线测试的功能主要包括三部分:教师出题、学生在线考试和系统维护。其软件结构图如下:在线考试系统系统维护知识点基本信息年级科目基本信息模拟考试基本信息模拟考试错题本自由测试单元测试学生在线考试模拟考试成绩查询自由测试试卷录入单元测试试卷录入模拟考试试卷录入教师成绩查询教师试题录入修改试卷33.模块设计3.1系统维护系统维护包括对年级科目、知识点和模拟考试这些信息的维护,包括对相关内容的查看、添加和删除,并保持这些信息间的内部关联。3.1.1年级科目基本信息3.1.1.1管理年级科目基本信息表:2-2-2-1用例名:admin_subject.jsp位置:根目录/admin描述:管理每一年级的基本信息。一般事件过程:1:选择年级,输入该年级的科目,2:系统进行信息有效性检查。3:系统将科目信息从subject表中增加或删除其它事件过程:如果年级科目信息重复,则提示重新输入前导状态/条件:完成后的状态:系统在subject表内加入一个新的年级科目,更新列表3.1.1.2删除年级科目基本信息表:3.1.1.2用例名:admin_subjectdel.jsp位置:根目录/admin描述:删除选择的年级科目信息一般事件过程:1:从subject表中删除选择的年级科目信息其它事件过程:如果删除无效,显示出错信息前导状态/条件:完成后的状态:信息得到删除或失败后的错误信息,成功后返回admin_subject.jsp3.1.1.3增加年级科目基本信息表:3.1.1.3用例名:admin_subjectadd.jsp位置:根目录/admin4描述:在一定条件查看教师信息一般事件过程:在subject表中增加一条年级科目信息其它事件过程:如果年级科目信息存在,显示出错信息前导状态/条件:完成后的状态:更新admin_subject.jsp中的年级科目列表3.1.2知识点基本信息3.1.2.1管理知识点基本信息表:3.1.2.1用例名:admin_knowpoint.jsp位置:根目录/admin描述:管理每一年级的每一科目的知识点基本信息。一般事件过程:1:选择年级科目,输入对应的知识点名称,2:系统进行信息有效性检查。3:系统将知识点信息从knowpoint表增加或删除其它事件过程:如果知识点信息重复,则提示重新输入前导状态/条件:完成后的状态:系统在knowpoint表内加入一个新的知识点,更新列表3.1.2.2删除知识点基本信息表:3.1.2.2用例名:admin_knowdel.jsp位置:根目录/admin描述:删除选择的年级科目的知识点信息一般事件过程:1:从knowpoint表中删除选择的年级科目的知识点信息其它事件过程:如果删除无效,显示出错信息前导状态/条件:完成后的状态:信息得到删除或失败后的错误信息,成功后返回admin_knowpoint.jsp53.1.1.3增加知识点基本信息表:3.1.1.3用例名:admin_knowadd.jsp位置:根目录/admin描述:增加某一年级科目的知识点信息一般事件过程:在knowpoint表中增加一条知识点信息其它事件过程:如果知识点信息存在,显示出错信息前导状态/条件:完成后的状态:更新admin_knowpoint.jsp中的知识点列表3.1.3模拟考试基本信息3.1.3.1管理模拟考试基本信息表:3-1-3-1用例名:admin_mn_test.jsp位置:根目录/admin描述:管理所有年级的模拟考试的基本信息。一般事件过程:1:选择年级,选择模拟考试的开始和终止时间,输入模拟考试名称,2:系统进行信息有效性检查。3:系统将模拟考试信息增加或删除其它事件过程:如果模拟考试信息重复,则提示重新输入前导状态/条件:完成后的状态:系统在mn_test表内加入一个新的模拟考试条目3.1.3.2删除模拟考试基本信息表:3.1.1.2用例名:admin_mn_test_del.jsp位置:根目录/admin描述:删除选择的模拟考试信息一般事件过程:1:从mn_test表中删除选择的模拟考试信息其它事件过程:如果删除无效,显示出错信息前导状态/条件:6完成后的状态:信息得到删除或失败后的错误信息,成功后返回admin_mn_test.jsp,更新列表3.1.3.3增加模拟考试基本信息表:3.1.1.3用例名:admin_mn_test_add.jsp位置:根目录/admin描述:增加某一年级的模拟考试信息一般事件过程:在mn_test表中增加一条年级科目信息其它事件过程:如果年级科目信息存在,显示出错信息前导状态/条件:完成后的状态:信息得到更新或失败后的错误信息,成功后返回admin_mn_test.jsp,更新admin_mn_test.jsp中的年级科目列表3.2教师试题录入教师试题录入模拟包括录入自由测试、单元测试、和模拟考试的试卷,并可以对系统中的试卷或试题进行修改。3.2.1自由测试录入表:3-2-1用例名:QuestGen_free.jsp位置:根目录/teacher描述:以一份试卷的形式录入自由测试的题目。一般事件过程:1:选择年级、科目、知识点,输入试卷的题目,2:系统进行信息有效性检查。3:系统将每道题加入到question表,将试卷加入到test表其它事件过程:由updatetest_free.jsp完成后台数据库校验和插入的过程前导状态/条件:完成后的状态:系统在question,test表内加入相关信息73.2.2单元测试录入表:3-2-2用例名:QuestGen.jsp位置:根目录/teacher描述:以一份试卷的形式录入单元测试的题目。一般事件过程:1:选择年级、科目、知识点,输入试卷的题目,2:系统进行信息有效性检查。3:系统将每道题加入到question表,将试卷加入到test表其它事件过程:由updatetest.jsp完成后台数据库校验和插入的过程前导状态/条件:完成后的状态:系统在question,test表内加入相关信息3.2.3模拟测试录入表:3-2-1用例名:QuestGen_mn.jsp位置:根目录/teacher描述:以一份试卷的形式录入自由测试的题目。一般事件过程:1:选择年级、模拟考试、科目、知识点,输入试卷的题目,2:系统进行信息有效性检查。3:系统将每道题加入到question表,将试卷加入到test表,并在mn_test表中增加试卷及其科目信息其它事件过程:由updatetest_mn.jsp完成后台数据库校验和插入的过程前导状态/条件:完成后的状态:系统在question,test表内加入相关信息3.2.4查询考试成绩查询单元测试和模拟考试的每一份试卷的分数分布和学生成绩情况。表:3-2-4用例名:Query_test.jsp位置:根目录/teacher8描述:根据年级、科目、知识点和考试类型(单元测试,模拟考试)查询考试成绩的分布及学生成绩。一般事件过程:1:选择年级、科目、知识点和考试类型(单元测试,模拟考试),2:系统进行信息有效性检查。3:将查询的结果显示在列表中。其它事件过程:前导状态/条件:完成后的状态:由Query_test_unit.jsp,Query_test_mn.jsp显示查询结果3.2.4.1查询单元测试成绩表:3-2-4-1用例名:Query_test_unit.jsp位置:根目录/teacher描述:根据年级、科目、知识点查询考试成绩的分布及学生成绩。一般事件过程:1:输入查询分数的分数段2:系统进行信息有效性检查。3:将分数分布以柱状图的形式显示在页面中。其它事件过程:前导状态/条件:在Query_test.jsp输入查询条件完成后的状态:由Query_test_unit.jsp显示某分数段的学生信息3.2.4.2查询单元测试的学生考试成绩表:3-2-4-2用例名:Query_unit_test_mark.jsp位置:根目录/teacher描述:查询单元测试中某分数段的学生信息一般事件过程:其它事件过程:前导状态/条件:由Query_test_unit.jsp输入单元测试试卷ID和查询的分数段完成后的状态:在Query_unit_test_mark.jsp显示结果93.2.4.3查询模拟考试成绩表:3-2-4-3用例名:Query_test_mn.jsp位置:根目录/teacher描述:根据年级、科目查询考试成绩的分布及学生成绩。一般事件过程:1:输入查询分数的分数段2:系统进行信息有效性检查。3:将模拟考试总分的分数分布以柱状图的形式显示在页面中。其它事件过程:前导状态/条件:在Query_test.jsp输入查询条件完成后的状态:由Query_test_mn.jsp某次模拟考试的信息3.2.4.4查询某次模拟考试的一份试卷的成绩表:3-2-4-4用例名:Query_mn_test_mark.jsp位置:根目录/teacher描述:查询模拟考试中某份试卷的分数段的学生信息一般事件过程:1:输入查询分数的分数段2:系统进行信息有效性检查。3:在Query_mn_test_mark.jsp中显示查询结果其它事件过程:前导状态/条件:由Query_test_mn.jsp输入模拟考试的ID完成后的状态:在Query_mn_test_mark.jsp显示结果3.2.4.5查询单元测试的学生考试成绩表:3-2-4-2-5用例名:Query_mn_test_mark.jsp位置:根目录/teacher描述:查询模拟考试的一份试卷的某分数段的学生信息一般事件过程:其它事件过程:前导状态/条件:由Query_test_mn.jsp输入模拟考试的试卷ID和查询的分数段10完成后的状态:在Query_mn_test_mark.jsp显示结果3.2.5修改试卷查询单元测试和模拟考试的每一份试卷的分数分布和学生成绩情况。表:3-2-5用例名:modify_test.jsp位置:根目录/teacher描述:根据年级、科目、知识点和考试类型(单元测试,模拟考试和自由测试)查询试卷。一般事件过程:1:选择年级、科目、知识点和考试类型(单元测试,模拟考试和自由测试)2:系统进行信息有效性检查。3:将查询的结果显示在列表中。其它事件过程:3.2.5.1删除试卷表:3-2-5-1用例名:test_del.jsp位置:根目录/teacher描述:删除modify_test.jsp中选中的试卷一般事件过程:其它事件过程:前导状态/条件:由modify_test.js输入试卷的ID完成后的状态:删除有关试卷的各种信息,并在返回modify_test.jsp后更新列表3.2.5.2注销试卷表:3-2-5-2用例名:test_deactivde.jsp位置:根目录/teacher描述:注销modify_test.jsp中选中的试卷一般事件过程:其它事件过程:11前导状态/条件:由modify_test.js输入试卷的ID完成后的状态:注销选择的试卷,如果是单元测试(或自由测试)的试卷,将test表中记录的status字段设置为5;如果是模拟考试的试卷,将mn_test表中记录的status字段设置为5;被注销的试卷在页面中不会出现3.2.5.3注销试卷表:3-2-5-3用例名:test_deactivde.jsp位置:根目录/teacher描述:注销modify_test.jsp中选中的试卷一般事件过程:其它事件过程:前导状态/条件:由modify_tes