基于J2EE技术的在线考试系统的设计与实现-学士论文_第1页
基于J2EE技术的在线考试系统的设计与实现-学士论文_第2页
基于J2EE技术的在线考试系统的设计与实现-学士论文_第3页
基于J2EE技术的在线考试系统的设计与实现-学士论文_第4页
基于J2EE技术的在线考试系统的设计与实现-学士论文_第5页
免费预览已结束,剩余63页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

密级: NANCHANG UNIVERSITY 学 士 学 位 论 文THESIS OF BACHELOR 题 目 基于J2EE技术的在线考试系统的设计与实现 学 院: 软件学院 系 软件工程 专业班级: 学生姓名: 学号: 指导教师: 职称: 起讫日期: 摘要基于J2EE技术的在线考试系统的设计与实现 摘 要在我国,虽然远程教育已经蓬勃发展起来,但是目前学校和社会上的各种考试大都是采用传统的考试方式,在此方式下,组织一次考试过程繁琐。显然,随着考试类型的不断增加以及考试要求的不断提高,教师的工作量将会越来越大,并且其工作将是一件十分繁琐和非常容易出错的事情,可以说传统的考试方式已经不能适应现代考试的需要。随着计算机的迅猛发展,网络应用不断扩大,如远程教育和虚拟大学的出现等等,且这些应用正逐步深入千家万户。人们迫切要求利用这些技术进行网上考试,以减轻教师的工作负担及提高工作效率,与此同时也提高了考试质量,从而使考试更趋于公证、客观,更加激发学生的学习兴趣。例如目前许多国际著名的计算机公司所举办的各种认证考试绝大部分采用这种方式。网上在线考试是现阶段研究开发的一个热点。它是建立在国际互联网上的应用系统,客户端的配置可以极为简单使考试不受地域的局限。一个完备的在线考试系统可以使用户在网上学习过后及时检验自己的学习效果,已发现自己的不足,使得学习效率得到很大提高。在线考试系统中题目的生成、试卷的提交、成绩的批阅等都可以在网络上自动完成。只要形成一套成熟的题库就可以实现考试的自动化。这样一来,教师所要做的只是精心设计题目、维护题库,而不是组织考试,从而大大减轻了教师的负担,这表明其经济性是相当可观的。为了适应新形势的发展,我进行了这一系统的初步设计工作,也可以说是做一个初步的探索,希望它能够在各类考试中发挥高效、便捷的作用,把老师从繁重的工作中解脱出来。本文就它的设计内容与功能方面做详细的说明,此系统是结合所学知识及其平时所做实验而设计出来的。关键词 :在线考试;J2EE;自动化;高效 IAbctractDesign and implementation of online examination system based on J2EE technologyAbstractIn China, although the distance education has flourished, but the various examinations on the school and society are based on traditional examination, in this way, to organize an examination process is cumbersome. Obviously, with the increasing and examination of the type of examination requirements continue to increase the workload of teachers will become increasingly large, and its work will be a very tedious and very error-prone, it can be said that the traditional examination has can not meet the needs of modern examination.With the rapid development of computer network applications continues to expand, such as distance education and the emergence of the virtual university, and these applications are gradually household word. The people urgently requires the use of these technologies for online examination, to reduce teachers workload and improve work efficiency, and at the same time improving the quality of the exam, so that the test tends to be more notary, objective, and more to stimulate student interest in learning. For example, many of the worlds leading computer companies organized by the most of the certification exam that way. Online exam is a hot topic of research and development at this stage. It is built on the Internet applications, client configuration can be very simple exam without geographical limitations. A complete online examination system allows the user to test their learning effect after the e-learning has been found wanting, making the learning efficiency is greatly improved. The generation of the topic in the online examination system, the papers submitted, the marking of the results and so can be done automatically on the network. As long as the formation of a mature exam test automation can be achieved. As a result, teachers have to do is carefully designed topic maintenance exam, rather than the organization of the examination, thus greatly reducing the burden on teachers, which indicates that the economy is considerable. In order to adapt to the new situation, I conducted the preliminary design of the system, it can be said to do a preliminary exploration, hope that it can play an efficient and convenient role in all kinds of examinations, the teacher from the heavy work freed.In this paper, a detailed description on its design, content and function, this system is a combination of the knowledge and its usually done experiments designed.Keywords: Online Examination; J2EE; Automation; EfficientII目录目录摘 要IAbstractII目录III第一章绪论11.1选题的背景11.2国内外研究现状11.3研究的意义11.4系统目标2第二章需求分析22.1系统整体功能22.2模块功能需求描述3第三章总体设计方案53.1系统环境概况53.2运行环境63.3基本处理流程6第四章详细设计74.1本系统主要功能模块介绍84.2基础数据管理84.3权限管理84.4命题人设置94.5试卷产生104.6在线考试11第五章数据库设计135.1概念结构设计135.2逻辑结构设计145.3 物理结构设计225.4存储结构22第六章系统测试236.1测试策略236.2测试进度安排236.3测试资源236.4关键测试点236.5测试用例构建256.6测试用例26第七章系统实现317.1后台管理部分317.2在线考试部分36第八章总结与展望39参考文献40致 谢41附 录42附录A.功能源代码42附录B.数据模型类52IV第一章 绪论第一章 绪论1.1选题的背景随着市场经济的发展和人们生活水平的提高,随着科学技术的发展,计算机领域不断取得新的研究成果。计算机在代替和延伸脑力劳动方面发挥越来越重要的作用,不仅在工业方面而且在日常生活中也越来越离不开计算机。人们已经不满足于上网浏览网页,而是想通过网络来实现现实生活中需要处理的事情。传统的考试需要老师编写试卷、打印试卷、安排考试、安排监考、收取试卷、评改试卷、讲评试卷和分析试卷,等等。这是一个漫长而复杂的过程,已经越来越不适应现代教学的需要。随着计算机与网络技术的发展,在线考试系统应运而生。1.2国内外研究现状在我国,虽然远程教育已经蓬勃发展起来,但是目前学校和社会上的各种考试大都是采用传统的考试方式,在此方式下,组织一次考试过程繁琐。显然,随着考试类型的不断增加以及考试要求的不断提高,教师的工作量将会越来越大,并且其工作将是一件十分繁琐和非常容易出错的事情,可以说传统的考试方式已经不能适应现代考试的需要。随着计算机的迅猛发展,网络应用不断扩大,如远程教育和虚拟大学的出现等等,且这些应用正逐步深入千家万户。人们迫切要求利用这些技术进行网上考试,以减轻教师的工作负担及提高工作效率,与此同时也提高了考试质量,从而使考试更趋于公证、客观,更加激发学生的学习兴趣。例如目前许多国际著名的计算机公司所举办的各种认证考试绝大部分采用这种方式。网上在线考试是现阶段研究开发的一个热点。它是建立在国际互联网上的应用系统,客户端的配置可以极为简单使考试不受地域的局限。一个完备的在线考试系统可以使用户在网上学习过后及时检验自己的学习效果,已发现自己的不足,使得学习效率得到很大提高。在线考试系统中题目的生成、试卷的提交、成绩的批阅等都可以在网络上自动完成。只要形成一套成熟的题库就可以实现考试的自动化。这样一来,教师所要做的只是精心设计题目、维护题库,而不是组织考试,从而大大减轻了教师的负担,这表明其经济性是相当可观的。为了适应新形势的发展,我进行了这一系统的初步设计工作,也可以说是做一个初步的探索,希望它能够在各类考试中发挥高效、便捷的作用,把老师从繁重的工作中解脱出来。1第一章 绪论1.3研究的意义传统的考试需要老师编写试卷、打印试卷、安排考试、安排监考、收取试卷、评改试卷、讲评试卷和分析试卷,等等。这是一个漫长而复杂的过程,已经越来越不适应现代教学的需要。随着计算机与网络技术的发展,在线考试系统应运而生。与传统模式相比,在线考试系统可以实现教考分离,以及考务工作的全自动化管理,可以有效利用校园网的软硬件资源,使其发挥最大效力,更好地为学校的教学、科研、管理服务,可以大规模的实行考试,实现考试的客观性、公正性,自动化组卷、阅卷可以减轻教师的工作强度。通过网络实现网上在线考试,是现代教育技术的一个具体实现,具有很重要的现实意义。在线考试系统课题产生的背景是当今教育信息化的趋势及我国高校教育信息化的建设;目的是充分利用学校现有的计算机软硬件资源和网络资源实现无纸化考试以避免传统手工考试的不足。1.4系统目标本在线考试系统的目标是通过对该系统进行功能与模块设计,以及在线考试系统数据库的设计搭建,还有对用户管理页面、角色权限页面、命题人设置页面、试卷产生页面、试卷审核页面、在线考试功能等页面的设计。使用动态网页设计技术为J2EE,在Windows平台上,相应的数据库将用Oracle以实现数据存储的功能,同时结合Web技术中的Javascript、HTML、CSS等来实现开发网站需要的功能。在线考试系统是一个比较庞大的系统,它拥有前台在线考试、后台系统管理两大部分。本系统属于综合型的在线考试系统,可以对考试的重要环节进行有效地管理。通过本系统可以达到以下目标:(1)可以对系统的学生用户、教师用户、用户角色、学期设定、专业设置等等进行有效的管理,保证系统基础数据的完整正确填充。(2)考试产生流程:专业负责人设置、命题人设置、试卷产生、试卷审核。系统管理员根据学校的指定设置每个专业的负责人,每个专业的负责人设置相关专业的每个学期每门课程的出题人,出题人完成出题并提交对应的专业负责人审核,专业负责人审核通过才可以进行考试,若审核拒绝,出题人重新修改试卷或者重新出题。(3)在线考试功能:学生可以在预定的时间内进行某一门课程的考试,并在规定时间内完成考试提交给系统。(4)系统根据角色不同给每个用户分配不同的权限。2第二章 需求分析第二章 需求分析2.1系统整体功能在线考试系统分为前台考试和后台管理两大模块,前台考试中包含有学生登录退出,在线考试两个模块。后台管理分为基础数据,考试管理,权限管理3个大部分;其中基础数据部分包括教师用户管理,学生用户管理,专业设置管理,角色管理,学期设置管理五个模块;考试管理部分包括试卷管理,命题人管理,题型管理,试卷审核四个模块;权限管理部分包括权限设置和权限分配两个模块。系统总体功能模块图如图2-1所示。图2-1 系统总体功能图2.2模块功能需求描述本系统主要提供的功能分为:(1)用户登录退出 登录:用户通过输入其用户名、密码以及随机产生的验证码登录。退出:用户完成需要的操作退出系统,系统将收回资源。(2)在线考试 学生用户登录本系统,系统将根据特定的条件,如登录时间,登录人等判断该用户是否有考试科目,若没有则给与没有考试科目提示;若在该时间段内存在考试科目,提示用户进行考试的是哪门课程。确认后进入系统进行在线考试,学3生用户在给定的时间内完成考试,提交系统,系统将该用户所得分数返回给该学生用户;若该用户在规定时间内没完成考试,系统将自动提交试卷并返回考试结果最后退出系统。系统将记录用户的开始考试和完成考试的时间。(3)角色管理角色即一种或多种权限的组合,角色管理主要功能为添加角色,修改角色及删除角色。(4)权限设置管理权限设置是管理员角色用户具有的一种权限,他可以添加权限,修改权限,删除权限。系统的权限分为两级,即根权限,子权限。根权限下包含一种或多种子权限。(5)权限分配系统管理员根据需要对不同的角色进行权限分配。(6)教师用户管理用户可以添加新的用户,修改原有的用户,删除用户,重置用户密码等。添加:进入添加模块,输入相应的用户名、姓名,设置新建用户的角色以及所属的院系即可完成用户新建。系统将设置用户的默认密码,当用户登录是可以自行修改自己的密码。修改:修改用户的信息,确认完成修改。重置密码:将某个用户的密码重置为系统初始的模式。 (7)学生用户管理用户可以添加新的用户,修改原有的用户,删除用户,重置用户密码,学生用户搜索等小功能。添加:进入添加模块,输入相应的用户名、姓名,即可完成用户新建。修改:修改用户的信息,确认完成修改。重置密码:将某个用户的密码重置为系统初始的模式。 搜索:根据学生所在的专业、班级进行定位,查找该学生信息。 (8)专业设置管理 用户可以添加专业,修改专业,删除专业,设置专业负责人。 添加:输入专业信息,设置该专业所在院系,设置专业负责人完成添加。 修改:修改专业信息,设置院系负责人即可完成修改。 删除:删除某一专业。 设置专业负责人:从该专业所在院系中选择角色为负责人的教师用户完成专业负责人的设置。(9)学期设置管理 用户可以添加学期,修改学期,删除学期,设置当前学期,开关学期。 添加:输入学期名完成添加。 修改:修改学期名完成修改。 删除:选择要删除的学期删除完成删除。 开关学期:选择要开关的学期,若该学期状态为关,则将该学期状态设置为开;若该学期状态为开,则将该学期状态设置为关。 设置为当前学期:将某一学期设置为当前学期,系统考试只能完成本学期某一门课程的考试,不能进行上个学期的考试课程。 (10)命题人设置管理专业负责人可以完成对本专业当前学期所学课程的考试命题人进行设置指定,命题人是从教授该门课程的所有角色为普通教师的教师中选取,并将其角色设置为命题人。 (11)题型设置管理 用户可以添加题型,修改题型,删除题型。 添加编辑:用户输入题目名称,描述,分数完成添加修改。 删除:选择要删除的题型完成删除。 (12)试卷管理 命题人根据专业负责人的设置,完成自己要出的课程的考试试卷。本模块主要功能为选择题型添加试题,修改题目,删除题目,完成提交,查看题目详情。 添加或修改某课程题目:用户选择要添加题目课程名称,然后选择要添加的题目类型,然后输入要添加的题目的信息,包括题目主干、题目答案、题目分数等,完成添加。 删除:选中要删除的题目进行上除即可。 提交试卷进行审核:在某一课程试卷总分达到某一指标分数(通常试卷总分为100分)时,才允许提交审核,否则系统给予提示禁止提交或提交失败,成功提交后试卷状态发生变化。 查看题目详情:选中试卷中某一题目查看题目的详细信息,包括题目内容,题目答案,题目分值,若是选择题还可以查看题目选项等。(13)试卷审核管理 用户对提交的试卷进行审核,试卷合格则审核通过,审核通过之后试卷才可以放在前端进行考试使用;若试卷审核不通过,则命题人重新命题。审核人可以对该试卷题提交审核意见,完成改试卷的审核。6第三章 总体设计方案第三章 总体设计方案3.1系统环境概况本系统是一个典型的基于J2EE平台的应用软件,它的实现是建立在底层的数据库的基础之上的,所用数据库应用到了JavaBean,软件开发所需平台是功能强大的MyEclipse平台。系统设计思想为MVC思想,即模型(Model),视图(View)和控制(Control)。MVC思想是实现Web系统的不同分工,模型层实现本系统中的业务逻辑;视图层实现与用户的交互;控制器接受用户的输入并调用模型和视图去完成用户的需求。3.2运行环境操作系统:Windows XP或Windows 7数据库:Oracle11g开发环境:MyEclipse8.53.3基本处理流程1.本在线考试网站系统的基本处理流程为:(1)进入网站后台,判断用户角色是否为专业负责人。(2)若为专业负责人,进入命题人设置页面,专业负责人设置本学期考试课程的命题人。命题人是从所有该门课程的任课教师中产生。(3)命题人进入系统,产生符合要求的试卷,命题完毕且符合一定规范提交试卷进行审核。(4)专业负责人对本专业的课程的考试试卷进行审核,并提交审核意见,对于内容不合格的“审核拒绝”,由命题人重新命题或修改并重新提交专业负责人审核;内容合格的用于正常考试。(5)学生用户登录系统,系统判断用户的合法性(6)用户合法,进入系统。系统判断该学生当前考试科目,并提交用户进行确认,确认完毕进行考试;若在该时间点左右没有考试科目,系统提示该时间段内没有考试科目。(7)若考生有考试科目,考生进入系统在规定的时间内进行考试,考试完毕,提交试卷结束考试,系统将返回考生得分;若考生没做完题目考试时间已经到了系统将自动提交试卷,结束考试,返回考试得分。(8)考试结束2.本在线考试网站系统的试卷产生流程如图3-1所示,考试流程图如图3-2所示。只有具有该权限的用户才可以完成对应的操作。图3-1 试卷产生流程图图3-2 考试流程图8第四章 详细设计第四章 详细设计4.1本系统主要功能模块介绍本系统主要功能模块为基础数据管理,权限管理,命题人设置,试卷产生以及核心部分在线考试五大部分。4.2基础数据管理基础数据顾名思义是本系统的基础部分,也是系统的数据支撑、最根本的数据来源,也是在线考试系统的必要条件。该部分主要分为以下几个模块:(1)用户管理该部分包括对教师用户和学生用户的管理,可以完成添加新用户,也可以修改已存在的用户的信息,设置用户的所属院系或班级,重置用户密码。重置用户密码是在某些用户忘记自己的密码的情况下将自己帐户的密码重置到某一个状态,然后由用户重新登录到系统中再重新设置。登录管理员也可以查找某一用户的信息,比如用户名、所在班级或院系等信息,在查找某个用户信息时可以通过多个查询条件查找,比如用户账号或者用户名等。(2)专业管理登录用户可以根据某一个学院进行专业的添加,修改,删除等操作。(3)学期设定管理该部分可以添加一个新的学期信息,修改学期信息,设置当前学期,开关某一个学期。学期的状态只有在打开状态才可以设置本学期的其他相关信息,比如课程安排,考试安排等,若某学期处于关闭状态,那么不能进行该学期的任何操作。当前学期状态,命题人设置、试卷产生等都是在该学期为当前学期的状态下进行的,命题人只能编辑添加当前学期下的考试试卷的产生和修改,不能进行非当前学期的考试设置。(4)题目类型管理管理系统中出现的题目类型,它可以说是一种模板,系统中的命题人通过选择题目类型添加题目,修改题目。该模块可以添加题目类型,修改题目类型信息,设置该题型的分值。4.3权限管理权限即控制访问某个模块或者进行某个操作的限制条件。任何系统都离不开权限的管理,有一个好的权限管理模块,不仅使我们的系统操作自如,管理方便,也为系统添加亮点。不同职责的人员,对于系统操作的权限应该是不同的。优秀的业务系统,这是最基本的功能。本系统是基于角色的权限管理,即角色是多个权限的集合。权限管理是对数据库中的后台部分用户的权限进行管理,也就是对每个教师用户应具有什么样的权限或他们能做什么操作进行管理设置。该部分是系统的安全策略的核心部分,这样才能保证不同的人有不同的责任,不同的工作任务。该部分主要分为以下几个模块:(1)角色管理角色管理是一种或几种权限的代名词,一种角色包含可以多种权限。角色管理主要用于设置系统中存在的角色种类信息,系统管理员可以设置系统中的角色的种类,指定角色的名称。该部分可以添加新的角色,可以修改角色的名称,也可以删除系统不需要的角色。(2)权限管理权限即控制访问某个模块或者进行某个操作的限制条件。在系统中,权限通过模块或动作来产生,模块就是整个系统中的一个子模块,可能对应一个菜单,动作也就是整个模块中(在B/S系统中也就是一个页面的所有操作,比如“浏览、添加、修改、删除”等)。将模块与之组合可以产生此模块下的所有权限。本系统可以添加新的权限,也可以修改权限信息,设置权限的名称、所对应的模块的地址,也可以删除权限。(3)角色权限管理角色权限管理即将一个基本权限或角色授予用户或用户组,使用户或用户组拥有授予权限的字符串,如果角色、职位、项目中存在相同的基本权限,则取其中的一个;如脱离角色、职位、项目组,只是取消用户或用户组的中此角色、职位、项目组所授予的权限。用户所拥有的权限是所有途径授予权限的集合。管理员用户可以查看每个用户的最终权限列表。角色是权限的集合,角色与角色之间属于平级关系,可以将基本权限或权限组添加到一个角色中,用于方便权限的分配所以该小模块部分主要用于设置每个角色对应的权限。4.4命题人设置命题人设置是在线考试系统试卷产生的必要条件。只有设置了当前学期某门课程的命题人才可以由该命题人命题。命题人由专业负责人从当前学期教授该门课程的老师中选择,选中的普通教师的角色将变为命题人角色。命题人设置流程图如图4-1所示。图4-1 考试流程图4.5试卷产生试卷产生是试卷从无到有的产生过程。角色为命题人的用户进入系统的试卷管理页面,选择要命题的课程名称,进行该门课程的命题。用户选择命题的题型进行题目添加,题型有系统系统指定,在本系统中目前只有选择题、判断题,其中选择题又分为单选题、多选题,系统根据题型提供相应的题目模板,用户输入相应的题目内容、答案、分值即可完成该类型题目的添加。用户可以修改已经产生的且未被提交的题目的信息,也可以查看题目详情。命题人用户命题完毕后可以提交系统负责人审核试卷,但在用户提交的时候会进行题目总分审核,只有该份试卷总分为100分时才可以提交试卷,否则给予不可提示审核提示。用户总分满足要求后提交试卷给专业负责人审核,专业负责人审核通过,试卷真正的产生了,即可用于前台考试。试卷产生程序流程图如图4-2所示。图4-2 试卷产生程序流程图4.6在线考试在线考试部分是本系统的核心部分。首先,用户登录系统首先判断用户的合法性,若用户名密码错误,不能进入系统;若用户名密码都正确,系统将根据用户信息判断用户该时间段内是否有可以进行考试的课程,若没有,系统给予近段时间内没有考试课程提示;若存在考试课程,则把考试信息提交给用户进行确认,用户确认考试信息后进行该课程的考试,否则退出系统。用户在规定时间内完成考试,进行提交,系统将给出用户考试成绩,并退出系统。若在规定时间内没有完成考试,系统将自动帮用户提交试卷并给出用户该门课程的考试成绩,退出系统,完成考试。在线考试程序流程图如图4-3所示。图4-3 在线考试程序流程图63第五章 数据库设计第五章 数据库设计5.1概念结构设计概念结构设计就是将需求分析得到的用户需求抽象为信息结构,以便更真实更充分地反映现实世界。概念结构设计就是将需求分析得到的用户需求抽象为信息结构,以便更真实、更充分地反映现实世界。概念结构是各种数据模型的基础,它比数据模型更独立于机器更抽象,从而更加稳定。 根据需求分析所获得的数据,分析出系统所有实体,以及他们的属性,构建相应的E-R以及他们的联系。 由需求分析可知,实体包括:学生用户、班级、专业、学院、教师用户、角色、学期、操作日志、课程、题型、权限栏目、角色权限、开设课程、任教、试卷、选择题、判断题、考试成绩、考试记录。(1)学生的基本属性:学号,姓名,班级编码,密码。(2)班级的基本属性:编号,名称,专业代码。(3)专业的基本属性:编号,专业名称,教师编码,学院编码。(4)学院的基本属性:编码,学院名称。(5)教师的基本属性:工号,姓名,学院编码,角色编码,密码。(6)角色的基本属性:角色编码,角色名称。(7)学期的基本属性:编码,名称,状态。(8)日志的基本属性:编码,操作时间,操作内容,操作对象,操作性质。(9)课程的基本属性:编码,名称。(10)题型的基本属性:编码,名称,描述,分值。(11)权限的基本属性:编码,名称,地址,描述,父类权限。(12)角色权限的属性:编码,角色代码,权限代码。(13)开设课程的属性:编码,专业代码,课程代码,学期代码。(14)任教的基本属性:编码,开设课程代码,班级代码,教师编码。(15)试卷的基本属性:编码,开设课程代码,教师代码,试卷状态,审核意见,开考时间,考试总时间。(16)选择题基本属性:编码,内容,选项A,选项B,选项C,选项D,试卷编码,答案,分值。(17)判断题基本属性:编码,内容,答案,试卷编码,分值。(18)考试成绩的属性:课程代码,学生编码,分数。(19)考试记录的属性:学生编码,试卷,开始时间,结束时间。实体之间的联系主要有:(1)用户与角色是多对一的联系(2)试卷与试题之间是一对多的联系(3)试卷与开设课程之间是一对一的联系(4)开设课程与课程是多对一的联系(5)开设课程与学期是多对一的联系(6)开设课程与专业是多对一的联系(7)用户与院系是多对一的联系(8)专业与班级是一对多的联系(9)考试成绩与学生是多对一的联系(10)考试成绩与课程是多对一的联系(11)考试记录与学生是多对一的联系(12)学生与角色是多对一的联系(13)角色与权限是一对多的联系(14)任课教师与课程是多对多的联系(15)专业与学院是多对一的联系(16)任教老师与班级是多对多的联系(17)试卷命题与教师是多对一的联系(18)考试记录与试卷是多对一的联系5.2逻辑结构设计根据概念设计,逻辑设计主要包括将实体转换成关系、将联系转换成关系、关系设计、相关属性约束说明、关系优化和关系表的建立六部分。本系统的逻辑模型如图5-1所示。图5-1数据库物理逻辑模型通过转换分析优化,确定为下列19张表。(1)总表数据库总表包括学生表、班级表、专业表、学院表、教师表、角色表、学期表、操作日志表、课程表、题型表、权限栏目表、角色权限表、开设课程表、任教表、试卷表、选择题表、判断题表、考试成绩表、考试记录表。数据库总表如表5-1所示。 表5-1 数据库总表序号表名标签介绍功能说明1student学生表学生账号信息2class班级表存储班级信息3major专业表存储专业信息4college院系表存储学院基本信息5manager教师表存储教师相关信息6role角色表存储系统角色信息7layout权限表存储系统所有权限的信息8role_layout角色权限表存储系统每个角色具有的权限9semester学期表存储系统中的每个学期信息及状态10course课程表存储学校开设的所有课程信息11smc_class_manager任教表存储系统每个学期没门课程的任课信息12logger日志表系统增删改的操作记录13smc_manager试卷表考试相关信息,包括时间,命题人等14choice选择题表存储系统中所有选择题信息15judge_issues判断题表存储系统中所有判断题信息16test_score成绩表存储每个学生没门课程的考试成绩17test_history考试记录表存储考生考试时间18sem_maj_course开设课程表存储学校每个学期每个专业安排的课程19question_type题型表存储考试题型的信息(2)角色表,如表5-2所示。表5-2 角色表结构序号列名数据类型补充说明1idnumber(10)PK角色编号2namevarchar2(24)NOT NULL角色名称(3)权限表,如表5-3所示。表5-3 权限表结构序号列名数据类型补充说明1idnumber(10)PK权限编号2namevarchar2(24)NOT NULL权限名称3describevarchar2(32)权限详情描述4parentnumber(10)NOT NULL根权限编码,0表示根权限5urlvarchar2(80)权限的地址,#表示根权限(4)角色权限表,如表5-4所示。表5-4 权限分配表结构序号列名数据类型补充说明1idnumber(10)PK编号2layout_idnumber(10)NOT NULL权限编码3role_idnumber(10)NOT NULL角色编码(5)教师表,如表5-5所示。表5-5 教师表结构序号列名数据类型补充说明1idvarchar2(16)PK教师工号2namevarchar(24)NOT NULL教师姓名3passwordvarchar2(16)NOT NULL登录密码4college_idvarchar2(4)FK所属院系编码5role_idnumber(10)FK该教师在系统中的角色的编码(6)班级表,如表5-6所示。表5-6 班级表结构序号列名数据类型补充说明1idvarchar2(16)PK班级编号2namevarchar2(48)NOT NULL班级名称3major_idvarchar2(8)FK班级所在专业的编码(7)院系表,如表5-7所示。表5-7 院系表结构序号列名数据类型补充说明1idvarchar2(4)PK院系编号2namevarchar(24)NOT NULL院系名称(8)专业表,如表5-8所示。表5-8 专业表结构序号列名数据类型补充说明1idvarchar2(8)PK专业编号2namevarchar2(24)NOT NULL专业名称3college_idvarchar2(4)FK所在院系编码4manager_idvarchar2(16)FK专业负责人工号(9)学期表,如表5-9所示。表5-9 学期表结构序号列名数据类型补充说明1idnumber(10)PK学期编号2namevarchar2(16)NOT NULL学期名称3statenumber(10)default 00-关闭,1打开,2-当前学期(10)考试题型表,如表5-10所示。表5-10 考试题型表结构序号列名数据类型补充说明1idnumber(10)PK题型编号2namevarchar2(24)NOT NULL题型名称3describevarchar2(128)题型描述4markfloat该类型每题分数(11)课程表,如表5-11所示。表5-11 课程表结构序号列名数据类型补充说明1idnumber(10)PK课程编号2namevarchar2(48)NOT NULL课程名称(12)选择题表,如表5-12所示。表5-12 选择题表结构序号列名数据类型补充说明1idnumber(10)PK题目编号2contentvarchar2(256)NOT NULL题目内容3optionavarchar2(64)NOT NULL选项A4optionbvarchar2(64)NOT NULL选项B5optioncvarchar2(64)NOT NULL选项C6optiondvarchar2(64)NOT NULL选项D7answervarchar2(8)NOT NULL题目答案8markfloatNOT NULL题目分值9statenumber(10)default 00-单选题,1-多选题10smcm_idnumber(10)FK试卷的编码(13)判断题表,如表5-13所示。表5-13 判断题表结构序号列名数据类型补充说明1idintPK判断题编号2contentvarchar2(256)NOT NULL题目主干3answervarchar2(2)NOT NULL题目答案4markfloatNOT NULL题目分值5smcm_idnumber(10)FK题目所在的试卷的编码(14)开设课程表,如表5-14所示。表5-14 开设课程表结构序号列名数据类型补充说明1idnumber(10)PK开设课程编号2course_idnumber(10)NOT NULL开设的课程的编码3major_idvarchar2(8)FK开设专业编码4semester_idnumber(10)FK开设学期编码(15)任教表,如表5-15所示。表5-15 任教表结构序号列名数据类型补充说明1idnumber(10)PK任教编号2class_idvarchar2(16)FK任教的班级的编码3manager_idvarchar2(16)FK任教的教师的工号4cmc_idnumber(10)FK任教的开设课程的编码(16)考试试卷表,如表5-16所示。表5-16 考试试卷表结构序号列名数据类型补充说明1idnumber(10)PK试卷编号2statenumber(10)default 00-初始,1-审核通过,2-审核拒绝3manager_idvarchar2(16)FK命题人的工号4cmc_idnumber(10)FK任教的开设课程的编码5suggestionvarchar2(256)审核意见6test_timetimestamp(6)考试开始时间7mininteger考试总时长(17)学生表,如表5-17所示。表5-17 学生表结构序号列名数据类型补充说明1idvarchar2(16)PK学生学号2namevarchar2(24)NOT NULL姓名3passwordvarchar2(16)NOT NULL密码4statenumber(10)default 0保留字段5class_idvarchar2(16)FK学生所在班级的编码(18)考试成绩表,如表5-18所示。表5-18 考试成绩表结构序号列名数据类型补充说明1student_idvarchar2(16)PK,FK学生学号2course_idvarchar(24)PK,FK考试课程编码3scorenumber(5,2)考试成绩(19)日志表,如表5-19所示。表5-19 日志表结构序号列名数据类型补充说明1idnumber(10)PK日志编号2dtimetimestamp(6)系统时间操作发生的时间3dowhatvarchar2(1024)做了什么操作4operatorvarchar2(255)操作名称5targetvarchar2(32)操作目标(20)考试记录表,如表5-20所示。表5-20 考试记录表结构序号列名数据类型补充说明1student_idvarchar2(16)PK学生学号2smcm_idintegerNOT NULL考试试卷编码3begin_timetimestamp(6)系统时间开始考试时间4end_timetimestamp(6)系统时间结束考试时间5.3 物理结构设计(1)存取方式规划数据块空间。在建表时考虑到有些表不断增加数据,可能会导致表空间受到破坏,丢失重要的数据,所以建立表时要预留块空闲空间。(2)建立索引。选择题表,判断题表,权限分配表等信息经常要依编号进行查询或与其他表连接且其更新频率不高,可以在其编号上建立索引,提高效率;在涉及考试题目,包括选择题、判断题的所有表中,由于经常要依考试试卷编号查询指定题目信息,可以在题目考试试卷编号上建立索引。(3)建立聚簇。为了提高某些属性的查询速度,可以在这些属性上建立聚簇。如经常要查询考试题目总分数的所有题目,数量等信息,所以可以在判断题表、选择题表,依题目号建立聚簇,将同一个考试试卷的信息集中存放,提高速度。(4)将静态表与动态表分开存放。(5)将备份数据与现行数据进行分开存放。

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论