在线考试系统---毕业论文_第1页
在线考试系统---毕业论文_第2页
在线考试系统---毕业论文_第3页
在线考试系统---毕业论文_第4页
在线考试系统---毕业论文_第5页
免费预览已结束,剩余50页可下载查看

下载本文档

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

文档简介

本 科 毕 业 论 文 在线考试系统On-line Examination System 姓 名:学 号:学院:软件学院系:软件工程专 业:软件工程年 级:指导教师: 年 月摘 要在科技飞速发展的今天,电脑信息技术与各行各业进行了有效的结合。在线考试系统是当今教学领域发展的趋势,它实现了无纸考试和自动评分,从而减少了有形和无形的资源浪费。 在线考试系统的开发主要包括数据库的建立、维护以及相应的应用程序开发两个方面。数据库的建立和维护主要的要求是保证数据的一致性、完整性、安全性。应用程序开发则要求用户能够很直观的理解界面的使用方式,并且能很方便的实现提供的权限操作。在线考试系统使用起来简单、方便,容易上手,这使得用户都能很快掌握并使用该系统。系统提供的限时考试与练习自测模式使学生在课余期间多了一个掌握知识的渠道,这是对课堂教学很好的补充。 作者选用了ASP.NET技术,结合面向对象的开发方法和主流的三层体系结构,使用Visual Studio 2008 和 SQL Server 2005 开发。面向对象的程序开发方法增加了系统的可扩展性和移植性,使再次的开发变的简单,满足了日后系统的维护工作和功能扩展需要。系统的设计充分利用了SQL Server 2005数据库技术的强大功能,提高了编程效率和可靠性。使用三层结构不仅使系统开发变得方便,而且使用户界面只能通过逻辑层来访问数据层,减少了入口,增加了系统的安全性。本文分析了在线考试系统的主要组成情况,包括系统的国内外研究背景、现阶段考试系统的理论分析、系统的总体设计、详细设计和实现等。重点介绍了系统的详细设计及功能。关键词:自动评分;三层结构;ASP.NETAbstractRecently, with the rapid development of technology, computer information technology cooperates with various fields. Online examination system is a tendency of the computer system development nowadays. It implements automatic scoring and no-paper examination. This makes a reduction of both tangible and intangible resources waste. The development of On-line Examination System mainly includes the establishment, maintenance of the database and the corresponding application. The establishment and maintenances of the database mainly requests the consistency, integrity, safety. The application make user use the interface intuitively. For example, the system is convenient to use and undertakes easily. It makes all students can study or test independently.The author chooses ASP.NET and the popular three-tier architecture. The system use Visual Studio 2008 as development tool and SQL Server 2005 as database, coding in C# language. The development environment makes re-development simple and can meet the further expand requirements. The design completely uses the SQL Server 2005, which has the powerful strength to increase the programming efficiency and reliability. Using three-tier architecture not only makes development conveniently but also increases the systems security.This paper analyzes the main components of online examination system, including the system background, theoretical analysis, detailed design and achievement. It mainly focuses on detailed design and achievement.Key words: Automatic Score; Three-tier Architecture; ASP.NET 目 录第一章 绪论11.1 课题背景11.2 国内外研究综述11.3 本文的主要任务21.4 本章总结2第二章 在线考试系统理论分析32.1 考试系统相关理论32.2 ASP.NET动态网站开发技术32.3 面向对象的程序设计42.4 三层体系结构42.5 在线考试系统题库设计理论52.6 本章小结6第三章 系统总体设计73.1系统总体设计73.1.1 系统总体设计概述73.1.2 后台管理模块73.1.3 用户管理模块83.2系统数据库设计93.2.1 数据库设计的基本步骤93.2.2表设计103.3 本章总结14第四章 系统详细设计与实现154.1系统详细设计实现过程154.1.1 详细设计具体实现过程164.1.2 其他功能的详细设计184.2 后台管理设计194.2.1 管理员管理模块204.2.2 专业管理模块214.2.3 课程管理模块224.2.4 试卷管理模块244.2.5 试题管理模块264.2.6 学生管理模块294.2.7 学生成绩管理模块304.2.8 留言板管理模块314.2.9 上传文件管理模块334.3 用户管理设计344.3.1用户登录模块344.3.2 用户注册模块354.3.3 找回密码模块364.3.4用户信息模块384.3.5 用户留言板424.5 本章小结43第五章 总结445.1 本文研究工作总结445.2 在线考试系统的发展前景44参考文献45致谢语46ContentsChapter 1 Introduction11.1 Topic Backgroud11.2 Present Situation in Domestic and Foreign Research11.3 Article Primary Coverage21.4 Summary2Chapter 2 Theoretiacl Analysic of System32.1 Correlation Theories32.2 Technological Development of ASP.NET Web Site32.3 Object-oriented Programming42.4 Three-tier Architecture42.5 Theory of the Systems Item Pool52.6 Summary6 Chapter 3 General Design73.1 General Design73.1.1 Overview of General Design73.1.2 Back-stage Management73.1.3 User Management83.2 Database Design93.2.1 Basic Step in Database Design93.2.2 Datasheet Design103.3 Summary14 Chapter 4 Detailed Design and Achievment154.1 Detailed Design154.1.1 Detailed Design Progress164.1.2 Other Functions184.2 Design for Back-stage Management194.2.1 System Administrator Management204.2.2 Major Management214.2.3 Course Management224.2.4 Examination Management244.2.5 Item Management264.2.6 Student Management294.2.7 Student Socre Management304.2.8 Message Board Management314.2.9 Upload Management334.3 Design for UI Module344.3.1 Login Module344.3.2 Register Module354.3.3 Retrieve Password Module364.3.4 Userinfo Module384.3.5 Note Module424.5 Summary43Chapter 5 Conclusion445.1 Summary for This Paper445.2 Future Prospects44Reference45Acknowledgements46第一章 绪论第一章 绪论1.1 课题背景现在社会是信息技术高速发展的社会,网络在人们生活和交际中的应用越来越广泛。信息爆炸,知识更新日益加快,旧的知识传播途径已经满足不了人们的需求,这就迫切需要一种全新的知识传播方式。计算机技术、网络通信技术和多媒体技术的飞速发展,特别是因特网在全球得到迅速发展和广泛普及,为人们提供了一个巨大的信息资源共享空间。人们越来越依靠计算机网络作为彼此合作、交流的主要渠道。计算机考试系统,突破了传统考试的诸多限制,可通过计算机网络实现考题资源共享;另外,现在我们的考试绝大部分仍局限于纸质考试,人工或计算机判卷,人工填写成绩单,教务部门将成绩输入学生成绩管理系统等一系列环节。该系统针对这些问题进行了改革。计算机考试系统的客观题可自动评分,无任何人为因素,不仅能够使教师摆脱繁重的阅卷负担,提高阅卷速度,而且可以避免人为误差及人情分等问题,保证了考试的公平公正,而且规定了限时考试,时间到系统将自动交卷。因而,计算机考试系统具有客观性强、评分迅速、公正的特点。1.2 国内外研究综述考试使用计算机的尝试是从计算机类考试开始的,从九十年代开始,我国的多项全国性计算机考试开始使用计算机进行测试。1991年开始的计算机软件专业技术水平考试;1994年开始的由国家教委考试中心主办、教育部批准的非计算机专业全国计算机等级考试等1。这些使用计算机的考试旨在普及计算机应用知识和使用能力,在社会上有广泛影响,虽然它们适用的系统经历了几次升级,考试的内容也随着计算机软硬件的发展不断更新变化,但基本的考试形式一直延用至今。使用计算机进行考试是教育评价的一次飞跃,在考试中计算机取代了纸和笔,引发了考试内容、方法和形式的深刻变革。计算机应用于考试,使得阅卷有可能由计算机自动完成,于是自动阅卷技48第一章 绪论术成为研究的重点。在计算机上最容易实现的是选择题判断题等客观题的测试和评阅,可以自动实现立即评阅,立即给出测试结果。这种考试形式不一定局限在计算机类的考试,也可以扩展到任何科目。另外,这种方式很容易推广到网络上。在线考试有其突出的优点,如信息量大,资源丰富,更新速度快等,这些特点很符合现在教学中学生希望以快捷便利的方式获得最多最有效信息的考试资源要求。 本系统就是一个模拟网上考试的系统,可以为学生提供需要的考试与练习的资源,也可以为管理员提供缺省资料信息,可以说是两者互动的一种重要渠道。1.3 本文的主要任务本文通过对在线考试系统的理论和现状探讨的基础进行了分析,内容如下:(1) 第一章介绍了系统的研究背景和现状,明确了其具有开发前景;(2) 第二章介绍了系统的相关理论和系统开发中设计的一些开发技术和手段;(3) 第三章介绍了系统的总体设计,初步制定出该系统的功能;(4) 第四章介绍了在线考试系统的详细设计与实现;(5) 第五章对本文进行了总结,并对未来的考试系统未来发展趋势提出构想。1.4 本章总结本章概述了本次课题的背景,系统设计的目的和意义,比较系统的概述了论文的研究内容,为以后的章节的设计鼓足信心。第二章 在线考试系统理论分析第二章 在线考试系统理论分析2.1 考试系统相关理论随着科技的进步,在教育评价的理论、方法和内容不断发展的同时,评价技术和手段也在不断发展。读卡机的出现极大地提高了客观测试的效率和准确性。计算机的发展更开辟了教育评价的新天地,从计算机单机实现测试以及在局域网上实现计算机考试,基于因特网的网上测评系统2的研究和探讨,乃至到掌握高科技手段的专业测评公司的出现,可以断定教育评测的国际化、认证化已成为趋势。教育评价的思路从重视评价的客观性,开始向着重视能力和创造性发展,但随着测量技术向着以计算机为主的信息技术的靠拢,受到技术条件的限制,教育测试又开始重蹈客观化的路线。这虽然应该看作是正常的,但不应该是最终的方向。随着科学的发展,一定能研制出更全面的教育评价技术和手段,实现既能体现客观性和高效性,又能有利于对能力和创造性进行评价的目的。通过对现有的一些在线考试系统的研究,并详细了解了构建在线考试系统的一些要求后,在线考试系统应该满足以下设计目标或要求3:(1) 系统要有广泛的通用性,可以用于各类课程的考试。(2) 能够满足复杂组卷条件的要求,组卷速度快,成功率高。(3) 良好的安全性。安全性是通过为信息的机密性、保密性、完整性和可靠性提供充分的保护来预防风险。保障系统安全,是任何系统的基本要素。(4) 良好的可扩展性。系统需要有良好的可扩展性,以满足考试系统不断发展的需要。对于考试系统而言,考试系统的功能完善是一个渐进的过程。(5) 可管理性和可维护性。可管理性是指可以很方便地对系统进行管理,确保系统的正常运行。(6) 可靠性和可用性。系统需要在一定的负荷下保持运行的可靠性和可用性。2.2 ASP.NET动态网站开发技术ASP.NET是建立在公共语言运行库上的编程框架,可用于在服务器上生成第二章 在线考试系统理论分析功能强大的Web应用程序,是微软.NET框架的重要组成部分。ASP.NET是统一的Web开发平台,用来提供开发人员生成企业级Web应用程序所需的服务4。 ASP.NET是一个已编译的、基于.NET的环境,可以用任何与.NET兼容的语言(包括Visual Basic、.NET、C# 和Jscript.NET)创建应用程序。另外,任何ASP.NET应用程序都可以使用整个.NET Framework。开发人员可以方便地获得这些技术的优点,其中包括托管的公共语言运行库环境、类型安全、继承5等等。2.3 面向对象的程序设计要想使开发的考试系统具有良好的稳定性和扩展性,使用面向对象的开发方法是目前最好的选择。面向对象技术6经过多年的研究实践,已经成为一种成熟有效的开发方法。面向对象的方法是一种分析方法、设计方法和思维方法。面向对象方法学的出发点和所追求的基本目标是使人们分析、设计与实现一个系统的方法尽可能接近人们认识一个系统的方法。也就是使描述问题的问题空间和解决问题的方法空间在结构上尽可能一致。其基本思想是:对问题空间进行自然分割,以更接近人类思维的方式建立问题域模型,以便对客观试题进行结构模拟和行为模拟,从而使设计出的软件尽可能直接地描述现实世界,构造出模块化的、可重用的、维护性好的软件,同时限制软件的复杂性和降低开发维护费用6。面向对象程序设计设计方法具有模块化、信息封装与隐藏、抽象性、继承性、多态性等特点,它又解决了软件系统设计与管理中所需的软件可靠性、可重用性、可扩充性、可维护性及提高开发效率等问题7。在本系统设计过程中使用了面向对象的程序设计方法。利用面向对象的特点对组卷逻辑、试题表等封装和继承,添加新的题型或题库,也不需要大量改动现有的程序结构,只要添加相应的试题表类。2.4 三层体系结构在线考试系统采用ASP.NET的三层结构8模式。三层架构即:表示层(Web Layer)、业务逻辑层(Business Logic Layer)、数据访问层(Data Access Layer)。三层架构如图2-1所示:图 2-1:三层架构图业务逻辑层(BLL):是系统的核心部分,有关领域模型和业务逻辑。调用数据访问层的代码来完成相关数据库操作。表示层(WEB):是系统的UI部分,负责用户与整个系统的交互。在这一层中,最理想的状态是仅包含与界面元素的逻辑代码,所有与界面无关的逻辑都在业务逻辑层(BLL)中。数据访问层(DAL):也称为持久层,主要是负责对数据库的访问。除了实现基本的增(insert)、删(delete)、改(update)、查(select)功能,还可以执行带任意参数的存储过程等常用数据库操作。表现层(WEB)和业务逻辑层(BLL)之间的调用关系比较简单。当表现层(WEB)需要调用有关业务逻辑的方法时,就从业务逻辑层(BLL)中获取9。业务逻辑层(BLL)中包括了整个系统的业务逻辑,也是系统的核心模块。业务逻辑层(BLL)不直接对数据库操作,必须通过数据访问层(DAL)。BLL层通过调用DAL来完成对数据库的访问。因为与具体的数据访问逻辑无关,所以层与层之间是松耦合10的。如果此时需要修改数据访问层的具体实现,只要不涉及到DAL的接口定义,那么业务逻辑层就不会受到任何影响。总结:三层结构它是一种严格分层方法,即数据访问层只能被业务逻辑层访问,业务逻辑层只能被表示层访问。用户通过表示层将请求传送给业务逻辑层,业务逻辑层完成相关业务规则和逻辑,并通过数据访问层访问数据库获得数据,然后按照相反的顺序依次返回将数据显示在表示层。 2.5 在线考试系统题库设计理论题库的有效性。在线考试系统最重要的功能就是能够进行限时考试,因此需要重视对题库的设计。(1) 题库中存储的必须是合格的试题。 不符合要求的试题不可以放入题库中,题库中的各道试题的性能必须确定。(2) 题库中的试题是一个有序的集合,并且题目的数量必须足够多。需要注意的是,题库的基本组成单位是题目,而不是试卷。用户应该可以根据需要从题库中提取相应的题目组合起来形成试卷,可以任意组合或者重组。随机抽题法11是最常用的组卷算法,它根据状态空间的控制指标,由计算机随机地抽选一道试题加入试卷中,此过程不断重复,直到组卷完毕,或已无法从试题库中抽选满足控制指标的试题为止。题库的自动组卷算法11介绍:随机抽题法是最常用的组卷算法,它根据状态空间的控制指标,由计算机随机地抽选一道试题加入试卷中,此过程不断重复,直到组卷完毕,或已无法从试题库中抽选满足控制指标的试题为止。2.6 本章小结本章介绍了考试系统的相关理论分析和系统开发中要用到的开发技术和手段,从理论方面研究了本系统,给出了相关技术介绍,为下一步的设计打下基础。第三章 系统总体设计第三章 系统总体设计第三章 系统总体设计3.1系统总体设计3.1.1 系统总体设计概述系统设计是信息开发过程中的另一个重要阶段,在这一阶段中将根据前一阶段逻辑分析的结果,在系统分析报告的基础上,按照逻辑模型的要求,科学合理地进行新系统的设计。系统设计包含两个方面:首先是总体结构设计,其次是具体物理模型的设计。这个阶段的主要目标是将反映用户信息需求的系统逻辑方案转换成可以实施的基于计算机的物理方案,并为下一阶段的系统事实提供必要的技术资料。总体设计包括系统模块结构设计和计算机物理系统的配置方案设计。系统模块结构设计的任务是划分子系统,然后确定子系统的模块结构。在这个过程中必须考虑以下几个问题12:(1) 如何将一个系统划分成多个子系统;(2) 每个子系统如何划分成多个模块;(3) 如何确定子系统之间、模块之间传送的数据及其调用关系;(4) 如何评价并改进模块结构的质量。本系统采用结构化设计的方法来实现系统总体功能,提高系统的各项指标,即将整个系统合理的划分成各个功能模块,正确地处理模块之间和模块内部的联系以及它们之间的调用关系和数据联系,定义各模块的内部结构,通过对模块的设计和模块之间关系的系统来实现整个系统的功能。3.1.2 后台管理模块后台管理模块是本系统的一个十分重要的部分。 (1) 管理员信息管理功能在系统中主要包括:管理员信息的查询、修改管理员资料等。(2) 题库管理功能在系统中的有专业信息、课程信息、试卷信息和试题信息的增加、删除、修改等操作。(3) 上传下载功能在系统中主要是上传资料,以便用户下载。(4) 留言板答疑功能主要是用户提出的问题进行解答。在系统中主要包括:管理员回复留言、删除留言。(5) 学生信息管理功能主要是对已注册的学生用户进行查询,以便适时更新相关专业考试信息。(6) 学生成绩管理功能主要是对通过在线考试的学生成绩进行查询,以便合理调整试题难度。3.1.3 用户管理模块用户系统包括的功能有:(1) 匿名用户登录主要是给没有登录的用户提供人性化的便捷措施。在系统中匿名用户可以操作的主要包括:浏览网站主页、查看发布的试卷预览信息、在留言板中提问。(2) 用户登录和注册功能:需要参加限时考试的用户得注册一个用户账号,注册后的账户能够操作的权限高于匿名用户,如能够进行考试或修改个人密码。(3) 个人信息管理功能主要是提供注册的用户更多的功能,如修改个人信息,查看考试记录等。(4) 考试板块功能主要是针对参加考试的用户提供在线考试的练习。在系统中主要包括:选择试卷、不能重复考试、限时自动交卷、系统评分、查看答案解析。(5) 资源文档下载功能主要是提供用户下载考试资料。在系统中主要包括:查询已有材料及其下载。(6) 留言板留言功能主要是提供给所有对本系统有不明之处的进行提问。3.2系统数据库设计3.2.1 数据库设计的基本步骤数据库设计存在于系统总体结构功能模块设计后。在系统中利用数据库是为了更方便的管理数据,而建立一个考试系统一定要大量的考试题目作为备用.在考试系统中的数据库主要用于存储试题、答案、试卷信息、考生信息等等。而考试系统中的数据主要是系统管理员来录入的,而且维护起来又简单安全。按照规范设计的方法,考虑数据库及其应用系统开发全过程,将数据库设计分为以下六个阶段13:(1) 需求分析阶段 :进行数据库设计首先必须准确了解与分析用户需求(包括数据与处理)。需求分析是整个设计过程的基础。(2) 概念结构设计阶段 :概念结构设计是整个数据库设计的关键,它通过对用户需求进行综合、归纳与抽象,形成一个独立于具体DBMS的概念模型。(3) 逻辑结构设计阶段 :逻辑结构设计是将概念结构转换为DBMS所支持的数据模型,并对其进行优化。(4) 数据库物理设计阶段: 数据库物理设计是为逻辑数据模型选取一个最适合应用环境的物理结构(包括存储结构和存取方法)。(5) 数据库实施阶段 :在数据库实施阶段,设计人员运用DBMS提供的数据语言及其宿主语言,根据逻辑设计和物理设计的结果建立数据库,编制与调试应用程序,组织数据入库,并进行试运行。(6) 数据库运行和维护阶段: 数据库应用系统经过试运行后即可投入正式运行。在数据库系统运行过程中必须不断地对其进行评价、调整和修改。需要指出的是,这个设计步骤既是数据库设计的过程,也包括了数据库应用系统的设计过程。在设计过程中把数据库的设计和对数据库中数据处理的设计紧密结合起来,将这两个方面的需求分析、抽象、设计、实现在各个阶段同时进行,相互参照,相互补充,以完善两方面的设计。3.2.2表设计考虑到整个系统的需要,总结该系统至少需要的数据包括管理员数据、用户数据、专业数据、课程数据、试卷数据、试题数据、成绩数据和留言信息数据等。 (1) 管理员表 adminInfo 管理员表adminInfo用来存储管理员的信息,如管理员登录名、管理员密码、管理员ID、加入时间等。表的字段说明如表1-1所示:表1-1:adminInfo表字段名数据类型字段说明是否主键 namevarchar (50) 管理员登录名Npwdvarchar (50)管理员密码NIDvarchar (50)管理员IDYjoinTimedatetime加入时间N(2) 学生信息表stuInfo学生信息表stuInfo用来存储学生的信息,如学生注册账号、学生姓名、学生ID、学生密码、问题、答案、性别、专业等。表的字段说明如表1-2所示:表1-2:stuInfo表 字段名数据类型字段说明是否主键stuIDvarchar (50) 学生账号NstuNamevarchar (50)学生姓名Nidint学生IDYpwdvarchar (50)学生密码Nquestionvarchar(50) 注册提问Nanswervarchar(50)答案Nsexvarchar(50)性别Nmajorvarchar(50)专业N(3) 试卷信息表examInfo试卷信息表examInfo用来存储试卷的信息,如试卷名称、试卷ID、所属专业、所属课程、加入时间等。表的字段说明如表1-3所示: 表1-3:examInfo表 字段名数据类型字段说明是否主键 examNamevarchar (50) 试卷名称NexamIDvarchar (50)试卷IDYfromMajorvarchar (50)所属专业NfromCoursevarchar (50)所属课程NcourseIDvarchar (50)课程IDNjoinTimedatetime加入时间N(4) 课程信息表courseInfo课程信息表courseInfo用来存储课程的信息,如课程名称、课程ID、所属专业、加入时间等。表的字段说明如表1-4所示:表1-4:courseInfo表字段名数据类型字段说明是否主键courseNamevarchar (50)课程名称NcourseIDvarchar (50)课程IDYfromMajorvarchar (50)所属专业NjoinTimedatetime加入时间N(5) 试题信息表examItemInfo试题信息表examItemInfo用来存储试题的信息,如试题内容、试题ID、试题类型、选项A、选项B、选项C、选项D、答案、备注、加入时间、所属试卷ID、所属试卷、所属专业、所属课程、单选分数、多选分数等。表的字段说明如表1-5所示:表1-5:examItemInfo表 字段名数据类型字段说明是否主键examItemNamevarchar (MAX) 试题内容NexamItemIDvarchar (50)试题IDYexamIDvarchar (50)试卷IDNqueExamvarchar (50)试卷名称NsiMarkint单选分数NmulMarkint 多选分数Nanswervarchar(50)答案NqueMajorvarchar(50)专业NqueCoursevarchar(50)课程NexamItemTypevarchar (50)试题类型NjoinTimevarchar (50)加入时间NqueAvarchar (MAX)选项ANqueBvarchar (MAX)选项BNqueCvarchar (MAX)选项CNqueDvarchar (MAX)选项DN commentvarchar (MAX)备注N(6) 专业信息表majorInfo专业信息表majorInfo用来存储专业的信息,如专业名称、专业ID、加入时间等。表的字段说明如表1-6所示:表1-6:majorInfo表 字段名数据类型字段说明是否主键majorNamevarchar (50)专业名称NmajorIDvarchar (50)专业IDYjoinTimedatetime加入时间N(7) 留言信息表message留言信息表message用来存储留言者的信息,如留言信息ID、留言者名称、留言主题、留言内容、留言表情、留言时间、所管理员回复内容、所属试卷、管理员回复时间等。表的字段说明如表1-7所示:表1-7:message表 字段名数据类型字段说明是否主键 idint留言信息IDYnamevarchar (50)留言者名称Nsubjectvarchar (50)留言主题Ncontentvarchar (50)留言内容Nfacevarchar(50)留言表情Ndatetimevarchar(50)留言时间Nreplayvarchar(50)管理员回复内容Nreplaytimevarchar(50)管理员回复时间N(8) 上传文件信息表image上传文件信息表image用来存储上传文件的信息,如上传文件ID、上传文件名称、上传文件类型、上传时间。表的字段说明如表1-8所示:表1-8:image表 字段名数据类型字段说明是否主键idint上传文件IDYnamevarchar (50)上传文件名称Ngraphicimage文件类型Ntimedatetime上传时间N(9) 学生成绩信息表stuResult学生成绩信息表stuResult用来存储学生成绩的信息,如用户账号ID、学生名称、试卷ID、试卷名称、课程名称、单选分数、多选分数、总分数、考试时间、用户ID。表的字段说明如表1-9所示:表1-9:stuResult表 字段名数据类型字段说明是否主键stuIDvarchar (50)用户账号IDNstuNamevarchar (50)学生名称NexamIDvarchar (50)试卷IDNexamNamevarchar (50)试卷名称NcourseNamevarchar (50)课程名称NsingleResultint单选分数NmulResultint多选分数NtotalResultint总分数NexamTimedatetime考试时间Nidint用户IDY3.3 本章总结本章介绍的是系统的总体设计,重点阐述了系统的模块设计与数据设计。通过设计总体结构,确立了系统的功能,明确了系统设计方向,为下一阶段的详细设计打下基础。第四章 系统详细设计与实现第四章 系统详细设计与实现4.1系统详细设计实现过程运行本系统之后,可以选择不同的角色进入系统。匿名用户登录进入到系统主页,可以浏览最新考试动态,进入留言板块留言等进行主页上提供的操作。匿名用户若需要进行更多操作,需要进入登录页面或者注册新用户。用户成功登录后,可以进入用户个人信息页面,在这里,个人用户修改个人信息、重新设置登陆密码、查询考试历史记录、参加考试、进入下载页面、查询本专业的试卷及预览试卷。选择管理员登录进入考试系统在此界面中输入登录信息:用户名和密码后,如果密码正确,管理员会进入后台管理的主界面进行相关操作。系统的操作过程如图4-1所示:图4-1:系统操作过程4.1.1 详细设计具体实现过程首先建立一个空白解决方案,添加如下项目及文件(1) 添加ASP.NET Web Site项目,命名为UI,新建文件Web Form类型文件admin.aspx(自动包含了admin.aspx.cs)(2) 添加ClassLibrary 项目,命名为BLL。(3) 添加ClassLibrary项目,命名为DAL。现在以系统中的管理员查询界面为实例介绍系统利用三层结构实现的过程。(1) admin.aspx 和admin.aspx.cs这两个文件是关于管理员查询功能的页面,都属于表现层部分。在分层结构中,admin.aspx.cs仅处理与页面有关的内容,其他部分都不应该涉及。admin.aspx的界面如图4-2所示:图4-2:管理员页面在此界面上需要实现的是对管理员信息的查询。选择查询条件或输入特定查询信息后,双击“确定”按钮,触发按钮事件。需要在这个事件中调用方法:select selAdmin = new select ();string admin = this.txtSelect.Text.Trim(); Dataable dt = selAdmin.GetAdminName(admin); (2) BLL层中的select.cs此文件就属于业务逻辑层,专门用来处理与业务逻辑有关的操作。业务逻辑层的主要作用是把表现层传过来的数据转发给数据访问层。在这个文件中添加方法如下所示: public DataTable GetAdminName(string name) dbCommand = new DBCommand(); Hashtable ClassHashtable = new Hashtable(); ClassHashtable.Add(name, name); int flag = 0; ClassHashtable.Add(0:Flag, flag); DataTable StuInfoResult = new DataTable(); bool IsSuccess = false; dbCommand.ExecSpRecord(ClassHashtable, SP_ADMIN_NAME, out IsSuccess, out StuInfoResult); if (IsSuccess = true) dbCommand.Dispose(); return StuInfoResult; else dbCommand.Dispose(); return null; 可以看出,该方法调用的是存储过程如下所示。 set ANSI_NULLS ONset QUOTED_IDENTIFIER ONGOcreate PROCEDURE dbo.Sp_adminName name varchar(50) ,Flagchar(1) outputASBEGIN SET NOCOUNT ON;set Flag = 1 select * from adminInfo where name like %+name+% order by name, IDif error 0beginrollback transet Flag = 0end elsecommit tranend(3) DAL层的调用方法除了实现基本的增(insert)、删(delete)、改(update)、查(select)功能,还可以执行带任意参数的存储过程等常用数据库操作。该层涉及的是数据处理的最底层,内容比较多。4.1.2 其他功能的详细设计从管理员的查询功能可以得出采用三层结构的设计是一种严格分层方法,即数据访问层只能被业务逻辑层访问,业务逻辑层只能被表示层访问,用户通过表示层将请求传送给业务逻辑层,业务逻辑层完成相关业务规则和逻辑,并通过数据访问层访问数据库获得数据,然后按照相反的顺序依次返回将数据显示在表示层。系统其他功能的详细设计类似管理员的查询功能,由于篇幅限制,所以在下面的系统功能介绍中,只是简要介绍了功能的实现,并没有具体到一一表明其功能利用三层结构来设计的过程。其他功能具体实现过程参考4.1.1节。4.2 后台管理设计在整个考试系统中,试题库的设计和实现是最为关键和基础的部分,关系到整个考试系统的性能。因为在考试系统中,试卷是由计算机从试题库中随机抽取符合要求的试题自动生成的,试题库的设计质量直接影响到考试的质量,也就影响到考试的质量。因此试题库的设计是衡量考试系统成功与否的一个重要标准。一个高质量的试题库应该能够较好地解决以下几个问题14:(1) 试题的分类与组织试题的分类与组织是试题库系统建设最为关键的步骤,在考试系统中虽然试卷是由计算机自动生成,但是试卷的内容和结构应由授课老师决定,试题的良好分类和组织,可使授课老师能够最大限度地把握考试的难度、考试的重点以及考查学生哪一方面的能力等。试题的分类和组织不能过于复杂,也不能过于简单,过于复杂 ,会大大加重出题人的工作量,过于简单,则不利于授课老师对考试设定的把握。本系统采用以下方式对试题分类:按试题题型分类:按题型分类是试题分类最常用的方式,主要是分为单选题和不定项选择题等。这样的分类提供了授课老师对于试卷结构的控制能力。(2) 试题的标准化试题的标准化是一个较为广义的范畴,对于每一门课程,试题的收集和检验、难度的评定、标准答案的建立,每一个步骤都是试题标准化的一部分。这些工作需要大批量教学经验丰富的教师和专家来做,是一个长期和渐进的过程,这也表明题库的设计要灵活,易于修改维护才能适应考试的需要。(3) 试题库的维护和管理正因为试题库的建设是一个长期的工作,试题库良好的维护、管理和扩展能力就至关重要。本系统提供了一个较为全面和强大的试题库管理界面,其功能包括试题录入、试题查询修改等。管理员登录进入后台索引页,该页中列出了所有后台功能得索引,通过索引可以进入任意模块进行操作。 4.2.1 管理员管理模块此模块实现管理员信息操作。由于在4.1.1节已经详细介绍了操作者查询管理员信息的过程,这里就不重复。管理员管理模块的其他部分是修改或添加管理员功能。(1) 添加管理员页面添加管理员的页面如图4-3所示:图4-3:添加管理员页面功能描述:添加管理员。触发条件:管理员操作页面中点击添加管理员按钮。实现说明:添加管理员需要特定的管理员登录才可以进行这一步操作,所以要在后台索引页面上进入这个添加页面,如果不是特定管理员,系统会显示没有操作权限。管理员进入该页面后,系统自动根据数据库分配的管理员ID,操作者只需填写相应字段。(2) 修改管理员信息页面修改管理员信息页面如图4-4所示:图4-4:修改管理员页面功能描述:修改管理员。触发条件:管理员操作页面中点击添加管理员按钮实现说明:操作者只需输入旧密码和新密码,数据库中查询,查找该管理员是否存在,如果存在则在数据库中查找该管理员对应的密码是否正确,如果密码错误则需要重新输入,如果密码正确则修改数据库中管理员的密码。 4.2.2 专业管理模块此模块实现管理员对专业信息增加查询的功能。(1) 专业信息主页专业信息主页如图4-5所示:图4-5:专业信息主页功能描述:专业信息查询触发条件:专业信息操作页面中根据下拉框中的查询条件(专业ID,专业名称)查询专业信息,结果按最近加入时间排序。实现说明:系统自动根据输入的条件将数据库中符合条件的记录提取出来。(2) 添加专业信息添加专业信息效果如图4-6所示:图

温馨提示

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

评论

0/150

提交评论