摘 要
伴随着社会以及科学技术的发展,互联网已经渗透在人们的身边,网络慢慢的变成了人们的生活必不可少的一部分,紧接着网络飞速的发展,管理系统这一名词已不陌生,越来越多的学校、公司等机构都会定制一款属于自己个性化的管理系统。
本毕业设计的内容是设计并且实现一个基于net的在线考试系统。采用SQL Serve为数据库开发平台,MVC框架,IIS10.0网络信息服务作为应用服务器。在线考试系统的功能已基本实现,主要通知公告、学生管理、在线考试、试题、考试等管理功能。
论文主要从系统的分析与设计 、数据库设计和系统的详细设计等几个方面来进行论述,系统分析与设计部分主要论述了系统的功能分析、系统的设计思路,数据库设计主要论述了数据库的设计,系统的详细设计部分主要论述了几个主要模块的详细设计过程。
【关键词】在线考试系统;net语言;MVC框架;SQL Server数据库。
Abstract
With the development of society and science and technology, the Internet has penetrated around people, and the network has slowly become an indispensable part of people's life. With the rapid development of the network, the term management system is no stranger. More and more schools, companies and other institutions will customize their own personalized management system.
The content of this graduation project is to design and implement an online examination system based on net. Using SQL server as the database development platform, MVC framework, iis10 0 network information service as application server. The functions of online examination system have been basically realized, mainly including notice announcement, student management, online examination, test questions, examination and other management functions.
This paper mainly discusses from the aspects of system analysis and design, database design and detailed design of the system. The system analysis and design part mainly discusses the function analysis and design idea of the system. The database design mainly discusses the design of the database, and the detailed design part of the system mainly discusses the detailed design process of several main modules.
[Key words] online examination system; Net language; MVC framework; SQL Server database
目 录
科学技术日新月异的如今,计算机在生活各个领域都占有重要的作用,尤其在信息管理方面,在这样的大背景下,学习计算机知识不仅仅是为了掌握一种技能,更重要的是能够让它真正地使用到实践中去,以创新的视角去不断方便人们的生活,推动对新知识的学习,培养自学能力,锻炼动手实践的本领。以前的考试,也应该摆脱人工管理的模式,使用计算机技术来进行信息管理工作,于是我思考了很久,最后决定用基于net语言开发一个在线考试系统。如今随着科技的迅速发展,net语言受到了众多开发者的青睐,net语言不仅简化了开发者的负担而且提高了开发效率,那么一个在线考试系统将是广大学校所需要的。所以要通过计算机胜任在线考试系统的工作,使在线考试系统更加准确、方便及快捷。
1.2 研究的主要内容
随着信息化的发展,互联网需要提供更多的服务,构造更完善的体系以满足越来越多的用户的精神与物质需求。伴随着Internet技术的日益成熟,一种建立在网络基础上的信息管理模式形成了,这便是今天为大家所熟悉的线上管理系统。
但传统的手工统计进行管理力量远远不够,所以有很多学校的在线考试工作只停留在传统的在线考试服务。同时,很多学校本身资金是有限再加上也缺少专业水平的工作人员,所以在线考试的管理手段较为落后,也就很难提高学生考试效率,同时也就不能很好的为学生提供在线考试功能,于是在线考试系统能够为学生提供更为完善的在线考试。以前在线考试都是通过手动来进行管理记录及操作,不但麻烦琐碎,还经常出现错误,给广大学生带来很不便,同时也需要大量的人力、物力和财力,极大的浪费了学校的资源。随着网络的快速发展,人们慢慢地来希望在线考试系统能够提供更为合理及完善的服务。
1.3 本文的组织结构
本文的组织结构如下:
1、绪论。综述了本文的目的及意义,分析了在线考试系统的结构;更好的从学生的角度出发,发现当今在线考试中的不足,同时要指出本次系统中的特色。
2、对系统主要的使用技术,开发环境、环境配置的介绍。介绍了本次开发所用的系统开发工具visual studio,还介绍了net语言、MVC框架和SQL Serve数据库。
3、系统的设计与实现。介绍了开发在线考试系统信息系统的思路并进行了需求分析,在需求分析的基础上进行了总体设计、详细设计以及数据库等相关方面介绍;该部分是全文的主旨。
4、系统功能模块具体实现。对开发中一些主要具体功能的实现进行描述。涉及到数据库、页面参数传递等相关知识。
5、总结。对整个论文及设计过程进行总结,指出系统设计过程的心得以及设计中存在的不足;后期还有待完善的地方等。
2 平台开发相关技术
2.1 net语言的简介
ASP.net是一种服务器端脚本技术,可以使(嵌入网页中的)脚本In ternet服务器执行。ASP.NET是一种在IIS中运行的程序,IIS(Internet Information Services)是微软的Internet服务器,IIS是Windows servers操作系统免费捆绑的组件
ASP.NET工作过程:
1.当浏览器请求 HTML 文件时,服务器会返回该文件
2.当浏览器请求 ASP.NET 文件时,IIS 会把该请求传递给服务器上的 ASP.NET 引擎
3.ASP.NET 引擎会逐行地读取该文件,并执行文件中的脚本
4.ASP.NET 文件会以纯 HTML 的形式返回浏览器
Microsoft .NET平台将从根本上改善计算机和用户之间进行交互的方式,最大限度地发挥电子商务中计算技术的重要作用。用户可以通过语音和图像技术与其个人数据进行交互。这些数据将安全地存放在互联网上。
2.2 MVC框架方法介绍
在MVC模型中V即View视图是指用户看到并与之交互的界面。比如由html元素组成的网页界面,或者软件的客户端界面。MVC的好处之一在于它能为应用程序处理很多不同的视图。在视图中其实没有真正的处理发生,它只是作为一种输出数据并允许用户操作的方式。M即model模型是指模型表示业务规则。在MVC的三个部件中,模型拥有最多的处理任务。被模型返回的数据是中立的,模型与数据格式无关,这样一个模型能为多个视图提供数据,由于应用于模型的代码只需写一次就可以被多个视图重用,所以减少了代码的重复性。C即controller控制器是指控制器接受用户的输入并调用模型和视图去完成用户的需求,控制器本身不输出任何东西和做任何处理。它只是接收请求并决定调用哪个模型构件去处理请求,然后再确定用哪个视图来显示返回的数据,如图2-1所示。
图2-1 MVC框架结构图
2.3 SQL Serve数据库
目前应用最广泛的数据库有: SQL Server、SQL 、Oracle、adabas、DB2等。本系统是一个面向公众的网页,需要存储大量的学生信息,并且需要保证学生信息的安全,所以采用的是SQL Server数据库。SQL Server是一个新版数据库管理系统。增加了许多功能,使用简单,可伸缩性好,可用性高等优点。
SQL即结构化查询语言,是用于数据存取和查询、更新、管理数据库系统的语言,由Boyce和Chamberlin设计完成的。SQL语言有其固有语法,这在任何网络平台都可以查询到,主要包括六个部分,分别为:数据定义语言,数据操作语言,数据控制语言,事务处理语言以及指针控制语言。SQL语言的数据类型有字符型、文本型、数值型、逻辑型和日期型,这在应用中都是缺一不可的。SQL语言使用方式灵活,语言简洁易学,接近自然语言中的英语,便于学生快速掌握,而且集数据定义、操纵、控制于一体,高度非过程化的。
2.4 NET服务器控件
HTML控件在过去的页面开发中基本可以满足用户的需求,但是没有办法利用程序直接来控制它们的属性、方法和事件。而在交互性要求比较高的动态页面中需要使用到ASP.NET提供的Web服务器控件,这些Web控件提供了丰富的功能。
大多数的Web服务器控件类都派生于System.Web.UI.Control,而WebControl类又从System.Web.UI.Control类派生,都包含在System.Web.UI.WebControls命名空间下面。
在System.Web.UI.WebControls以下,服务器控件可分为两部分:
一、Web控件。这种控件用来组成与用户进行交互的页面,比如最常见的用户提交表单,这类控件包括最常用的按钮控件、文本框控件、标签控件等,还有验证用户输入的控件,以及自定义的用户控件等。使用这些控件可以组成与用户交互的接口。
二、数据绑定控件,在Web应用程序中,我们往往需要在页面中呈现一些来自于数据库、XML文件等的数据信息,这时我们就要用到数据绑定控件来实现数据的绑定和显示。这类控件包括广告控件、表格控件等,还有用于导航的菜单控件和树形控件。
2.5 B/S架构
B/S的系统是通过能上网的电脑就可以使用,它最大的优点是不需要安装专门的软件,首先浏览器向服务器发出请求,然后服务器处理请求把信息再返回给浏览器。不需要再次对数据进行存取与计算数据,只要负责显示数据来降低要求,如果说用户端像个“瘦子”,而服务器会越来越“胖”。B/S体系结构与C/S体系结构相比,最大的不同是:B/S体系的应用软件使用网络浏览器作为与用户交互的平台,而C/S则需要开发专用的应用程序。
当前MIS系统结构目前存在两种较为流行的结构:C/S和B/S两种。
C/S结构的系统:C/S结构就是客户机服务器结构,它可以法派任务到Client端和Server端来进行,充分利用两端硬件环境的优势,来降低系统的通讯的花费。用户端主要作用是处理人机交互,执行用户端应用程序,收集数据以及向服务器发送任务请求。服务器基本作用是执行后台程序,它主要对客户机的请求申请进行反馈,除此之外,它的作用还包括:数据服务预约储系统的共享管理、通讯管理、文件管理等等。
B/S结构的系统:这种网络结构简化了用户端,并把系统功能实现的中心集中到服务器上,在这种模式中,只需要一个浏览器就可以了。这种结构将很多的工作交于WEB服务器,只通过浏览器请求WEB服务,随后根据请求返回信息。
通常在网站网内部使用,采用C/S。而使用不仅限于内网的情况下使用B/S。考虑到本管理系统的一系列需求,所以,该系统开发使用B/S结构开发。
3 软件系统需求及可行性分析
3.1 需求分析
本次的毕业设计主要就是在基于基于net平台下设计并开发一个在线考试系统软件。运用当前Google提供的MVC框架来实现对课程信息查询功能模块和在线考试等查询功能。当然使用的数据库是SQL Serve。尽管没有面向对象的数据库的作用强大,但是在net开发上还是比较的灵活和方便的。系统功能主要介绍以下几点:
本在线考试系统主要包括二大功能模块,即学生功能模块和管理员功能模块。
(1)管理员模块:系统中的核心用户是管理员,管理员登录后,通过管理员功能来管理后台系统。主要功能有:首页、个人中心、通知公告管理、学生管理、在线考试管理、试题管理、考试管理等功能。管理员用例图如图3-1所示。
3.2 系统可行性分析
一个完整的系统,可行性分析是必须要有的,因为他关系到系统生存问题,对开发的意义进行分析,能否通过本网站来补充线下在线考试模式中的缺限,去解决其中的不足等,通过对本网站,不仅能使工作量不断地减少,还能使工作和管理的效率更加高。所以开发该网站能实现更大的意义和价值, 网站完成后,能否达到预期效果就要通过可行性分析,分析之后,决定此系统是否开发。该在线考试系统的开发设计中,对技术、经济、操作方面进行了可行性分析;
3.2.1 技术可行性
本系统开发选择net语言,它被研究的目的就是在于能够为网页创建等可以看到的信息。随着移动互联网技术的不断发展和创新,net俨然已成为下一代互联网的Web标准。所以后台设计选择使用SQL Serve数据库主要用来的建立和维护信息,后台数据库的要求则是能够建立和维护数据信息的统一性和完整性。
3.2.2 操作可行性
现在随着科技的飞速发展,计算机早已经进入了人们的日常生活中,人们的工作环境也不像以前有那么多的要求,不需要学生一定要到学校进行考试,有的考试在宿舍也可以完成。这使得学生的考试效益有了很大的提升。操作的多样性也变高了。因此,管理的计算机化,智能化是社会发展而带来的必然趋势,各种智能的软件层出不穷,不同的软件能完成学生不同的需求,这不仅提高了工作效率还能完成一些客户特定的一些需求。本系统不仅界面简洁明了还采用可视化界面,学生只要用鼠标和键盘就可以完成对相关信息的修改,删除,添加等操作。因为这个系统的操作十分简单,方便上手,对于第一次使用系统的人,只需要很少的时间就可以上手操作。由此可见,本系统在操作上是可行的。
3.2.3经济可行性
基于net的在线考试系统,该网站软件开发仅需要一台普通的计算机便可完成实现开发,其成本很低。另外,作为毕业设计作品来讲,开发成本基本上可以忽略不计,且该系统软件的投入使用,可以实现更加快速高效的在线考试系统,同时还能实现对管理资源的有效节约,该在线考试系统在经济上完全可行。
4 系统软件的总体设计
4.1 系统开发流程
(1)需求分析:初步分析学生的需求,列出功能模块。
(2)系统设计:相关数据库、各功能的设计。
(3)界面设计:根据各个模块准备素材,设计界面。
(4)代码编写:实现相关功能代码的编写。
(5)测试运行:按照规划测试软件各项功能是否正常运行。
4.2 系统总体架构设计
4.2.1 总体设计
在线考试系统采用了结构化开发的方法。这种开发方法的优点是控制性比较强,开发过程中采用了结构化和模块化的设计思想,自顶向下,从总体到部分,合理划分系统的结构和模块。结构化开发时使用模块式开发,各模块之间互不影响,方便系统的开发与管理。
本系统的设计是基于 B/S架构的三层体系结构,也就是浏览器和服务器结构。计算机技术发展的速度非常快,以前的设计结构都以C/S的模式为主,也就是用户端和服务端模式。但随着网页技术的发展,越来越多的学生习惯于使用浏览器。现在的网页技术可以在浏览器中实现非常漂亮的效果,以前的单一低调的学生端页面已经无法满足学生的需求。在B/S这种结构下,技术人员可以很轻松的设计出学生所需要的工作界面,页面代码通过浏览器进行解析展示,在浏览器中不做过多的事务逻辑的处理。主要的事务逻辑放在服务端进行处理。这样学生的电脑就不会承载过多的东西,只需要浏览器展示即可。对于开发人员也很方便进行系统的维护和升级。开发人员只需要在服务端进行系统的维护就可以了。使用net这样的跨平台性非常好的语言,这样的开发模式更加的方便,高效。本系统合理的进行了模块划分和组合,因此由于各个模块之间基本上是相互独立的,所以每个模块都可以独立的被解释、执行、调试和修改,让繁琐的系统设计工作简单化。
如图4.1是该系统软件的功能结构图: