




已阅读5页,还剩78页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
申请同济大学工程硕士学位论文 基于.NET技术的在线考试系统的设计与实现培养单位:软件学院 一级学科:计算机科学与技术二级学科:软件工程研 究 生:*指导教师:* 教授副指导教师:* 二一三年二月保密2年A dissertation submitted toTongji University in conformity with the requirements for the degree of Master of Software EngineeringNET technologies design and implementation of online examination systemSchool: School of Software EngineeringDiscipline: Computer ScienceMajor: Software EngineeringCandidate: Yugang GuoSupervisor: Yan Liu Feb, 2013基于.NET技术的在线考试系统的设计与实现 郭玉刚 同济大学学位论文版权使用授权书本人完全了解同济大学关于收集、保存、使用学位论文的规定,同意如下各项内容:按照学校要求提交学位论文的印刷本和电子版本;学校有权保存学位论文的印刷本和电子版,并采用影印、缩印、扫描、数字化或其它手段保存论文;学校有权提供目录检索以及提供本学位论文全文或者部分的阅览服务;学校有权按有关规定向国家有关部门或者机构送交论文的复印件和电子版;在不以赢利为目的的前提下,学校可以适当复制论文的部分或全部内容用于学术活动。学位论文作者签名: 年 月 日 经指导教师同意,本学位论文属于保密,在 年解密后适用本授权书。指导教师签名:学位论文作者签名:年 月 日年 月 日同济大学学位论文原创性声明本人郑重声明:所呈交的学位论文,是本人在导师指导下,进行研究工作所取得的成果。除文中已经注明引用的内容外,本学位论文的研究成果不包含任何他人创作的、已公开发表或者没有公开发表的作品的内容。对本论文所涉及的研究工作做出贡献的其他个人和集体,均已在文中以明确方式标明。本学位论文原创性声明的法律责任由本人承担。 签名: 年 月 摘要摘要在线考试系统旨在实现考试的无纸化管理,对一些科目的考试可以通过互联网络或局域网进行,方便校方考务的管理,也方便了考生,尤其适合考生分布广,不易集中的远程教育。传统的笔试考试形式已经不能满足人们的需要了,在线考试系统也将会在些许年后逐步取代笔试考试。在线考试系统不仅可以实现在线考试、还可以使打分等繁琐的环节变的简洁从而节省大量的人力和财力。另外,还可以在一定程度上减少了影响考试的人为主观因素,还同时减少了教师的工作量。因此,在线考试系统的设计必须加快发展,能与国际教学水平接轨。 本论文主要介绍了基于.Net技术的在线考试系统的分析、设计和开发的全部过程。全文包括系统开发背景、开发技术、需求分析、系统设计、系统实现几个部分。系统开发背景介绍了在线考试系统开发的现实意义和背景;开发方案中主要介绍开发在线考试系统得目的、开发方案的选择及开发框架的技术的确定;需求分析介绍了在线考试系统的总体需求及系统各模块的功能需求;系统设计介绍了系统设计的指导思想、数据库的设计、系统模块的设计。本系统基本实现了网上考试系统应有的主要功能模块,包括:管理员的登录,管理和维护、教师登录查询、学生登录考试、试题随机抽取功能、试题信息管理、考生信息管理及考生考试成绩查询等功能。文字还阐述了本系统如何采用.NET技术实现项目的开发,给出了主要功能的实现效果;文章最后对工作进行了总结与展望。关键词:在线考试系统,net体系结构,设计与实现72ABSTRACTABSTRACT Online examination system aimed at achieving paperless management of examination and a number of subjects of examinations can be conducted via the Internet or a local area network to facilitate the examination by the school management, but also convenient for candidates, especially for candidates are widely distributed and distance education that is not easy to concentrate. Traditional written test forms can no longer meet the needs of the people, so online examination system will gradually replace the written test in some years. It can achieve the exam online and make the score tedious aspect of simplicity which saves large amounts of human and financial resources. In addition, it can also reduce the human subjective factors influencing test, while also reducing the workload of teachers in some extent. Therefore, design of online test system must speed up the development, into line with international standards.This paper introduces the Net technical analysis, design and development of online examination system for all processes. The text includes systems development background, development, requirements analysis, system design, system implementation. Systems development background is about practical significance and development of online examination system. Development programmer focuses on the aim、the choice of objectives, determine the programmer and development of framework. Requirements analysis is on the all needs of online examination system and each system functional requirement. System design introduced the guiding ideology of system design, database design and design of the system modules.On the whole, the system achieves the main function modules of online examination system. It includes: administrator login、management and maintenance、teacher login queries、student login test、randomly selected question feature、examination information management、test taker information management and candidates results query. Beside, the paper give a detailed explanation on how to use the NET technology projects to develop the online examination system, gives the major effects of each feature. At last, the paper summarizes the work and makes perspective.Key words: online examination system Network architecture Design and implementation 目录目录摘要IAbstractII第1章 绪论11.1 研究背景11.2 实现目标和意义21.2.1实现目标21.2.2系统意义21.3 本文结构3第2章 系统开发环境及相关技术简介42.1 系统开发环境的简介42.1.1 Visual Studio 2008平台简介52.1.2 C#语言简介72.1.3 SQL Server 2000简介82.2 NET框架102.3 ASP.NET技术112.4数据访问模型-ADO.NET概述11第3章 系统分析133.1 系统初步调查133.2 可行性分析133.3 需求分析143.3.1角色分析153.3.2业务流程15第4章 系统设计174.1 系统架构设计174.2 系统功能设计184.2.1 系统登录模块设计194.2.2 教师模块的设计194.2.3 学生模块的设计204.2.4 后台管理员模块设计204.2.5 系统公共类的设计204.3 数据库设计234.3.1 数据库概念设计244.3.2 数据库逻辑结构设计274.3.5 数据库的实现294.4 系统界面设计30第5章 系统实现325.1 系统登录模块的实现325.2 教师模块的实现355.3 学生模块的实现435.4 后台管理员模块实现50第6章 总结和展望676.1 总结676.2 展望68参考文献69致谢71第1章 绪论第1章 绪论1.1 研究背景近年来,计算机技术、Internet技术的迅猛发展,给传统的办学提出了新模式。绝大部分高等院校都已接入互联网并建成校园网,各校的硬件设施也已近比较完善。高等学校校园网主要服务于计算机教学,而且校园网都已经联入了Internet。利用校园网可以改变教育手段,改革人材培养模式,转变教育观念。以现代计算机技术、网络技术为基础的数字化教学主要朝着信息化、网络化、现代化的目标迈进。在学校学生的每次考试都要进过教师出题、印刷试卷、组织考试、评阅试卷等一系列的过程,在此过程中花费很多财力和人力。本系统在于探索一种以互联网为基础的考试模式,实现了利用互联网进行无纸化考试的功能,它不但能够节约大量的财力和人力,而且提高了考试工作效率和标准化水平,是学校管理者、教师和学生在任何时候、任何地点都可以通过网络进行在线考试。学生在线考试系统是针对各高等院校在优化规范现有学校管理工作过程和模式的基础上,为学校的日常办公业务处理提供高效科学先进和方便的管理手段。该系统包括了试题管理模块和系统管理等子系统实现了公共服务信息等的规范化实用化和自动化管理。本项目就是在这样背景下,为宁夏师范学院学生设计的在线考试系统,为广大学生提供便利服务。在线考试系统的使用可以将手工工作的部分流程使用计算机的办公自动化处理,能够极大的提高阅卷和分数计算速率。另外,可以节省大量的时间和人力,不需要老师监考。此系统为基于WEB系统,学生和老师都可以通过Internet很方便访问系统,便于学生随时随地参加考试。它实现内网与外网的协同工作,在学校的内网中,实现学校各个部门的数据即时的交互与共享,增强公开透明度,提高办事效率。在Internet上的外网中,也能实现远程工作,网上提交信息及网上数据更新,用户根据自己的权限可以随时随地了参与考试。系统开发追求易用性,稳定性,安全性和易扩展性,使之能适应学校各学院网上办公自动化的需要。1.2 实现目标和意义1.2.1实现目标开发在线考试系统的目的在于最大限度的发挥信息技术带来的优势,用科学系统的管理方法来屏蔽掉该计划实施过程中数据量巨大,人工操作复杂烦琐且容易出错,数据质量和人工操作中的信息流程难以控制等问题带来的诸多不便。因此,开发出来的在线考试系统应该具有把该计划的实施从繁重低效率的纯人工劳动中解放出来的功能。另外,为了保证整个系统的安全性,在线考试系统实现了分类验证的登录模块,通过该模块可以对不同身份的用户进行验证,确保了不同身份的用户操作系统。为了体现考试的客观与公正,在抽取试题上,系统使用随机抽取试题的方式。当考生答题完毕之后,提交试卷即可知道本次考试的得分,体现该系统的高效性。在后台管理上,分后台管理员模块和试题管理模块,以适应不同用户的使用需求,前者只有系统的高级管理员才能进入,对整个系统进行管理,而后者只允许教师登录,可以对自己任教科目的试题进行修改,并且可以查看所有参加过自己任教科目考试学生的成绩。1.2.2系统意义在我国,虽然远程教育已经蓬勃地发展,但是目前学校与社会上的各种考试大都采用传统的考试方式。在此种方式下,组织一次考试至少要经历教师出题、打印试卷、安排考试、监考、收集试卷、讲评试卷和分析试卷等一系列复杂的过程,这一漫长的过程已经越来越不适应现代教学的需要。虽然有些考试采用答题卡的形式但是还是不能最大限度的减少人工劳动。传统形式的考试显然,随着考试类型的不断增加以及考试要求的不断提高,教师的工作量将会越来越大,并且其工作将是十分繁琐和容易出错的,可以说传统的考试方式已近不能很好的适应现代考试的需求。随着计算机应用的迅猛发展,网络应用不断扩大,人们迫切要求利用这些技术来进行在线考试,以减轻教师的工作负担提高工作效率,于此同时也提高考试质量,从而使考试更趋于公正、客观、更加激发学生的学习兴趣。在线考试系统是传统考场的延伸,它可以利用网络的无限空间,随时随地地让学生参加考试,加上数据库技术的应用,大大简化了传统考试的过程。因此,在线考试系统是电子化教学不可缺少的一个重要环节。1.3 本文结构第1章介绍毕业设计选题系统的背景、实现目标、意义。第2章介绍本系统开发环境及相关技术。第3章讲述系统可行性分析、用例分析、业务流程分析。第4章详细阐述系统架构设计、功能总体设计及数据库设计。第5章详细阐述系统管理员功能的实现、教师功能的实现、学生功能的实现。第6章对本系统进行了总结,提出系统的优点与不足。第2章 系统开发环境及相关技术简介第2章 系统开发环境及相关技术简介2.1 系统开发环境的简介本系统所使用的开发平台为Visual Studio 2008,开发语言是C#,后台数据库使用的是Microsoft SQL Server 2000。Microsoft Visual Studio 2008作为.NET框架的可视化开发平台,现在已经被越来越多的人使用。Visual Studio 2008 提供了高级开发工具、调试功能、数据库功能和创新功能,帮助在各种平台上快速创建当前最先进的应用程序。Visual Studio 2008 包括各种增强功能,例如可视化设计器(使用 .NET Framework 3.5 加速开发)、对 Web 开发工具的大量改进,以及能够加速开发和处理所有类型数据的语言增强功能。Visual Studio 2008 为开发人员提供了所有相关的工具和框架支持,帮助创建引人注目的、令人印象深刻并支持 AJAX 的 Web 应用程序。开发人员能够利用这些丰富的客户端和服务器端框架轻松构建以客户为中心的 Web 应用程序,这些应用程序可以集成任何后端数据提供程序、在任何当前浏览器内运行并完全访问ASP.NET 应用程序服务和 Microsoft 平台。Microsoft Visual Studio 2008 使开发人员能够快速创建高质量、用户体验丰富而又紧密联系的应用程序,充分展示了 Microsoft 开发智能客户端应用程序的构想。Visual Studio 2008 在三个方面为开发人员提供了关键改进:1.快速的应用程序开发,为了帮助开发人员迅速创建先进的软件,Visual Studio 2008 提供了改进的语言和数据功能,例如语言集成的查询 (LINQ),各个编程人员可以利用这些功能更轻松地构建解决方案以分析和处理信息。Visual Studio 2008 还使开发人员能够从同一开发环境内创建面向多个 .NET Framework 版本的应用程序。开发人员能够构建面向 .NET Framework 2.0、3.0 或 3.5 的应用程序,意味他们可以在同一环境中支持各种各样的项目。2.突破性的用户体验,Visual Studio 2008 为开发人员提供了在最新平台上加速创建紧密联系的应用程序的新工具,这些平台包括 Web、Windows Vista、Office 2007、SQL Server 2008 和 Windows Server 2008。对于 Web,ASP.NET AJAX 及其他新技术使开发人员能够迅速创建更高效、交互式更强和更个性化的新一代 Web 体验。3.高效的团队协作,Visual Studio 2008 提供了帮助开发团队改进协作的扩展的和改进的服务项目,包括帮助将数据库专业人员和图形设计人员加入到开发流程的工具。C#是一种简洁、类型安全的面向对象的语言,开发人员可以使用它来构建在.NET Framework上运行的各种安全、可靠的应用程序。使用C#可以创建传统的Windows客户端应用程序、XML web services、分布式组件、客户端一服务器应用程序、数据库应用程序以及很多其他类型的程序。C#在带来对应用程序的快速开发能力的同时,并没有牺牲C与C+程序员所关心的各种特性。C#语法简化了C+的诸多复杂性,并提供了很多强大的功能,它忠实地继承了C和C+的优点。比如:简洁的语法、精心地面向对象设计、与Web的紧密结合、完整的安全性与错误处理等。关系数据库SQL server 2000的优点具有如下7点:1真正的客户机/服务器体系结构。2图形化用户界面,使系统管理和数据库管理更加直观、简单。3丰富的编程接口工具,为用户进行程序设计提供了更大的选择余地。4SQL Server与Windows NT完全集成,利用了NT的许多功能,如发送和接受消息,管理登录安全性等。SQL Server也可以很好地与Microsoft BackOffice产品集成。5具有很好的伸缩性,可跨越从运行Windows 95/98的膝上型电脑到运行Windows 2000的大型多处理器等多种平台使用。6对Web技术的支持,使用户能够很容易地将数据库中的数据发布到Web页面上。 7SQL Server提供数据仓库功能,这个功能只在Oracle和其他更昂贵的DBMS中才有。下面本章将对所用技术平台进行简单的介绍。2.1.1 Visual Studio 2008平台简介Visual Studio 是微软公司推出的开发环境。是目前最流行的 Windows 平台应用程序开发环境。目前已经开发到 9.0 版本,也就是 Visual Studio 2008。Visual Studio 可以用来创建 Windows 平台下的 Windows 应用程序和网络应用程序,也可以用来创建网络服务、智能设备应用程序和 Office 插件。1998 年,微软公司发布了 Visual Studio 6.0。所有开发语言的开发环境版本均升至 6.0。这也是 Visual Basic 最后一次发布,从下一个版本 (7.0) 开始,Microsoft Visual Basic 进化成了一种新的面向对象的语言:Microsoft Visual Basic.NET。2002 年,随着 .NET 口号的提出与 Windows XP / Office XP 的发布,微软发布了 Visual Studio .NET(内部版本号为 7.0)。在这个版本的 Visual Studio 中,微软剥离了 Visual FoxPro 作为一个单独的开发环境以 Visual FoxPro 7.0 单独销售,同时取消了 Visual InterDev。与此同时,微软引入了建立在 .NET 框架上(版本1.0)的托管代码机制以及一门新的语言 C# (读作 C Sharp,意为 C+)。C# 是一门建立在 C+ 和 Java 基础上的现代语言,是编写 .NET 框架的语言。.NET 的通用语言框架机制(Common Language Runtime, CLR),其目的是在同一个项目中支持不同的语言所开发的组件。所有 CLR 支持的代码都会被解释成为 CLR 可执行的机器代码然后运行。Visual Basic、Visual C+ 都被扩展为支持托管代码机制的开发环境,且 Visual Basic .NET更是从 Visual Basic 脱胎换骨,彻底支持面向对象的编程机制。而 Visual J+ 也变为 Visual J#。后者仅语法同 Java 相同,但是面向的不是 Java 虚拟机,而是 .NET Framework。2003 年,微软对 Visual Studio 2002 进行了部分修订,以 Visual Studio 2003 的名义发布(内部版本号为 7.1)。Visio 作为使用统一建模语言(UML)架构应用程序框架的程序被引入,同时被引入的还包括移动设备支持和企业模版。.NET 框架也升级到了 1.1。2005 年,微软发布了 Visual Studio 2005。.NET 字眼从各种语言的名字中被抹去,但是这个版本的 Visual Studio 仍然还是面向 .NET 框架的(版本2.0)。它同时也能开发跨平台的应用程序,如开发使用微软操作系统的手机的程序等。总体来说是一个非常庞大的软件,甚至包含代码测试功能。这个版本的 Visual Studio 包含有众多版本,分别面向不同的开发角色。同时还永久提供免费的 Visual Studio Express 版本。随着即将发布的 Windows Vista (内部名称:Longhorn) 和 Office 2007,Visual Studio 9 也渐渐浮出水面。Visual Studio 9 目前可以确定的是支持建立于 DHTML 基础上的 AJax 技术,这种微软在 Visual InterDev 时代提出的基于异步的客户端动态网页技术在当年并没有像微软预期中的那么流行起来,反而随着 GMail 等应用而东山再起,渐渐成为主流网络应用之一。同时 Visual Studio 9 会强化对于数据库的支持以及微软新的基于工作流(Workflow)的编程模型。预计为了保持与 Office 系列的统一,Visual Studio 9 的名称为 Visual Studio 2008。2.1.2 C#语言简介C#(读做 C sharp,中文译音“夏普”)是微软公司发布的一种最新的、面向对象的、运行于.NET Framework之上的高级程序设计语言,并定于在微软职业开发者论坛 (PDC)上登台亮相。它松散地基于C/C+,并且有很多方面和Java类似。C# 是从C和C+派生来的一种简单、现代、面向对象和类型安全的编程语言,增强了开发者的效率;致力于消除编程中可能导致严重结果的错误;使C/C+程序员可以快速进行网络开发,同时也保持了开发者所需要的强大性和灵活性。C#是微软公司.NET windows网络框架的主角,是一种现代的面向对象语言,使得程序员可以快速便捷地编写各种基于Microsoft .NET平台的解决方案。这种框架使C#组件可以方便地转化为XML网络服务,从而使任何平台的应用程序都可以通过Internet调用它。Microsoft .NET提供了一系列的工具和服务来最大程度地开发利用计算与通讯领域。回顾C#发展的历史,从C#1.0完全是模仿Java,并保留C/C+的一些特性如Struct,新学者很容易上手;C#2.0加人了泛型,也与Java1.5.的泛型如出一辙,C#3.0加入了一堆语法糖,并在没有修改CLR的情况下引入了Linq,虽然很多项目出于各种各样的原因,如性能之类的而没有采用,但非常适合小型程序的快速开发,减轻了程序员的工作量,也提高代码的可读性。发展到目前C#4.0增加了动态语言的特性,从里面可以看到很多Javascript,python这些动态语言的影子。虽然越来越偏离静态语言的道路,但从另一个角度来说这些特性也都是为了提高程序员的生产力。C#4.0的主题就是动态编程(Dynamic Programming)。虽然C#仍然是一种静态语言,但是对象的意义开始变得越来越“动态”。它们的结构和行为无法通过静态类型来捕获,或者至少编译器在编译程序时无法得知对象的结构和行为。C#4.0包括大量的增强和新增特性,其主要新特性有:1.支持动态查找,动态查找允许在编写方法、运算符和索引器调用、属性和字段访问甚至对象调用时,绕过C#静态类型检查,而在运行时进行解析。2.支持参数命名和可选参数,现在C#中的参数可以通过在成员声明中为其提供默认值来指名它是可选的。在调用该成员时,可选参数可以忽略。另外,在传入任何参数时都可以按照参数名而不是位置进行传递。3.增强的COM互操作特性,动态查找以及命名参数和可选参数都有助于使针对COM的编程不再像现在这样痛苦。在这些特性之上,增加了大量其他小特性,进一步改善了互操作体验。4.变性,C#4.0中,把过去的I Enumerable变为现在的I Enumerable并包含了类型安全的“协变性和逆变性”而且通用的BCL也将利用这一特性进行更新。2.1.3 SQL Server 2000简介SQL Server 2000是微软公司开发的一个具有客户/服务器体系结构的关系型数据库管理系统(RDBMS),它使用Transact-SQL(经过微软扩展的数据库查询语言SQL)在客户机和SQL Server服务器之间传递请求和响应。SQLSevrer2000采用客户/服务器计算模型,既中央服务器用来存放数据库,该服务器可以被多台客户机访问,数据库应用的处理过程分布在客户机和服务器上。客户/服务器计算模型分为两层的客户/服务器结构和多层的客户/服务器结构。在两层的客户/服务器系统中,客户机通过网络与运行SQLSevre:2000实例的服务器相连,客户机用来完成数据表示和大部分业务逻辑的实现,服务器完成数据的存储,这种客户机被称为“胖客户机”。在多层的客户/服务器系统中,应用至少要经过三个处理层,第一层仍是客户机,但它只负责数据的表示;第二层是业务逻辑服务器,负责业务逻辑的实现,所有客户机都可以对它进行访问;第三层是数据库。1.客户机/服务器体系结构客户机程序负责执行业务逻辑和现实用户界面,它可以运行在一台或多台客户机上,也可以运行在SQL Server 2000服务器上。SQL Server 2000服务器负责管理数据库并在多个用户请求之间分配可用的服务器资源,如内存、网络宽带和磁盘操作等。该软件功能强大,使用方便,拥有广大的用户群体,它是后台数据库服务器的首选产品。2.关系型数据库管理系统(RDBMS)RDBMS负责以关系模型建构数据库,具体包括维护数据及数据之间的关系;在不违反定义数据之间关系的规则的前提下保证数据能被正确存取;在系统出现故障的情况下,恢复所有数据到已知的一致点等。3. Tracsact-SQLSQL Server 2000使用Tracsact-SQL作为它的数据库查询和编程语言,使用Tracsact-SQL语言,可以访问数据,查询、更新和管理关系数据库系统。Tracsact-SQL支持最新的ANSI SQL国际标准,并增加了许多扩展项来提供更多的功能。SQL Server 2000提供了多个开发和管理数据库的工具。其中最重要的工具有企业管理器和查询分析器。企业管理器是最重要的一个工具,它几乎可以完成所有的SQL Server 2000数据库的开发和管理工作,熟悉掌握这个工具的使用,可以提高数据库开发和管理的效率。查询分析器是数据库开发人员最喜欢的工具,通过该工具数据库开发人员可以直接用SQL语言与SQL Server 2000进行交互,可以通过SQL语句创建视图、存储过程和触发器等数据库对象,也可以调试SQL语句以便将正确的SQL语句嵌入到应用程序中。同时数据库是SQL Server用以存放数据和数据库对象的容器,数据和数据库对象包括表、索引、存储过程、视图以及触发器。表(Table) 表是一种最重要的数据库对象,它在数据库中存储数据,可以创建自己的数据表。同时表是用来存储数据和操作数据的逻辑结构,其结构和电子表格相似,由行和列组成。索引(Index) 索引是数据库中又一常用而重要的数据库对象。通过使用索引,可以大大提高数据库的检索速度,改善数据库性能。 存储过程(Procedure)存储过程提供了一种高效和安全的访问数据库方法,它经常被用来访问数据和管理被修改的数据。视图(View)视图是一种常用的数据库对象,它可以把它看成是虚拟表或存储在数据库中的查询,它为查看和存取数据提供了另外一种途径。对查询执行的大多数操作,可使用试图一样可以完成。而且使用视图还可以简化数据操作,同时提供数据库的安全性。 触发器(Trigger)触发器是一种特殊类型的存储过程,它可有助于更好的维护数据库中数据的完整性。2.2 NET框架.NET框架是微软公司全新的开发工具,Web应用程序和传统应用程序的开发者都能用它更高效、更灵活地开发应用程序。.NET框架是.NET平台的基础架构,其强大功能来自于公共语言运行环境和类库紧密结合在一起,提供了不同系统之间交叉与综合的解决方案和服务。.NET框架创造了一个完全可操控的、安全的和特性丰富的应用执行环境,这不但使得应用程序的开发与发布更简单,并且成就了众多语言间的无缝集成。.NET框架由以下三个主要部分组成:1.公共语言运行时(CLR: Common Language Runtime)公共语言运行时在组件的开发及运行过程中,扮演这非常重要的角色。在组件运行过程中,运行时负责管理内存分配、启动或删除线程和进程、实施安全策略、同时满足当前组件对其他组件的需求。.NET框架的关键作用在于它提供了一个跨编程语言的统一编程环境。2.统一的编程类.NET框架为开发人员提供了一个统一、面向对象、层次化、可扩展的类库集(API)。现今,C开发人员使用的是Microsoft基类库,Java开发人员使用的是Windows基类库,而Visual Basic用户使用的又是Visual Basic API集。而.NET框架统一了微软当前的各种不同的框架。这样,开发人员无需学习多种框架就能顺利编程。而且,通过创建跨编程语言的公共API集,.NET框架可实现跨语言继承、错误处理和调试。实际上,从Perl到C+的所有编程语言,都是相互等同的,开发人员可以自由选择理想的编程语言。3.活动服务器页面(ASP.NET)ASP.NET是使用.NET框架提供的编程类库构件而成的,下节我们将专门描述ASP.NET架构。2.3 ASP.NET技术ASP.NET在原有ASP上添加了许多新特性,并增强了原有的功能。ASP.NET并非仅是ASP的补充。它建立在公共语言运行库上的编程框架,可用于在服务器上生成功能强大的web应用程序。与以前的Web开发模型相比,它具有多个重要的优点:1.增强的性能。ASP.NET是在服务器上运行的编译好的公共语言运行库代码。与被解释的不同,ASP.NET可利用早期绑定、实时编译、本机优化和缓存服务。这相当于在编写代码之前就显著提供了性能。2.简易性。ASP.NET使执行常见任务变得容易,从简单的窗体提交和客户端身份验证到部署和站点配置。另外,公共语言运行库利用托管代码服务(如自动引用计数和垃圾回收)简化了开发。3.可管理性。ASP.NET采用基于文本的分层配置系统,简化了将设置应用于服务器环境和Web应用程序。由于配置信息是以纯文本形式存储的,因此可以在没有本地管理工具帮助的情况下应用新设置。4.安全性。借助内置的Windows身份验证和基于每个应用程序的配置,可以保证应用程序的安全。2.4数据访问模型-ADO.NET概述ADO.NET是.NET应用程序的数据访问模型。它能用于访问关系型数据库,如SQL sever2000、ORACLE,及很多其他已经配备了OLE DB供应器的数据源。ADO.NET相对于旧的ADO技术有了重大的变化和革新,它们专门用于结构松散的、本质非链接的Web应用程序。ADO.NET是全新的面向对象模型。它比ADO更适应于分布式Internet等大型应用程序环境,为了多人同时存取更具扩展性,ADO. NET的数据存取采用的是离线存取模式,可说是专门的为.NET平台设计的数据存取结构。ADO. NET是.NET框架中数据库访问的基础,是ASP.NET应用程序开发的核心,无论是大型的oracle还是一个简单的文本文件,我们都可以使用ADO.NET来访问和操作。在ASP.NET中,ADO.NET的功能发挥得淋漓尽致,这也是很多用ASP.NET编写的基于B/S的应用一直存在并且还在发展的原因,这从侧面反映了ADO.NET的成功。在数据访问解决方案中,有三种选择:OLEDB、ADO和ADO.NET。OLEDB在连接情况下访问数据的系统级编程接口。ADO是在连接情况下访问数据的应用编程接口,它建立在OLEDB之上。ADO. NET是支持数据的离散访问的一种编程接口,体现了网络应用的思想。第3章 系统分析第3章 系统分析3.1 系统初步调查系统初步调查的方式是调查其他学校在线考试系统和本学校组织考试的工作流程,对已有系统再进行分析;并通过和管理员,学生以及老师的交流来获得在线考试系统的一些内容和工作流程情况。网站管理维护人员,执行该系统的大部分信息录入修改删除操作;学生登录后选择相应科目抽题并参加考试。老师登录系统后可以对试题进行管理以及查询学生考试成绩等操作。该系统的主要该部分人员电脑使用水平为初、中级,一般会使用windows XP/win7、office系列以及收发电子邮件。本系统的其它使用者:校领导和非本校人员。他们在某些情况下会使用本系统。该部分人员电脑使用水平未知。3.2 可行性分析在对系统目标和环境精心分析的基础上,从经济可行性和技术可行性两个方面对本系统进行可行性研究。1、经济可行性: 随着计算机技术和网络技术在高校教学中的应用,高等教育体制改革的不断深入,传统考试方法、手段以及工作效率己经不能适应社会发展需要。提高管理水平的主要途径是更新管理者的思想,增强管理活动的科学认识。同时,运用先进的信息技术,开发网络化信息系统,是深化高校教育体制改革的有效措施。目前,几乎大部分高校的职能部门都已经建立了针对部门日常职能工作的管理信息系统,如学生学籍管理系统,科研处的科研管理系统等。这些系统在很大程度提高了部门的工作效率和管理水平。高校中的院系作为教师和学生的最直接机构,也需要建立自己的信息库,将教学、科研、信息化和网络化管理。高校中的院系作为管理学生工作等多种工作纳入信息化网络。正是认识到高校院系信息化工作的重要性,在线考试系统的开发受到了学校很多教师的支持。开发所需要的硬件设备和软件能够很快地得到配置,开发人员的配备也非常及时,从而保证了开发和设计工作的顺利开展。从收益来看在线考试系统建设是一项长远意义的工作,投入使用后将大大节省学校财力和人力,促进考试的客观与公正,促进教学管理便捷化获得更大收益。2、技术可行性: 首先,学校校园网络经过多年建设,己经具备相当规模。各校区校园网连接了所有的办公楼、实验楼、学生宿舍楼及教职工住宅楼,为教师和学生上网提供了良好的网络硬件支持。其次,目前的管理信息系统开发平台的功能已十分强大。Microsoft SQL2000企业版是性能稳定的服务器平台,而Visual Studio2008更是具有Web开发的强大优势。SQL Server + ASP.NET正是开发基于Web的信息系统的黄金组合。由上述两方面的分析可以看出,本系统的开发时机已经成熟,从多种角度考虑开发此系统都是可行的,并且也是十分必要的。3.3 需求分析系统的开发必须以满足用户需求为前提,而在系统开发的第一阶段中,用户的需求往往是不够完整的、不明确的,这就需要开发者协助用户对需求做进一步的理解乃至设计较为详细的需求说明。虽然用户需求分析在最初并不显得像结构化方法那么重要。但是,一个相对完整、准确的用户需求分析能为信息系统开发带来良好的开端,也会使开发过程少走许多弯路。因此,花费较长时间进行详细的用户需求调查是有必要的。对整个系统进行功能需求,系统设置若干个角色,有系统管理员、教师、学生,并且每个角色都分配不同的功能,比如从管理员的角度来说,他需要对教师和学生信息管理,还能对试题信息以及考试科目信息进行管理。其次,从外部执行者来看,可以看到每个用户的权限、功能等。最后从系统开发者的角度来看,可以确保系统所有功能的实现,而且在以后系统的维护起到很重要的作用。3.3.1角色分析本系统设计的目标是:在线考试系统主要针对3类人群,分别是教师、后台管理员和学生。对于教师,在线考试系统需要提供试题管理、考试结果查询等服务。对于后台管理人员,在线考试系统需要提供试题信息管理、教师信息管理、考生信息管理、考试科目信息管理以及考试结果管理等服务。而对于学生,在线考试系统只需要提供在线答题与自动评分服务即可。在线考试系统可以在windows 2000/windows xp/windows sever2003系统下运行,使用Microsoft Visual Studio2008开发,利用Microsoft SQL Sever 2000数据库存储所有数据。下面列举这些角色。教师:试题管理,学生成绩查询学生:在线答题管理员:教师信息管理,学生信息管理,试题信息管理,科目信息管理等3.3.2业务流程业务流程(Transaction F1ow Diagram,TFD),又称作业流程,即作业的完成程序,它反映了现实的业务活动。管理业务流程图是一种描述系统内各单位、人员间业务关系、作业顺序和管理信息流向的图表。现实业务活动中的一些弊病很难凭空指出,而利用业务流程图可以细致地分析其业务流程的合理性、存在的问题及从何处入手进行修改。首先是管理员启动在线考试系统,然后系统管理人员对教师信息、学生信息、考试科目信息进行添加和修改;然后是由各任课老师登录系统负责考试题目的上传管理。最后学生登录在线考试系统阅读考试规则,选择考试科目参加考试,考试结束后提交试卷系统自动评分。学生考试结束后系统管理员可以登录系统对学生考试成绩信息进行管理,而任课教师登录系统可以对学生考试成绩进行查询。另外,当任何教师对科目试题上传后,系统管理员也可以对试题信息进行管理。整个系统的流程都在管理员的监督中。其系统流程图如图3.1所示。系统主要功能:对管理员来讲:可以控制在线考试时间,对教师信息、考生信息、试题信息、考试科目信息、以及考生考试结果信息等的维护。对普通教师来讲,登录该系统可以方便地查询自己所任科目考生考试结果,并且登录系统后对自己所任科目的考试题目进行添加和管理操作。对学生来讲,可以在登陆系统后阅读考试规则,选择考试科目,参加考试,最后提交试卷获得成绩。图3.1在线考试系统的业务流程图第4章 系统设计第4章 系统设计系统设计是软件项目开发过程的核心,是软件开发过程中质量得以保证的关键步骤。系统设计过程是将需求规格转化为一个软件实现方案的过程,是将用户要求准确转化为最终的软件产品的唯一途径。在这章中将在线考试系统架构设计、系统功能设计以及数据库设计等进行介绍。4.1 系统架构设计一个好的分层式结构,可以使得开发人员的分工更加明确。一旦定义好各层次之间的接口,负责不同逻辑设计的开发人员就可以分散关注,齐头并进。例如UI人员只需考虑用户界面的体验与操作,领域的设计人员可以仅仅关注业务逻辑的设计,而数据库设计人员也不必为繁琐的用户交互而头疼了。每个开发人员的任务得到了确认,开发进度就可以迅速的提高。一般来说,分层式设计可以达到如下目的:分散关注、松散耦合、逻辑复用、标准定义。对于一个简单的应用程序来说,代码量不是很多的情况下,一层架构或者二层架构开发完全够用,没有必要将其复杂化,如果将一个复杂的大型系统设计为一层架构或二层架构开发,那么这样的设计存在很严重的缺陷。在数据开发过程中,初级程序员需要经常复制代码以实现相似的功能,这样做不但是程序变得冗长,更不利于维护,一个小小的修改或许会设计很多的页面,会经常导致异常的常识使程
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年新能源储能电站商业模式创新与储能产业政策支持力度评估
- 2025年无人机巡检缺陷识别技术在地质勘探巡检的创新应用
- 电商直播行业合规性风险管控与流程优化报告
- 康养烹饪培训课程创新创业项目商业计划书
- 植物园艺疗法线上课程创新创业项目商业计划书
- 坚果冷链物流技术创新创业项目商业计划书
- 林业保险产品设计创新创业项目商业计划书
- 坚果果仁饼干创新创业项目商业计划书
- 森林温泉度假村创新创业项目商业计划书
- 2025年医师定期考核临床专业知识考试试题及答案解析
- 2025四川蜀道建筑科技有限公司招聘16人备考练习题库及答案解析
- 80年血火淬炼此刻亮剑正当时:纪念中国人民抗日战争暨世界反法西斯战争胜利80周年阅兵仪式对初中生的启示-2025-2026学年初中主题班会
- 2025-2026学年西师大版(2024)小学数学一年级上册(全册)教学设计(附目录P227)
- 2025年大型集团财务审计外包服务合同风险防控条款规范
- 2025年国家保安员资格考试复习题库(附答案)
- 2025-2030中国教育领域的虚拟现实技术行业发展战略与应用趋势预测报告
- 2025广西现代物流集团第三次招聘109人笔试备考试题及答案解析
- 辅警考试真题(含答案)
- 新式茶饮基础知识培训课件
- GB/T 45777-2025水泥中石膏掺量评估方法
- 任务一切中断时的接发列车办法授课颜保凡课件
评论
0/150
提交评论