基于bs模式的在线考试系统的设计与实现论文.docx
- 文档编号:28877091
- 上传时间:2023-07-20
- 格式:DOCX
- 页数:50
- 大小:1.72MB
基于bs模式的在线考试系统的设计与实现论文.docx
《基于bs模式的在线考试系统的设计与实现论文.docx》由会员分享,可在线阅读,更多相关《基于bs模式的在线考试系统的设计与实现论文.docx(50页珍藏版)》请在冰豆网上搜索。
基于bs模式的在线考试系统的设计与实现论文
毕业论文﹙设计﹚
题目基于B/S模式的在线选课系统的设计与实现
学生姓名张二龙学号1109064041
所在院(系)数计学院
专业班级信息与计算科学1102班
指导教师赵晖
完成地点陕西理工学院
2015年6月10日
基于B/S模式的在线选课系统的设计与实现
作者:
张二龙
(陕西理工学院数学与计算机科学学院信息与计算科学专业信计1102班,陕西汉中723000)
指导教师:
赵晖
[摘要]在当今社会使用电脑可以大大提高做事情的效率,用无纸化和网络化的方式去进行办公慢慢地被人们所接受,用计算机去管理学校的日常信息是现在许多高校都在进行的工作内容,同时对提高工作效率也起到了关键性的一步。
让学生在网上进行选课方便了教学工作的管理,在网上选课和以前的手动登记选课相比更加节约时间,所以设计一套在线选课系统可以在很大程度上提高教学工作的效率。
在线选课系统主要是为了让学生方便的选课,让学校的教学工作更好的去进行管理,该系统主要从前台页面展示和后台数据管理来进行设计,系统开发采用B/S结构,前台用Html进行页面制作,后台由SQL Server 2012数据库来进行数据的存储,通过动态网页和数据库的组合,达到对数据库的操作以实现学生的选课功能。
开发在线选课系统是为了解决以前手工登记选课结果效率低、信息交流方式不灵活和工作效率不高的问题,其对于处理一般性的业务可行性较强,适用于学生选课信息的管理。
采用的主要技术有:
Html5,JavaScript,Asp.Net,SQLServer2012,VisualStudio2012等开发工具。
[关键字]:
在线选课;SQLServer;Asp.Net;Html5
TheDesignandImplementofTheOnlineEnrollmentSystemBasedonB/SModel
ZhangErlong
(Grade11,Class2,InformationandcomputingscienceMajor,MathematicsandComputingScienceDept.,ShaanxiUniversityofTechnology,Hanzhong723000,Shaanxi)
Tutor:
Zhaohui
Abstract:
Intoday'ssocietytheuseofcomputerscangreatlyimprovetheefficiencyofdoingthings,andnetworkwithpaperlesswaytocarryouttheofficegraduallybeenacceptedbythecomputertomanagedailyinformationtheschoolisnowbeingdoneinmanycollegesanduniversitiescontent,whileimprovingtheworkefficiencyalsoplayedacrucialstepforward.Sothatstudentsintheonlinecourseselectiontofacilitatethemanagementofteaching,onlineenrollmentandregistrationenrollmentcomparedtothepreviousmanualsaveevenmoretime,sothedesignofanonlinecourseselectionsystemcanimprovetheefficiencyofteachingtoalargeextent.
Onlineenrollmentsystemismainlytoallowstudentstofacilitatecourseselection,soteachingschooltobettermanagethesystemfromthefrontpageofthemaindisplayandbackgrounddatamanagementtodesign,systemdevelopmentusingB/Sstructure,frontwithHtmlforpageproduction,backstagebytheSQLServer2012databaseforstoringdata,throughacombinationofdynamicpagesanddatabases,totheoperationofthedatabaseinordertoachievethestudent'senrollmentfunction..
Developinganonlinecourseselectionsystemistosolvethepreviousmanualregistrationelectiveresultinefficient,inflexibleexchangeofinformationandworkefficiencyisnothigh,anditsfeasibilityfordealingwithgeneralbusinessstrongerforthemanagementofstudentenrollmentinformation.
Themaintechnologyare:
Html5,JavaScript,Asp.Net,SQLServer2012,VisualStudio2012andotherdevelopmenttools.
KeyWords:
OnlineCourse;SQLServer;Asp.Net;Html5
1引言
1.1在线选课系统研究背景及应用
在软件开发应用这方面国外的开发技术相比较国内的技术比较成熟而且比较先进,很久时间之前,外国人的课题申报以及进度检测和许多日常工作都是在网上进行的。
在国外关于在线选课这方面的系统也做的很完善,学生只需要在有网络的地方去登录在线选课系统就可以完成个人信息的查看、选择课程、查看考试成绩、修改密码、退选课程这一学习生活的全过程。
目前在许多发达国家都开设有远程教育的学校,远程教育方便了学生进行远程学习,同时它正在教育方面发挥着巨大的作用,通过远程教育学习培养出来了许多有用的人才。
在最近这些年来由于教育体制的改革和高校数目的增加,导致学校的学生人数逐渐的变多,学校的教学工作量也在不断的上涨。
如果仍然通过传统的手动方式来登记学生们的选课信息来进行选课工作,会浪费许多人力和物力而且学校的工作效率也会降低许多。
另一方面在人为的手动登记选课结果过程中会不可避免的出现许多未知的错误,因此,通过提高在线选课系统的手段,让学生只要在有网络的地方登录到在线选课系统的首页输入自己的个人信息然后进行在线选课来替代传统的手工登记操作成为高校进行教学管理的必然趋势之一。
在线选课系统可以为学生提供一个方便的选课功能,同时也能提高大学的教学管理工作的效率[1][2]。
在线选课系统有广泛的应用,它可以方便学生在线选课,提高学校的教学效率,学生只要登录进来即可为完成,在线选课系统是大多数高校进行教学工作的重要组成部分,它的实施对于提高学校的工作效率来说都至关重要,该系统的建立会方便用户进行各种信息的查询。
1.2本文研究目标及意义
对于大多数高等学校来说在线选课系统在教学工作管理中都扮演着非常重要的角色,它的实施对于提高学校的工作效率起到了关键性的一步,但是在实际的日常教学工作中,操作的人总使用传统的人工手动登记方式来管理学生选课结果,这种手动的统计学生选课结果的方式存在着许多不足,比如在这几个方面:
花费时间长、工作效率低、会产生大量的文件和数据而且安全性不高,这对于学生查看个人信息和选课结果、更新和维护数据都带来了许多不便之处。
在现代社会中科学技术发展的越来越快,计算机科学日渐成熟,人们已经深刻认识和接受到计算机处理工作时的效率,在广泛的计算机应用中在线选课系统只是作为其中的某一个小的模块,使用计算机对选课结果信息进行数据管理,有着手工登记方式所无法达到的效率。
1.3本文主要完成工作
本文将要完成在线选课系统的设计,在用户使用过程中,系统会根据用户的身份赋予其能操作和使用的功能权限。
其中在线选课系统主要包括以下几个功能:
1、注册用户功能的完成。
2、用户登录功能的完成。
3、学生信息管理的完成。
4、教师信息管理的完成。
5、课程信息管理的完成
6、设置系统退出功能。
7、实现老师排课功能。
2系统的需求分析
2.1总体需求分析
在线选课系统主要是为了给学生在选课的时候提供方便,系统中主要三个方面的角色,这三个方面分别是高校学生、高校职工和系统管理员。
学生的主要功能是查询课程信息、个人选课情况、学生的个人基本信息、查看成绩以及修改密码;学校教职工主要功能是查看个人基本信息、查询自己所带的课程、给学生录入分数和密码修改;管理员拥有系统的最高权限,主要方面有对学生信息、教职工、选课信息进行管理和统计工作,以及对该系统运行状态进行查看和维护,本系统实现了对选课过程的实时掌控,已达到去方便的管理数据信息。
学生可以用本人的账号和密码登录系统。
在选课系统中,学生具有的功能是查询本人的课程表、修改密码和个人基本信息,若想要去查看别的学生的选课信息及基本信息,就要知道其他学生的账户名以及密码。
这些数据是很敏感的,特别是密码非常重要,所以这样设计系统的角色分配不但满足了学生的选课要求,还加强了个人基本信息的安全性。
管理员有修改数据信息和删除数据信息的最高权限,因此需要对管理员应该如何操作该系统进行更多的考虑和详细设计。
在此系统中,管理员主要去对教师、学生、课程等数据信息进行增删改查操作。
(1)学生信息部分完成学生的登录,在这个模块中是用来验证登录人员确实是本学校的学生和验证输入数据的正确性,在线选课系统首页提示用户输入用户名和密码收集用户输入的信息和数据库中数据对比验证通过后进入学生主操作界面。
(2)教师信息部分完成教师的登录,教师登录到本系统首页后,将会提示输入账号和密码信息收集用户输入的信息和数据库中数据对比验证成功后进入教师主操作界面。
(3)选课信息查看,学生必须成功登录后进入到该系统进行信息查看,否则不允许进行相关的操作。
(4)管理员登录部分完成管理员的登录,管理员登录到本系统后,首先会看到该系统的登录首页,然后提示输入账号、密码和验证码的三个基本数据,最后成功验证进入后台数据管理主操作界面。
2.2系统性能分析
在线选课系统的总体设计和开发都采用了当前比较主流的C#开发语言,采用现在比较先进的B/S开发模式,利用最新的开发技术和开发工具。
它能够满足学校各个年级学生的使用,为了使学生能够方便的操作该系统,因此要求系统的操作尽可能简单而且易操作。
2.3可行性分析
开发在线选课系统是为了解决以前手工登记选课结果效率低、信息交流方式不灵活和工作效率不高的问题,其对于处理一般性的业务可行性较强,适用于学生选课信息的管理。
下面将从技术可行性,经济可行性和操作可行性三方面对系统进行分析。
2.3.1技术可行性
在本次的系统开发中,我使用的是C#语言开发。
对于软件工具要求,因为现在的开发工具都已经非常成熟,所以在这次的开发中我选用了功能强大的VisualStudio2012作为开发工具,并与强大的SQLServer数据库相结合,它是一种简洁,易学,操作简单并且功能强大可以存储大量数据的工具。
实现前台页面展示和后台数据库对接利用的是.Net框架里面自带的Ado.Net和数据库进行连接,用于将用户输入的数据存储到数据库中同时也可以将数据库中的数据显示到前台本系统主要是利用SQLServer数据库进行增、删、改、查等多次的重复性的操作,本系统的设计需求方面比较简洁,这样也方便了以后的维护工作。
2.3.2经济可行性
在线选课系统主要是在各个高校进行推广和使用,主要的目的是方便学生的选课和提高高校的教学工作效率,该系统成本主要集中在前期查阅资料分析系统功能和后期系统软件的开发和最后测试上,将前期的开销和投入使用后节省的人力、物力和财力相比较该系统是值得开发的。
2.3.3操作可行性
在线选课系统使用的主要群体是高校中的每一个人,设计时必须要充分考虑不同学生的的使用习惯,在界面上要漂亮,使得操作简单易行和后期功能的简单实现和扩充。
高校中的学生只要会简单的电脑操作常识,就会操作该系统,当然前提是成功注册到该系统后拥有该系统的权限,所以在操作之前你必须得先注册,只有注册成功后才可以操作本系统。
2.4开发及运行环境
在线选课系统最终是部署在IIS上,当用户向IIS请求一个页面时,IIS首先判断请求页面的类型如果是静态页面(.html,图片文件,JS文件,CSS文件等),那么从磁盘上找到这些文件,直接返回这些文件的内容。
如果请求的是动态文件(.aspx),会交给.NetFrameWork处理。
2.4.1开发环境
(1)用到的操作系统:
Windows7或者WindowsXp。
(2)用到的数据库:
SQLServer2012。
(3)用到的开发工具:
VisualStudio2012,该工具是目前比较主流的开发工具,利用该工具可以开发许多方面的应用例如:
开发 ASP.NET Web 应用程序、WCF服务、桌面应用程序和手机端应用程序。
C#是一种重要的新语言,微软将其设计和定位成.NET战略的一部分,C#内建了很多有用的库,并由高级集成开发环境提供支持。
2.4.2运行环境
(1)服务器:
Microsoft Sql Server 7.0 或更高版本,Microsoft IIS 6.0 或更高版本。
这个服务器,简单,适用,使用简单。
(2)浏览器:
火狐、IE等浏览器。
2.5系统中用到的技术
2.5.1Javascript
Javascript这门语言是一种制作网页时实现动态效果的脚本语言,它对于在前端数据的显示起到了保护作用从而提高了数据的安全性,这门语言通常情况下是和Html语言结合使用去响应不同角色的用户在进行操作系统时的各种操作它是一种弱类型的脚本语言同时内部含有许多内部类让编程时感觉如同使用面向对象语言一样使用起来比较灵活方便了程序的开发进而提高了开发效率。
2.5.2SqlServer
这个工具主要是用来将用户进行操作时的数据存入到编程者提前根据需求设计的表中,它最初是由Microsoft、Sybase和Ashton-Tate三家出名的公司合作去研究开发,最早的一个版本是在1988年推出的,在WindowsNT推出后,Microsoft与Sybase在SQLServer的开发上就开始各自自主开发了,Microsoft将SQLServer移植到WindowsNT系统上,专注于开发推广SQLServer的WindowsNT版本。
Sybase则较专注于SQLServer在UNⅨ操作系统上的应用。
2.5.3C#
由于.NET与以前的技术有着极大的差异,微软特意为.NET平台开发了一门新的语言——C#。
C#[3][5]的语法和Java的语法很相似,然而并不能说C#抄袭了Java。
C#和Java都是基于C++的语法结构的。
正如Java在许多方面是C++的提炼版一样,C#也可以视为Java的提炼版,实际上他们属于同一个语言系列。
C#是多种语言的混合体,因此它像Java一样语法简洁,像VB6一样使用简单,像C++一样功能强大和灵活。
简单的说,C#具有如下特点:
不需要指针,垃圾收集器能够自动管理内存,完全支持基于接口的编程技术。
关于与.NET平台一起发布的C#语言,要理解的最重要的一点可能是,它生成的代码只能在.NET运行库中执行。
正式的说法是,这种必须在.NET运行库下执行的代码称为托管代码,这些包含托管代码的二进制单元可以称为程序集。
反之,不能直接在.NET运行库中承载的代码称为非托管代码。
2.5.4CLS
CLS(公共语言规范)是这样一套规则,他清晰地描述了支持.NET的编译器必须支持的最小的和完全的特征集,以生成可由CLR承载的代码,同时可以被基于.NET平台的其他语言用统一的方式进行访问,CLS可以看做是由CTS定义的完整功能的一个子集。
如果打算让自己的产品功能无缝地融合到.NET世界,那么CLS是编译器创建者最终必须遵循的一种规则。
每个规则被赋予一个简单的名字,描述了这个规则如何影响创建编译器的人以及与他们交互的人,其规则是CLS规则仅适用于类型中向定义它的程序集以外公开的部分,根据这个规则,可以正确地推断其余的CLS规则对于用来建立一个.NET类型内部运行功能的逻辑是不适合的。
必须遵循CLS的类型的唯一一点,就是成员定义本身如命名规范、参数和返回类型,成员的实现逻辑可以使用其他的非CLS技术,程序外部并不知道这些的不同。
2.5.5Asp.Net
这门技术是微软在网页开发方面比较先进的技术甚至可以对将来的网页开发技术起到了决定性的作用,它规范了网页开发给网页开发工作提供了一个比较好的模型统一了网页开发如何去进行,在数据安全性方面它相比较以前的技术都得到了较大的提高而且采用了比较新的架构开发模式利于以后应用程序的扩展也提高了系统的稳定性,它可以和支持.Net框架下的所有编程语言很好的兼容从而方便了编程人员去开发程序。
2.5.6Ado.Net
这门技术在和后台数据库对接方面起到了决定性的作用甚至可以这样说如果没有这门技术就无法实现前台数据的展示和将不同角色用户的操作存入到数据库中,如图所示是Ado.Net进行的一系列操作
图2.1 Ado.Net说明
2.5.7三层
三层架构是为了方便以后程序功能的方便扩展和系统的稳定性,首先三层指的是:
数据访问层、业务逻辑层、表现层下来详细的去介绍不同层代表的含义和主要实现的功能。
数据访问层:
处于这一层做的工作是最底层的工作,它主要负责和后台数据库进行对接对数据进行增加、删除、修改和按不同条件查找数据。
业务逻辑层:
它主要做的任务是根据系统的需求去完成具体的逻辑业务和数据访问层进行对接,从而省去了直接访问数据访问层给编程带来了方便也使得业务逻辑更加清晰化。
表现层:
处于这一层也是最直观的一层,它将系统实现了的功能需求展示给不同角色的用户,也就是当不同权限用户登录系统后看到的不同系统界面。
3系统总体设计
3.1项目规划
本系统将实现的功能:
学生登录后可以查看本人详细信息、修改密码、在线选择课程、查看成绩等,在线选课系统首页提示用户输入用户名和密码收集用户输入的信息和数据库中数据对比验证通过后进入选课页面进行课程选择。
老师登录后可以查看个人详细信息、修改密码、录入学生成绩、查看课程表等,在线选课系统登录首页提示输入用户名和密码,验证成功后进入教师操作的主界面。
管理员登录后可以进行学生、课程、教师数据管理、以及分配课程等,系统首页提示用户输入用户名和密码收集用户输入的信息和数据库中数据对比验证通过后进入在线选课系统后台的管理[6][7]。
在在线选课系统中,学生承担着很重要的角色之一,学生输入账号和密码后如果验证成功,会进入到学生操作的主界面学生可以进行以下操作,可以查看课程、选择课程、查看个人信息、退选课程等等,单击相应的命令按钮进行操作:
图3.1学生流程图
教师是主要的用户之一,选择教师用户登录后,会出现所有教师的子任务菜单,例如查看信息、录入成绩、退出登录、查看课程等等,单击相应的命令后进入相应的操作:
图3.2 教师流程图
3.2数据库设计
在线选课系统的主要任务是从学生选课结果这个庞大的数据中提取出对自己有用的数据,因此必须有某个容器来存储和管理学生选课的结果的数据信息。
所以建立一个比较好的符合逻辑的数据库是非常重要的,好的数据库设计可以让使用该系统的用户可以快速的查看和管理自己所需要的数据,同时数据库设计的是否合理也在一定程度上影响着后期软件的开发。
数据库设计主要体现在两个方面,一方面是数据库的概念设计,另一方面是数据库的逻辑设计即将数据按照一定的功能和属性进行分类最终让用户更好的去操作这些数据。
在设计数据库的时候首先要分析要设计出那些表,每个表中又需要添加哪些字段,最后分析各个表之间的关系,最终设计出能正确的对数据关系描述、满足系统功能、执行效率高、能满足用户进行多种查询要求的数据库。
用户感觉系统的好与坏来源于对系统的操作,要提高用户使用的满意度前期如何设计数据库显得非常重要,系统中所有的数据都存储在设计好的数据库中,在系统所有页面中通过数据库连接,从而操作数据库中存储的数据,进而实现所有需要的功能。
在线选课系统中采用Microsoft SQL Server 2012作为数据库工具,数据库是在系统设计中占有举足轻重的力量,数据库设计的合理与否对后期的开发效率有着至关重要的作用。
3.2.1E-R图
数据模型中包含3种互相关联的信息:
数据对象、数据对象的属性及数据对象彼此间相互连接的关系。
通常使用实体-联系图来表示数据模型,实体-联系图也称为ER[8]图。
图3.3 E-R图
3.3系统功能流程图
图3.4基本功能流程图
3.4开发模式/架构
本系统运用Asp.Net[9][10]开发模式,运用了其开发思想和框架,实现了系统的功能开发流程如下:
(1)浏览器发出请求后被服务器接收然会会响应数据给浏览器。
(2)将前台aspx页面的数据提交给后台.aspx.cs文件。
(3)后台通过业务逻辑的操作和数据库进行对接。
(4)将数据发给前台aspx页面从而呈现给浏览器。
3.5系统模块划分
在线选课系统根据需求的要求,可以将本系统划分为五个模块。
3.5.1身份验证模块
身份的验证主要是通过将用户登录时输入的信息和数据库中的数据进行判断,所有要登录的用户首先进入到在线选课系统的登录首页,登录信息提交后检验登录者的身份是否验证成功,如果验证成功,则进入不同角色相对应的操作主界面;否则,就弹出错误提示信息,在本系统中,拥有高校学生、教职工、系统管理员三种角色。
3.5.2信息查询模块
信息查询包括以下方面的功能:
教师个人信息查询、公共信息浏览、学生信息查询。
教师个人信息是通过教师姓名来查询对应的教师个人信息,学生信息是通过学生姓名来查询对应的学生个人信息,包括年龄、性别、班级等信息。
课程信息是通过课程名来查询对应的课程信息,包括学分、上课地点等。
3.5.3信息修改模块
当管理员进入到系统后台时,点击修改按钮首先会去读取数据库中的数据,然后展示到页面前台,最后收集用户重新提交的数据后保存到数据库中。
3.5.4信息删除模块
对于数据进行删除只能是管理员来操作,点击删除按钮后会弹出是否删除的消息,如果点击确定按钮,会将这条数据从数据库中进行删除。
3.5.5用户退出模块
为了提高系统的安全性和保护用户的个人信息,该系统添加了退出功能当单击退出按钮后会跳到登录的首页,用户可以重新进行登录。
4系统详细
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 bs 模式 在线 考试 系统 设计 实现 论文