毕业设计(论文)-慕课教学平台开发与设计.doc_第1页
毕业设计(论文)-慕课教学平台开发与设计.doc_第2页
毕业设计(论文)-慕课教学平台开发与设计.doc_第3页
毕业设计(论文)-慕课教学平台开发与设计.doc_第4页
毕业设计(论文)-慕课教学平台开发与设计.doc_第5页
已阅读5页,还剩29页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

大连理工大学本科毕业设计(论文)慕课教学平台开发与设计Programing and design of MOOC学 院(系): 软件学院 专 业: 软件工程(日语强化) 学 生 姓 名: 学 号: 指 导 教 师: 评 阅 教 师: 完 成 日 期: 慕课教学平台开发与设计摘 要慕课教学平台,即大型开放式网络课程教学平台。它是为这个信息化时代量身定做的开放式学习平台,奉行公开,参与的原则,支持以网络为媒介的学习。慕课教学类似于一门网络课程,有老师,学生,课程材料,开课和结课时间,课堂作业和考试。但它并不仅仅是一门网络课程,它实现了沟通和合作,每一门课程都是免费的,每一个交流都是公开的,每一个参与者都可以体会到学习的意义。2012年起,美国顶级大学陆续设立网络学习平台,通过网络提供免费的学习课程。Coursera,Udacity,edx三大网络教学平台的兴起,它们与顶尖大学合作,提供免费的精品课程,更为学生提供了系统学习知识的平台。本文结合慕课教学平台的现状和学校的实际情况,采用动态网站开发技术和SQL,采用B/S架构,设计并实现了一个慕课教学平台。本文首先简单介绍国内外现状和课题研究意义及方向。随后分析系统的功能,性能需求。之后介绍了系统的整体结构和具体实现。整体结构包括系统架构,功能模块设计,数据库设计,数据的流向和逻辑结构。具体实现陈列了模块的核心代码。最后介绍对系统的功能和性能测试。关键词:网络课程;开放学习平台;免费全套图纸加扣3012250582 - I -慕课教学平台开发与设计Programing and design of MOOCAbstract MOOC is massive open online courses. It is an opening platform designed for information age, which supports learning by network. MOOC is similar to a online course which owns teachers, students, course sources, the starting and ending time of course, homework and tests. But it is not just an online course and it implements the communication and cooperation. Each course is free, and each communication is open and each participant can appreciate the significance of learning.Since 2012, the top universities in the United States have set up a network learning platform which provides free courses through network. As the rise of Coursera, Udacity and edx which cooperation with the top universities and provide free courses for students online, it provides systematic learning platform for students further.According to the current situation of MOOC and requirements from our school, I use which is dynamic web technology, SQL, and B/S architecture to design and program a MOOC teaching platform. The paper firstly introduces the present situation of the MOOC at home and abroad and the significance and direction of the project. Secondly, it analyzes the functions and the performance of the system. Thirdly, the structure of the system including the architecture of system, the design of each module, the design of database and date flow, is introduced. Furtherly, the code is displayed. Finally, the system test is reported. Key Words:Online Course;Opening Learning Platform;Free; - V -目 录摘 要IAbstractII1 绪论11.1课题背景11.2国内外研究概况11.3主要研究工作21.4系统相关技术21.4.1 ASP.NET简介21.4.2 C#简介31.4.3 ADO.NET简介31.4.4 SQL Server数据库管理工具简介31.4.5 B/S架构32 需求分析42.1 功能需求42.1.1 系统开发思路及设计目标42.1.2 系统功能分析和用例图42.2 性能需求62.2.1 数据安全需求62.2.2 数据完整性需求62.2.3 数据高效性需求62.2.4 可移植性需求72.3 系统数据流图72.3.1 系统顶层数据流图72.3.2 身份验证模块数据流图82.3.3 教学资源模块数据流图82.3.4 在线互动模块数据流图83 概要设计83.1 系统架构设计83.2 系统结构设计93.2.1 顶层结构图93.2.2 登陆/注册模块结构图93.2.3 教学资源管理模块结构图93.2.4 在线互动模块结构图93.3 数据库设计93.3.1 系统实体描述93.3.2 E-R图93.3.3 数据库表104 详细设计103.1 身份验证模块设计103.1.1 功能描述103.1.2 逻辑描述103.2 资源管理模块设计123.2.1 功能描述123.2.2 界面设计123.2.3 逻辑描述123.3 在线互动模块设计123.3.1 功能描述123.3.2 界面设计123.3.3 逻辑描述123.4 资讯模块设计123.4.1 功能描述123.4.2 界面设计125 系统实现135.1 系统登录的实现135.2 搜索资源的实现135.3 上传资源的实现135.4 下载资源的实现135.5 资源评分的实现135.6 资源评论的实现135.7 提问相似推荐的实现136 系统测试136.1 系统登录的测试136.2 上传资源的测试136.3 下载资源的测试136.4 评分和评论的测试136.5 提问推荐的测试13结 论14参 考 文 献15致 谢16慕课教学平台开发与设计1 绪论1.1 课题背景随着时代的进步,互联网成为人们生活不可或缺的一部分。与此同时,传统单一的教师授课教育的一些弊端也开始显现出来。第一,想要接受教育的人必须得找固定的时间去学校上课,这使得一些工作了的想继续接受教育变成了幻想。第二,昂贵的学费使得一些人望而却步。第三,教师讲课课程知识的来源比较少。第四,教科书更新比较慢,学习的知识比较陈旧,难以跟的上时代的脚步。这使得开放式网络课程脱颖而出。开放式网络课程具有很大的灵活性,它使得任何人都可以通过互联网在线接受教育,不管时间,地点,根据自己的时间和兴趣选择适合自己的课程并做出自己对课程进度的安排,更进一步的体会到学习的意义和乐趣,提高学生的自主学习能力。开放式网络课程对资源的利用率远远超过传统教育。它成功的利用互联网的广泛性使得学生可以接触更多自己感兴趣的知识,并且能接触到最新的技术和理论。由于互联网的传递性,网络课程的规模会不断的变大,知识会变得更加深化,让学生感受到自己接受的是精品的免费课程。此外,由于互联网这个平台的开放性,大家可以合作交流,加深对知识的理解和感悟。基于开放式网络课程的优点,本文深入介绍一个慕课教学平台的设计与实现,每个人都可以通过该平台学习,分享,合作,交流。该系统采用B/S架构,使用C#开发语言与ASP.NET框架。同时,使用微软的SQL Server关系型数据库管理工具实现数据的安全存储和高效使用。根据软件工程理论,结合学校现实情况分析系统需求,为了提高学生的自主学习能力,实现资源共享,设计并实现了慕课教学平台。1.2 国内外研究概况早在20世界80年代,美国已经开始将计算机英语教学。2008年,慕课的概念第一次被提出,直到2011年为人所熟知。2012年起,美国的顶尖大学陆续设立网络学习平台,在网上提供免费的精品课程。随着Coursera,Udacity,edx三大网络课程教学平台的兴起,给学生提供了更多的系统地在线学习平台。Courser是由斯坦福大学教授在2012年初创立的盈利性网站,目前已经有33家大学加入了Coursera的阵营。Udacity同样是由斯坦福大学教授创办的盈利性网站;edX是由MIT和哈佛联合在2012年5月份推出的非盈利性网站,除了为全世界的学生提供免费课程以外,这家网站通过研究线上、线下混合教学的模式4,5,提高线下传统校园的教学和学习。2013年起,新加坡国立大学开始加入大型开放式网络课程队伍,与Coursera合作,在该平台上推出量子物理学和古典音乐创作的课程。我国的慕课教学平台起步和发展都比较缓慢,但是已经初见规模。2013年,中国在线教育用户规模达到6720万人。目前已经有许多高校开始举办网上教育试点,2013年,清华大学推出“在线学堂”平台,面向全世界提供在线课程;2015年,南京大学4门课程在Coursera国际平台上线。此外,果壳网MOOC学院,MOOC中国,网易公开课等教学平台已经开始兴起,一些大型的互联网公司相继开始投资开发相关平台。2014年网易云课程堂与爱课程网合作推出的“中国大学MOOC”项目上线。2014年5月,全国地方高校UOOC联盟组建,由56所高校加盟组成,目前提供10余门课程免费学习。1.3 主要工作本文介绍的慕课教学平台采用ASP.NET技术,使用SQL Server作为数据库管理工具,基于B/S架构设计并开发。在该系统的设计与开发过程中,主要有以下工作:(1) 创建合适的数据库表,保证系统的高效性,数据的完整性。数据库表的结构和表之间关系很大程度上影响着系统的性能。合适的主键,外键,索引都会大大提供系统的速度。(2) 前端页面采用ASP.NET技术,后台使用C#语言编写。C#语言是ASP.NET框架最合适的开发语言,保证系统的兼容性,高效性。(3) 使用ADO.NET实现前后端数据的传输。(4)进行功能,性能测试,保证系统的稳定性,安全性。1.4 系统相关技术本系统采用B/S架构,使用C#语言,ASP.NET框架,ADO.NET连接数据库技术8实现慕课教学平台系统设计与开发工作。ASP.NET主要用来实现后台的逻辑编码,实现连接数据库,对数据信息的增加、删除、修改、查看等工作,实现前台的页面框架的编写以及实现前后台数据的互相传输的功能。系统使用的开发工具是Microsoft Visual Studio 2013与Microsoft SQL Sever 2012。1.4.1 ASP.NET简介 ASP.NET9是由微软公司开发的一种嵌入网页中的运行在网络服务器上端的脚本。是通过使用HTML,CSS,JavaScript以及服务器脚本来构建网页的开发框架,运行在IIS上。当我们使用HTTP协议请求文档的时候,可以在web服务器上动态的创建。ASP(Active Server Pages),即动态服务器页面,是运行在windows开发的web服务器上的程序。 ASP.NET是下一代的ASP,是服务器端编程的全新技术。通常情况下,ASP.NET的网站和应用程序在微软的Visual Studio平台上进行开发,它的首选语言是由微软提供的C#,同时也支持其他多种语言。ASP.NET是一种优秀的程序框架,它拥有跨平台性,简单易学,可管理性强等特点。其构建的应用基本可以运行在所有的平台上,同时,它可以很简单地运行一些很平常的任务。 ASP.NET运行库工作原理如下图1.1:在浏览器中对.aspx文件进行第一次请求时,会启动ASP.NET分析器,编译器会把该文件和一个与该文件相关的C#文件一起编译,创建一个程序集。之后,.NET运行库的编译器把程序集编译为本机代码。该程序集包括一个Page类,调用这个类会把HTML代码返回给客户端。之后Page对象被删除,保留程序集,为了以后的请求不需要重复编译。图1.1 ASP.NET运行库工作原理1.4.2 C#简介C#由微软推出的,面向对象的,位于.NET框架之上的编程语言。C#是根据C/C+衍生出来的,因此它可以使用C/C+编写的本机原生函数。C#和JAVA有着惊人的相似性,例如单一继承,接口等。在编译方面,同样也是生成中间代码,再由.NET framework框架上的虚拟机执行。1.4.3 ADO.NET简介ADO.NET也是由微软推出的.NET框架的组成部分,用于处理数据访问。ADO.NET基于XML,由用于操作数据访问的类组成,可以使用它来操作数据库。1.4.4 SQL Server数据库管理工具简介 SQL Server是一个关系型数据库管理工具,由微软推出,使用集成的商业智能工具提出了企业级的数据管理。它具有跨平台性,能运载在笔记本电脑上,也可运行在大型处理器的服务器平台上。SQL Server提供数据库引擎,它是用来存储,处理和保护数据的核心服务,可以快速处理事务及控制访问权限,为结构化数据和关系型数据提供了非常安全可靠的存储功能。 此外,SQL Server整合了符合.NET规范的语言,这使得在数据库管理系统中可以执行.NET代码以充分利用.NET功能。1.4.5 B/S架构B/S架构,即浏览器/服务器架构,是随着web技术发展而兴起的一种网络结构模式。随着互联网技术的成熟,结合浏览器的多种脚本语言,用浏览器代替了原来专门的作为客户端的软件。浏览器是现在最常用来做web客户端的软件,因为这种架构是由传统的C/S架构衍生而来的。这种模式统一客户端为浏览器,可以把开发的精力放在服务器的开发上,简化了系统的开发和维护并大量的降低了成本。2 需求分析2.1 功能需求2.1.1 系统开发思路及设计目标从系统用户的角色分析,本系统主要包括管理员,教师,助教和学生四种登录身份,在未登录情况下的游客身份,系统将不允许浏览除新闻资讯模块之外的其他内容,强制跳转到登录界面,没有该系统的合法账号的用户可以注册成为系统用户。通过合法身份成功登录后将会跳转至该用户的个人主页。不同角色的用户的个人主页包括不同的功能,在整个系统中也有不同的权限。(1) 以教师身份成功登录系统后,在个人中心在课程列表页面,可以查看助教,学生信息,管路学生,助教申请,管理班级,课程信息。在教学资源页面,可以管理课程资源,包括上传,下载,删除,搜索课程资源,修改课程资源的信息和状态,评分,评论教学资源,管理课程资源分类信息等。在在线互动页面,可以提问,回复,置顶提问,收藏提问,删除提问,管理在线互动提问分类。(2) 以助教身份成功登陆系统后,在教学资源页面可以查看教学资源,搜索教学资源,上传教学资源,下载教学资源,评论教学资源,非教学资源打分。在在线互动页面,也已提问,回复,删除,搜索提问,收藏,置顶提问,管理在线互动提问的分类。(3) 以学生身份成功登录本系统后,在教学资源页面,可以查看所有课程资源,按不同分类查看课程资源,上传教学资源,下载教学资源,评论教学资源,非教学资源打分等。在在线页面,可以查看提问,搜索提问,发表提问,回复。(4) 新闻资讯模块是关于慕课教学相关的国内外最新动态和新闻,趣闻轶事及本系统中相关课程的一些信息,如课程名称,开课时间,任课教师,课程简介。该模块不需要用户登录便可以访问,有助于用户提高学习兴趣和对网站的印象,更方便用户掌握课程的最新动态。2.1.2 系统功能分析和用例图用例图是指由参与者,用例以及他们之间的关系构成的用于描述系统功能的静态视图。用例图包括参与者,用例和系统边界。其中用例是对包括变量在内的一组动作的序列描述,用例之间的管理有“包含”,“泛化”和“扩展”三种关系,可以帮助开发者合理有效的获取需求,全面的指导系统测试,还可以很好的指导整个开发过程中的工作流。通过分析本系统的用例图得知,参与者为教师,助教,学生,游客,用例为登录系统,注册用户,增删改查课程资源信息,在线互动等。用例图从参与者这个外部用户的观察角度,来说明系统实现的相关功能,图中通过绘制参与者和一些具体用例来呈现他们之间的关系,简介明了的表现参与者参与的用例以及各个用例之间的关系。下面列出该系统各子功能模块:(1) 教师子功能模块如下: 基本的用户登录功能 审核助教/学生角色用户注册申请子功能 上传/下载/查看课程资源子功能 修改课程资源信息子功能 删除课程资源子功能 管理课程资源评分/评论子功能 审核课程资源子功能 管理课程资源分类子功能 在线互动提问/回答/查看/搜索子功能 添加/删除在线互动提问类型子功能 在线互动删除/置顶/收藏提问子功能 在线互动删除回答子功能 查看新闻资讯模块子功能(2) 助教子功能模块如下: 基本的用户登录功能 上传/下载/查看课程资源子功能 课程资源评分/评论子功能 在线互动提问与回答子功能 在线互动提问/回答/查看/搜索子功能 添加/删除在线互动提问类型子功能 在线互动删除/置顶/收藏提问子功能 在线互动删除回答子功能 修改自己提问子功能 查看新闻资讯模块子功能 (3) 学生子功能模块如下: 基本的用户登录子功能 查看课程资源列表子功能 上传课程资源子功能 下载课程资源子功能 给课程资源打分子功能 给课程资源评论子功能 在线互动提问/回答/查看/搜索子功能 修改自己提问子功能 在线互动收藏问题子功能 查看新闻资讯模块子功能(4) 游客子功能模块如下: 注册系统用户子功能 查看新闻资讯模块子功能系统用例图如图2.1所示:图2.1 慕课教学平台系统用例图2.2 性能需求2.2.1 数据安全需求(1)教师,助教,学生等操作人员访问系统除资讯模块之外的模块,都必须输入正确的用户名和密码,用户名密码匹配,才能成功登录系统。之后根据用户角色不同进入系统中与之对应的界面进行不同权限的操作。(2) 登陆模块使用验证码,防止某一特定用户使用特定程序暴力破解方式进行不断的登陆尝试,用别人都全系对系统资源进行改动。(3) 在学生用户对课程资源打分的模块,通过判断语句限制每个用户的打分次数,避免恶意刷分等现象。2.2.2 数据完整性需求(1)本系统采集数据使用表格方式,限制数据类型及取值范围以保证数据的完整性及准确性。(2)对数据库的插入、更新、删除等操作需要进行事务管理,避免出现不完整的操作,以保证数据库中数据的一致性和完整性。2.2.3 数据高效性需求 (1)在搜索资源的时候,给数据库表加索引,把整表搜索改为B+树搜索,有助于提高搜索速度。 (2)在在线互动提问时,采用推荐系统,对于相似的提问和已经存在的解答给予推荐,避免冗余的信息,有利于数据高效性。2.2.4 可移植性需求可移植性也是衡量软件质量的标准之一,良好的可移植性可以提高软件的生命周期。传统的软件工程关注软件开发和测试,其设计和实现过程往往依赖具体的系统和环境,因而不能适应可移植性的要求,当整体架构发生变化时,软件维护的成本很高。本系统通过适应可移植性程序语言等方式提高系统可移植性。该系统适用于数据信息的修改,增加和删除。同时采用了模块化设计和分层架构设计,使系统在不同的运行环境、客户需求下都能得以应用2.3 系统数据流图数据流图是一种用于表示软件模型的图形表示方法以及结构化模块化系统分析方法的主要表达工具。它以图形的方式,从数据传输过程和数据处理过程的角度,表达系统实现的逻辑功能、数据在系统内部的逻辑流向和逻辑变换过程。在绘制在线学习系统的数据流图过程中,使用到的基本符号有,箭头,表示数据的流动方向;椭圆,表示对数据进行加工处理;方框,表示数据的源点或者汇点。在本文中,数据流图是分层绘制的,即先绘制系统的顶层数据流图,再分别展开个模块,绘制详细的数据流图。这样的分层绘制能更好的自顶向下的进行功能分解和细化的分析。使用顶层(也称第0层)数据流图表示系统的开发范围,以及该系统与周围环境的数据交换关系,确定并标记主要的输入和输出;最底层数据流图代表了那些不可进一步分解的“原子加工”;中间层数据流图是对其上一层父图的细化,其中的每一个加工可以继续细化,中间层次的多少由系统的复杂程度决定。2.3.1 系统顶层数据流图2.3.2 身份验证模块数据流图2.3.3 教学资源模块数据流图2.3.4 在线互动模块数据流图3 概要设计3.1 系统架构设计本系统采用B/S(Browser/Server),即浏览器/服务器模式17。B/S是Web兴起后的一种网络结构模式,Web浏览器是客户端最主要的应用软件。这种模式统一了客户端,将系统功能实现的核心部分集中到服务器上,简化了系统的开发、维护和使用。客户机上只要安装一个浏览器,服务器安装Oracle、Sybase、Informix或 SQL Server等数据库。浏览器通过Web Server 同数据库进行数据交互。B/S最大的优点16就是可以在任何地方进行操作而不用安装任何专门的软件。只要有一台能上网的电脑就能使用,客户端零维护。系统的扩展非常容易。B/S结构的使用越来越多,特别是由需求推动了AJAX技术的发展,它的程序也能在客户端电脑上进行部分处理,从而大大的减轻了服务器的负担;并增加了交互性,能进行局部实时刷新。B/S的优势分析如下:(1) 系统在维护上更简单,在完成系统升级的时候也更方便。随着系统的逐步完善,软件系统需要不断的进行改进和升级。浏览器/服务器架构的产品在升级上的优势不断凸显。对一个较大的单位来说,系统管理人员如果需要在几百甚至上千部电脑之间来回操作,效率和工作量是可想而知的,但B/S架构的软件只需要管理服务器就行了,所有的客户端只是浏览器,根本不需要做任何的维护。无论用户的规模有多大,有多少分支机构都不会增加任何维护升级的工作量,所有的操作只需要针对服务器进行。(2) 降低系统维护成本,在选择服务器操作系统方面,提供更多选择。Windows在桌面电脑上的占有率很高,浏览器是Windows系统下的标准配置。然而在服务器操作系统上Windows的占有率则相对较低。在服务器端使用Linux操作系统很有多优势,比如它是免费的,管理数据库的工具免费而且安全性有更好的保障。因此在服务器端非常受欢迎。B/S架构的应用管理软件服务器端使用Linux操作系统成为一种趋势, 虽然B/S有很多优势,但这种模式使得应用服务器运行数据负荷较重。由于B/S架构管理软件只安装在服务器端上,网络管理人员只需要管理服务器就行了,用户界面主要事务逻辑在服务器端完全通过浏览器实现,极少部分事务逻辑在前端实现,所有的客户端只有浏览器,网络管理人员只需要做硬件维护。但是,应用服务器运行数据负荷较重,一旦发生服务器单点故障等问题,后果可能会非常严重。因此,许多单位都备有数据库存储服务器,以防万一。3.2 系统结构设计 本系统的设计从顶层结构上总体可以分为五个模块:登陆模块,注册模块,教学资源管理模块,在线互动模块,资讯模块。其中登陆模块是对用户身份的校对以便以合适的权限访问系统;注册模块是服务于想要访问该教学平台但是没有合法的账号和密码的用户;教学资源模块主要实现对教学资源的增、删、改、查等操作;在线互动模块主要包括对提问的增、删、改、查、搜索、置顶、收藏等功能;资讯模块采用管理员后台手动灌入数据的方式维护。3.2.1 顶层结构图3.2.2 教学资源管理模块结构图3.2.3 在线互动模块结构图3.2.4 新闻资讯模块结构图3.3 数据库设计3.3.1 系统实体描述(1) 用户实体描述 该系统的用户有老师,学生,助教,管理员。下图描述了该系统所有注册用户的具体属性。用户实体属性图描述如图所示:(2) 教学资源实体描述 教学资源实体描述了该系统教学资源的详细信息。下图描述了该系统所有教学资源的属性。教学资源属性图描述如图所示(3) 教学资源分类实体描述 教学资源分类实体描述了该系统所有的教学资源分类信息。下图描述了该系统所有教学资源分类的属性。教学资源分类属性描述如图所示(4) 教学资源分数实体描述教学资源分数实体描述了该系统所有的教学资源分数信息。下图描述了该系统所有教学资源分数的属性。教学资源分数属性描述如图所示(5) 在线互动提问实体描述在线互动提问实体描述了该系统所有的提问的信息。下图描述了该系统所有提问的属性。在线互动提问属性描述如图所示(6) 在线互动提问分类实体描述在线互动提问分类实体描述了该系统所有的提问分类的信息。下图描述了该系统所有提问分类的属性。在线互动提问分类属性描述如图所示3.3.2 E-R图实体-联系图(Entity Relationship Diagram)也就是E-R图,提供了用来阐述现实世界事物概念模型的方法,该方法通过实体型、属性和联系来描述这些概念模型。E-R方法:是“实体-联系方法”(Entity-Relationship Approach)的简称。它是一种描述现实世界概念结构模型的有效方法。E-R图的基本构成要素有:实体型、属性和联系,其表示方法为:(1) 实体型(Entity):E-R图中用矩形框加上框内对实体名的文字描述表示。将具有相同属性特征特质的实体性抽象概括出来,形成统一的实体名及其属。(2) 属性(Attribute):实体所具有的某一特性,一个实体可由若干个属性来刻画。(3) 联系(Relationship):联系也称关系,信息世界中反映实体内部或实体和实体之间的联系。实体内部的联系通常是指组成实体的各属性之间的联系;实体之间的联系通常是指不同实体集之间的联系。在E-R图中用菱形表示,菱形框内写明联系名,并用无向边分别与有关实体连接起来,同时在无向边旁标上联系的类型(1:1,1:n或m:n)。3.3.3 数据库表(1) 用户信息表字段名字段解释字段类型是否空uid主键intNrole角色varchar(50)Nname姓名varchar(50)NID学号或职工号varchar(50)Ngender性别varchar(50)Ninfo个人简介textNclass所在班级varchar(50)Ypasswd密码varchar(50)Nemail电子邮件varchar(100)Nimagsrc头像图片URLvarchar(200)Ydegree学历varchar(50)Ytitles职称varchar(50)Yresearch研究方向varchar(200)Ycontent详细介绍textY(2)教学资源表字段名字段解释字段类型是否空resourceid主键intNresourceTitle资源名称varchar(50)NresourceType资源分类varchar(50)YresourceDescription资源描述varchar(50)YresourceUploaderid上传资源者IDintYresourceUloadtime 资源上传时间textYresourceDownloadedtimes 资源下载次数intNresourceLocation资源位置varchar(50)YresourceSize资源大小intYresourceAvgScore资源平均得分intYresourceTags资源标签varchar(50)Y resourceFileType资源文件类型varchar(50)Y(3)教学资源分类表字段名字段解释字段类型是否空resourceTypeid主键intNresourceTypeName资源分类名称varchar(50)Y(4)教学资源评分表字段名字段解释字段类型是否空resourceScoreId主键intNresourceId被评分的资源intNresourceScorerId评分者intNresourceScoreNum资源分数intY(5)在线互动提问表字段名字段解释字段类型是否空QuestionId_code主键varchar(50)NUserId提问的用户intYTitle 提问标题Nvarchar(max)YCatalogId提问类型varchar(50)YQuestionDatetime提问的时间datetimeYNewAnswerDatetime最新回复时间datetimeYIs_top是否置顶intY Text提问内容Nvarchar(max)YFloor回复的总楼层intYIs_Same是否有相似intYNewAnswer_UserId最新回复用户idintYIs_NewsintYClickNumber点击次数intYIsSamed_Q_Idvarchar(50)Y(6)在线互动提问分类表字段名字段解释字段类型是否空CatalogId_code主键intNName分类创建者varchar(50)YQuestionNumber 提问个数intYAnswerNumber回复个数intYLastQuestion_User_Id最后提问者intYLastQuestion_Datetiem最后提问时间DatetimeY4 详细设计3.1 身份验证模块设计3.1.1 功能描述该系统需要用户登录才可以使用。如果用户没有登陆,只可以访问“资讯”模块,访问其他模块都会自动跳转到登陆界面。在登陆界面输入自己的账号和密码,点击“登陆”,进入个人中心。如果没有该系统的账号,点击“注册”按钮,进入注册界面,填写注册信息,征求同意后,便可以使用该账号登陆到系统。不同的用户身份,登陆后进入的界面不一样,注册时征求同意的对象不一样。3.1.2 界面设计图3.1 登陆界面设计图3.2 注册界面设计3.1.3 逻辑描述(1)用户点击页面时的跳转情况:伪代码:IF 用户点击“资讯”THEN跳入“资讯”模块ELSE IF 用户点击“注册”THEN跳入注册页面ELESIF 用户没有登陆 THEN跳入登陆页面IF 用户输入正确的账号/密码THEN跳入到“个人中心”ELSE账号或密码错误END IF ELSE跳入要访问的页面END IFEND IF(3)当用户注册系统用户时,不同的角色的不同逻辑:IF 角色是学生/助教THEN IF 注册邮箱,ID没有被使用过THEN注册成功,向老师发邮件,请求同意ELSE重新填入注册邮箱/IDEND IFELSEIF 注册邮箱,ID没有被使用过THEN注册成功,向系统管理员发邮件,请求同意ELSE重新填入注册邮箱/ID END IFEND IF3.2 资源管理模块设计3.2.1 功能描述该模块主要实现对资源的增、删、改、查以及对资源分类的管理。当用户登录该系统时,可以查看系统的全部资源和资源分类,同时,可以上传,下载教学资源。对于使用过的教学资源,可以评分和评论。当用户以教师的身份登录该系统时,还可以对教学资源的分类进行管理,评论管理,审核学生/助教上传的资源,处理过期资源。 3.2.2 界面设计3.2.3 逻辑描述3.3 在线互动模块设计3.3.1 功能描述 该模块主要实现用户在线互动功能,包括对提问的增、删、改、查、查看、收藏、回复等功能。当以教师/助教身份登录,还可以管理提问分类,同时可以对不合理的提问进行删除,对好的提问置顶。此外,该模块设计推荐功能,当用户的提问和系统中的提问相似,提示用户有相似的提问并可以查看提问和回复看是否还要继续提问。3.3.2 界面设计3.3.3 逻辑描述3.4 资讯模块设计3.4.1 功能描述该模块主要包含与MOOC相关的新闻以及该系统的课程的一些信息。该模块不用登陆便可访问,新闻信息由管理员手动灌入。一些课程的开课通告由数据库读入。这样可以让每一个访问该系统的人都能看到课程的相关信息,加大用户群体。3.4.2 界面设计5 系统实现5.1 系统登录的实现每一个访问系统的用户都需要登录,登陆要求用户有一个该系统合法的账号的密码。为了防止不法用户的暴力破解,需要输入正确的验证码,完成验证,便可以成功登陆该系统。验证码由产生随机数的函数实现,账号和密码的验证通过查询数据库user表是否有匹配元组。核心代码如下:生成验证码:账号密码匹配:5.2 搜索资源的实现5.3 上传资源的实现5.4 下载资源的实现5.5 资源评分的实现5.6 资源评论的实现5.7 提问相似推荐的实现6 系统测试 系统测试是针对整个产品结合已确认的软件,网络,硬件等元素,进行系统的组装测试和确认测试,是为了验证开发的系统是否满足产品最初的功能需求和性能需求。同时,找出与需求不符合的地方,从而不断的完善系统。本部分是对系统的一些功能进行测试,包括登陆,注册,上传教学资源,下载教学资源,删除教学资源,对教学资源评论和评分,以及在线互动模块的相似提问推荐。6.1 系统登录/注册的测试该系统的用户在“E-mail”,“密码”,“验证码”对应的文本框中输入正确的信息,点击登陆按钮,便可以进入个人主页;没有本系统合法账号的用户点击“注册”按钮,可以跳转到注册页面,填写个人信息,点击“注册”,审核后便可以拥有该系统的账号。通过以下几个测试用例来完成登陆/注册子模块的测试。(1) 测试点击“登陆”的时候没有输入验证码或者验证码输入不正确不能成功登陆。测试结果见表6.1,表6.2,测试结果见图6.1,图6.2。测试结果与预期结果一致。表6.1 测试用例1测试用例ID1目的不填写验证码不能登陆前提登陆模块正常运行输入正确的账号,密码,无验证码预期结果输出“请填写验证码”图6.1 测试用例1结果表6.2 测试用例2测试用例ID2目的填写错误的验证码不能完成登陆前提登陆模块正常运行输入正确的账号,密码,错误的验证码预期结果输出“验证码不正确”图6.2 测试用例2结果(2) 测试填写正确的注册信息后,如果用户的角色是学生或者助教,老师可以收到信息审核通知;如果注册的角色是老师,系统管理员可以收到信息审核通知。表6.3 测试用例3测试用例ID3目的助教填写正确的注册信息,教师能收到审核通知前提登陆模块正常运行输入正确的注册信息预期结果教师收到注册审核通知图6.3 测试用例3结果6.2 上传资源的测试上传的资源需要有标题,标签并且文件大小不能超过100M。学生上传资源老师可以收到资源审核通知。通过以下测试用例来完成上传资源的测试。(1)测试上传的资源部添加标签,是否能成功上传。测试用例见表6.4,测试结果见图。测试结果与预期结果一致。表6.4 测试用例4测试用例ID9目的不添加标签无法上传教学资源前提教学资源模块正常运行输入点击“打分”按钮;填写评论并提交预期结果 输出“请输入标签”图6.4 测试用例4结果6.3 下载资源的测试服务器上的教学资源用户可以正常下载。通过以下测试用例完成下载教学资源的测试。(1) 测试用户是否能够正常下载系统教学资源。测试用例见表6.5,测试结果见图。测试结果与预期结果一致。表6.5 测试用例5测试用例ID5目的测试用户能够正常下载教学资源前提教学资源模块正常运行输入用户点击“下载”按钮预期结果被选中的资源成功被下载图6.5 测试用例5结果6.4 删除资源的测试只有教师才有权限删除系统的教学资源,学生和助教是没有权限删除的。通过下面测试用例完成删除系统教学资源的测试。(1) 测试教师能否成功删除系统的教学资源。测试用例见表6.6,测试结果见图。测试结果与预期结果一致。表6.6 测试用例6测试用例ID6目的教师能成功删除系统的教学资源前提教学资源模块正常运行输入教师点击“删除资源”按钮预期结果教学资源被删除资源图6.6 测试用例6结果6.5 评分和评论的测试在使用教学资源之后才能对该教学资源进行评论或者评分。通过以下两个测试用例来验证是否能正常对教学资源评论或者评分:(1) 测试没有使用该教学资源,对该教学资源评论或者评分。测试用例见表6.7,测试结果见图。测试结果与预期结果一致。表6.7 测试用例7测试用例ID7目的没有使用的教学资源能否被评论/评分前提教学资源模块正常运行输入点击“打分”按钮;填写评论并提交预期结果输入“资源未使用”图6.7 测试用例7结果(2) 测试使用该教学资源之后,对该教学资源评论或者评分。测试用例见表6.8,测试结果见图。测试结果与预期结果一致。表6.8 测试用例8测试用

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论