EKA教学平台参赛作品说明书毕业论文.doc_第1页
EKA教学平台参赛作品说明书毕业论文.doc_第2页
EKA教学平台参赛作品说明书毕业论文.doc_第3页
EKA教学平台参赛作品说明书毕业论文.doc_第4页
EKA教学平台参赛作品说明书毕业论文.doc_第5页
已阅读5页,还剩43页未读 继续免费阅读

下载本文档

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

文档简介

EKA教学平台参赛作品说明书课题名称: EKA教学平台 完成时间: 2015年5月 摘 要对于目前的学校公选课管理网站,尤其是选课学生比较多的课程,由于这些课程本身的管理网站设计不合理,不仅不能让选课的学生及时地了解课程通知、课程教学日历、课程资源下载等课程信息;而且给授课老师管理课程带来很多不便,如:授课老师不能清楚地了解学生的学习情况,而且目前的课程管理网站没有好的交作业及命名平台,每次老师只能在邮箱里一个个地下载作业,花费很多时间精力;并且几乎每门课都要开发一个系统来管理课程教学,这样不仅浪费了高校师生的时间,且浪费了高校的财力。为了解决以上这些问题,本设计采用主流的开发构架MVC,选用apache作为服务器、ThinkPHP+MySql作为开发工具,采用RBAC独立权限管理机制,将课程管理权限限制到所属课程上。最终实现一个系统理论上可创建无数门课程,不仅用于网络公选课,同时扩展到也可用于专业课程教学,每门课程对本课程具有独立的管理权限,不会与其他课程发生交叉管理的现象。在后台系统超级管理员有独有的权限进行课程管理、授课教师管理等,开设课程的老师可进行学生作业、学生成绩等管理,一位老师可在此系统开设多门课程并且可将教学日历、课程通知等信息在不同课程中共享。选了本教学平台的学生都有一个需要登录的个人页面,此页面学生进行签到、交作业、留言互动,老师对学生的短消息发布。从而实现老师更好地共享知识,学生轻松学习。关键词:网络课程;教学平台;ThinkPhp;MySql;RBAC;memcacheAbstractFor the current school of public elective administer the site, especially the students more elective courses, these courses due to their own management website design is unreasonable, not only can not make elective courses for students in a timely manner to understand informed teaching calendar, curriculum resources and other courses information; and management courses to teach the teachers bring a lot of inconvenience, Such as: the teacher can not teach students a clear understanding of the situation, and the current site is not a good course management platform homework and naming each teacher can only download one job in the mail, it takes a lot of time and effort. And almost every course should develop a system to manage the teaching, university teachers and students not only a waste of time and a waste of money and Universities. To solve these problems, the design uses mainstream development framework MVC, chosen as the apache server, ThinkPHP + MySql as a development tool, using RBAC independent rights management mechanisms to limit administrative rights to the respective curriculum courses; choose memcache cache performance on the site technology to improve performance.And ultimately create a system that can theoretically numerous courses, not only for the network of public elective, but extended to also be used for teaching courses, each course has a separate administrative rights on this course, will not cross the phenomenon of management and other courses . In the background, the system administrator has unique permissions super curriculum management, instructors and management, courses student teachers can work, student achievement management, a teacher can offer many courses in the system and can be the Academic Calendar information, course notification shared between courses. After chosing this teaching Platform student has a personal need to login page that students attendance, homework, message interaction, the teachers for their short message. Enabling teachers to better share knowledge, students easily learn.Keywords: social networking sites; interaction; share; mobile devices目录摘 要IAbstractII目录III第1章 绪 论11.1 课题背景11.2 目的和意义21.3 开发环境简介21.3.1 phpStorm简介31.3.2 apache简介31.3.3 MySQL简介41.4系统运行要求41.4.1 硬件要求41.4.2 软件要求4第 2 章 可行性分析和相关安全技术52.1 教学可行性52.2 操作可行性和经济可行性52.2.1 操作可行性52.2.2 经济可行性52.3权限控制介绍访问安全62.3.1 访问控制策略62.3.2基于角色的访问控制概述82.3.3基于角色的访问控制特点9第 3 章 需求分析103.1 需求分析方法103.2 网络教学平台功能需求分析103.3 网络教学平台系统基本功能113.4 使用UML对需求进行建模分析123.4.1 系统、教师管理员用例图分析如下:12第 4 章 总体设计154.1系统中项目文件组织结构154.2 数据库设计164.2.1数据库选择和编码164.2.2 数据库概念设计ER图164.2.3 主要的数据字典174.3系统主要功能设计214.3.1 课程管理关系图21 4.4 教学平台数据库设计224.5 多课程前台独立浏览设计234.6 学生个人界面设计24第 5 章 教学平台开发与实现255.1 课程管理模块实现255.1.1 课程创建实现255.1.2 课程更改实现265.2 教师管理模块的实现265.3 学生管理模块的实现275.3.1 学生管理的实现275.4 作业管理模块的实现275.4.1 作业管理的实现275.4.4 作业类型管理的实现285.5 学生成绩统计模块实现285.5.1 详细成绩列表的实现285.5.2 总成绩统计的实现295.6 角色权限分配管理模型的实现295.6.1角色管理工作流的设计295.6.2角色权限分配工作流的设计305.7 教学平台前台首页315.7.1皮肤的红色风格315.7.2皮肤的蓝色风格325.8学生个人界面的实现32第 6 章 系统测试336.1 硬件配置与测试方法336.1.1 硬件配置表336.1.2 测试方法346.2 测试执行情况356.3 测试结论366.3.1 软件能力366.3.2 缺陷和限制36第7章 全文总结与展望377.1 本文总结377.2系统改进方向37参考文献38致 谢3943第1章 绪 论1.1 课题背景目前的大学中的课程,是以专业课为主,但为了拓展学生的知识面,大学也开设了不少公选课程,学生以兴趣为主选择自己喜欢的课程;公选课程按照上课形式一般分为两种,一种是在课室里面老师进行授课,另一种是网上授课,在教室授课只要有老师和设备完整的课室就可以了,而网络课程是在网上授课的,不需要有课室,但是要有一个网上的教学平台,也叫教学网站,课程相关的事宜都在这个网站上完成。但是目前高校的公选课管理网站,尤其是选课学生比较多的课程,由于这些课程本身的管理网站设计不合理,不仅不能让选课的学生及时地了解课程通知、课程教学日历、课程资源下载等课程信息;而且给授课老师管理课程带来很多不便,如:授课老师不能清楚地了解学生的签到情况,还有就是老师发布的作业,很多时候学生并不知道,最重要的是目前的课程管理网站没有好的交作业及命名平台,当老师每次检查选课学生的作业时,都要到邮箱那里下载,这样子既浪费时间,也要花很大的精力去检查和批改。而且目前的高校使用的网络课程教学平台管理系统,每个后台系统只能创建管理一门课程,且每门课程只能静态地设计这门课程的教学日历情况,如开课的时候只能从一开始就设定了这门课成的作业次数,且学生交的作业只能集中在一个已申请好的邮箱,不仅会让老师检查作业时感觉特别的混乱,而且交的作业有时候命名不规范,就会出现有些作业不知道是那个学生交的,这时候老师又要跟所有学生核对,这样就不符合我们网络课程教学平台的设计思想了;不仅公选课程需要一个好的网络教学平台,目前有不少专业课程也需要一个好的网络教学平台,所以为了解决网络课程管理网站出现的以上问题,本设计将会讨论出解决方法,并全面实现需要的功能,给高校师生一个满意的知识分享和轻松学习的平台。1.2 目的和意义鉴于目前网络教学平台的不足,本设计着重完善不足的地方,并新增了不少的功能,如新增了学生的个人页面、一个后台系统理论上可创建无数门课等。让选课的学生很明白要做什么作业,需要的学习资源很容易在教学网站上找到下载,教学网站上也增加了课外测试题模块,拓展了学生的课外知识面,而且学生在首页采用系统设定的帐号和密码登录到个人主页里面,就可以进行签到、交作业、查看已交作业和个人信息、留言、查看老师发布的短消息;系统的这些设置让学生更有效率地学习和完成作业。教学网站后台的设计,老师可以动态分配作业次数,每门课程都是独立管理的,更改前台导航栏排序,网站后台的学生作业管理模块、学生成绩统计模块更是方便了老师对本课程的操作,随意搜索查看学生交作业情况、批量下载学生作业,不用去邮箱一个一个地的下载,节省了很多时间;在成绩统计模块,系统会按照学生的签到情况和交作业情况进行初步成绩的统计,期末时老师再按照学生平时的表现和各作业成绩来给出最终成就就可以了,节省了很多精力;在学生管理模块里,老师查询学生的基本信息、查看学生签到次数和交作业次数,还可回复学生的留言,发布群短消息或个人短消息,这让老师和学生能很好地进行学习等的互动。教学网站后台的管理员理论上可创建无数门课程,且每门课程独立管理,这就节省了很多重新开发教学网站的成本。在当今网络普遍流行的时代,网络课程教学平台符合当代网上教学的需求、符合高校师生的需求。1.3 开发环境简介本系统在WINDOWS XP sp3下,使用的IDE为phpStorm6.0.2,服务器选用Apache2.2.21,数据库为MySQL-5.5.20。1.3.1 phpStorm简介phpStorm 是 JetBrains 公司开发的一款商业的 PHP 集成开发工具。phpStorm可随时帮助用户对其编码进行调整,运行单元测试或者提供可视化debug功能。PhpStorm是一款强大的IDE,非常适合于PHP开发人员及前端工程师。提供诸于:智能HTML/CSS/JavaScript/PHP编辑、代码质量分析、版本控制集成(SVN、GIT)、调试和测试等功能。相对于其他PHP集成开发工具:phpStorm具有以下优点:1) 跨平台。2) 对PHP支持refactor功能。3) 自动生成phpdoc的注释,非常方便进行大型编程。4) 内置支持Zencode。5) 生成类的继承关系图,如果有一个类,多次继承之后,可以通过这个功能查看他所有的父级关系。6) 支持代码重构,方便修改代码。7) 拥有本地历史记录功能(local history功能)。8) 方便的部署,可以直接将代码直接upload到服务器。1.3.2 apache简介Apache HTTP Server(简称Apache)是Apache软件基金会的一个开放源码的网页服务器,可以在大多数计算机操作系统中运行,由于其多平台和安全性被广泛使用,是最流行的Web服务器端软件之一。Apache HTTP Server是世界使用排名第一的Web服务器软件。它可以运行在几乎所有广泛使用的计算机平台上。Apache源于NCSAhttpd服务器,经过多次修改,成为世界上最流行的Web服务器软件之一。因为它是自由软件,所以不断有人来为它开发新的功能、新的特性、修改原来的缺陷。Apache的特点是简单、速度快、性能稳定,并可做代理服务器来使用。1.3.3 MySQL简介MySQL是一个关系型数据库管理系统,由瑞典MySQL AB公司开发,目前属于Oracle公司。MySQL是一个快速的、多线程、多用户和健壮的SQL数据库服务器。MySQL服务器支持关键任务、重负载生产系统的使用,也可以将它嵌入到一个大配置(mass-deployed)的软件中去。MySQL是一个数据库管理系统,一个数据库是一个结构化的数据集合。MySQL是最流行的关系型数据库管理系统,在WEB应用方面MySQL是最好的RDBMS(Relational Database Management System:关系数据库管理系统)应用软件之一。MySQL是一种关联数据库管理系统,关联数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性。MySQL所使用的SQL语言是用于访问数据库的最常用标准化语言。MySQL由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,一般中小型网站的开发都选择MySQL作为网站数据库。1.4系统运行要求1.4.1 硬件要求CPU和硬盘空间:速度在500MHz或以上。CPU的处理速度越快,代码跑起来也越流畅;至少需要200MB以上的硬盘空间。内存:最低配置32MB,建议使用64MB以上内存,如果使用Windows 2000或Windows XP建议使用128MB以上内存。1.4.2 软件要求操作系统:Microsoft Windows XP或以上。服务器要求:apache2.2.21或以上。数据库名称:MySQL 5.0以上。第 2 章 可行性分析和相关安全技术2.1 教学可行性在现在网络普遍流行的年代,此网络课程教学平台符合各高校的教学需求。网络课程并不像平时的课程,要在规定的时间去相对固定的地点上课,网络课程只要学生在一个时间段内进入系统,进行签到、下载相关的资源学校、提交作业就可以、有问题可以电话联系老师或在系统留言给老师,这种教学方式灵活,能让学生轻松学习。而此网络课程教学平台在现有的教学网站基础上,进行了完善,增加了学生有个人主页,学生在主页里进行方便的签到、交作业等,学生提交的作业命名不作规范,因为系统进行了统一的命名,方便系统后台的查询统计;同时系统后台增加了学生作业的动态分配功能、学生成绩的详细统计和总成绩统计。本系统在教学上实现了以前没有的实用功能,所以从教学方面上看,开发此系统是可行的。2.2 操作可行性和经济可行性2.2.1 操作可行性此网络课程教学平台具备清新友好的用户界面,操作简单,使用方便、快捷,功能丰富,易于维护。无论是之前用过相关网络教学平台的学生,或者还是电脑新手,进入了此教学网站,都可以很快熟悉该网站;老师在后台也可很快熟悉操作流程。从用户操作方面看,此系统的开发是可行的。2.2.2 经济可行性开发此网络课程教学平台的所需的硬件(计算机及其他)由本人提供。软件环境phpStorm开发工具和apache和MySql可以从网上下载。本系统的开发、维护由本人负责,因此没有其他方面的支付,开发成本主要是时间和设计图纸。系统完成后可作为公选课和专业课的网络课程教学网站。系统经过优化,后台管理员可创建多门课,也可以一个老师在此平台上授多门课,这样就节省了其他很多课程网络教学平台开发的成本,所以从经济方面上看,开发此系统是可行的。2.3权限控制介绍访问安全2.3.1 访问控制策略访问控制就是通过某种途径显式地准许或限制用户访问系统的某个资源或者执行特定操作。访问控制的目的是保证系统不被非法使用,维持服务的健康运行。到目前为止,访问控制的策略主要三种,它们分别是自主访问控制 DAC(DiscretionaryAccess Control)、强制访问控制 MAC(MandatoryAccess Control)和基于角色的访问控制 RBAC(Role-BasedAccess Control)。在自主访问控制策略中,通过判断用户的身份及相关权限来决定其可以访问什么操作。自主访问控制的主要特征是:有访问权限的主体可以把自己所拥有的访问权限授予其它主体,同时,也允许主体从其它主体收回所授予的权限。自主访问控制通常使用的安全机制是访问控制列表,它是一个表示访问权限的矩阵。系统的管理员通过配置 ACL 达到控制用户访问企业数据的目的。对每一个受保护的资源,访问控制列表可以规定每一用户或组相应的访问模式。访问控制列表的灵活性高,在工程界被大量采用。Linux 2.6 中,acl 就是标准内核的一部分了。然而,这种灵活性必然带来庞大的数据量,造成系统性能降低。强制访问控制的主要原则是:判断主体和客体安全级是否匹配,进而确定该次访问是否被允许。在自主访问控制的基础上,强制访问控制增加了对资源的安全属性划分,规定不同属性下相应的访问权限。一般地,可以将安全属性分为四个级别:无密,机密,秘密,绝密。每一主体和客体都被系统分配特定的安全属性,同时这一属性一般不能更改。系统判断某次访问是否被允许,就是通过比较主体和客体的安全属性来完成的。用户的程序不能改变他自己这个主体及任何被访问客体的安全属性。强制访问控制还可以防止通过文件方式进行信息泄漏,这主要是因为它能阻止某个进程共享文件,并且能阻止通过一个共享文件向其它进程传递信息。强制访问控制一般规定了如表 2-1 的四种策略,这些策略均保证了信息流的单向性,并分别提供了数据的机密性,完整性。表 2-1 强制访问控制策略策略名主客体关系操作类型目标下读用户级别大于文件级别读信息的机密性上写用户级别低于文件级别写信息的机密性下写用户级别大于文件级别写数据的完整性上读用户级别低于文件级别读数据的完整性强制访问控制的优点在于它能提供很高的安全性措施,但凡事总有两面性,过高的安全措施限制了用户的普通访问,同时安全性规则过于复杂,权限控制系统也很难实现。基于角色的访问控制基本思想是在用户和待访问的资源之间,添加一个角色概念,用户具备一个或多个角色,角色具备确定的权限集合。用户和权限间的映射是通过两步完成的,首先将角色赋予用户,然后将权限赋给角色。用户具备了某个角色,就具备了这个角色拥有的所有权限。举个例子,列车上有列车长,驾驶员,列车员等多种角色,每一角色具备的权限集合都不同。张三能驾驶火车,并不仅仅因为他是张三,而是因为他被赋予了驾驶员的角色,而驾驶员具备驾驶火车的权限。用户和角色间,角色与客体间均是多对多的关系。应用系统为完成各种任务的需要而设置了不同的角色,并根据用户在系统中的职权和责任来设定其拥有的角色。由于在应用系统中角色的逻辑意义非常明显和直接,因此基于角色的访问控制非常适用于部署在应用系统中的安全模型。基于角色的访问控制具备如下优点:1.便于授权管理。其它的访问控制实现方法均将用户与访问权限直接联系。如果组织内人员变动,或者某个用户的职能发生变化时,势必要进行大量的授权更改操作。在基于角色的访问控制中,用户和资源之间添加了一个中间概念-角色。对用户的直接授权转变为:先对角色授权,然后再把用户与角色联系起来。RBAC系统运行时,主要的管理工作即为对角色授予权限,对用户授予角色。2.便于目标分级。权限控制系统比较抽象,同时与企业通常的业务管理相类似。这种机制使管理员从访问控制底层的具体实现机制中摆脱出来,与通常的组织管理规则非常接近。3.便于赋于最小特权。用户所拥有的权力不能超过他执行工作时所必需的权限。在基于角色的访问控制中,可以根据系统的不同操作,用户的分类等设计拥有不同权限的角色。当用户欲访问某资源时,如果该操作不在用户当前活跃角色的权限集合内,该访问将被拒绝。4.便于职责分离。对于特定的操作集,某一个角色或用户不可能同时独立地完成所有这些操作。职责分离可以有静态和动态两种实现方式。静态职责分离是指只有当某个角色与用户所属的角色彼此不互斥时,该角色才能授权给该用户。动态职责分离是指只有当一个角色与当前主体的任何一个活跃角色都不互斥时,该角色才能成为该主体的另一个活跃角色。基于上述比较,通用权限控制框架在设计时,选用基于角色的访问控制模型作为核心架构。使用本框架的权限控制系统,在授权管理,目标分级,最小特权赋值,职责分离等方面,将具有良好表现。2.3.2基于角色的访问控制概述基于角色的访问控制(Role-BasedAccess Control)的基本思想是:根据用户的身份和职权,分配相应的角色,该角色是一系列权限的集合。用户持有某个角色,就具备了该角色中的所有权限。在 RBAC 模型中,为用户赋予角色,为角色赋予权限是安全控制策略的核心。RBAC 原理非常接近于现实情况,因而容易理解。它不同于以往简单的USER-RESOURCE 模型,它增加了 ROLE 概念,变成了 USER-ROLE-RESOURCE模型(如图 2-1)。RBAC 模型既赋予了安全系统更多的灵活度,也简化了系统的安全管理,因而是目前最流行的权限控制策略。需要特别说明的是,RBAC 中的角色和操作系统中常见的组概念虽然相似,但却是有着根本区别的。主要在于:组是同类用户的集合;而角色主要是权限的集合。在 RBAC 模型中,角色充当用户和权限的中间桥梁2.3.3基于角色的访问控制特点1.以角色作为访问控制的主体。用户能访问到什么样的资源,取决于用户具备什么样的角色,和这些角色具备什么样的权限,而权限就代表了系统中的某种资源或对资源的某种操作。2.角色继承。为了避免相同权限的重复设置,RBAC 采纳了“角色继承”的概念。在进行角色定义时,允许定义这样的角色,它们有自己独有的权限集合,但可能还继承其他角色的权限集合。例如,在大学里,存在学生,研究生这样两个角色,显然,研究生可以继承学生的所有权限,同时,研究生也有专用的权限,这些权限不属于学生角色。角色继承以一种自然的方式,反映出应用系统中用户间的职权责任关系。通过继承,系统中的各种角色被组织起来,在为角色定义权限集合时,可以避免大量重复劳动。3.最小权限原则。如前所述,RBAC 的这个特点能保证系统中的权限不被错误分配,能够避免用户访问到本不属于他的权限。4.职责分离。如前所述,RBAC 的职责分离特点能保证应用系统中,各角色职责清晰,通过这种方式,应用系统才能稳定高效运行。5.角色容量(基数)。在创建新的角色时,要指定角色的容量。在一个特定的时间段内,有一些角色只能由一定人数的用户占用。第 3 章 需求分析3.1 需求分析方法在需求分析过程中,采用了结构化(Structured Analysis, SA)和面向对象(Object Oriented, OO)的分析方法,采用统一建模语言(UML,Unified Modeling Language)为描述语言,采用Visio作为建模工具。3.2 网络教学平台功能需求分析教学平台在功能上应该满足以下需求:1) 用户是学生和授课老师,所以在开发的过程中,我们必须从用户的需求和体验出发,保证系统的功能满足大多数用户的需求,给用户提供教学与学习上的方便和足够的交互体验。2) 操作简单、界面友好。布局设计符合大众审美要求,各功能模块显而易见,用户可通过鼠标实现功能模块间的切换。3) 一个学生轻松的学习平台:学生能及时知道有新通知和新的资源下载,提供了课外测试题巩固学生所学知识,学生登录到个人界面方便地查看要做的作业,同时方便地提交作业,有问题时可留言给老师等。个人界面登录的需要保护了系统的安全。 4) 一个老师方便的授课平台:系统后台提供全面的管理功能,包括logo导航管理、学生管理、学生作业管理、学生成绩统计、教学日历管理等。授课老师可以处理学生的留言、给个人或群发布短消息,动态分配作业,查看学生交作业情况,可批量下载作业等。系统提供学生期末成绩统计功能,减少老师的整理成绩工作量等。5) 系统应提供后台管理员创建多门课程,创建的每门课程能独立管理的功能,老师能同时管理自己开设的课程。6) 系统应该快速、稳定、高效、可靠。7) 系统在结构上应该尽可能保持好的扩展性,便于将来升级和维护。3.3 网络教学平台系统基本功能 在对多名学生和老师进行需求调研后,提取出网络课程管理系统要实现的基本功能如下:1. 本系统 授课教师(管理自己所授予的课程)主要菜单栏功能有:Logo管理:添加各课程logo,修改课程logo,删除课程的logo。导航管理:管理课程网站导航,可给新课程导入已有类似课程导航。选课学生管理:批量导入学生,更改学生信息,学生留言管理,发布短消息。学生作业管理:查看学生提交的作业,作业类型操作,动态分配作业。学生成绩统计:学生详细成绩列表,学生总成绩统计。教学信息:课程教学信息的查看、添加、更改、删除。教学日历:课程教学日历的查看、添加、更改、删除。课程通知:课程公告通知的查看、添加、更改、删除。资源下载:课程资源的上传、更改、删除。实验大纲:课程实验大纲的查看、添加、更改、删除。优秀作品:学生优秀作品的上传、更改、删除。课外测试题:课程测试题的上传、更改、删除。新闻动态:课程相关的新闻添加、更改、删除。联系方式:授课老师联系方式的地址的添加、更改、删除。友情链接:添加课程友情链接,修改课程友情链接,删除课程友情链接。显示前台:显示网站前台首页。2. 本系统 超级管理员主要菜单栏功能有:除了以上教师管理员有的菜单栏功能外,超级管理员还有以下功能:课程管理:创建课程,更改课程信息,删除课程。授课教师管理:添加教师信心,更改教师信息,删除教师。E-嘉工作室:eka工作室信息的添加、更改、删除。用户管理:管理教师管理员,管理课程注册教师,修改个人信息。节点管理:系统模块方法的管理,用于角色分配使用。角色管理:管理授课教师角色,授予角色权限。3.4 使用UML对需求进行建模分析系统建模的目的就是通过某种工具对某事物进行描述,因此为了很好的描述该信息系统,让开发人员与业务人员进行沟通,我们采用Microsoft OfficeVisio作为建模工具来描述该系统。统一建模语言(UML)是一个通用的可视化建模语言,用于对软件进行描述、可视化处理、构造和建立软件系统制品的文档。它记录了对必须构造的系统的决定和理解,可用于对系统的理解、设计、浏览、配置、维护和信息控制。UML适用于各种软件开发方法、软件生命周期的各个阶段、各种应用领域以及各种开发工具,UML是一种总结了以往建模技术的经验并吸收当今优秀成果的标准建模方法。3.4.1 系统、教师管理员用例图分析如下:图3.5.1管理员用例图3.5 系统功能框架该网络课程管理系统采用多级开发模式,我们以第一期开发的子系统为例,它包括我的logo管理、导航管理、学生管理、作业管理、成绩统计、教学信息、教学日历、课程通知、资源下载、实验大纲、优秀作品、课外测试题、新闻动态、联系方式、友情链接。 系统的功能模块划分如下:图3-6 系统功能框架图第 4 章 总体设计网络教学平台的设计是一个复杂的过程,它需要考虑许多因素。首先,教师授课的需要对系统的需求是多变的,这种多变源自不同教师的教学风格不同,因此系统应具有良好的可重用性和可扩展性。其次,系统必须能方便地与大学课程内原有的应用需求集成,才能全面、有效地管理课程授课过程,而不造成新的教学麻烦和资料丢弃。另一方面,为了能适应开设课程数目的不断增加,系统在新课程的创建和维护必须快速、方便、低成本地进行,提供便捷的新网络课程开设和管理。4.1系统中项目文件组织结构文件及窗体文件及窗体名Public公共文件夹 CssCss存放文件夹 Images图片存放文件夹 JsJs存放文件夹 Uploads存放上传文件 Admin/index后台/前台项目文件夹 Common通用方法文件夹 Conf存储项目组配置文件 Lang项目语言存放文件夹Lib存放控制文件 Action控制方法类 Model数据库模型类 ORG框架内置方法类 TagLib标签库类Runtime缓存存放文件夹 Tpl模板存放文件夹 ThinkPHP框架文件存放文件夹 admin.php后台入口文件 Index.php前台入口文件 Config.inc.php项目配置文件 4.2 数据库设计4.2.1数据库选择和编码系统使用MySQL数据库,MySQL是一个快速的、多线程、多用户和健壮的SQL数据库服务器。MySQL由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,一般中小型网站的开发都选择MySQL作为网站数据库。为避免显示中文时显示乱码,数据库采用UTF-8编码格式,UTF-8是UNICODE的一种变长字符编码又称万国码,现在已经标准化为RFC 3629。4.2.2 数据库概念设计ER图本系统的数据库概念设计ER图如下所示:数据库概念设计ER图4.2.3 主要的数据字典表4-1 节点角色权限表(gxk_access)字段名称类型空默认注释role_idint(6)否角色idnode_idint(6)否节点idtitlevarchar (50)否标题leveltinyint(1)否等级modulevarchar(50)是NULL模块、组件pidsmallint(6)否父id表4-2 创建的课程表表(gxk_course)字段名称类型空默认注释idint(6)否主键idc_idint(6)否外键(课程)coursevarchar(32)否课程名gxkvarchar (100)否网站域名yearvarchar(32)否开课学年datetimeint(6)否0开课学期Stu_numint(9)否0本课学生人数xibievarchar(32)否所属学院xuefenvarchar(12)否学分remarkvarchar(200)否备注typestinyint(1)否00图片 1视频statustinyint(1)否01启用、0相反status_2int(2)否0课程通知选择是否前台显示downl_logintinyint(1)否0资源下载是否要登录表4-3 作业分配表(gxk_hworkfenpei)字段名称类型空默认注释idint(6)否主键idc_idint(6)否外键(课程)t_idvarchar(32)否作业类型(外键)which_hworkvarchar(32)否作业次第weekvarchar(32)否周次titlevarchar(100)否作业题目percentfloat否占百分比base_scoreint(6)否0基础分数inputdateint(11)否0通知的时间lasttimeint(11)否0截止时间statustinyint(1)否0是否启用contenttext否作业内容表4-4 留言互动表(gxk_liuyan)字段名称类型空默认注释idint(6)否主键idc_idint(6)否外键(课程)stu_idint(6)否学生(外键)pidint(6)否得到回复留言idliuyantext否留言内容ly_timeint(11)否0留言时间statustinyint(1)否01管理员的回复信息status2tinyint(1)否01对老师提示新消息status3tinyint(1)否01对学生提示新消息表4-5 角色信息表(gxk_role)字段名称类型空默认注释idint(6)否主键idnamevarchar(32)否角色名pidsmallint(6)否父idstatustinyint (1)否0状态栏remarksvarchar(255)否备注表4-6 签到列表(gxk_sign)字段名称类型空默认注释idint(6)否主键idc_idint(6)否外键(课程)stu_idint(6)否0外键(学生)signstatusint(6)否0是否已签到hworkstatusint(6)否0是否已交作业表4-7 学生信息表(gxk_student)字段名称类型空默认注释idint(6)否主键idc_idint(6)否外键(课程)numbervarchar(32)否序号namevarchar(32)否学生名字stu_noint(6)否0学号xibievarchar(64)否所属学院classvarchar(32)否学院 + 班级subjectvarchar(32)否专业passwordvarchar(64)否密码 加密hwork_numint(6)否0交作业次数sign_numint(6)否0签到次数signtimeint(11)否0签到时间statusint(6)否0签到 1签了scoreint(9)否0平时成绩login_numint(6)否0登录次数remarkvarchar(50)否备注(密码)qizhongint(6)否0其中成绩qimoint(6)否0期末成绩shiyanint(6)否0实验成绩zongpingint(6)否0总评成绩descriptionvarchar(100)否描述是否缺考等regtimeint(11)否0第一次登录时间lastlogtimeint(11)否0最后登录时间表4-8 学生-作业检查表(gxk_stu_hwork)字段名称类型空默认注释c_idint(6)否外键(课程)stu_idint(6)否0学生(外键)h_idint(6)否0交作业(外键)scoresfloat否得分情况表4-9 教师信息表(gxk_teacher)字段名称类型空默认注释idint(6)否主键idteachervarchar(32)否教师名字titlevarchar(32)否职称telephoneint(11)否0电话emailvarchar(64)否邮箱cou_numint(11)否0授课数目xibievarchar(64)否所在学院表4-10 作业提交表(gxk_upload)字段名称类型空默认注释idint(6)否主键idc_idint(6)否外键(课程)stu_idint(11)否外键(学生)filenamevarchar(100)否上传的文件名upload_timeint(11)否0上传时间file_sizeint(6)否0上传文件大小remarkint(6)否0更改次数scoreint(9)否0每次成绩得分t_idint(6)否0作业idfile_extensvarchar(16)否文件后缀类型htimeint(6)否0那次作业表4-11 管理员列表(gxk_user)字段名称类型空默认注释idint(6)否主键idc_idint(6)否外键(课程)usernamevarchar(90)否用户名passwordvarchar(64)否密码 加密nicknameint(6)否0用户昵称login_numint(11)否0登录次数last_login_timeint(11)否0最后登录时间last_login_ipvarchar(64)否最后登录IPregis_timedatetime否注册时间mobileint(11)否0短号emailvarchar(64)否邮箱sexchar(16)否性别classvarchar(64)否所在班级descriptionvarchar(100)否描述statustinyint(2)否0状态栏4.3系统主要功能设计4.3.1 课程管理关系图4.3.2 会员系统E-R图4.4 教学平台数据库设计教学平台最初用excel表格建立了课程表、授课教师表、学生表、教学日历表等21张表。因为对于目前的学校公选课管理网站,尤其是选课学生比较多的课程,由于这些课程本身的管理网站数据库设计不合理,导致选课的学生不能及时地了解课程通知、课程教学日历、课程资源下载等课程信息,而且每门课都由一个独立开发的网站来进行授课,这不仅需要很大人力去开发和维护,还在经济方面造成不必要的浪费。所以,教学平台在一开始设计数据库的时候就考虑到后台模板的重用,在建立学生表、授课教师表、教学信息表等数据库表的时候增加了一个外键(c_id),这样子管理员创建的每门课程的信息都是按照这个外键来区分,为后序系统权限的设计提供了很大的帮助。由于教学平台数据库最初的设计比较合理,在后面系统的功能的增加和完善就非常容易了,不仅在原来的表格上增加字段对整个数据库的影响不大,而且在功能增加的时候增加了不少的表格也对整体数据库没影响。比如,在后面增加了留言互动功能和相关数据表、增加了个人或群短消息发布的相关数据表

温馨提示

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

评论

0/150

提交评论