您好,欢迎来到测品娱乐。
搜索
您的当前位置:首页硕士论文_网络课堂管理系统的设计与实现

硕士论文_网络课堂管理系统的设计与实现

来源:测品娱乐


分类号

学号 密级

学校代码10487

硕士学位论文

基于.Net的网络课堂管理系统的

设计与实现

学位申请人

学科专业 : 软件工程 指导教师 : 答辩日期 :

A Thesis Submitted in Partial Fulfillment of the Requirements

for the Degree of Master of Engineering

The Design and Implementation of Network Classroom

Management System Based on .Net

Candidate Major

:

: Software Engineering

Supervisor :

Huazhong University of Science & Technology

Wuhan 430074, P.R.China

March, XXX

独创性声明

本人声明所呈交的学位论文是我个人在导师指导下进行的研究工作及取得的研究成果。尽我所知,除文中已经标明引用的内容外,本论文不包含任何其他个人或集体已经发表或撰写过的研究成果。对本文的研究做出贡献的个人和集体,均已在文中以明确方式标明。本人完全意识到本声明的法律结果由本人承担。

学位论文作者签名: 日期: 年 月 日

学位论文版权使用授权书

本学位论文作者完全了解学校有关保留、使用学位论文的规定,即:学校有权保留并向国家有关部门或机构送交论文的复印件和电子版,允许论文被查阅和借阅。本人授权华中科技大学可以将本学位论文的全部或部分内容编入有关数据库进行检索,可以采用影印、缩印或扫描等复制手段保存和汇编本学位论文。

保密□, 在 年解密后适用本授权书。

本论文属于

不保密□。 (请在以上方框内打“√”)

学位论文作者签名:

指导教师签名:

日期: 年 月 日

日期: 年 月 日

华 中 科 技 大 学 硕 士 学 位 论 文

摘 要

随着计算机技术和网络技术的进步,将计算机网络技术应用到高校教育中,实现教学空间、时间的拓展已成为可能。某大学在信息化建设规划中,将网络课堂系统的开发作为信息化建设的组成部分,希望通过网络课堂系统的建设,实现远程的互动教学。笔者在深入调研后,给出了网络课堂管理系统的建设方案。

方案重点研究了如何将市场上现有的、成熟的实时交互产品,根据学校的实际情况,应用到传统的课堂教学中,从而实现学校的远程网络教学。提出利用Asp.net技术,在微软Visual Studio开发平台,结合SQL Server 2005数据库,运用.net三层架构,开发基于B/S模式的实时交互外围管理系统,即网上课堂管理系统。实现了网络课程管理、网络课堂管理、教学资源管理、实时交互集成、通知公告发布等功能模块。其中,网络课程管理模块实现了课程的创建、课程开放的定义等;网络课堂管理主要用于课堂的创建、课堂的收藏等;教学资源管理,用于管理在网络教学中产生的诸如教学录像、课堂教案等课堂资源,并提供对这些教学资源的上传和下载共享功能;实时交互集成模块则实现了对现有实时交互产品的集成功能,通过良好的接口设计,实现了两个系统的结合;通知公告则用于教学通知公告的发布、查询等。

目前,按照该方案开发的网络课堂管理系统,已在某大学正式上线运行,且运行稳定,实现了学校远程网络教学,并提高了教师、学生的教学积极性,提升了传统教学的成效。

关键词:实时交互 网络课堂 ASP.NET技术 B/S模式

I

华 中 科 技 大 学 硕 士 学 位 论 文

Abstract

With the computer technology and network technology, computer network technology into higher education, the realization of teaching space, time, expansion is possible. Nanchang University of Science and Technology in the information technology plan, the network class of information system development as an integral part of building, hoping the classroom through the network system construction, remote interactive teaching. After in-depth research paper, gives the network management system for classroom construction program.

Program focuses on how to market on the existing, mature, real-time interactive products, according to the actual situation of the school, applied to traditional classroom teaching, in order to achieve the school's remote network teaching. Make use of Asp.net technology, Microsoft Visual Studio development platform, combined with SQL Server 2005 database, use. net three-tier architecture, development based on B / S mode real-time interaction management system outside that online classroom management system. Course to achieve the network management, network classroom management, teaching resource management, real-time interactive integrated functional modules such notice announcement. Among them, the online course management module of the course creation, curriculum definition of open; network is mainly used in the classroom classroom management to create, classroom collections, etc.; teaching resources management, for managing the network, such as teaching produced teaching videos Classroom lesson plans and other classroom resources, and provides teaching resources such sharing upload and download; real-time interaction is realized integrated module of the existing real-time interactive product integration, through good interface design, implementation of the combination of the two systems ; notice notice notice notice is issued for teaching and inquiry.

Currently, the program developed by the network management system for the classroom, Nanchang University of Science and Technology has been formally launched in the running, and running stability on the remote network of the school teaching and

II

华 中 科 技 大 学 硕 士 学 位 论 文

increased teacher enthusiasm for teaching students to enhance the effectiveness of traditional teaching .

Keywords: Real-time Interaction Online Class ASP.NET Technology B/S Mode

III

华 中 科 技 大 学 硕 士 学 位 论 文

目 录

摘 要 ...................................................... I Abstract .................................................. II 目 录 ..................................................... IV 1 绪论

1.1 课题研究的背景及意义 ................................ (1) 1.2 现状和发展分析 ..................................... (3) 1.3 本文研究内容 ....................................... (5) 1.4 本文章节安排 ....................................... (5) 2 相关开发技术概述

2.1 Asp.net技术概述 .................................... (6) 2.2 B/S架构 ............................................ (7) 2.3 Visual Studio 2008开发平台 ......................... (7) 2.4 SQL Server 2005数据库 .............................. (8) 2.5 本章小结 ........................................... (8) 3 系统分析

3.1 需求分析 .......................................... (10) 3.2 业务流程分析 ...................................... (12) 3.3 数据流程分析 ...................................... (13)

IV

华 中 科 技 大 学 硕 士 学 位 论 文

3.4 本章小结 .......................................... (17) 4 总体设计

4.1功能模块设计 ....................................... (18) 4.2 数据库设计 ........................................ 4.3 本章小结 .......................................... 5 系统详细设计及实现

5.1 系统管理模块 ...................................... 5.2 课程管理模块 ...................................... 5.3 课堂管理模块 ...................................... 5.4 资源管理模块 ...................................... 5.5 课堂交互集成模块 ................................... 5.6 本章小结 .......................................... 6 系统测试

6.1 系统功能测试 ...................................... 6.2 系统性能测试 ...................................... 6.3 本章小结 .......................................... 7 总结及展望

7.1 总结 .............................................. 7.2 展望 .............................................. 参考文献 .............................................. V

20) 32) 33) 36) 39) 41) 44) 46) 47) 51) 53) 54) 54) 56)

((((((((((((((华 中 科 技 大 学 硕 士 学 位 论 文

致谢 .................................................. (60)

VI

华 中 科 技 大 学 硕 士 学 位 论 文

1 绪论

1.1 课题研究的背景及意义

1.1.1 课题研究的背景

三百年前夸美纽斯提出了班级教学的思想,分班级的课堂教学成为学校教学活动的主要形式,其间经历了各个阶段的发展变化。它从以教师为中心的接受式课堂教育,发展到以学生为主体的导学式课堂教学形式[1]。随着教育科学的发展以及人们对教育要求的不断提高,课堂教学逐渐暴露出许多弱点,如因材施教的原则在班级集体教学的前提下难以实施;以语言讲述为主的表达方式,使得某些教学信息的传输和接收遇到困难:教学效率的提高受到局限等[2]。近年来,以网络技术为基础的现代信息技术的迅速发展,一种基于新的教育理念下的新的课堂教育模式——网络教学孕育而生[3]。 1)网络教学的概念

网络教学是以计算机网络为依托的一种教学方式。教学活动中,学生利用计算机的交互功能,首先在局域网(如校园网)与教师、其他学生进行交流,如果教学资源不能满足要求,则可进入Intemet网,以寻求更多的资源或信息[4]。

网络教学的优点;突出了学生的主体性,从根本上改变了传统教学中教师的中心地位;突出了学生学习的自主性,从被动听讲的接受者,转变为主动参与的学习主体;网络教学把媒体从原来作为教师的演示工具,转变为学生的认知工具;网络教学真正落实了因人施教的教学原则[5-6]。

网络教学虽然存在一定的优势,但实践证明用现代信息技术完全取代课堂教学,特别在基础教育领域,是不可取的,因为课堂教学所具有的教师与学生面对面的直接交流,较之学生完全通过网络学习这种间接的交流方式在许多方面有其优越性[7]。网络课堂教学既发挥了网络教学的优势,更体现了课堂教学的特点,这种教育形式更适合于基础教育领域[8]。 2)网络课堂教学的主要特征

(1)从技术层面上看,网络课题最基本的特征就是网络化、智能化、媒介多样化等[9]。

1

华 中 科 技 大 学 硕 士 学 位 论 文

a) 顾名思义,网络课堂前提是网上的互动,通过网络可以实现资源最大限度的共享,打破时间和空间的,扩大人际交往范围等。

b)随着技术的进步,如今的软件不仅是完成某个业务,而且是极具人性化的完成,为真实还原传统的教学,网络课堂必须做到教学行为的人性化。 c) 与网络课堂紧密相关的,当数多媒体数据了,这些多媒体数据如今已呈现出多元化的发展趋势。

(2)从教育层面上看,具有以下显著特点:

a) 教材多媒化 教材多媒化主要是指教材已突破传统的纸质媒介,而是向电子化的方向发展,如电子书、声音、动画、教学录像以及模拟的三维景象等[10]。 b)资源全球化 互联网技术的进步,使得资源的共享,已经超载了空间的,可以实现资源的全球化共享。现如今,互联网上有很多类型的教学资源,包括网上虚拟图书馆、教育网站、电子书刊等等 [11]。

c) 教学个性化 利用人工智能的相关技术,实现对不同特点学生的不同教学,为了做到这一点,必须进行学生的个性测定,尽管这在目前来说还是在研究中的课题[12]。

d)学习自主化 计算机技术的进步,电子书已经成为一种很重要的知识传播媒介了,重要的是,由于携带方便,使得学生的学习自主性得到加强[13]。 e) 活动合作化 信息技术使得学习活动可以朝着合作化方向发展,在促进知识交流上,起到了重要的作用[14]。

1.1.2 课题研究的意义

课题研究的网络课堂系统,在实际教学中有了十分重要的现实意义,主要表现在以下几个方面:

(1) 网络课堂教学突破了传统教学的地点,使得学生和教师的参与地点

没有了具体的要求,这就大大加快了知识的传播[15]。

(2) 由于网络课堂这种教学模式较为新颖,使得学生参与课堂的积极性倍增,

提高了学生学习的乐趣和积极性[16]。

(3) 课题的研究势必加快了作者所在单位的信息化建设进程,为某大学其它

信息化建设项目的开发,积累宝贵的经验[17]。

2

华 中 科 技 大 学 硕 士 学 位 论 文

1.2 现状和发展分析

1.2.1 现状分析

目前在市面上流行的网络教学系统种类较多,以下从不同的角度对这些网络课堂系统进行阐述。

1)从应用模式或是应用范围来看,网络教学分为二种形式[18]。一种是校内模式,另一种是校外模式,前者是基于校园网的教学系统,后者,则是基于广域网的远程教学系统。

2)从教学形式上看,大致可以分为三种常用的类型:

(1) 实时群播教学系统 这种系统的特点是教师在一个主播教室进行授课,学

生则集中在另一个或多个异地教室。教师可以与学生进行实时的提问和交流。这种系统在教学形式上与传统的教学极为相似[19]。

(2) 虚拟教室教学系统 首先,这种教学系统是虚拟的,并不是真实的。只是

通过计算机技术将传统教学过程映射到软件中,使学生在软件里进行模拟学习[20]。

(3) 课程随选教学系统 这种教学系统与第一种不同之处在于,学生不必集中

在一个教室里与教师进行互动,而是分散在任何互联网终端上[21]。 3)从实现技术上看,目前主要包括以下四种结构[22-23]:

(1) 基于Internet的网上教学系统,这种教学系统最大的优点在于比较经济适

用,但是视频传输质量较差。

(2) 基于ISDN技术的窄频带的视频会议系统。

(3) 基于ATM技术的宽频带实时群播系统,这种类型的系统最大的优点在于

学生和教师之间可以进行实时的互动。

(4) 基于VOD技术的交互式视频点播系统,这种类型的系统不能满足师生实

时互动的需要,这也大大了该类型系统的推广应用。

可以预计,上述四种结构的教学系统将在一段时期内同时存在,以满足网络教育的不同需求[24]。

4)从信息传输的时效上看,可以分为以下二种方式:

(1)实时传输方式,这种类型的应用系统,比较常见的有远程会议、网上交谈、交互电视等,它最大的优势在于实时辅导和解决学生的学习问题。有效提高学生学

3

华 中 科 技 大 学 硕 士 学 位 论 文

习的积极性[25];

(2)异步传输方式(Asynchronous delivery)

该类方式所采用的教学媒体主要包括音频媒体、视频媒体、数字媒体(以计算机为典型装置)等,其优势在于更具灵活性[26]。 1.2.2 发展趋势

随着教育需求和网络技术的发展,以及人们对于网络教学这种教学模式理解的深入,网络教学逐渐向多样化、智能化、交互式、联合化、产业化的方向发展[27]。

1)多样化

“多样化“是指学生的来源组成、网络课程开设的内容、教育机构、教育经费的来源逐渐成多样化的发展趋势[28]。

2)智能化

在未来,除了进一步完善已经开发的网络教学系统外,还需要进一步开发课堂的其它业务功能,如智能的网络答疑系统、丰富的题库系统。还要开发一些智能的课堂工具,如果智能课件写作等等[29]。

3)交互式

网络课堂发展的最终目标,是高度与传统的课堂教学相吻合,最主要的是要突出其交互性,因此,未来的网络课堂会集实时交互、在线答疑、网络考试于一体,具有良好的教学交互性[30]。

4)联合化

网络技术的进步,为学校、教育机构、公司和企事业单位的联合教学提供了技术支撑,由于知识是没有领域界限的,未来的教学是一种全民、全领域式的教学,是一种全民互动的教学[31]。

5)产业化

教学的产业化,是网上教学发展的必然,由于需求的增加,不仅是学校,社会上的教育机构,甚至是公司企业,都会参与到网上教学这个行业中[32]。

网上教育发展的几个必经阶段,牵涉到人们对于教育观念的理解和认知,是伴随着人们思想认识的进步而一起发展的[33]。网上教学系统的开发,须借鉴国内外高校成功经验和成熟思路,结合本院实际,从教育的实际需求、网络技术条件等出发,制定近期及中远期目标,将软件(人的观念)与硬件(教育平台)同步与世界接轨[34]。

4

华 中 科 技 大 学 硕 士 学 位 论 文

1.3 本文研究内容

本文旨在通过研究,设计并开发出一套基于B/S模式交互式课堂管理系统,具体的工作内容描述如下:

1)深入学校相关部门进行需求调研,开展系统分析的工作。

2)在需求分析的基础上,结合现有的实时交互系统,设计并开发出交互式课堂管理软件,具体实现了对以下功能模块的开发。

(1) 设计并开发出课程管理模块,实现对网络课程的管理。 (2) 设计并实现课堂管理,方便教务人员组织网络课堂教学。

(3) 设计并开发教学资源管理模块,实现对教学录像、文件的共享开放。 (4) 开发通知公告发布模块,实现信息的及进传递。 (5) 根据提供的接口,实现对实时交互产品的集成。 (6) 按照软件工程的思想,对开发出的软件,进行了测试。

1.4 本文章节安排

本文共分为七章,各章节就软件工程不同阶段的工作内容进行了详细的阐述。 第一章对课题的背景、意义以及国内外的发展现状进行了分析,并对本文的工作内容进行了简要的叙述。

第二章对相关的技术及理论知识进行了简要的介绍。

第三章主要实现对系统的分析,包括需求分析以及数据流程的设计。 第四章为总体设计,主要完成对系统的功能模块设计和数据库设计。

第五章对系统的各功能模块进行了详细的设计和描述。设计并实现了课程管理、课堂管理、资源管理、通知公告管理以及实时交互集成等功能模块。 第六章描述了目标系统的测试过程。

第七章对论文进行了总结,并提出了本课题研究内容的发展方向。

5

华 中 科 技 大 学 硕 士 学 位 论 文

2 相关开发技术概述

课题研究的目标,是开发一个基于B/S模式的交互式网络管理系统,这就要求在

技术方案的选择上,能符合目标系统的总体规划。本章将重点对方案所用到的技术及理论进行概述。

2.1 Asp.net技术概述

ASP.NET技术是Microsoft Web开发史上的一个重要的里程碑,使用ASP.NET开发Web应用程序并维持其运行比以前变得更加简单[35]。与Java、PHP、Perl等相比,ASP.NET具有方便性、灵活性、性能优、生产效率高、安全性高、完整性强及面向对象等特性,是目前主流的网络编程技术之一[36]。

ASP.NET是Microsoft公司推出的新一代建立动态Web应用程序开发平台,是一种建立动态Web应用程序的新技术[37]。它是.NET框架的一部分,可以使用任何.NET兼容的语言(如Visual Basic、C#)编写ASP.NET应用程序[38]。当建立Web页面时,可以使用ASP.NET服务器端控件来建立常用的UI(用户界面)元素,并对它们进行编程来完成一般的任务,这可以把程序开发人员的工作效率提升到与其他技术都无法比拟的程度[39]。

ASP.NET是目前主流的网络开发技术之一,具有许多优点和新特性,具体介绍如下[40-41]:

1)高效的运行性能:由于ASP.NET应用程序采用页面脱离代码技术,即前台页面代码保存到.aspx文件,后台代码保存到.cs文件,这样当编译程序将代码编译为.dll文件,ASP.NET在服务器上运行时,可以直接运行编译好的.dll文件,并且ASP.NET采用缓存机制,从而提高运行ASP.NET的性能。 2)简易性和灵活性:很多ASP.NET功能都可以扩展,这样可以轻松地将自定义功能集成到应用程序中。例如,ASP.NET提供程序模型为不同数据源提供插入支持。

3)可管理性:ASP.NET中包含的新增功能使得管理宿主环境变得更加简单,从而为宿主主体创建了更多增值的机会。

4)高生产效率:使用新增的ASP.NET服务器控件和包含新增功能的现有控件,

6

华 中 科 技 大 学 硕 士 学 位 论 文

可以轻松、快捷地创建ASP.NET网页和应用程序。新增内容(诸如成员资格、个性化和主题)可以提供系统级的功能,此类功能通常会要求开发人员进行大量的编写代码工作。新增数据控件、无代码绑定和智能数据显示控件已经解决了核心开发方案(尤指数据)问题[42]。

2.2 B/S架构

B/S(Browser/Server)结构即浏览器和服务器结构。它是随着Internet技术的兴起,对C/S结构的一种变化或者改进的结构[43]。在这种结构下,用户工作界面是通过WWW浏览器来实现,极少部分事务逻辑在前端(Browser)实现,但是主要事务逻辑在服务器端(Server)实现,形成所谓三层3-tier结构。相对于C/S结构属于“胖”客户端,需要在使用者电脑上安装相应的操作软件来说,B/S结构是属于一种“瘦”客户端,大多数或主要的业务逻辑都存在在服务器端,因此,B/S结构的系统不需要安装客户端软件,它运行在客户端的浏览器之上,系统升级或维护时只需更新服务器端软件即可,这样就大大简化了客户端电脑载荷,减轻了系统维护与升级的成本和工作量,降低了用户的总体成本(TCO)。 B/S结构系统的产生为系统面对无限未知用户提供了可能。当然,与C/S结构相比,B/S结构也存在着系统运行速度较慢,访问系统的用户不可控的弱点[44]。

以目前的技术看,局域网建立B/S结构的网络应用,并通Internet/Intranet模式下数据库应用,相对易于把握、成本也是较低的。它是一次性到位的开发,能实现不同的人员,从不同的地点,以不同的接入方式访问和操作共同的数据库;它能有效地保护数据平台和管理访问权限,服务器数据库也很安全。特别是在JAVA这样的跨平台语言出现之后,B/S架构管理软件更是方便、快捷、高效[45]。

综合以上所述,本系统的开发工具采用Visual Studio开发工具和SQL Server 数据库服务器。在需求分析上采用原型法,在系统设计上采用面向对象的方法。整个系统的开发利用Asp.net技术,实现B/S模式的交互式课堂系统。

2.3 Visual Studio 2008开发平台

Visual Studio是微软公司推出的软件开发环境。就目前来看,这是最流行的基于Windows平台的应用程序开发环境。到现在,微软已经先后发布了10个版本。基于

7

华 中 科 技 大 学 硕 士 学 位 论 文

研究课题的自身考虑,项目的开发,采用Visual Studio 2008这个版本,采用这个版本的原因在于,专业开发人员能够[46-47]:

1) 该平台有可视化设计工具、编程语言和代码编辑器,这就可以大大提高程序

开发的效率。

2) 在程序框架搭建上,能实现多样的程序架构,相对于其它平台而言,该平台

简洁易用,功能却足够强大。

3) 可以在该平台创建数据库的解决方案。

2.4 SQL Server 2005数据库

SQL Server 是一个关系数据库管理系统。它最初是由Microsoft Sybase 和Ashton-Tate等三家公司共同开发的,于1988 年推出了第一个OS/2 版本。在Windows NT 推出后,Microsoft与Sybase 在SQL Server 的开发上就分道扬镳了,Microsoft 将SQL Server 移植到Windows NT系统上,专注于开发推广SQL Server 的Windows NT 版本。Sybase 则较专注于SQL Server在UNIX 操作系统上的应用[48]。

SQL Server 2005 是一个全面的数据库平台,使用集成的商业智能 (BI) 工具提供了企业级的数据管理。SQL Server 2005 数据库引擎为关系型数据和结构化数据提供了更安全可靠的存储功能,使您可以构建和管理用于业务的高可用和高性能的数据应用程序。

SQL Server 2005 数据引擎是本企业数据管理解决方案的核心。此外 SQL Server 2005 结合了分析、报表、集成和通知功能。这使您的企业可以构建和部署经济有效的 BI 解决方案,帮助您的团队通过记分卡、Dashboard、Web services 和移动设备将数据应用推向业务的各个领域。

与 Microsoft Visual Studio、Microsoft Office System 以及新的开发工具包(包括 Business Intelligence Development Studio)的紧密集成使 SQL Server 2005 与众不同。无论您是开发人员、数据库管理员、信息工作者还是决策者,SQL Server 2005 都可以为您提供创新的解决方案,帮助您从数据中更多地获益[49]。

2.5 本章小结

本章对课题研究所用到的技术及开发平台进行了详细的介绍,指出课题的开发

8

华 中 科 技 大 学 硕 士 学 位 论 文

采用Asp.net技术,在Visual Studio 2008开发平台上,利用SQL Server数据库,开发基于B/S结构的交互式课堂系统。

9

华 中 科 技 大 学 硕 士 学 位 论 文

3 系统分析

系统分析的主要任务是将在系统详细调查中所得到的文档资料集中到一起,对组织内部整体管理状况和信息处理过程进行分析。它侧重于从业务全过程的角度进行分析。分析的主要内容是:业务和数据的流程是否通畅,是否合理;数据、业务过程和实现管理功能之间的关系;老系统管理模式改革和新系统管理方法的实现是否具有可行性等等。系统分析的目的是将用户的需求及其解决方法确定下来。

3.1 需求分析

在软件工程中,需求分析是至关重要的环节之一,指的是在建立一个新的或改进现有的软件系统时的目的、范围、定义和功能时所要做的工作。需求分析的成功与否直接关系到软件开发项目的成败。在这个过程中,目标系统的调研人员需要与客户进行深入的沟通,弄清楚客户的实际需要。从这些需要中,梳理出有用的功能点整理成文档,为后期的设计和开发工作做好准备。 3.1.1 系统功能性需求

交互式课堂系统是传统教学在网络中的应用,同实际教学类似,网络课堂的参与用户有学生、普通任课教师、教务管理员等。通过参考相关文献,分析交互式课堂现状后,得出本课题即将实现的目标系统的需求如下:

1)教务管理员

教务管理员在系统中充当系统管理员和教学管理的角色,主要负责系统的正常运转和教学的正常进行。教务管理员所需要进行的操作可以描述为: (1)发布通知公告,并可以在通知公告后附加附件供下载。

(2)管理教学计划中的课程,创建需要在网络上开设的虚拟课程,修改相关网络课程信息,当课程没有正式组织开课时,教务人员可以删除该课程。

(3)管理虚拟网络课堂,在某门课程下面创建虚拟课堂,为课堂指定开课所必须条件信息,如课堂的开始的时间、结束的时间、面向的学生等。

(4)管理任课教师的课堂录像,当教师在网络上授课时,整个授课过程会被录像。课堂结束后,上课的录像为自动上传到服务器,教务人员可以下载、删除、编

10

华 中 科 技 大 学 硕 士 学 位 论 文

辑该录像。

(5)管理课堂的文件,教师在课堂结束后,可以上传自己的教案等,教务人员可以对这些文件进行修改、删除、下载等操作,而且这些操作是最权限的,即使任课教师将课堂文件设置成私有或不公开,这些文件对于教务人员都是透明的。 (6)统一管理系统中的用户,并分配相应的课堂权限。这些权限包括是否可以登录、是否可以远程上课、上课进行时是否可以请求语音、桌面控制等。

2) 普通任课教师

(1)教师登录系统后可以查看到属于自己的课表,通过这些课表,教师就可以了解到最近什么时间需要进行网上授课。

(2)在允许的时间内,教师可以进入课堂与学生进行网上互动。

(3)教师在授课结束后,可以对录制的授课录像信息进行编辑。如录像的名称、是否允许下载等等。

(4)教师可以上传自己的授课教案或其它课堂资料,并对这些资料进行删除、权限设置等操作。 3) 普通学生

(1)学生在登录系统后可以查看教师或管理发布的通知公告信息。 (2)学生可以查看自己最近需要参与的课堂。

(3)当学生对某门选修课程比较感兴趣时,可以将此课程设置为“我关心的”,这样可以方便学生下次登录后迅速找到该课程。 (4)学生进入课堂与教师进行网络教学互动。 3.1.2 系统非功能性需求

非功能性需求是相对于功能性需求而言的,就是软件产品需要满足的除功能指标之外的其它指标。大致包括系统的性能要求、可靠性、可维护性、可扩充性、可适应性等要求。下面对这些指标加以说明。 1)系统的完整性

系统的完整性是指目标系统具备用户需要的功能之外,还包括一些其它的业务功能,而这些功能又是用户在提出需求时不会想到的。如现在大多数软件除了具备基本的业务功能外,还包括联机帮助、在线升级等功能。当然,并不是所有系统都会包括这些额外的功能,具体要看软件的性质而定。

11

华 中 科 技 大 学 硕 士 学 位 论 文

2)系统的可扩充性与可维护性

任何系统在开发后,用户在使用过程中,会考虑到新的功能,这就需要在原来软件的基础上追加新功能,因此,开发出的软件,必须要考虑到这种功能的扩充,不会因为功能的扩充,而带来软件架构的变化。此外,软件在开发后,有丰富的开发文档,这些文档可以用于以后功能追加时,或是出现故障时,作为参考的依据。

3)技术适应性与应用适应性

软件在交付给用户后,用户随时会有新的想法,比较常见的是变更自己的需求,如果软件在架构上没有好的设计,对于这种需求的变更是无法满足的。因此,这就要求目标系统的开发,具有应用适应性。即用户需求的更改,不会影响到所有功能模块的修改,不会导致工作量的大增。此外,随着技术的进步,开发该系统时,所用到的技术,是否在若干年后,还能用来解决现实的问题?例如,若干年后,该系统出现了故障,需要进行维护,当时的开发技术,是否有开发人员掌握?是否具有解决现实问题的能力?例如,用C语言开发的应用系统,在如今是否能实现网络的应用,显然不能,惟一的解决办法就是重新开发。因此,在开发技术的选择上,一定要考虑到系统未来可能的走向和趋势,具备较强的适应性。

对以上重要的非功能性需求进行逐一分析后,即可开始进行产品功能设计。实际上,非功能性需求定义将反映到系统的功能设计中,表现为系统的架构。

3.2 业务流程分析

业务流程分析就是将网站的各项业务以流程图的方式表示出来,用于指导数据分析与系统设计。

在实际教学中,教务管理员充当着本系统的系统管理员身份,教务管理主要包

括:1)通知公告的发布,发布后通知公告,只要系统中的用户都可以查看到。2)课程创建,管理员在创建课程时,给课程定义一些属性,如该课程是否对外开放,是否是必修。并在创建课程时指定该课程的开放对象,当指定特定的班级后,该班级的学生在登录系统后,会看到该课程的信息。3)课堂创建,在某门课程下建立课堂,并指定该课堂的负责老师,指定后,形成课堂表,学生和教师便能看到课表。4)录像管理,对录像进行管理,学生和教师可以下载这些录像文件。5)文件管理,管理课堂产生的文件,学生和教师可以下载这些文档。以下给出了系统总体业务流程,

12

华 中 科 技 大 学 硕 士 学 位 论 文

如图3.1所示。

发布通知公告通知公告学生课程管理创建课程课程安排表教务管理员课堂管理创建课堂课堂安排表交互录像管理录像资源库文件管理文件资源库教师

图3.1 系统总体业务流程

3.3 数据流程分析

数据流程分析的过程是:按业务流程图理出业务顺序,分析信息的流动、传递、处理和存储等情况,核对相应的数据和报表模型,绘制出完整的数据流程图。在分析的过程中可以发现和解决数据流程不畅、前后数据不匹配、数据处理不合理等问题,可以得到一个通畅的数据流程。数据流程分析可以按照自顶向下、逐层分解、逐步细化的结构化分析方法进行,通过分层的数据流程图实现。数据流程图不但可以表达数据在系统内部的逻辑流向,而且可以表达系统的逻辑功能和数据的逻辑变换。以下分别给出数据流程的分析过程。

13

华 中 科 技 大 学 硕 士 学 位 论 文

3.3.1 系统顶层数据流图

把整个系统视为一个大的加工,然后根据数据系统从哪些外部实体接收数据流,以及系统发送数据流到那些外部实体,就可以画出输入输出图。这张图称为顶层图。

通知公告排堂安课网络课表课堂文件课堂录像交互式课堂系统教务管理员通知计划课程排堂安课网络查询反馈录像文件公告普通教师课堂课堂课堂课堂文件录像学生通知公告 图3.2 系统顶层数据流程图

系统中的角色有教务管理员、普通教师、学生。从教务管理员流向系统的数据有通知公告信息、课堂计划、网络课堂的安排,相反从系统展示给教务的数据有查询结果的反馈、课堂录像及课堂文件等。普通教师要向系统上传课堂录像、课堂文件以及课堂安排,系统向教师展示通知公告信息、和课程计划表。系统向学生提供通知公告信息、以及课堂文件和课堂录像。 3.3.2 系统0层数据流图

把顶层图的加工分解成若干个加工,并用数据流将这些加工连接起来,使得顶层图的输入数据经过若干加工处理后,变成顶层图的输出数据流。这张图称为0层图。从一个加工画出一张数据流图的过程就是对加工的分解。图3.3给出了本系统的0层数据流图。

14

华 中 科 技 大 学 硕 士 学 位 论 文

通知公告信息普通教师通知公告信息P3创建课堂课堂文件录像课堂计划P1已发布的公告通知公告发布通知公告信息课程信息表课程信息P2教务管理员课程计划课堂安排信息课程创建课堂信息表通知公告P4课程表P5文件上传查询条件录像上传课堂文件课堂录像用户数据P7用户管理 用户信息用户信息表课程表P6查询处理资源表学生文件、录像信息图3.3 系统0层数据流程图

3.3.3 系统1层数据流图

将0层数据流图中的每个处理,看作一个小系统,把加工的输入输出数据流看成小系统的输入输出流。于是可以象画0层图一样画出每个小系统的加工的DFD图。这就是系统1层图

1)通知公告发布分解数据流图,如图3.4所示。

15

华 中 科 技 大 学 硕 士 学 位 论 文

P1.1公告信息通知公告发布P1.3通知公告修改发布信息教务管理员P1.2附件上传附件附件信息通知公告信表通知修改后的通知公告

图3.4 通知公告分解数据流程图

2)课程创建分解数据流图,如图3.5所示。

P2.1网络课程计划课程创建课程信息教务管理员P2.2指定参与者网络课程开设信息课程信息表面向的班级信息检索出的符合条件的班级用户信息表 图3.5 课程创建分解数据流图

3)课堂创建分解数据流图,如图3.6所示。

16

华 中 科 技 大 学 硕 士 学 位 论 文

教务管理员网络课堂计划P3.1教师网络课堂计划课堂创建课堂信息课程信息表

图3.6 课程创建分解数据流图

4)课堂录像上传分解数据流图,如图3.7所示。

P4.1教师录像录像上传教学录像录像信息录像信息表在线录像学生P4.2在线观看 图3.7 课程录像分解数据流图

5)文件上传分解数据流图,如图3.8所示。

P5.1教师课堂文件文件上传

P5.2下载处理文件文件信息文件信息表课堂文件学生 图3.8 文件上传分解数据流图

3.4 本章小结

本章重点对目标系统进行了功能性需求分析和非功能性需求分析,在理清系统需求后,梳理出系统的业务流程,并对数据流程进行了详细的分解。

17

华 中 科 技 大 学 硕 士 学 位 论 文

4 总体设计

总体设计是对有关系统全局问题的设计,也就是设计系统总的处理方案,又称系统概要设计。它包括:计算机配置设计、系统模块结构设计、数据库和文件设计、代码设计以及系统可靠性与内部控制设计等内容。本章给出了系统的功能模块设计和数据库设计方案。

4.1功能模块设计

经过第3章的系统分析,以下对目标系统的功能模块进行设计。其功能模块示意图如4.1所示。

网络课堂管理系统身份认证通知公告课程管理参与课堂课堂管理我的收藏录像管理我的课表文档管理系统管理用户登录用户注销公告发布公告编辑公告删除附件上传课程新增课程编辑课程删除课程查询课堂新增课堂修改课堂查询课堂删除录像新增录像下载录像删除录像查询文档新增文档修改文档删除文档查询用户管理权限控制图4.1 系统功能结构图

1) 身份认证模块

(1)系统登录 登陆是对系统用户的身份认证。根据登录的用户身份展现相应的功能。

(2)系统注销 清空用户的登录信息。 2) 通知公告模块

通知公告由教务管理员发布,普通教师和学生可以查看。该模块还包括对通知公告的新增、修改、删除。

18

华 中 科 技 大 学 硕 士 学 位 论 文

3) 课程管理模块

(1)课程新增 教务管理员可以在系统中新增一门或多门网络课程。

(2)删除课程 教务管理员删除某门或多门网络课程,当该课程存在课堂,则不能删除,需删除课堂后,方可删除该课程。 (3)课程编辑 修改网络课程的信息。

(4)课程查询 按课程名称、创建时间查询网络课程。

4) 课堂管理模块

(1)新增课堂 普通教师在某门课程下新增虚拟课堂。 (2)删除课堂 普通教师删除某课程下的虚拟课堂。 (3)课堂编辑 修改课堂信息。

(4)课堂查询 按课堂名称、任课教师、时间段查询课堂。

5) 进入虚拟课堂

学生根据教师的安排或自己的兴趣,进入相关的课堂进入学习。

6) 我的收藏

(1)我关心的课程 学生可以收藏自己感兴趣的课程。

(2)我关心的资料 学生可以收藏自己需要的课堂录像、文件等。 7) 课堂录像管理

(1)录像下载 学生可以下载教师录制的课堂录像。 (2)录像观看 学生可以在在线观看课堂录像。

(3)录像删除 任课教师可以删除或隐藏自己的课堂录像。

8) 文档管理

(1)文档上传 教师上传课堂教案、ppt或其它课堂资料。 (2)文档下载 学生可以下载系统中的课堂资料。 (3)文档编辑 教师可以编辑文档的基本信息。 (4)文档删除 教师可以删除或不公开相关文档。 9) 我的课表

具有上课资格的教师可以查看属于自己的课表。同时,参与网络课堂的学生也可以查看到近期需要参与的课堂。

10) 系统用管理

(1)权限控制 可以对系统中的用户进行统一的权限分配。

19

华 中 科 技 大 学 硕 士 学 位 论 文

(2)用户管理 新增、修改或删除系统中的用户。

4.2 数据库设计

4.2.1 数据库概念设计

将需求分析得到的用户需求抽象为信息结构即概念模型的过程就是概念结构设计即数据库概念设计。概念结构式各种数据模型的共同基础,它比数据模型更于机器、更抽象,从而更加稳定。

数据库概念设计是整个数据库设计的关键。针对于数据库概念设计应用得最广泛的是实体联系(E-R)模型。E-R模型除了具有上述的特点外,还可以用E-R图表示数据模式,便于理解和交流。

实体型(Entity):具有相同属性的实体具有相同的特征和性质,用实体名及其属性名集合来抽象和刻画同类实体;在E-R图中用矩形表示,矩形框内写明实体名。

属性(Attribute):实体所具有的某一特性,一个实体可由若干个属性来刻画。在E-R图中用椭圆形表示,并用无向边将其与相应的实体连接起来;

联系(Relationship):联系也称关系,信息世界中反映实体内部或实体之间的联系。实体内部的联系通常是指组成实体的各属性之间的联系;实体之间的联系通常是指不同实体集之间的联系。在E-R图中用菱形表示,菱形框内写明联系名,并用无向边分别与有关实体连接起来,同时在无向边旁标上联系的类型(1 : 1,1 : n或m : n)。

根据以上章节的分析,该系统的各个功能实体有:课程、课程-用户、文档、附件、通知公告、录像、课堂、课堂-用户、院班级单位、用户。

对于课程实体图,课程的具体属性有:课程号、课程名、班级单位号、学期、课程是否开放、课程类型、课程简介、开始时间、结束时间、课程是否继承课堂、创建用户、创建时间、修改人、修改时间。其E-R图如图4.2 所示:

20

华 中 科 技 大 学 硕 士 学 位 论 文

开始时间课程号课程名班级单位号课程学期课程是否开放课程类型课程简介结束时间课程是否继承课堂创建用户创建时间修改人修改时间 图4.2 课程E-R图

对于用户实体图,用户的具体属性有:用户名、姓名、密码、性别、邮件、电话、手机、院班级号、角色、职位、工作地址、是否冻结账号。其E-R图如图4.3所示:

用户名手机院班级号角色用户职位工作地址账号冻结姓名密码性别邮件电话 图4.3 用户E-R图

对于通知公告实体图,通知公告的具体属性有:通知公告号、公告标题、公告内容、是否置顶、创建人、创建时间、修改人、修改时间。其E-R图如图4.4所示:

通知公告号公告标题公告内容是否置顶通知公告创建人创建时间修改人修改时间 图4.4 通知公告E-R图

对于附件实体图,附件的具体属性有:附件号、通知公告号、文件名称、文件类型、文件大小、附件内容、上传用户、上传时间、下载。其E-R图如图4.5所示:

21

华 中 科 技 大 学 硕 士 学 位 论 文

附件号通知公告号文件名称文件类型上传时间附件文件大小附件内容上传用户上传时间 图4.5 附件E-R图

对于课堂实体图,课堂的具体属性有:课堂号、课堂名称、主持人号、课堂容量、开始时间、结束时间、是否开放对话、是否开放视频、是否开放白板、否白板文件分享、视频文件是否下载、资源是否审核、是否迟到、课程号、课堂是否开放。其E-R图如图4.6所示:

开放视频课堂号课堂名主持人号课堂课堂容量开始时间结束时间开放对话开放白板分享白板文件视频文件下载资源审核是否迟到课程号课堂开放

图4.6 课堂E-R图

对于课程-用户实体图,课程-用户的具体属性有:课程号、用户名、课程类型。其E-R图如图4.7所示:

课程号用户名课程-用户课程类型 图4.7 课程-用户E-R图

对于文档实体图,文档的具体属性有:文档号、课堂号、文档名称、文档简介、上传用户名、上传用户姓名、路径、是否公开、审核。其E-R图如图4.8所示:

22

华 中 科 技 大 学 硕 士 学 位 论 文

文档号课堂号文档名称文档简介上传用户名文档上传用户姓名路径是否公开审核 图4.8 文档 E-R图

对于录像实体图,录像的具体属性有:录像号、课堂号、录像名称、录像简介、路径、录像时间、上传号、上传用户名、是否公开、审核。其E-R图如图4.9所示:

录像号课堂号录像名称录像简介上传用户名录像录像时间路径是否公开审核上传号 图4.9 录像 E-R图

对于课堂-用户实体图,课堂-用户的具体属性有:课堂用户类型、用户名、课堂号。其E-R图如图4.10所示:

课堂号用户名课堂-用户课堂用户类型 图4.10 课堂-用户 E-R图

对于收藏实体图,收藏的具体属性有:用户名、对象号、对象类型。其E-R图如图4.11所示:

对象号用户名收藏对象类型 23

华 中 科 技 大 学 硕 士 学 位 论 文

图4.11 收藏 E-R图

对于院班级实体图,院班级的具体属性有:院班级单位号、上级单位号、单位名称、等级、班级最大人数、是否冻结单位。其E-R图如图4.12所示:

院班级单位号上级单位号单位名称院班级等级班级最大人数冻结单位 图4.12 院班级单位 E-R图

由以上分析可以得出如下图所示的系统总体功能设计的E-R图,由总体设计图可以看出整个系统的数据库中各个表之间的关联关系。如图4.13所示

PK:课程号PK:用户名PK:用户名FK:院班级单位号PK:院班级单位号课程-用户N选择1用户1属于1院班级单位1:NPK:课程号1课程FK:院班级单位号上课查看通知公告PK:通知公告号安排M课堂-用户1属于1PK:课堂号1:NFK:课堂号FK:用户名PK:课堂用户号课堂N1附件NFK:课程号1:1安排录像FK:课堂号FK:通知公告号PK:附件号对象号文档M收藏FK:课堂号PK:文档号图4.13 系统总体设计 E-R图

MNN24

PK:录像号我的收藏对象类型 华 中 科 技 大 学 硕 士 学 位 论 文

4.2.2 数据库逻辑设计

数据库逻辑设计,即设计数据库的逻辑结构,与具体的DBMS无关,主要反映业务逻辑。主要工作是将现实世界的概念数据模型设计成数据库的一种逻辑模式,即适应于某种特定数据库管理系统所支持的逻辑数据模式。与此同时,可能还需为各种数据处理应用领域产生相应的逻辑子模式。

数据库逻辑设计决定了数据库以及它的应用的整体性能,调优位置。如果数据库逻辑设计的不好,则所有的调优方法对于提高数据库性能的效果都是有限的。为了为了使数据库设计的方法更加完备,数据库的规范化理论必须遵守。规范化理论为数据库的逻辑设计提供了理论指导和工具,并且在减少了数据冗余的同时节约了存储空间,同时加快了增、删、改的速度。

另外,在在规范的数据库逻辑设计时,还应考虑适当地破坏规范规则,即反规范化设计,来降低索引、表的数目,降低连接操作的数目,从而加快查询速度。常用的反规范技术有增加冗余列、增加派生列、重新组表等。

总之,在进行数据库逻辑设计的时候,一定要结合应用环境和现实世界的具体情况合理有效的选择数据库的模式。

数据库的逻辑结构设计就是把概念结构设计阶段设计好的基本 E-R 图转换为与选用的 DBMS 产品所支持的数据模型相符合的逻辑结构。

数据库逻辑设计的步骤为 :

1)将概念结构转换为一般的关系、网状、层次模型;

2)将转换来的关系、网状、层次模型向特定 DBMS 支持下的数据模型转换; 3)对数据模型进行优化。

设计逻辑结构应该选择最适于描述与表达相应概念结构的数据模型,然后选择最合适的DBMS。

将E-R图转换为关系模型实际上就是要将实体、实体的属性和实体之间的联系转化为关系模式,这种转换一般遵循如下原则:一个实体型转换为一个关系模式。实体的属性就是关系的属性。实体的码就是关系的码。

数据模型的优化,确定数据依赖,消除冗余的联系,确定各关系模式分别属于第几范式。确定是否要对它们进行合并或分解。一般来说将关系分解为3NF的标准,即:

表内的每一个值都只能被表达一次。

25

华 中 科 技 大 学 硕 士 学 位 论 文

表内的每一行都应该被唯一的标识(有唯一键)。 表内不应该存储依赖于其他键的非键信息。

根据以上转述的原则,对交互式课堂系统的E-R图进行转换。如下9个关系模式: 1) 用户(用户名、姓名、密码、性别、邮件、电话、手机、院班级号、角色、职位、工作地址、是否冻结账号);“院班级号”引用的是院班级单位表中的主码。 2) 院班级单位(院班级单位号、上级单位号、单位名称、等级、班级最大人数、是否冻结单位)。

3) 课堂(课堂号、课堂名称、主持人号、课堂容量、开始时间、结束时间、是否开放对话、是否开放视频、是否开放白板、否白板文件分享、视频文件是否下载、资源是否审核、是否迟到、课程号、课堂是否开放);“课程号”引用的是课程表中的主码。

4) 课程(课程号、课程名、班级单位号、学期、课程是否开放、课程类型、课程简介、开始时间、结束时间、课程是否继承课堂、创建用户、创建时间、修改人、修改时间)。

5) 录像(录像号、课堂号、录像名称、录像简介、路径、录像时间、上传号、上传用户名、是否公开、审核);“课堂号”引用的是课堂表中的主码。

6) 文档(文档号、课堂号、文档名称、文档简介、上传用户名、上传用户姓名、路径、是否公开、审核);“课堂号”引用的是课堂表中的主码。

7) 附件(附件号、通知公告号、文件名称、文件类型、文件大小、附件内容、上传用户、上传时间、下载);“通知公告”引用的是通知公告表中的主码。 8) 通知公告(通知公告号、公告标题、公告内容、是否置顶、创建人、创建时间、修改人、修改时间)

9) 收藏(用户名、对象号、对象类型);“用户名”引用的是用户表中的主码。 4.2.3 数据库物理设计

根据系统功能的要求,设计了以下主要数据库表:

表4.1课程表

字段名 COURSEID NAME 数据类型(长度) Char(5) Varchar(50) 是否允许为空 否 否 是否为主键 是 否 描述 课程号 课程名 26

华 中 科 技 大 学 硕 士 学 位 论 文

续表4.1 STRUTCID TERM ENABLE TYPE int(11) varchar(50) bit(1) varchar(10) 是 是 否 是 是 是 是 否 是 是 是 是 否 否 否 否 否 否 否 否 否 否 否 否 班级单位号 学期 课程是否开放 课程类型 课程简介 开始时间 结束时间 是否继承课堂 创建用户 创建时间 修改人 修改时间 DESCRIPTION Longtext STARTTIME ENDTIME INHERIT char(8) char(8) bit(1) CREATEUSER varchar(50) CREATETIME datetime MODIFYUSER varchar(50) MODIFYTIME datetime 该课程表中是COURSEID为主键是唯一的。

该表主要是针对于课程管理功能模块;其中只有系统管理员有权限新增、修改、删除和查看课程表中的信息,教师和学生只有查看课程表信息。

表4.2课程-用户表

字段名 COURSEID USERID TYPE 数据类型(长度) char(5) varchar(50) varchar(10) 是否允许为空 否 否 否 是否为主键 是 是 否 描述 课程号 用户名 课程类型 该课程-用户表中COURSEID、USERID在这里是外键的作用,因为这两个字段是和课程表、用户表中COURSEID、USERID主键对应的。

该表可以关联课程表、用户表,用户可以通过该表查看用户表和课程表的组合记录信息。

表4.3 文档表

字段名称 FILEID ROOMID 数据类型(长度) 是否允许为空 int(11) int(11) 否 否 是否为主键 是 否 描述 文档号 课堂号 27

华 中 科 技 大 学 硕 士 学 位 论 文

续表4.3: NAME DESCRIPTION UPLOADERID varchar(255) varchar(8000) varchar(50) 否 是 否 否 否 否 是 否 否 否 否 否 否 否 文档名称 文档简介 上传用户名 上传用户姓名 路径 是否公开 审核 UPLOADERNAM varchar(50) PATH ENABLE AUTH varchar(1024) bit(1) varchar(10) 该文档表中FILEID为主键是唯一的。其中,ENABLE为1时,表示“是”,为0时,表示“否”。

该表主要是针对于文档管理功能模块;其中系统管理员和教师有权限新增、修改、删除和查看文档中的信息,同时教师和系统管理员也可以对文档表中的AUTH字段进行设置,使该文档不公开。学生只有查看和下载公开文档的功能信息。

表4.4附件表

字段名 ATTACHMENTID NOTICEID FILENAME FILETYPE FILESIZE ATTACHMENT UPLOADUSER UPLOADTIME DOWNLOADS 数据类型(长度) int(11) int(11) varchar(100) varchar(10) decimal(10,0) varchar(100) varchar(50) datetime int(11) 是否允许为空 否 否 否 是 否 否 否 否 否 是否为主键 是 否 否 否 否 否 否 否 否 描述 附件号 通知公告号 文件名称 文件类型 文件大小 附件内容 上传用户 上传时间 下载 该附件表ATTACHMENTID为主键是唯一的,其中NOTICEID关联通知公告表中

NOTICEID主键的外键字段。

该表主要是针对于通知公告管理中的附件上传功能点;其中只有系统管理员可以新增、删除、修改、查看附件信息;而教师和学生只有查看和下载附件的权限。

28

华 中 科 技 大 学 硕 士 学 位 论 文

表4.5通知公告表

字段名 NOTICEID TITLE CONTENT TOP CREATEUSER CREATETIME MODIFYUSER MODIFYTIME 数据类型(长度) int(11) varchar(100) text bit(1) varchar(50) datetime varchar(50) datetime 是否允许为空 否 否 否 否 否 否 否 否 是否为主键 是 否 否 否 否 否 否 否 描述 通知公告号 公告标题 公告内容 是否置顶 创建人 创建时间 修改人 修改时间 该通知公告表NOTICEID为主键是唯一的。其中TOP字段可以使用户在查询通知公告记

录时设置一条或多条记录首先显示。

该表主要是针对于通知公告管理功能模块;其中只有系统管理员可以新增、删除、修改、查看通知公告信息;而教师和学生只有查看通知公告信息的权限。

表4.6 录像表

字段名 RECORDERID ROOMID NAME DESCRIPTION PATH TIME UPLOADERID 数据类型(长度) int(11) int(11) varchar(255) varchar(8000) varchar(1025) datetime varchar(50) 是否允许为空 否 否 否 是 否 否 否 否 否 否 是否为主键 是 否 否 否 否 否 否 否 否 否 描述 录像号 课堂号 录像名称 录像简介 路径 录像时间 上传号 上传用户名 是否公开 审核 UPLOADNAME varchar(50) ENABLE AUTH bit(1) varchar(10) 该录像表RECORDERID为主键是唯一的。其中,ENABLE为1时,表示“是”,为0时,表示“否”。

该表主要是针对于录像管理功能模块;其中系统管理员和教师都有权限新增、

29

华 中 科 技 大 学 硕 士 学 位 论 文

删除、修改、查看录像信息,且系统管理员和教师可以通过表中的ENABLE字段来控制该录像是否公开;学生只有查看录像信息的权限。

表4.7课堂表

字段名 数据类型(长度) ROOMID NAME MASTERID MAXPEPOLE TIMESTART TIMEEND BFDPCHAT BFDPAUDIOVIDEO BFDPWHITEBOARD int(11) varchar(50) varchar(20) int(11) datetime datetime bit(1) bit(1) bit(1) 是否允许为空 否 是 否 否 是 是 是 是 是 是 是否为主键 是 否 否 否 否 否 否 否 否 否 课堂号 课堂名称 主持人号 课堂容量 开始时间 结束时间 是否开放对话 是否开放视频 是否开放白板 是否白板文件分享 BFDPFILEUPLOAD bit(1) 是 否 视频文件是否下载 RESOURCEAUTH LATEAUTH COURSEID ENABLE bit(1) bit(1) char(5) bit(1) 是 否 否 否 否 否 否 否 资源是否审核 是否迟到 课程号 课堂是否开放 描述 BFDPDOCUMENTSHAREWHITEBOARD bit(1) 该课堂表ROOMID为主键是唯一的,COURSEID是关联课程表的外键。其中,

ENABLE为1时,表示“是”,为0时,表示“否”。

该表主要是针对于课堂管理功能模块;其中系统管理员和教师都有权限新增、删除、修改、查看课堂信息记录,且系统管理员和教师可以通过表中的ENABLE字段来控制该课堂是否开放;学生只有查看并参与上课的权限。

由于课堂表和课程表由COURSEID外键关联的所以可以查看具体的课程有多少课堂的记录信息。

30

华 中 科 技 大 学 硕 士 学 位 论 文

表4.8 课堂-用户表

字段名 TYPE USERID ROOMID 数据类型(长度) varchar(10) varchar(50) int(11) 是否允许为空 否 否 否 是否为主键 否 否 否 描述 课堂用户类型 用户名 课堂号 课堂该课堂-用户表中ROOMID、USERID在这里是外键的作用,因为这两个字段是和课堂表、用户表中ROOMID、USERID主键对应的。

该表可以关联课堂表、用户表,用户可以通过该表查看用户表和课堂表的组合记录信息。

表4.9 院班级单位表

字段名 STRUCTID PARENTID NAME LAYER 数据类型(长度) int(11) int(11) varchar(20) char(1) 是否允许为空 否 否 否 否 是 否 是否为主键 是 否 否 否 否 否 描述 院班级单位号 上级单位号 单位名称 等级 班级最大人数 是否冻结单位 CLASSMAXHEADS int(11) ENABLE bit(1) 该院班级单位表中STRUCTID为主键是唯一的。其中,ENABLE为1时,表示“是”,为0时,表示“否”。该表主要是控制系统中学生角色用户的所属单位,系统管理员可以通过ENABLE来批量的冻结学生的账户(以班级为单位)。

表4.10用户表

字段名 USERID NAME PASSWORD SEX EMAIL TEL MOBILE 数据类型(长度) varchar(50) varchar(50) varchar(50) char(1) varchar(50) varchar(15) varchar(15) 是否允许为空 否 否 否 是 是 是 是 是否为主键 是 否 否 否 否 否 否 描述 用户名 姓名 密码 性别 邮件 电话 手机 31

华 中 科 技 大 学 硕 士 学 位 论 文

续表4.10: STRUCTID ROLEID OFFICE WORKADDRESS FREESE int(11) varchar(10) varchar(50) varchar(100) bit(1) 是 否 是 是 否 否 否 否 否 否 院班级号 角色 职位 工作地址 是否冻结账号 该用户表中USERID为主键是唯一的。其中,sex为1时,表示“男”,为0时,表示“女;FREESE为1时,表示“是”,为0时,表示“否”。

该表主要是控制系统中所有角色用户的基本信息,也就是最高权限管理者可以通过系统用户管理模块进行权限控制和用户管理。系统管理员可以通过表中ROLEID字段对新增的用户进行权限分配,通过FREESE字段对单个用户进行账号的冻结。

表4.11 收藏表

字段名 USERID OBJECTID OBJECTTYPE 数据类型(长度) int(11) int(11) int(11) 是否允许为空 否 否 否 是否为主键 是 否 否 描述 用户名 对象号 对象类型 该收藏表中USERID为主键是唯一的。其中,OBJECTID为收藏资源或课程的号;而OBJECTTYPE为收藏的类型,这里我们用1代表收藏的“课程”,用2代表收藏的“录像”,用3代表收藏的“文档”。

4.3 本章小结

本章结合需求分析和业务流程,对目标系统进行了功能模块的划分,并给出了数据库设计的详细方案。

32

华 中 科 技 大 学 硕 士 学 位 论 文

5 系统详细设计及实现

详细设计又称过程设计,即通过对结构表示进行细化,得到软件详细的数据结

构和算法。本章重点对目标系统的各功能模块进行详细设计并给出程序实现的流程图。

5.1 系统管理模块

5.1.1 系统登录

系统的登录是系统安全的重要保障,目标系统支持三种身份用户登录,即教务管理员、普通教师、学生用户。三种类型的用户登录接口都是相同的,即输入用户名、密码,便可登录到各自的管理后台。程序的实现描述如下: (1)程序取表单中用户输入的数据,用户名、密码。

(2)将用户名和密码保存在临时变量中,分别判断是否为空,如果为空,则提示用户输入。如果非空则进行下一步的操作。

(3)以用户名为关键字,检索数据库的用户表,将检索结果放在临时数据集中,如数据集为空,则表明系统中并无此用户,并提示用户,该用户不存在。

(4)如果非空,则取出结果集中的密码值,将该值与用户输入值进行比较,如果不同,则表明用户输入的密码不正确,并提示用户。

(5)如果密码相同,则表明用户输入正确。接下来便要判断用户类型。 (6)取用户标识,判断其值,如果为“1”,则跳转到教务管理员的页面,如果为“2”则跳转到普通教师页面,如果为“3”则跳转到学生页面。

功能实现的程序流程图如图5.1所示。

33

华 中 科 技 大 学 硕 士 学 位 论 文

开始取用户名、密码提示用户重新的输入Y是否存在空值N以用户名为关键字检索用户表Y检索结果是否为空N提示密码不正确N密码是否相同Y取用户类型标识提示该用户不存在是否为“1”N是否为“2”N跳转到学生用户页面Y跳转至教务管理页面Y跳转至教师用户页面结束 图5.1 系统用户登录流程

34

华 中 科 技 大 学 硕 士 学 位 论 文

5.1.2 用户管理

用户管理用来对系统中的用户数据进行维护,包括学生数据、教师数据以及教务管理员信息。该管理模块包含对用户数据的新增、修改、查询和删除操作。以下只对用户的数据新增进行详细的论述。

由于用户类型有三种,而新增用户数据的页面是同一个页面,于是需要解决的问题是,如何根据不同的用户类型,显示不同角色的属性。譬如,如果新增学生数据,则需要录入该学生的学号、姓名、性别、院、系、专业班级等信息;如果新增的是教师数据,则无需显示系、专业班级;如果是新增教务管理员,则院系专业班级无需在页面中显示。在功能实现上,主要依赖用户表和组织结构表。组织结构表包括结构ID、父结点ID、以及名称、层次。对于学校中的院系班级,可以通过本表进行存储。在新增用户数据时,需要读出该表中的数据。实现的流程描述如下:(1)取表单中的用户类型;(2)如果需要新增的用户类型为学生,则页面显示院、系、班级三层结构输入框。如果用户类型为教师,则只显示院的输入框。(3)根据选择用户类型从组织结构表中取相应的数据绑定到页面的输入下拉框中。(4)取表单中的用户数据,向用户表中插入用户记录,并同时写入组织结构ID。

以上论述的系统用户新增是逐条记录新增,如果学生用户较多时,这种方式势必不可行。因此,对于用户的新增还支持Excel导入,通过填写Excel模板,将模板上传后,便自动实现了用户的添加。

Excel数据导入实现的原理可以描述为:(1)通过FileUpload控件获取用户的Excel文件,并将该文件临时存放在服务器上;(2)通过.NET中的Excel控件逐行读出Excel的文件内容;(3)对每行数据进行验证,如果不通过,则提示用户修改模板里的信息格式;(4)如果验证通过,将数据插入到数据库中;(5)绑定数据至页面GridView控件中;(6)删除上传的Excel模板文件;图5.2给出了学生用户模板的样式。

35

华 中 科 技 大 学 硕 士 学 位 论 文

图5.2 学生信息导入模板

在该模板中,用户名是指学号或教师的工号,院系班级编号是由系统自动生成的,在模板中可以为空。

5.2 课程管理模块

5.2.1 创建课程

课程的创建只能由教务管理员来操作,在创建课程时,需要录入的课程信息包括,课程的名称、描述、是否公开、开放的班级对象、负责教师等。整个课程创建分两步进行,首先是录入课程的基本信息,其次录入课程的开放对象。

第一步:课程创建的流程可以描述如下,1)取表单中的课程信息;2)执行数据库插入操作,向课程表中插入数据。3)返回课程ID,跳转至下一页面。功能实现的流程如图5.4所示。

36

华 中 科 技 大 学 硕 士 学 位 论 文

开始取课程名称、是不公开课程、学期、开始时间、结束时间提示用户重新的输入Y是否存在空值N执行数据库Insert命令,向课程表插入课程信息返回新增的课程ID,保存到Session中跳转至创建课程的下一页面结束

图5.4 课程创建程序流程图一

第二步:程序跳转至用户选择页面,选择课程开放的对象。1)取选择的学生班级名所对应组织结构ID。2)从Session中取出课程ID。3)更新课程信息表,将组织结构插入到课程表中。程序实现的流程图如5.6所示。

37

华 中 科 技 大 学 硕 士 学 位 论 文

开始取用户选择的院系专业班级检索组织结构表,取对应的结构ID从Session中取出课程ID 执行数据库的Update命令,更新课程信息表,写入组织结构ID结束 图5.6 课程创建程序流程图二

班级的选择是通过查询实现的,在查询班级时,会将该班级的所有学生显示出来,而且可以有针对性的让班级的某一部分学生参加网络课堂。图5.7给出了选择班级的实现界面图。 5.2.2 课程收藏

课程收藏是学生用户所具有的操作,当学生对学校开设的某门网络课程感觉兴趣时,则可以选择该课程,并将该课程置为自己感兴趣的并收藏,以方便下次登录后浏览到该课程的基本信息和包含的课堂信息。当用户选择相应的课程后,点击收藏,则程序会执行如下操作:1)取出所选择课程对应的课程ID,并从Session中取录当前用户ID;2)执行Insert语句向收藏表中插入收藏信息。并同时写入收藏类型,在此定义课程的收藏类型为“0”,课堂收藏类型为“1”,录像的收藏类型为“2”,文件的收藏类型为“3”。

38

华 中 科 技 大 学 硕 士 学 位 论 文

开始取用户选择的课程所对应的课程ID从Session中取当前的用户ID将用户ID、课程ID、“0”分别插入到数据库的收藏表中提示收藏成功结束 图5.8 课程收藏程序流程图

5.3 课堂管理模块

5.3.1 课堂创建

在系统中,系统管理员和普通教师拥有课堂创建的权限。课堂的创建是在学校开设的某个网络课程下,新建网络课堂,譬如,某网络课堂在这个学期有40个学时,那么需要在该课程下新建40个课堂。所以,课堂的创建在系统中的表现形式可以描述为:1)

用户选择需要创建的课堂的课程;2)程序取出该课程的ID,保存在临时变量中。3)在新增课堂的页面中,程序取得课堂的信息;4)向数据库的课堂信息表中插入记录。功能的实现,需要二步完成,程序流程如图5.9、5.10所示。

39

华 中 科 技 大 学 硕 士 学 位 论 文

开始将课程ID保存在Session中页面跳转至课堂新增页面结束 图5.9 课堂创建第一步流程图

新增事件触发取课堂信息提示用户重新的输入Y是否存在必填项为空值?N向课堂表中插入数据提示课堂创建成功结束 图5.10 课堂创建第二步流程图

5.3.2 课堂收藏

学生登录后台后,可以将自己感兴趣的课堂收藏起来,方便下次登录时浏览,而无需从众多的课堂列表中进行搜索查找。在课堂一览页面中,学生点击收藏,则该课堂就会被放入“我的收藏”列表。程序实现的可以描述为:1)取当前的课堂ID;2)向数据库的收藏表中插入收藏记录,并置收藏类型的值为“1”。程序流程如图5.11

40

华 中 科 技 大 学 硕 士 学 位 论 文

所示。

开始取课堂ID值从Session中取当前的用户ID将用户ID、课堂ID、“1”插入到数据库的收藏表提示收藏成功结束

图5.11 课堂收藏流程图

5.4 资源管理模块

5.4.1 文件管理

教师可以在课堂结束后,上传自己的课堂教案,供学生浏览并下载,这是实现教学资源共享的有效手段。本章重点介绍文件的存储和浏览的实现方法: 1)文件的存储实现

文件上传的实现需要解决两个问题,一是如何解决上传文件大小受到的问题;二是如何将一个文件上传到服务器,并返回该文件的基本信息供用户查看或修改后再保存。

在默认情况上,ASP.NET默认的文件上传大小为2M,要实现大于2M的文件上传,需要更改Web.Config中的配置。例如将原来的2M,更改成4M,配置文件的修改过程是:

将配置代码:更改成: 通过这样的修改,

41

华 中 科 技 大 学 硕 士 学 位 论 文

便解决了上传文件大小的。 文件上传的的实现步骤可以描述为:

(1)初始化一个文件基本信息类,用于存放文件的基本信息,如上传者、上传时间、所属课堂等;

(2)创建一个上传对象,用于接收上传的文件,创建上传对象的代码下所示:HttpPostedFile postedFile = InputFile.PostedFile;

fileName = System.IO.Path.GetFileName(postedFile.FileName); fileExtension = System.IO.Path.GetExtension(fileName);

(3)进行格式的验证,如果是非法文件格式,则提示用户不能上传; (4)根据上传的日期,结合随机数,随机生成文件名; (5)判断保存的文件路径是否存在,如果不存在则创建路径; (6)在服务器上保存文件,关键代码如下: postedFile.SaveAs(phyPath + fileName); fp.FilePath = filePath + fileName; fp.FileExtension = fileExtension; fp.FileName = fileName;

2)文件浏览的实现

学生登录系统后,在“我的资源”里只能查看自己参与的课堂而且是教师公开的文件。因此,在文件资源一览时需要将这两个条件作为检索数据库表的关键条件。具体实现流程描述为:1)从Session中取出当前用户ID;2)根据当前用户ID,从用户表中检索出该用户所属的组织结构ID;3)检索文件表,通过文件表与课堂的关联,检索出具有相同组织结构ID的文件记录;4)判断该文件的公开属性是否为“1”,如果为1,则表明该文件是公开的,并绑定到页面显示以供用户下载。程序实现的流程如图5.12所示。

42

华 中 科 技 大 学 硕 士 学 位 论 文

开始从Session中取当前用户ID检索用户表,取该用户的组织结构ID检索文件表,取与该组织结构相同ID的文件记录,并置该记录于临时数据集中取临时数据集中一条记录N权限标识是否为“1”Y绑定页面显示结束

图5.12 文件一览程序流程图

5.4.2 录像管理

录像管理也是资源管理的重要部分。在网络课堂进行时,教师可以选择是否给该课堂录像,如果同意录像,则在课堂结束后,该录像是会自动上传至系统的服务器上。录像上传的原理和实现方法与文件上传一致,在5.4.1中有过详细的论述,在此不做介绍。教师可以登录后台,对自己的课堂录像设置相关权限等。课堂录像一览中,学生可以将录像设置为自己感觉兴趣的,即收藏该录像。录像只提供在线观看功能,当用户点击某个录像名称时,系统会从数据库的文件表中取出该录像的路径,并通过浏览器打开该录像,从实现录像的播放。由于录像与文件类似,关于录

43

华 中 科 技 大 学 硕 士 学 位 论 文

像一览、收藏,在此不加详细讨论。

5.5 课堂交互集成模块

5.5.1 数据接口

由于目标系统只是围绕市场上现成的实时交互系统进行外围管理软件的开发,因此,这就涉及到系统的集成。系统集成在本质上就是实现两个或多个数据库之间的数据共享同步。在实时交互系统中,没有关于教学的概念,即没有课程、课堂、学生、教师,只有主持人与参与者的概念。在实时交互系统中,有一张用户表,该用户表存放的是主持人与参与者、以及相关权限信息。这样,外围管理系统的开发,需要与用户信息表、权限表进行信息的交互或共享。二者的对应关系如表5.1所示。

表5.1 系统集成参数

实时交互用户信息表 主持人 Host 参与者 Actor 交互起始时间 StartTime 交互结束时间 EndTime 房间编号 RoomID 课堂管理系统用户表 教师 Teacher 学生 Teacher 课堂开始时间 ClassStartTime 课堂结束时间ClassEndTime 课堂编号 ClassID 5.5.2 进入课堂

系统集成的关键,便是进入课堂,只有在用户进入课堂时,两个系统才会有数据的交互。下面对学生进入课堂上课的操作进行详细的说明。

学生在登录后台时,首先取得该学生的用户ID、组织结构ID保存在Session中,在点击需要上课的课堂后,程序会取出该课堂的ID。然后依据该课堂的ID检索该课堂所属的组织结构ID,如果与用户的组织结构ID相同,则表明可以进入课堂,否则表明不属于该学生的课堂。当学生可以进入课堂时,则以该学生的ID、房间ID检索实时交互数据库的用户表,要求检索出参与者ID与学生ID相同、且房间编号与课堂编号相同的记录,如果为空,则表明系统出现异常,集成是失败的。否则登录到实时交互系统中,进行教学的互动。该功能实现的流程如图5.13所示。

44

华 中 科 技 大 学 硕 士 学 位 论 文

开始从Session中取当前用户ID、组织结构ID取用户点击的课堂所对应的课堂ID以该课堂ID检索课堂表,取出组织结构ID提示“你没有权限进入此N课堂”当前用户组织结构是否与课堂所属组织结构相同?Y抛异常错误N当前用户ID、课堂ID与实时交互中是否对应?Y进入课堂结束 图5.13 进入课堂的程序流程

图5.14给出了学生进入课堂后的交互界面。由于教师还没有进入课堂,所以不能看到对方的视频。在主界面中,是关于该课堂所属课程的一些文件或录像。学生可以进行下载或在线观看复习。 5.5.3 权限控制

权限控制也是涉及到集成操作的功能操作。在目标系统中,权限包括:是否允许用户聊天、是否允许用户视频、是否开启电子白板功能、是否启用桌面共享、是否允许用户迟到等。该操作的对象是实时交互系统数据库的权限表。程序取得用户

45

华 中 科 技 大 学 硕 士 学 位 论 文

的表单数据,更新权限表中的数据即可。图5.15给出了权限设置的实现界面图。

5.6 本章小结

本章重点描述了系统管理模块、课程管理模块、课堂管理模块、资源管理模块、课堂交互集成模块的实现方案。方案给出了各功能实现的业务描述以及程序流程图。

46

6 系统测试

软件测试在软件生命周期中占有举足轻重的地位。软件测试是软件产品在交给用户使用之前保证软件产品质量的重要手段。测试的目的是发现系统程序中的错误,从而来提高软件产品的可靠性[50]。

系统测试是基于系统需求说明文档的黑盒测试。它是对已经集成起来的软件进行彻底的测试,以验证软件的正确性和性能等条件来满足需求,检查软件的输入和输出是否正确并不是一项简单的任务,它被称为测试的“先知者”。所以,系统测试应该按照需求中数据动作来执行约束[51]。

系统测试是以功能测试为主,不过还包括:系统性能测试、安全性测试、可靠性测试、稳定性测试,以及对系统中其它性能的测试例如系统的最大负载能力、系统的处理事务的能力以及页面响应时间等进行测试。

6.1 系统功能测试

6.1.1 测试方法

功能测试的目的是为了验证系统是否满足开发的要求你,是否能够提供设计所阐述的功能,是否用户的需求都达到了要求。

1)功能测试:又称正确性测试,它检测软件的基本功能模块的功能点是否和需求文档说明书一致。按照系统功能需求对系统的功能、流程、数据以及业务等进行测试,同时也要对系统基本特征如UI、报表等的一致性和合理性的测试。

2)安全性测试:验证安装在系统内的保护机构确实能够对系统进行保护,使之不受各种非常的干扰。检测系统是否有安全保密的漏洞。 6.1.2 测试用例

1) 系统登录、注销、修改密码 登录

(1)使用合法用户登录系统;

(2)用户名、密码错误或者漏填的时候能不能登录成功; (3)系统是不是允许多次非法登录,是否有非法登录次数;

47

(4)使用已经登录的账号再次登录系统检测系统能否正确的处理; (5)使用冻结的账号登录系统检测系统能不能正确处理;

(6)删除后的用户用原来的用户名登录检测系统能不能正确处理; (7)修改后的用户用原来的用户名登录检测系统能不能正确处理;

(8)不输入用户名和密码,重复的点击“确定”和“取消”按钮,检测系统是否允许登录;

(9)登录后,检测主页面中显示的登录信息是否合理; (10)检测页面中是否有注销按钮; (11)检测系统登录超时的处理。 注销

(1)注销原来的模块、新的模块检测系统能不能正确的处理; (2)中止注销能不能返回到原来的模块以及原来的用户; (3)注销原来的用户、新的用户检测系统能不能正确的处理;

(4)使用不正确的用户名和密码、无权限的用户名或者被管理员禁用的用户名进行注销;

修改密码

(1)输入不正确的原密码或者新密码与确认密码不一致检测系统能不能正确的处理;

(2)修改密码后,还用原来的密码登录检测系统能不能正确的处理; (3)修改密码后,用新密码登录检测新密码是不是有效密码; (4)检测管理员能不能修改其他用户的登录密码。 注册

(1)检测同表单编辑界面; (2)检测用户名和密码的长度; (3)检测注销后的提示页面;

(4)检测前台用户注册页面中输入的数据信息和后台管理页面的数据项是否一致;

(5)检测前台用户注册后,在后台管理页面中现实该记录。 2)对记录操作

(1)检测增加重复记录或者空白记录,系统能不能正确的处理;

48

(2)检测修改记录后不保存(有保存按钮),系统能不能正确的处理; (3)检测删除正在使用的信息,系统能不能正确的处理; (4)检测修改正在使用的信息,系统能不能正确的处理;

(5)检测删除级联记录的上级或者下级的记录,系统能不能正确的处理; (6)检测删除记录时是否有提示信息;

(7)检测记录中包含的缺省项的信息系统能不能进行删除和修改; (8)检测记录列表能不能及时刷新到新的记录;

(9)检测记录变化之后系统的相关信息能不能及时的更新。 3) 用户、权限管理

(1)管理员赋予一个用户相应的权限后,在界面中看此用户是不是具有赋予的权限,并用该用户的身份登录,来检测权限设置是否有超出所赋予的权限;

(2)修改已经登录系统并正在对该系统进行操作的用户的权限时,检测系统能不能正确的处理;

(3)重新注册系统变换登录用户身份后再次登录,检测系统能不能正确执行,以及当前用户所具有的权限是不是正确;

(4)删除包含用户的角色,系统能不能正确的处理;

(5)检测不同权限的用户登录同一个系统,权限范围是不是正确;

(6)检测可不可以添加信息为空的用户(包括空用户名及空密码、空用户名非空的密码、非空用户名和空密码);

(7)检测能不能添加长用户名和长密码,如果允许,再检测新用户名能不能正确的登录;

(8)检测系统是否允许删除系统管理员这一特殊的用户或者修改系统管理员的登录密码,删除或者修改后系统的实际情况;

(9)检测登录用户能不能修改自己的权限;

(10)检测添加用户:标识相同,用户名不同;标识相同,用户名相同;标识不同,用户名相同;标识不同,用户名不同;能不能正确处理。

(11)检测登录用户能不能修改本人的信息,删除自己本人; (12)检测登录用户能不能修改他人的信息,删除他人的信息;

(13)检测修改用户的信息(包括权限,密码,基本信息等),对其他模块的影响; (14)检测修改用户的信息:修改后的用户信息和已经存在的用户记录信息相同;

49

修改后的用户信息和已经存在的用户信息不同;系统能不能正确的处理。

(15)检测冻结账号的用户能不能登录;

(16)检测系统管理员修改了某些数据,并以其他用户身份登录时数据是不是改变;

(17)检测删除后重新添加的用户是否具有以前的权限; (18)检测更改用户的各项属性后,对用户的权限是否有影响; 4) 统计、查询

(1)检测对非法时间的范围系统能不能正确的处理; (2)检测统计查询语句包含多个条件时,系统能不能正确的; (3)检测条件逻辑混乱,系统能否正确处理;

(4)检测多表查询统计及单表查询统计功能是否正确实现;

(5)检测分类查询、精确查询、无条件查询、组合查询能不能完整的查询出满足条件的记录;

(6)检测系统能不能按系统默认的条件进行查询;

(7)检测当统计时间段为日、跨日、跨年时,统计查询结构能不能正确罗列出; (8)检测用不同的权限登录时,统计、查询是否正确; (9)检测在查询或统计大数据量时,系统是否允许终止操作;

(10)检测查询、统计按钮是否允许双击或者更多次的点击,系统做怎样的处理; (11)检测查询出的数据可不可以允许修改; 5) 文件操作 上传功能

(1)检测不填写信息,提交; (2)检测上传内容的格式; (3)检测上传内容的大小; (4)检测上传后的提示语; (5)检测特殊字符显示; (6)检测边界值; (7)检测上传的路径。 下载功能

(1)检测下载下来的文件信息是否完整;

50

(2)检测下载下来的文件是否可以修改; (3)检测下载下来的文件能不能打开 6) 安全性测试

(1)用户权限安全,截取或破译密码等;

(2)故意导致系统失败,企图趁恢复之际非法进入 (3)非法篡改数据 (4)网页加密安全。

6.2 系统性能测试

性能测试是为了描述测试对象与性能相关的特征并对他进行评价,而实施和执行的一类测试,如描述如何评价计时配置文件、执行流、响应时间以及操作的可靠性和等特征。

性能测试可以分为以下几类:并发性能测试、压力测试、负载测试、疲劳强度测试、大数据量测试和速度测试等,其中并发性能测试是重点考虑的。

针对于该系统的并发性能测试可以用性能测试工具LoadRunner进行测试。 首先录制脚本,对与该系统可以录制一个下载功能的脚本;然后创建场景,在录制的脚本中设置“事务点”;然后再设置场景以及运行场景;最后是分析场景得出性能测试分析报告。其中设置场景是非常重要的一步,针对于该系统设计的场景如下:

1)场景描述一:

(1) 用户登录的我的收藏模块,总共登录50个用户,所有用户都同时并发操

作。

(2) 用户点击“我必修的课程”。

(3) 用户点击“上课”,进行课程上课,进入到课堂模块。

(4) 在课堂模块中进行学习,过程包括:首先,视频对话、白板开放等。 (5) 点击“返回”按钮,系统将返回到我的课表模块,点击“退出”按钮,退

出系统。 2)场景描述二:

(1) 用户登录的我的课表模块,总共登录48个用户,每一秒登录1个用户。

51

(2) 用户点击“我必修的课程”

(3) 用户点击“上课”,进行课程上课,进入到课堂模块

(4) 在课堂模块中进行学习,过程包括:首先,视频对话、白板开放等。 (5) 点击“返回”按钮,系统将返回到我的课表模块,点击“退出”按钮,退

出系统。 3)场景描述三:

(1) 用户登录的我的课表模块,总共登录48个用户,所有用户都同时并发操

作。

(2) 用户点击“我必修的课程”

(3) 用户点击“上课”,进行课程上课,进入到课堂模块

(4) 在课堂模块中进行学习,过程包括:首先,视频对话、白板开放等。 (5) 点击“返回”按钮,系统将返回到我的课表模块,点击“退出”按钮,退

出系统。 4)场景描述四:

(1) 用户登录的我的课表模块,总共登录48个用户,每一秒登录10个用户。 (2) 用户点击“我必修的课程”

(3) 用户点击“上课”,进行课程上课,进入到课堂模块

(4) 在课堂模块中进行学习,过程包括:首先,视频对话、白板开放等。 (5) 点击“返回”按钮,系统将返回到我的课表模块,点击“退出”按钮,退

出系统。 5)场景描述五:

(1) 用户登录的我的课表模块,总共登100个用户,所有用户都同时并发操作。 (2) 用户点击“我必修的课程”

(3) 用户点击“上课”,进行课程上课,进入到课堂模块

(4) 在课堂模块中进行学习,过程包括:首先,视频对话、白板开放等。 (5) 点击“返回”按钮,系统将返回到我的课表模块,点击“退出”按钮,退

出系统。 6)场景描述六:

(1) 用户登录的我的课表模块,总共登200个用户,所有用户都同时并发操作。 (2) 用户点击“我必修的课程”。

52

(3) 用户点击“上课”,进行课程上课,进入到课堂模块。

(4) 在课堂模块中进行学习,过程包括:首先,视频对话、白板开放等。 (5) 点击“返回”按钮,系统将返回到我的课表模块,点击“退出”按钮,退

出系统。

各场景的测试的结果如表6.1所示。

表6.1 各场景执行结果

业务 我的收藏模块 我的课表模块1 我的课表模块2 我的课表模块3 我的课表模块4 我的课表模块5 最大用户数 平均事务响应时间(秒) CPU平均使用率% CPU最大使用率% 50 48 48 48 100 200 117.069 76.113 67.337 78.337 87.337 93.337 56.952 34.7 58.467 75.268 .359 98.768 100 100 100 100 100 100 从表6.1中可以看出,目标系统可以实现200人同时在线实时交互学习,考虑到学校的网络教学实际情况,这一指标已经能满足正常的网络教学的进行。

6.3 本章小结

本章重点对系统的功能和性能进行了测试。在功能测试方面,给出了测试用例,在性能测试中,给出了并发测试用例。

53

7 总结及展望

7.1 总结

本文根据学校的信息化建设需求,设计并开发一套可供师生互动的交互式课堂管理系统。系统的开发严格遵循软件工程的开发思想,将当前流行的Asp.net技术,SQL Server 数据库技术运用到课题的研究中,并成功实现了功能实用的交互式课堂管理软件。该软件为网络教学的用户提供了开课必须的功能操作。

网络教学的教务人员,可以方便地发布通知公告、按教学计划,创建网络课程,并管理教学过程中产生的珍惜教学资源,从而实现了教学资源的共享,彰显了学校信息化建设的成果;普通任课教师,可以在属于自己的课程大纲内,创建组织在线课堂,充分发挥了教师在教学过程的主观能动性;学生用户在系统登录后可以参与必修的网络课堂,并可以收藏自己感觉兴趣的课程及相关教学资源。通过系统的开发,填补了学校在网络教学上的空白。 在本课题的研究中,笔者的研究工作有:

1) 参与目标系统的分析工作。通过调研,收集目标系统的需求,进行功能上和

性能上的分析,并做了目标系统的业务流程分析和数据流程分析。 2) 完成目标系统的总体设计工作,对系统进行了功能模块设计和数据库的

设计。

3) 完成系统管理模块、课程管理模块、课堂管理模块、资源管理模块以及

交互系统集成模块的详细设计工作,并参与了部分代码的编写。 4) 参与系统的测试工作。

经过课题的研究,开发出的课堂管理系统已在工作单位正式投入使用,反响较好。

7.2 展望

由于论文的研究时间、研究条件等方面的,还有许多问题需要进一步研究。在本文的后续研究中还需要进行以下几方面的工作:

1)对系统整体设计功效的验证,本文只是初步提出了交互式网络教学系统的设计方案,以及对该系统的部分实现。但是由于时间以及实际使用等各方面的,

54

并没有对系统的实际有效性进行验证。在以后的工作中,需要验证该设计是否能够方便有效地运用于网络教学中。

2)完善网络交互形式的设计,对网络环境下的交互学习过程做更完整和适合学生特点和学科特征的设计。

随着互联网技术的进步,网络的发展已逐步从互联网转向物联网的发展阶段,相信物联网的产生,必将更深层地影响到教学的形式和效果。比如,现阶段的网络课堂需要老师和学生在某个固定的终端上进行交互,相信不久,移动终端必定会取代固定的终端设备,从而实现移动课堂教学,便得知识的传递完全突破空间、时间的,到那时,人们随时随地可以分享新的知识、新的思想。

55

参考文献

[1] 邱艳敏.基于Web的网络教学平台的设计与实现[D].吉林大学,2010:2-5. [2] 邱瑛.Web2.0技术在网络教学平台中的研究与应用[D].北京交通大学,2010:

1-4.

[3] 杨琴.基于Web技术的网络教学平台的构建与实现[D].西安理工大学,2008:

2-7.

[4] 雷镭.基于Web的即时网络教学平台的设计与实现[D].西南交通大学,2010:

2-9.

[5] 韦民伟.基于语义Web的网络教学平台研究[D].广西师范大学,2010:1-7. [6] Greg Kcarsley.The Nature and Value ofInteraction in Distance Learningp[J].Paper

prepared forthe Third Distance Education Research Symposium,1995:113-118. [7] 陈宝军,杨改学.试论网络课程的教学交往本质[J].中国远程教育,2007(09):

16-22.

[8] 胡勇,赵凤梅.网络协作平台中协作学习工具的应用分析和建议[J].中国远程

教育,2009:17-23.

[9] Deborah L.McGuinness,Question answering on the semantic Web,Intelligent

Systems,IEEE, Volume: 19, Issue: 1,Jan.-Feb 2004:82-85.

[10] Jignashu Parikh,M.Narasimha Murty,Adapting question answering techniques to

the Web.Language,Engineering Conference,2002,Proceedings 13-15 Dec. 2002: 163-171.

[11] 李继颖,张振亭.关于基于Internet的协作学习环境的构建[J].电化教育研究,

2007(09):2-13.

[12] 谢幼如,柯清超.网络课程的系统研究[J].电化教育研究,2009(02):13-17. [13] 钟志贤,论学习环境设计[J].电化教育研究,2008(08):22-27.

[14] Ruben Prieto Diaz.Status Report:Software Reusability. IEEE Software,

1993,10(3):61-66.

[15] Wilf LaLonde. DiscoveringSmalltalk. Benjamin/ Cummings:Redwood City,CA,

1994:23-27.

56

[16] Yang Fuqing,Wang Qianxiang,Mei Hong,etal.Reuse-Based Software Production

Technology.Science In China(F),2001,44(1):8-19.

[17] Bertrand Meyer.Object Oriented Software Construction. Series in Computer

Science.Prentice Hall:Englewood Cliffs,NJ,1998:35-38.

[18] 李盛聪,杨艳.网络学习环境的构成要素及特征分析[J].电化教育研究,

2008(08):45-49.

[19] 梁林梅,焦建利.我国网络课程现状的调查分析与反思[J].开放教育研究,

2007(09):38-44.

[20] 刘罡.基于Web2.0的教师专业发展支持系统的研究[D].山东师范大学,2010:

2-8.

[21] 李玉娟.远程学习者情感信息档案袋的研究[D].山东师范大,1-5. [22] Ng.C.S.P,Gable,G.G, Chan,T.Z. An ERP-client benefit-oriented maintenance

taxonomy[J] .Journal of Systems and Software, 2008:15-18.

[23] Yanlei Wang,Chunliang Chen. A New Function Modeling Method and Its

Application in MIS[M] .Proceedings of the 2006 IEEE International Conference on

Information

Acquisition.

Weihai,Shandong,China.

August

20-23

2006, :441-445.

[24] Mohammad Jafar Tarokh ,Javad Soroor. Supply Chain Management Information

Systems Critical Failure Factors[J] .IEEE, 2006:425-431.

[25] 李亚芳.网络学习者个人知识管理系统的研究[D].山东师范大学,2010:17-23. [26] 李强.中职学校开放式教学模式研究[D].山东师范大学,2008:3-5. [27] 崔维响.基于Web2.0的网络课程设计[D].山东师范大学,2009:4-9. [28] 王庆福.远程学习者学习风格分析系统的研究[D].山东师范大学,2009:2-8. [29] Fawaz A.Masoud,Dana H.Halabi,Deema H.Halabi. asp.net frameworks and JSP

frameworks in model view controller implementation[M] .IEEE, 2006, :3593-3598. [30] Agnes Bogairdi-Meszoly,Tihamer Levendovszky,Hassan Charaf. Performance

Factors in ASP.NET Web Applications with Limited Queue Model [M].INES International Conference on Intelligent Engineering Systems. 2006, :253-257. [31] 郑艳丽.网络课程中学习路径引导系统的研究[D].山东师范大学,2009:3-8. [32] 求是科技.ASP.NET数据库系统开发实例导航[M].北京:人民邮电出版社,

57

2005:230-233.

[33] 邓春妮,聂元铭.ASP.NET企业级开发案例精解[M].北京:人民邮电出版社,2005. [34] 郭兴峰,陈建伟.ASP.NET动态网站开发基础教程(C#篇)[M].北京:清华大学出版

社,2006:137-144.

[35] Mohammad Jafar Tarokh ,Javad Soroor. Supply Chain Management Information

Systems Critical Failure Factors .IEEE, 2006,:425-431.

[36] 王永皎.Visual C#2008+SQL Server 2005数据库开发与实例[M].北京:清华

大学出版社,2008:160-166.

[37] 杨帆.ASP.NET技术与应用[M].北京:高等教育出版社,2009:133-136. [38] 马军.精通ASP.NET 2.0网络应用系统开发[M].北京:人民邮电出版社,2007:

210-213.

[39] 陈冠军.精通ASP.NET 2.0企业级项目开发[M].北京:人民邮电出版社,2008:

69-73.

[40] 肖金秀,何鹏,周柏伟.ASP.NET程序设计[M].北京:冶金工业出版社,2005:

35-38.

[41] GUO H,CHEN F,WANG Y. A reusable softwarearchitecture model for manufactory

managementinformation

system[C].26th

IEEE

InternationalConference

on

Computer Software and Application. Oxford: IEEE, 2010:245-255 .

[42] 邝孔武,王晓敏.信息系统分析与设计[M].北京:清华大学出版社,1999, 3-17 [43] Russ Basiura等著,杨浩译.ASP.NET Web 服务高级编程.北京:清华大学出版

社,2003:204-209.

[44] Fawaz A.Masoud,Dana H.Halabi,Deema H.Halabi. asp.net frameworks and JSP

frameworks in model view controller implementation .IEEE, 2006, :3593-3598. [45] Ng.C.S.P,Gable,G.G, Chan,T.Z. An ERP-client benefit-oriented maintenance

taxonomy .Journal of Systems and Software, 2009.

[46] A.Russell Jones著,高春蓉等译.ASP.NET从入门到精通[M].北京:电子工

业出版,2009:198-202.

[47] 攀建编著.ASP.NET+ADO.NET项目开发实例[M].北京:清华大学出版社,

2009:101-103.

[48] Alex Homer.ASP.NET Web Forms Programming[M]. 北京:清华大学出版社,

58

2003:122-125.

[49] Microsoft .NET Framework 1.1 class library reference manual. 北京:清华大学出

版社,2004:1-192.

[50] 朱少民.全程软件测试[M].北京:电子工业出版社,2009:45-46.

[51] 段念.软件性能测试过程详解与案例剖析[M].北京:清华大学出版社,2009:

106-111.

59

致谢

本课题在选题及研究过程中得到***老师的悉心的指导,因此首先我要感谢的就是我毕业论文的指导老师。他在工作繁忙的情况下,仍然多次询问研究进程,并帮助我开拓研究思路,为我指点迷津。不仅老师给了我最大的研究上的帮助,而且老师严谨治学和研究的态度,踏踏实实的工作精神和为人和蔼的态度,给了我做人的榜样,使我终生受益匪浅。在此,我向老师表示我由衷地感谢和崇高的敬意。

其次,我要感谢研究生期间教过我的所有老师和帮助过我的老师,为我打下了研究的基础知识,如果没有他们细心教导,我也不会顺利地完成我的课题研究工作,为此,我向他们致以诚挚的谢意。

然后,我要感谢我的同学们。与你们生活、学习在一起,给我带来了很多的快乐和帮助,尤其是在做毕业论文这段时间,他们带给了我非常大的支持和帮助,为此,我非常感谢他们。

再次感谢以上所有的人,谢谢!

60

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- cepb.cn 版权所有 湘ICP备2022005869号-7

违法及侵权请联系:TEL:199 18 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务