1、毕业论文文献综述 信息与计算科学 嘉兴学院辅修专业教学管理系统的设计与开发 一、 前言部分 随着 21 世纪现代信息技术的高速发展,网络化、数字化已成为时代的主旋律 1。目前,我国各大高校在不断的扩招,面对不断庞大的学生队伍,各大高校首要解决的问题便是如何改进现有教学管理系统,以满足处理大工作量、高工作难度的工作需求。近几年“教育信息化已成为教育界特别是教育技术学界专家学者的关注” 2,因此便捷、高效的、智能的教学管理系统在当今的高校教学中显得尤为重要。 目前,我们嘉兴学院在教学管理上已基本实现信息化、网络化 ,但是在个别的工作中没有很好的信息化。比如,现在我们的辅修专业没有实现信息化工作,在
2、选课,查课,查成绩等方面还处于人工作业阶段,然而我们的第一专业早已实现了网络查询,因此辅修专业的教学管理系统的开发迎合了我院的需求,能够帮助辅修专业教务管理部门进行辅修专业的教学管理工作,实现教务管理的信息化、网络化。 现有的教学管理系统在在实际应用中,存在着一些问题主要表现为:大多系统基于 C/S模式,该模式虽然有不俗的计算能力,但是对于服务器负载的客户数量有限,在信息交流频繁的今天,显然已经不满足需求。近年来随着 Internet 技术的兴起产生的 B/S 结构,在网络支持方面对 C/S 结构做了明显改进。由于这个系统有应用范围广、功能变动频繁、信息交互量要求大的特点,因此采用 B/S 结
3、构开发教务管理系统将会更实用。 另外系统采用 C#.NET+SQL+MVC 架构模式的开发技术,在基于 B/S 的模式上有强大的表现力和兼容性。采用分布式结构,它是一种组成和存储的方式,逻辑上属于统一系统,无力上却分散于计算机网络连接的多个点上 3。 开发方法选择目前较为流行的开发方法主要有结构化开发方法、面向对象的开发方法 (OO, Object Oriented) 以及原型法。 结构化开发方法主要按照 “ 自顶向下,逐步求精 ” 的方法开发系统,主要包括系统规划、系统分析、系统设计、系统实施及系统运行和维护这几阶段。在系统分析时,采用自顶向下、逐层分解,有抽象到具体的逐步认识问题的过程;在
4、系统设计时,先考虑系统的整体优化,再考虑局部的优化问题;再系统实施时,则坚持自底向上,先局部后整体,通过标准化模块的链接形成完整的系统。 面向对象开发法有面向对象程序设计方法 OOP(Object Oriented Programming)发展起来的。其基本思想是基于所研究的问题,对问 题空间进行自然分割,识别其中的对象及其相互关系,建立问题空间的信息模型。在此基础上进行系统设计,用对应对象和关系的软件模块构造系统。 原型法是指由系统分析设计人员与用户合作,在短期内与用户合作,在短期内定义用户基本需求的基础上,开发出来一个只具备基本功能、实验性的、简易的应用软件。 相较于其他两种方法,结构化开
5、发方法强调开发过程的整体性和全局性,便于管理和控制;严格区分开发过程,任务明确;对开发工具的要求也不像原型法那样高。 此外,虽然原型法更符合人们认识事物的一般规律,但由于教 学 管理系统的主要功能于事先可 以基本明确,所以该系统的设计选择结构化开发方法。 二、 主题部分 1. 教学管理系统理论基础及其现状 1) 简介 教学管理系统是指在学校的总体下,以教务处为核心,形成运转灵活、上通下达、有权威、高效率的教学工作管理体系 4,王玉茜这样概括教学管理系统。完善的、系统化的教学管理体系又是由若干个子系统构成的。例如王正均在其论文中提出的模块 5: (1) 指定教学日历、排课、调课、教师调度等 (2
6、) 选修、辅修、重修的组织管理工作 (3) 检查教学计划执行情况、稳定教学秩序工作 (4) 新生入学电子注册工作即学籍管理 (5) 考试安排及成绩管理 2) 教学管理系统发展状 况 目前,国内各大高校都拥有自己的教学管理系统,主要特点如下: 首先,其主要功能基本近似,但是不同类型、不同规模的院校,教学改革的进展程度不同,教学管理模式和实施的方法差异较大。其次,在设计上,基本都是由高校教务管理人员和计算机专业技术人员共同设计完成,实现了量身定做的要求。技术实现上大多采用如下方式: (1) 在系统的构架上主要采用面向对象的组件技术,重复使用已开发的可靠类和对象,增强系统的可靠性和可扩充性。 (2)
7、采用基于网络的 C/S 和B/S 结构,保证了灵活性。 (3) 通过用户管理和加密技术保障数据通讯的安 全性。 通过整理 Rui Duan6等的研究,将系统存在着的问题归纳如下: (1) 马恒宇在他的文章中提到:“ 由于专业培养方案以及课程的不断调整,可能导致每学年的教务管理不断有新的需求,但是系统的功能无法及时更新 ” 7 。这点应该是目前所有系统中主要的问题,也是学校最需要的功能。 (2) 由于学校规模扩大,院校之间存在多重分层,这要求系统具备完善的分布网络化功能。 (3) 教学管理信息系统缺乏统一规划,各部分的协调不够,系统之间的数据共享和整合是不好的。 (4) 信息的处理问题。即新系统
8、对已有系统的数据需要继承,而信息在各系统之间需 要共享。 3) 现有教学管理系统的研究 在对多个院校的教学管理系统做了研究之后,得出如下结论: (1) 在功能上,学校正在对越来越多的管理工作进行信息化,同时也越来越 重视教学管理系统的实施。比如我们嘉院,正不断将各种工作纳入信息化工作,比如毕业设计工作,辅修专业教学管理等 . (2) 在技术上系统正在从 C/S 结构转向 B/S 结构,摒弃了 C/S 的扩展难、软件管理工作量大、远程访问不易等缺点,而随着 B/S 结构的成熟,它将是开发结构的首选。而开发语言和平台大多数采用的是主流的 JSP、PHP、 .NET 等,结合 SQL、 MySQL
9、等主流数 据库。 嘉兴学院现有教学管理系统正方教学管理系统: 正方现代教学管理系统是一个面向学院各部门以及各层次用户的多模块综合信息管理系,包括教务公共信息维护、学生管理、师资管理、教学计划管理、智能排课、考试管理、选课管理、成绩管理、教材管理、实践管理、收费管理、教学质量评价、毕业生管理、体育管理、实验室管理以及学生综合信息查询、教师网上成绩录入等模块,能够满足从学生入学到毕业全过程及教务管理各个环节的管理需要。系统采用了当前流行的 C/S 结构和 Internet 网络技术,使整个校园网甚至 Internet 上的用户都可 访问该系统,最大程度地实现了数据共享 。 4) 系统的设计理论 基
10、于校园网的教务管理系统是以计算机协同工作理论 (Computer Supported Cooperative Work,CSCW)为系统的理论和技术基础。 张薇娟 在她的文章中指出:“ CSCW 是指地域分散的一个群体借助计算机及其网络技术,共同协调与协作来完成一项任务 8”。它包括群体工作方式研究和支持群体工作的相关技术研究、应用系统的开发等部分。通过建立协同工作环境,改善任命进行信息交流的方式,消除或减少人们在时间和空间上的相互分隔的障碍,从而节省工作人 员的时间和精力,提高群体工作质量和效率。如:共享文件系统提供的资源共享能力,电子邮件和多媒体会议系统提供的人与人之间的通信支持功能,工作
11、流和决策支持系统的组织管理功能。 2. 系统开发结构综述 C/S 和 B/S 结构 9 1)B/S 结构,即 Browser/Server(浏览器 /服务器 )结构,是随着 Internet 技术的兴起,对 C/S 结构的一种变化或者改进的结构。在这种结构下,用户界面完全通过 WWW 浏览器实现,一部分事务逻辑在前端实现,但是主要事务逻辑在服务器端实现,形成所谓3-tier 结构。 B/S 结构,主要是利用 了不断成熟的 WWW 浏览器技术,结合浏览器的多种Script 语言 (VBScript、 JavaScript) 和 ActiveX 技术,用通用浏览器就实现了原来需要复杂专用软件才能实
12、现的强大功能,并节约了开发成本,是一种全新的软件系统构造技术。随着 Windows 98/Windows 2000 将浏览器技术植入操作系统内部,这种结构更成为当今应用软件的首选体系结构。显然 B/S 结构应用程序相对于传统的 C/S 结构应用程序将是巨大的进步。 B/S 结构采用星形拓扑结构建立企业内部通信网络或利用 Internet虚拟专网( VPN)。前者的特点是安全、快捷、准确。后者则具有节省投资、跨地域广的优点。须视企业规模和地理分布确定。企业内部通过防火墙接入 Internet,再整个网络采用 TCP/IP 协议。 2)C/S 与 B/S 区别: Client/Server 是建立
13、在局域网的基础上的 .Browser/Server 是建立在广域网的基础上的 . i. 硬件环境不同 : C/S 一般建立在专用的网络上 , 小范围里的网络环境 , 局域网之间再通过专门服务器提供连接和数据交换服务 . B/S 建立在广域网之上的 , 不必是专门的网络硬件环境 ,例与电话上网 , 租用设备 . 信息自己管理 . 有比 C/S更强的适应范围 , 一般只要有操作系统和浏览器就行 。 ii. 对安全要求不同 C/S 一般面向相对固定的用户群 , 对信息安全的控制能力很强 . 一般高度机密的信息系统采用 C/S 结构适宜 . 可以通过 B/S 发布部分可公开信息 . B/S 建立在广域
14、网之上 , 对安全的控制能力相对弱 , 面向是不可知的用户群 . iii. 对程序架构不同 C/S 程序可以更加注重流程 , 可以对权限多层次校验 , 对系统运行速度可以较少考虑 . B/S 对安全以及访问速度的多重的考虑 , 建立在需要更加优化的基础之 上 . 比C/S 有更高的要求 B/S 结构的程序架构是发展的趋势 , 从 MS 的 .Net 系列的 BizTalk 2000 Exchange 2000 等 , 全面支持网络的构件搭建的系统 . SUN 和 IBM 推的 JavaBean 构件技术等 ,使 B/S 更加成熟 . iv. 软件重用不同 C/S 程序可以不可避免的整体性考虑
15、, 构件的重用性不如在 B/S 要求下的构件的重用性好 . B/S 对的多重结构 ,要求构件相对独立的功能 . 能够相对较好的重用 .就入买来的餐桌可以再利用 ,而不是做在墙上的石头桌子 v. 系统维护不同 C/S 程序由于整 体性 , 必须整体考察 , 处理出现的问题以及系统升级 . 升级难 . 可能是再做一个全新的系统 B/S 构件组成 ,方面构件个别的更换 ,实现系统的无缝升级 . 系统维护开销减到最小 .用户从网上自己下载安装就可以实现升级 . vi. 处理问题不同 C/S 程序可以处理用户面固定 , 并且在相同区域 , 安全要求高需求 , 与操作系统相关 . 应该都是相同的系统 B/
16、S 建立在广域网上 , 面向不同的用户群 , 分散地域 , 这是 C/S 无法作到的 . 与操作系统平台关系最小 . vii. 用户接口不同 C/S 多是建立的 Window 平台上 ,表现方法有 限 ,对程序员普遍要求较高 B/S 建立在浏览器上 , 有更加丰富和生动的表现方式与用户交流 . 并且大部分难度减低 ,减低开发成本 . viii. 信息流不同 C/S 程序一般是典型的中央集权的机械式处理 , 交互性相对低 .B/S 信息流向可变化 , B-B B-C B-G 等信息、流向的变化 , 更象交易中心 。 3. .NET Framework10 .NET Framework 是新的 A
17、PI(Application Programming Interface,应用程序编程接口 ),它帮助程序员为 Windows 平台编写应用程序。它 是 Microsoft XML Web services 平台。 高祖彦的论文中有如下概述:“ XML Web services 允许应用程序通过 Internet 进行通讯和共享数据,而不管所采用的是哪种操作系统、设备或编程语言。Microsoft .NET 平台提供创建 XML Web services 并将这些服务集成在一起之所需。对个人用户的好处是无缝的、吸引人的体验 11” 。 .NET Framework 并非只能帮助编写新程序,而且
18、可以改善现有的程序。 .NET Framework 能够与现有的 COM(Computer Object Model,组件对象模型 )组件沟通,这是的用 .NET 语言编写的应用程序和现有的程序保持向后兼容。 另外, .NET Framework 提供了完整的程序开发框架,而 .NET 提供了类库和应用程序开发环境,即 Visual Studio。 .NET Framework 的特点如下 : 与其他环境的互操作性。因为在现有环境中开发的应用程序并非与平台无关,因而需要新的开发环境具有跨平台性。例如 ,为 Windows 平台开发的应用程序与 UNIX 环境设计的应用程 序不兼容。随着 .NE
19、T Framework 的出现,可以开发在 Internet 上运行的程序,使得他们可以访问不同的平台。支持开发和编程语言无关的应用程序。除了开发可以与不同的环境中运行的应用程序交互的应用程序之外,还可以开发与编程语言无关的应用程序。支持 OOP(Object-Oriented Programming,面向对象编程 )。支持开发 Web应用程序。支持 Web 服务。 4. 系统开发语言综述 ASP.NET 它是可以访问服务器资源的动态网页技术 ,是基于 .NET 平台的 Web 应用编程结构12。采用 ASP.NET 开发 Web 应用软件,可以实现代码和用户界面分离,使程序的可读性更强,执行
20、效率更高,便于开发人员和用户界面设计人员能够更好地分工合作,从而提高软件开发效率。 ASP.NET 中引入了服务器端控件,它的编程实质就是对各种控件的应用,这样大大提高了构建网络表单效率,并且服务器端控件是可扩展的,开发者可以建造自己需要的服务器端控件或组合已有空间形成自己需要的用户控件。 5. 系统数据库技术综述 1) SQL SQL 是 Structured Query Language,即结构化查询语句的简称。 是一种数据库查询和程序设计语言 ,用于存取数据以及查询、更新和管理关系数据库系统 13。 SQL 是高级的非过程化编程语言,允许用户在高层数据结构上工作。它不要求用户指定对数据的
21、存放方法,也不需要用户了解具体的数据存放方式,所以具有完全不同底层结构的不同数据库系统,可以使用相同的 SQL 语言作为数据输入与管理的 SQL 接口。它以记录集合作为操作对象,所有 SQL 语句接受集合作为输入,返回集合作为输出,这种集合特性允许一条 SQL 语句的输出作为另一条 SQL 语句的输入,所以 SQL 语句可以嵌套,这使他具有极大的灵活性和强大的功能,在多数情况下,在其他语 言中需要一大段程序实现的功能只需要一个 SQL 语句就可以达到目的,这也意味着用 SQL 语言可以写出非常复杂的语句。 结构化查询语言 (Structured Query Language)最早是 IBM 的
22、圣约瑟研究实验室为其关系数据库管理系统 SYSTEM R 开发的一种查询语言,它的前身是 SQUARE 语言。 SQL语言结构简洁,功能强大,简单易学,所以自从 IBM 公司 1981 年推出以来, SQL 语言得到了广泛的应用。如今无论是像 Oracle、 Sybase、 DB2、 Informix、 SQL Server 这些大型的数据库管理系统,还是像 Visual FoxPro、 PowerBuilder 这些 PC 上常用的数据库开发系统,都支持 SQL 语言作为查 询语言。 2) SQL Server SQL Server 是一个关系数据库管理系统。它最初是由 Microsoft、
23、 Sybase 和Ashton-Tate 三家公司共同开发的,于 1988 年推出了第一个 OS/2 版本。在 Windows NT 推出后, Microsoft 与 Sybase 在 SQL Server 的开发上就分道扬镳了, Microsoft 将SQL Server 移植到 Windows NT 系统上,专注于开发推广 SQL Server 的 Windows NT 版本。 3) ADO.NET ( ActiveX Data Objects) ADO.NET 是一种全新的数据访问方法,是一项新技术,一种新设计,完全是从头开始构建的,是为 .NET Framework 编程人员提供数据访
24、问服务的对象模型 14。它是 .NET Framework 中不可或缺的一部分。 它提供了平台互用性和可伸缩的数据访问。 ADO.NET增强了对非连接编程模式的支持 ,并支持 RICH XML.由于传送的数据都是 XML 格式的,因此任何能够读取 XML 格式的应用程序都可以进行数据处理。事实上,接受数据的组件不一定要是 ADO .NET 组件,它可以是基于一个 Microsoft Visual Studio 的解决方案,也可以是任何运行在其它平台上的任何应用程序。 ADO.NET 是一组用于和数据源进行交互的面向对象类库。通常情况下 ,数据源是数据库,但它同样也能够是文本文件、 Excel
25、表格或者 XML 文件。 ADO.NET 允许和不同类型的数据源以及数据库进行交互。然而并没有与此相关的一系列类来完成这样的工作。因为不同的数据源采用不同的协议,所以对于不同的数据源必须采用相应的协议。一些老式的数据源使用 ODBC 协议,许多新的数据源使用 OleDb协议,并且现在还不断出现 更多的数据源,这些数据源都可以通过 .NET 的 ADO.NET 类库来进行连接。 ADO.NET 提供与数据源进行交互的相关的公共方法,但是对于不同的数据源采用一组不同的类库。这些类库称为 Data Providers,并且通常是以与之交互的协议和数据源的类型来命名的。表 1 列处了一些常见的 dat
26、a providers,以及它们所使用的 API前缀,和允许进行交互的数据源类型。 6. 系统开发设计模式综述 1) MVC 架构 MVC 是三个单词的缩写 ,分别为: 模型 (Model),视图 (View)和控制 Controller)。 MVC模式的目的就是实现 Web系统的职能分工 15,孙朝云这句话清楚的改过了 MVC在 Web开发中的作用。 Model 层实现系统中的业务逻辑,通常可以用 JavaBean 或 EJB 来实现。 View 层用于与用户的交互,通常用 JSP 来实现。 Controller 层是 Model 与 View 之间沟通的桥梁,它可以分派用户的请求并选择恰当
27、的视图以用于显示,同时它也可以解释用户的输入并将它们映射为模型层可执行的操作。 MVC 是一个设计模式,它强制性的使应用程序的输入、处理和输出分开。使用 MVC 应用程序被分成三个核心部件:模型、视图 、控制器。它们各自处理自己的任务。 视图是用户看到并与之交互的界面。对老式的 Web 应用程序来说,视图就是由 HTML元素组成的界面,在新式的 Web 应用程序中, HTML 依旧在视图中扮演着重要的角色,但一些新的技术已层出不穷,它们包括 Macromedia Flash 和象 XHTML, XML/XSL, WML等一些标识语言和 Web services. 如何处理应用程序的界面变得越来
28、越有挑战性。 MVC 一个大的好处是它能为你的应用程序处理很多不同的视图。在视图中其实没有真正的处理发生,不管这些数据是联机存储的还 是一个雇员列表,作为视图来讲,它只是作为一种输出数据并允许用户操纵的方式。 模型表示企业数据和业务规则。在 MVC 的三个部件中,模型拥有最多的处理任务。例如它可能用象 EJBs 和 ColdFusion Components 这样的构件对象来处理数据库。被模型返回的数据是中立的,就是说模型与数据格式无关,这样一个模型能为多个视图提供数据。由于应用于模型的代码只需写一次就可以被多个视图重用,所以减少了代码的重复性。 控制器接受用户的输入并调用模型和视图去完成用户
29、的需求。所以当单击 Web 页面中的超链接和发送 HTML 表 单时,控制器本身不输出任何东西和做任何处理。它只是接收请求并决定调用哪个模型构件去处理请求,然后用确定用哪个视图来显示模型处理返回的数据。 2) UML 软件建模 UML Unified Modeling Language 是一种可视化方法对软件体系结构进行描述、实施和说明的标准建模语言 16。是由 Booch、 Jacobson 和 Rumbaugh 发起,在 Booch表示方法、 OOSE 方法和 OMT 方法的基础上发展起来的。在刘永明的文章中,提出了基于 UML 的排课方法,这对该系统是一个很好的建议和方法。 3) ASP
30、.NET MVC17 将以上的技术框架作为基础,在 ASP 中也发展出了符合其特点和要求的 MVC 架构,即 ASP.NET MVC。 ASP.NET MVC 平台直接解决了遗留在 ASP.NET 网页框架的问题 ,将是一个很好的新架构。 Steven Sanderson 在他的书中罗列了它的各种新改进,可以说它将会成为开发者必备的技术之一。 三、 总结部分 本文首先介绍了教学管理系统,它是随着教学管理工作日益复杂化,规范化要求下及计算机技术的发展而产生的一种数字化的信息管理工具,它的出现推动了学校教务管理工作现代化的进程,从而大幅推进了学校 教学的稳步发展。接着介绍了现有教学管理系统的设计技
31、术,主要是基于 B/S 结构和 MVC 架构以及主流动态网页技术 JSP、 .NET 等开发的。紧接着根据嘉院的实际情况来确定该系统的各项需求,确定相应的模块。然后,再介绍了相关技术,如 .NET、SQL、 UML 等它们都是当下主流的开发工具,有完善的体系结构和坚实的理论基础。 随着技术的发展未来的教学管理系统的发展,上将会围绕分布式的网络结构发展,同时将会更加人性化,具有完善的扩展机制和安全性。在功能上,随着越来越多的高校对教学管理系统的重视和投入,它将会布局到高校教学的每 一个工作上,同时将会有更多先进的理论和技术的支持。 四、 参考文献 1李梅,杨瑞 .院系级教学管理信息化建设的研究与
32、实践 .J.内蒙古农业大学学报, 2009,11(48):121-123 2 周陈 .浅谈现代教学管理系统与高校教务无纸化管理 .J.中国科教创新导刊, 2010,20(9):208 3 李国研 . 基于 NET 框架的新一代教学管理系统的设计 J.计算机技术, 2010(7):15-16 4王玉茜 .科学的教学管理系统在提高教学质量中的作用 J.三门峡职业技术学院学报 .2005(2):48-50 5王正均 .分层教学管理信息系统的研究与开发 D.重庆 :重庆大学 2005.10 6Rui Duan,Design of Web-based Management Information Sys
33、tem for AcademicDegree & Graduate EducationJ,IFIP International Federation for Information Processing,Volume 252:218-226 7 乌日其木格,马恒宇 . 浅谈高校教务管理系统现状与 改进建议 .内蒙古师范大学学报 .2007,20(9):77-78 8 海洋,张薇娟 .基于校园网的教务管理系统设计与实现 J.2010,20(1):53-55 9 Geetanjali Arora. C#专业项目实例开发 M.中国水利水电出版社 .2007:1:3 10 张志顺 .基于 B_S与 C
34、_S模式教务管理系统的模块设计 J.VALLEY SILICON,2010(6):94-96 11 高祖彦 .基于 ASP_NET_C语言程序设计 _网络教学系统的设计与实现 J.岳阳职业技术学院学报 ,2010.3(25)(2):96-97 12 胡如会 .基于 ASP_NET 教务管理系统的设计与实现 .毕节学院学报 ,2010,4(28):101-104 13 张俊玲数据库原理与应用 M清华大学出版社 ,2009: 204-205 14 陈育德 . ADO.NET数据访问技术在教学管理系统中的应用 J.信息科学 ,2010,1(1):64,119 15 孙朝云 .基于 MVC 架构网络教学管理系统的设计与实现 J.计算机工程与设计 ,2009,30(23):5541-5543 16 刘永明 . 基于 UML 的排课系统设计 J.SILICON VALLEY,2010,1(5):123-125 17Steven Sanderson,ASP.NET MVC Framework Preview M,American,2008:3-16