基于WEB的考务管理系统的设计与实现
0 s3 k! d0 n, Y4 j院 系
' G. V7 d' v3 M/ H专 业
: ?5 u2 i, l2 A) c3 j) G/ r班 级 / `8 ^5 u1 o1 R
学 号 * i4 \4 ]# q- x9 a. Q7 p
姓 名 . F4 e% K' _! l5 r* w
指导教师
* h8 ]( [; E: v& U( h7 s负责教师
**************工业学院
4 u; ~7 {; Y9 S" m/ K摘 要 随着信息技术的发展,计算机在各行各业都得到越来越广泛的应用。计算机化的考务信息管理将是建设现代化学校必不可少的基本条件。3 R& W* ]8 P% Q! r5 ~8 W" W$ g
论文对考务管理进行需求分析,提出了一个系统实现方案并予以设计和实现。系统利用Internet技术和先进java Sever Pages (JSP)技术的优势,采用B/S模式和MVC架构。系统实现权限管理,教师,学生信息查询,添加,删除,修改;考试信息统计,监考教师信息统计;安排考试等功能,,力求解决考务管理系统中资源冲突问题,对提高安排考试效率具有重要的意义。 关键词:考务管理;B/S;MVC;考试冲突检测 Abstract
% {6 J0 c6 w0 R% ?$ |5 [With the development of information technique, computer is more and more applied in all sorts of departments. With each and every passing year the examination managers are using with computers that are more powerful about administrate exam. It is so important will building a modern school. . q& M' l3 F# v; q( d; l% F
Examination papers on the management of demand analysis. System uses advanced Internet technology and Java Server Pages (JSP) technology priorities potential use B/S mode and MVC framework.The management of authority, the selection of student and teacher’s information, adding, deleting and changing. Arrangements for examinations and other functions,are try to resolve exam management system resolve the resource conflicts of the exam management system and have a great significance about improving the efficiency of the arrangement of the examination. Keyword*****amination Administration; B/S; MVC; Examination Conflict Examine
4 Q, v s" p! u( n& \目 录
! m3 _: G' F( H8 M9 J9 r1 y( O# I1. 引言 1
2 D3 z( P1 m" y0 C1.1. 论文的研究背景 1
9 I9 b8 | v, ?3 F! z" ^% W s% b3 c1.2. 论文的内容与意义 1% n# B* F' l+ K0 ?9 ]
1.3. 论文的章节安排 2
& @+ R" F8 H; E3 p2. 需求分析 31 W' a8 h& b; l6 B
2.1. 项目内容及要求 3/ @5 A' b! C4 t
2.2. 可行性分析 4( `3 a. g7 l$ n- o
2.3. 开发工具论述 7
) j$ w8 ?& a0 ~" N2.3.1. 前台开发工具 7
z8 F: v+ |6 k2.3.2. 后台数据库 80 r4 ^, N9 x5 l7 b0 ~
2.3.3. 其他开发工具 97 t; c7 _7 S) y; E2 e" i
3. 系统结构特性设计 109 B! p# z1 ^9 h E. ]: Y( @. E
3.1. 系统分析模型 10% C Z1 h+ @) _7 D1 _9 A( _
3.2. 数据库设计 12
$ ?0 k, ?# N4 e: d3 i3.2.1. 数据库逻辑结构设计 128 L# c- N3 p2 F0 I {7 i- m: A
3.2.2. 主要涉及的数据库表 12
0 Q- Z1 G$ T9 w& ]7 j) v4. 系统行为特性设计 15
3 p7 w" [& n7 c. {; ? |4 V# a1 Q" N8 ]4.1. 软件结构设计 153 n: m- u, q+ m* E4 D# M- ^
4.2. 功能子模块设计 16
: y# l& u: O5 M( y' V4.2.1. 教师管理子模块 16
! u. W7 o I1 L9 H5 Z$ J6 }4.2.2. 学生管理子模块 22
" l8 `: f8 Z. p# @4.2.3. 安排考试子模块 262 C8 {- w" y% C9 K/ ^4 t
4.2.4. 教室管理子模块 31
5 Q4 k+ w' R a2 a4.2.5. 统计管理子模块 32) D, S1 x7 @. |& n$ T0 J
5. 系统运行与调试 35
8 O% G& U# j1 ~1 n. A5.1 系统测试方案 35( q' ~3 m% ^% O N8 v
5.2 测试结果分析与调试 35
9 R+ \5 E4 G3 w; t6. 结论与展望 39# ]' K. J2 Y% r
参考文献 40
7 e7 b% m0 K7 f* W! n致谢 41+ I# }; o* L! W; X: k7 D5 y8 S3 y
/ Z* I/ Y @7 j8 ]% x1. 引言( E o+ D$ v" M# s7 n4 O, t& j0 O
随着现代信息技术的快速发展,教育信息化工作成为目前教育改革和发展的主旋律之一。而考务工作作为高校教育信息化工作中的一项重要工作,如何充分利用Internet网,构建一个具有开放性、实用性和灵活性的高校考务工作平台,是一个值得探讨的课题。
9 A# k+ I2 B2 C* \4 s1.1. 论文的研究背景
4 |: b& K9 H5 u# p1 E& O随着知识经济时代的到来,信息化程度越来越高,知识总量剧增,知识更新的速度也越来越快,这使得教育管理的负担越来越重。目前,很多高等学校还应用手工式或单机式的方法进行考务管理,这无疑给教育者带来很多不必要的重复工作量。但同时,我们也欣喜地看到很多学校已组建或正在组建校园网。许多教师也在学习现代教育理论,用于辅助教学的现代教育媒体的种类越来越丰富,功能也越来越完善,而新的教育媒体在不断地研制,这无疑为解决这一难题带来了更好的条件和手段。3 L7 \- o! T0 J; z% O0 A2 T, X
在高校的日常管理工作中,“考务管理”是教学工作中的一项重要工作,其管理模式的科学化与规范化、管理手段的信息化与自动化建设将对学校的教学工作有重要的影响。9 z# I# M# D. \- I$ T
1.2. 论文的内容与意义4 [( S1 y: {+ W# k0 r/ j
随着高校办学规模的不断扩大,教学资源显得非常紧张,每年期中、期末期间都要安排数量众多的考试,因为班级众多,考试科目繁多,监考人员数量大等原因,如何准确高效地安排考务工作,使教学资源达到最佳配置,是高校教务管理部门亟待解决的问题。" _6 p7 F2 u! d6 }
为此现以沈阳航空工业学院为模型,设计一款考务管理系统。为便利校园的教学管理产生更好的促进作用。
) X' L! y5 A4 R, d1.3. 论文的章节安排
6 z, _6 s; I5 m首先在引言部分介绍了课题研究的背景,内容和选择课题的意义,其次在需求分析中介绍了项目的内容以及所需的开发工具,第三部分对系统结构特性进行了分析和数据库的详细设计,第四部分对系统行为特性进行概要设计和详细设计,即分别对各个子模块进行详细分析设计,第五部分系统运行与调试,进而对各个模块进行测试分析,最后对系统做出总结,指出不足之处。3 q# a. J Y( \6 P$ K
& k) j& Y* r$ F2 H2 h' I5 v; ^) }
2. 需求分析: `. u! z3 b; }6 U1 V) l
2.1. 项目内容及要求
' h @7 v& a% S: i# f7 P项目以沈阳航空工业学院为模型,结合学校实际情况(班级众多,考试科目繁多,监考人员数量大),开发设计一款基于Web的高校考务管理信息系统,主要适用于教务员,教师,学生三类人员的使用。% h+ ]. ?8 d+ g! Y7 R, \; j2 A
系统功能:教务员可以不受时间和地点的限制对教师、学生资料、考试情况进行添加、修改等管理功能,可以减少大量的繁琐,重复的操作,能够更充分地利用网络服务教学;考场信息,考试信息管理功能,包括安排监考人员,安排考试时间,考试班级信息;教师和学生可以及时对考试安排进行详细的查询。
1 p' m$ O* N( U2 f& s. D/ x% ~系统实现所分析功能,力求设计合理,避免资源冲突等问题,准确地安排考试。
( J5 q4 j5 x+ a6 a4 H5 Q2.2. 可行性分析
) U! l8 b6 `+ W; o) s( M+ d技术可行性:
1 r4 J W7 ~4 a1 B/S结构体系& w/ Y6 }8 \% l1 {$ }7 I9 ~
本质上,B/S即浏览器/服务器(Browser/Server)也是一种Client/Sewer结构,它是一种由传统的两层Client/Server结构发展而来的三层Client/Server结构在Web上的应用的特例。
: S0 c2 k% t5 I& K' s" ]3 F* q在Browser/Server的系统中,用户可以通过浏览器向分布在网络上的许多服务器发出请求。Browser/Server结构极大的简化了客户机的工作,客户机上只需安装、配置少量的客户机端软件即可,服务器将担负更多的工作,对数据库的访问和应用程序的执行将在服务器上完成。
' Z& d8 N0 X* W' m$ h6 k# }. N/ Q在B/S三层体系结构下,表示层(Presentation)、功能层(Business)、数据层(Data Service)被割成三个相对独立的单元:6 u; U" L6 V. V+ X: ~, X: B
第一层是表示层,即Web浏览器。在表示层中包含系统的显示逻辑,位于客户端。它的任务是由Web浏览器向网络上的某一Web服务器提出服务请求,Web服务器对用户身份进行验证后用HTTP协议把所需的主页送给客户端,客户机接受传来的主页文件,并把它显示在Web浏览器上。
7 m6 [, n8 e" w* y第二层是功能层,即具有应用程序扩展功能的Web服务器。在功能层中包含系统的事务处理逻辑,位于Web服务器端。它的任务是接受用户的请求,首先需要执行相应的扩展应用程序与数据库进行连接,通过SQL等方式向数据库服务器提出数据处理申请,而后等数据库服务器将数据处理的结果提交给Web服务器,再由Web服务器传送回客户端。2 K+ z6 ^: d, o
第三层是数据层,即数据服务器。在数据层中包含系统的数据处理逻辑,位于数据库服务器端,它的任务是接受Web服务器对数据库操纵的请求,实现对数据库查询、修改、更新等功能,把运行结果提交给Web服务器。数据层是数据的存放地。数据层使用一个关系型数据库(如SQL Server)来实现数据的存储,并集中管理这些数据,实现数据的完整性、安全性和灾难防护。 - F+ K! v5 e7 s; ?; }
B/S最大的优点就是可以在任何地方进行操作而不用安装任何专门的软件。只要有一台能上网的电脑就能使用,客户端零维护。系统的扩展非常容易,只要能上网,再由系统管理员分配一个用户名和密码,就可以使用了。% w* O Z5 Z7 Q4 H1 T
这种结构不仅把客户机从沉重的负担和不断对其提高的性能的要求中解放出来,也把技术维护人员从繁重的维护升级工作中解脱出来。由于客户机把事务处理逻辑部分分给了功能服务器,使客户机一下子“苗条”了很多,不再负责处理复杂计算和数据访问等关键事务,只负责显示部分,所以维护人员不再为程序的维护工作奔波于每个客户机之间,而把主要精力放在功能服务器上程序的更新工作。这种三层结构层与层之间的相互独立,任何一层的改变不影响其它层的功能。它从根本上改变了传统的二层C/S体系结构的缺陷,它是应用系统结构中二次深刻的变革。1 i! v0 z# a! h e9 c
2 MVC设计模式的结构
5 @ o3 A6 q9 k$ B) [2 LMVC是Xerox PARC在八十年代为编程语言Small talk-80发明的一种软件设计模式。MVC的核心是实现三层甚至多层的松散耦合,它将一个应用系统分为三个组件(模型Model一视图View一控制器Controller)1 c8 o0 ^# T9 p* E2 w
1) Model:模型指的是真正完成任务的代码,包含应用系统的核心功能,表示一个应用系统的数据,并且包含访问、维护和管理这些数据的逻辑。所有属于应用系统持久状态的数据都应该保存于模型对象里。模型提供的服务必须足够适用于不同的终端。一个模型聚集了相关的数据和操作,以提供一个详细而精确的服务:这些被封装在操作中的抽象事物的功能被模型化。一个模型的接口提供了访问和更新模型状态,执行封装在模型中的复杂进程的方法。模型服务被控制器访问,用于查询或更改模型的状态。当模型状态发生变化时,模型会通报给视图。对大多数Web应用程序而言,功能比界面感觉更重要。在模型同界面分离的情况下,代码即可实现可管理性和可重用性。例如,在一个保险应用程序中,模型就是处理计算保险费和同数据库交互的那些业务代码。模型通常也被称作业务逻辑。& E( a6 U$ {& o$ |
2) View:视图表示模型的状态,是应用系统的外观,当模型发生改变时,视图也将随之改变,以维持系统数据的一致性。在MVC模式下,通常的设计前提是界面任务较小。当然视图也应该具有一定的功能性并遵守可用性的约束,但视图界面不应当处理数据。事实上,视图的每一部分都只能包含采集数据的逻辑,并把采集到的数据传递给设计模式中的其他组成部分进行处理。' i b, k$ _1 x# e. x0 h
3) Controller:控制器是联系模型与视图之间的纽带,控制模型和视图之间的交互过程。它获取并翻译用户输入的动作,指定执行该动作的模型,或者根据用户的输入和执行的结果来选择下一个视图。 d, Z4 ]1 `0 J. p
MVC设计模式是一种用于分离数据维护和数据表现的方法,在J2EE中引入MVC设计模式,有助于把应用划分为合理的组件,从而可以方便的进行系统的开发、维护和扩充。
) o1 v9 Z4 |' I8 W6 Q3 r; M随着J2EE各种组件技术的广泛应用和MVC设计模式的发展与完善,J2EE与MVC设计模式在Web应用系统开发领域达到了完美的结合。目前,这种结合己经被广泛的应用于许多企业级Web应用系统的开发过程中,其中,JSP用于创建与用户交互的视图,Java Bean, EJB等组件用于创建实现业务逻辑的模型,Servlet用于创建实现业务逻辑与用户交互的控制器。Web应用客户端的用户动作被视图传递给Servlet集中处理,Servlet处理控制逻辑,调用Beans激活业务逻辑或修改模型状态。根据用户动作和模型处理的结果,控制器选择一个视图作为用户请求的响应。这样,就形成了清晰的MVC设计模式,简化了Web应用系统的开发。
+ N b1 G, A8 E, M2.3. 开发工具论述- k& @2 W" e- y: F
2.3.1. 前台开发工具
" r& @' I: ]4 r R" P系统设计基于Web,采用Dreamweaver和JSP技术。
, {. m6 }) }4 N8 J1 Dreamweaver技术
! }9 P) J, I# q& ]) y# sDreamWeaver是一款应用广泛的网页设计软件,它包括可视化编辑、HTML代码编辑的软件包,并支持ActiveX、JavaScript、Java、Flash、ShockWave等特性,而且它还能通过拖拽从头到尾制作动态的HTML动画,支持动态HTML(Dynamic HTML)的设计,使得页面没有plug-in也能够在Netscape和IE 4.0浏览器中正确地显示页面的动画。同时它还提供了自动更新页面信息的功能。
; Q- B4 r/ q6 R. W/ xDreamWeaver还采用了Roundtrip HTML技术。这项技术使得网页在DreamWeaver和HTML代码编辑器之间进行自由转换,HTML句法及结构不变。
) G& A0 I, q$ w, y, T' w2 JSP技术# f; B6 Z Q$ i5 M3 I# h8 N- E
JSP(Java Server Pages)是由Sun Microsystems公司倡导、许多公司参与一起建立的一种******页技术标准。 JSP技术是用JAVA语言作为脚本语言的,JSP网页为整个服务器端的JAVA库单元提供了一个接口来服务于HTTP的应用程序。 9 P3 Y( m: o' k% ^2 C% O U
在传统的网页HTML文件(*.htm,*.html)中加入Java程序片段(Scriptlet)和JSP标记(tag),就构成了JSP网页(*.jsp)。Web服务器在遇到访问JSP网页的请求时,首先执行其中的程序片段,然后将执行结果以HTML格式返回给客户。程序片段可以操作数据库、重新定向网页以及发送 email 等等,这就是建立******站所需要的功能。JSP技术具有以下优点:
6 \4 e' [ x: E: c. U5 d7 u7 S8 R! ?1)将业务逻辑层和表示层分离2 ^( c) F8 d& F% U/ S: K
开发人员在使用JSP技术时,可以使用HTML来设计页面显示部分静态页面内容,使用JSP指令或者JAVA程序片段来生成网页上的动态内容。% d' E& P: x1 ~* h) R- r E+ p
2)兼容多操作系统
( [- ?! }# F4 `& g0 WJSP支持多种操作系统平台,例如:Windows98,Windows2000,Windows XP以及Linux操作系统等。
3 L! m: i# y, e( u3)方便的组件功能
9 l' f" J |; A- O* Q在动态Web中JSP的组件是以JAVA开发的,可直接使用。在JAVA中JavaBeans的使用也很方便,由于Java支持多操作系统,所以JavaBeans可移植性和可重用性也非常高。
! V* W- B& Y" _0 G% K2 o8 Y" U4)一次编写,处处运行& w( U* I/ V! e( l# U
由于Java具有一次编写,处处运行的特点,所以JSP也具此优点。
- _; |, L$ R8 E- W! j, k% P目前用于生成******页较为流行的方法有很多,比如ASP,PHP等。( b7 w+ V0 f+ |: g2 v
ASP(Personal Home Pages,活动服务器页)是服务器端的脚本编写环境,用它可以创建动态Web页或生成功能强大的Web应用程序。ASP页是包括HTML标记,文本和脚本命令的文件。ASP页面可以条用ActiveX组件来执行任务,采用了三层计算结构,将Web服务器(逻辑层),客户端浏览器以及数据库服务器分开,具有良好的可扩充性。但ASP只能运行在Windows平台上,操作系统的兼容性较差,在动态Web中,ASP的组件是由C++和VB等语言开发的,并需要注册才能使用。- D+ } I, r' ~3 M" ]. k
所以系统开发采用JSP技术。
3 D5 @7 B' r) E2.3.2. 后台数据库) d5 B6 M/ j. r/ x5 U. v- W
数据库(Database)技术目前是计算机处理与存储数据的最有效,最成功的技术。网络数据库是指:以后台数据库为基础的,加上一定的前台程序,通过浏览器完成数据存储,查询等操作的系统。简单的说,一个网络数据库就是用户利用浏览器作为输入接口,输入所需要的数据,浏览器将这些数据传送给网站,而网站再对这些数据进行处理。
: i' @& C6 [) l; C3 x! U6 XSQL语言是结构化语言(Structure Query Language)的缩写,是一种用于数据库查询和编程的语言,已经成为关系型数据库普遍使用的标准,使用这种标准数据库语言对程序设计和数据库的维护都带来了极大的方便,广泛地应用于各种数据查询。Delphi和其它的应用程序包括Access, Foxpro, Orcale, SQL Server等都支持SQL语言。: ~5 _# u2 e- @9 ]4 N5 X2 h8 a" O8 l3 Z
系统采用 SQL Server2000 数据库。 2 {. B2 Y! I3 Z8 H- n" ?6 i7 s
2.3.3. 其他开发工具
m$ ?) S$ s( ~- V- {! ~2 \7 b5 q% v系统采用了Javabean技术,应用Eclipse软件.............. 4.1. 软件结构设计
0 c v2 T+ {: @6 u系统整体构建设计采用B/S模式,MVC框架,基于JSP技术解决Web形式下的考务管理问题,实现权限控制,方便用户操作和使用。
! q# l) p$ Y: k X! _1 W$ r系统重要任务是实现校园考务信息的管理功能,权限分为:教务员,教师,学生三类,主要功能分析如下:
# u" n' i4 x6 a5 x5 e+ |2 ~. ]. a& Z1 教务员信息管理功能6 ]9 R! V3 J. T" ]! x
添加,删除,修改,查询教务员、教师、学生信息。
# L7 D- h: X( v! I2 教师信息管理功能
9 I4 E! \+ Y" D3 V8 P 查询教师信息,查询安排考试情况信息。实现多项条件模糊查询功能。0 G) O* `& o: U& c. |
3 学生信息管理功能
0 Z* N) Y* E0 V% l. _: {( _! d查询学生信息,查询安排考试情况信息。实现多项条件模糊查询功能。4 f- A) E9 n, T5 l" q
4 安排考试管理功能6 Z5 [4 s7 w% c
根据各科课程的结课时间、教师的空闲时间以及教室的规模和空闲时间等信息,进行合理、准确地安排考试情况,避免出现资源冲突等问题。6 b) J/ L! G, v
5 教室信息管理功能
# i4 A/ y/ M, Z) K* E2 X: W/ x添加,删除,修改,查询教室信息。. `* `. G, B- E. e# C& W
6 课程管理功能
5 V8 h h: e. Z' m( E2 P添加,删除,修改,查询课程信息。; b4 ~) b5 l( H P
7 统计管理功能) v4 Y2 M) Z3 n8 q0 ^
统计考试情况、教室使用情况、教师监考情况信息。' F0 ~0 a6 J8 L
....................... + Q5 o/ Z4 `: G5 @$ @
|