毕业设计(论文)MVC教学管理系统设计.doc

上传人:文库蛋蛋多 文档编号:3976778 上传时间:2023-03-30 格式:DOC 页数:37 大小:323.50KB
返回 下载 相关 举报
毕业设计(论文)MVC教学管理系统设计.doc_第1页
第1页 / 共37页
毕业设计(论文)MVC教学管理系统设计.doc_第2页
第2页 / 共37页
毕业设计(论文)MVC教学管理系统设计.doc_第3页
第3页 / 共37页
毕业设计(论文)MVC教学管理系统设计.doc_第4页
第4页 / 共37页
毕业设计(论文)MVC教学管理系统设计.doc_第5页
第5页 / 共37页
点击查看更多>>
资源描述

《毕业设计(论文)MVC教学管理系统设计.doc》由会员分享,可在线阅读,更多相关《毕业设计(论文)MVC教学管理系统设计.doc(37页珍藏版)》请在三一办公上搜索。

1、目 录第一章 概述11.1 课题背景11.2 国内外发展状况11.3 主要任务11.4 论文结构1第二章 技术背景2第三章 需求分析43.1 功能需求43.1.1 管理员管理模块43.1.1.1 用户管理模块43.1.1.2 学生管理模块53.1.1.3 教师管理模块63.1.1.4 课程管理模块73.1.2 教案管理模块83.1.2.1 教案管理模块93.1.2.2 教学使用模块103.1.3资料管理模块113.1.3.1 视频管理模块123.1.3.2 音频管理模块133.1.3.3 PPT管理模块143.1.3.4 资料及其他管理模块143.2 非功能需求15第四章 系统设计164.1

2、架构设计164.2数据库设计164.3 类接口设计17第五章系统实现15.1 用户管理模块15.1.1 用户管理模块15.1.2 学生管理模块25.1.3 教师管理模块35.1.4 课程管理模块55.2 教案管理模块65.2.1 教案管理模块65.2.2 教学日历管理模块75.3资料管理模块85.3.1 视频管理模块85.3.2 音频管理模块95.3.3 PPT管理模块115.3.4 资料管理模块12第六章 系统测试与部署1第一章 概述1.1 课题背景由于社会的发展,电脑和网络的普及,使得网络越来越多的应用于各个方面,越来越多的东西趋向于电子化。在学校里,大范围的人工作业已经不适合了,而电子化

3、越来越多的在教学中应用,ppt,flash等技术已经在教学中应用了。为了将这些在教学中应用的技术进行汇总,为了辅助教学,减少教师工作量,便于教师统计,学校检查,以及可以方便学生学习各科课程,从而设计该教师辅助系统。1.2 国内外发展状况 目前,高等教育教学质量令人堪忧,高校教师队伍的素质与教学水平已经成为高等教育教学改革的瓶颈。而网络备课是提高高校教师教学水平和自身专业发展的重要切入点,对高校教师网络备课的研究与实践已经迫在眉睫。2010年上海长宁区首先开始教师网上备课系统,随后杭州市也开始网上备课系统,杭州市已有900余所中小学校(占中小学校总数的99%)的校园网以宽带接入了教育城域网,并以

4、各种方式接入互联网,实现网上备课。2011年3月4日湖南省率先实现了由省教育厅主管、省基础教育资源中心主办的省基础教育资源网()开通。以后通过该网,中小学教师可以轻松免费使用全省优质教育教学资源,完成网上备课。1.3 主要任务管理员可以通过本系统,管理课程、教师和学生的信息。教案管理:教学过程中老师需要准备教案,组织教学。在教案中标注清楚教学的重难点。学生可以通过查看老师的教案,了解课程的主要内容,做好预习和复习。督导组专家可以查看教案,对课堂教学加以监督。另外,可以通过教案生成教务处规定格式的教学日历。教师课件管理。教学课件种类很多,除了常见的PPT格式外,还有一些视频、音频等材料,需要提供

5、教师对幻灯片、讲课录像和白板三屏编排,学生在线浏览、下载。另外,实验指导书、参考资料的管理和下载也是本系统需要考虑的。以及其他相关功能。1.4 论文结构本文第二章将对该系统所应用的技术技能介绍,第三章将进行需求分析,第四章对系统进行设计,第五章进行系统实现,第六章完成系统测试和系统部署,第七章进行总结。第二章 技术背景该系统所使用的设计模式为MVC。MVC是三个单词的缩写,分别为: 模型(Model),视图(View)和控制Controller)。 MVC模式的目的就是实现Web系统的职能分工。 Model层实现系统中的业务逻辑,通常可以用JavaBean或EJB来实现。 View层用于与用户

6、的交互,通常用JSP来实现。 Controller层是Model与View之间沟通的桥梁,它可以分派用户的请求并选择恰当的视图以用于显示,同时它也可以解释用户的输入并将它们映射为模型层可执行的操作。与以往传统的设计模式相比,首先,最重要的是应该有多个视图对应一个模型的能力。在目前用户需求的快速变化下,可能有多种方式访问应用的要求。例如,订单模型可能有本系统的订单,也有网上订单,或者其他系统的订单,但对于订单的处理都是一样,也就是说订单的处理是一致的。按MVC设计模式,一个订单模型以及多个视图即可解决问题。这样减少了代码的复制,即减少了代码的维护量,一旦模型发生改变,也易于维护。 其次,由于模型

7、返回的数据不带任何显示格式,因而这些模型也可直接应用于接口的使用.再次,由于一个应用被分离为三层,因此有时改变其中的一层就能满足应用的改变。一个应用的业务流程或者业务规则的改变只需改动MVC的模型层。控制层的概念也很有效,由于它把不同的模型和不同的视图组合在一起完成不同的请求,因此,控制层可以说是包含了用户请求权限的概念。最后,它还有利于软件工程化管理。由于不同的层各司其职,每一层不同的应用具有某些相同的特征,有利于通过工程化、工具化产生管理程序代码。该系统的框架设计采用的是三大框架结构。Struts 的MVC设计模式可以使系统的逻辑变得很清晰。Spring 的IOC和AOP可以使系统在最大限

8、度上解藕。 Hibernate可以实体对象持久化了。Struts跟Tomcat、Turbine等诸多Apache项目一样,是开源软件,这是它的一大优点。使开发者能更深入的了解其内部实现机制。除此之外,Struts的优点主要集中体现在两个方面:Taglib和页面导航。Taglib是Struts的标记库,灵活动用,能大大提高开发效率。另外,就目前国内的JSP开发者而言,除了使用JSP自带的常用标记外,很少开发自己的标记,或许Struts是一个很好的起点。关于页面导航,通过一个配置文件,即可把握整个系统各部分之间的联系,这对于后期的维护有着莫大的好处。尤其是当另一批开发者接手这个项目时,这种优势体现

9、得更加明显。Spring提供了一种管理对象的方法,可以把中间层对象有效地组织起来。一个完美的框架“黏合剂”。采用了分层结构,可以增量引入到项目中。有利于面向接口编程习惯的养成。目的之一是为了写出易于测试的代码。非侵入性,应用程序对Spring API的依赖可以减至最小限度。 一致的数据访问介面。一个轻量级的架构解决方案。Hibernate对象/关系数据库映射(ORM)。它使用时只需要操纵对象,使开发更对象化,抛弃了数据库中心的思想,完全的面向对象思想。透明持久化(persistent)。带有持久化状态的、具有业务功能的单线程对象,此对象生存期很短。这些对象可能是普通的JavaBeans/POJ

10、O,这个对象没有实现第三方框架或者接口,唯一特殊的是他们正与(仅仅一个)Session相关联。一旦这个Session被关闭,这些对象就会脱离持久化状态,这样就可被应用程序的任何层自由使用。(例如,用作跟表示层打交道的数据传输对象。)。事务应用程序用来指定原子操作单元范围的对象,它是单线程的,生命周期很短。它通过抽象将应用从底层具体的JDBC、JTA以及CORBA事务隔离开。某些情况下,一个Session之内可能包含多个Transaction对象。尽管是否使用该对象是可选的,但无论是使用底层的API还是使用Transaction对象,事务边界的开启与关闭是必不可少的。它没有侵入性,即所谓的轻量级

11、框架。移植性会很好。缓存机制,提供一级缓存和二级缓存。 简洁的HQL编程。因此选择ssh三大框架结构。第三章 需求分析3.1 功能需求3.1.1 管理员管理模块管理员管理模块为本系统后台管理模块,用于管理员在后台对系统进行管理,该模块包括用户管理模块,学生管理模块,教师管理模块,课程管理模块。管理员管理模块用例图如图3-1所示:3-1管理员管理模块用例图 3.1.1.1 用户管理模块用户管理模块为管理员管理模块的一部分,该模块用于对用户的管理,该模块包括用户的增加,用户的删除,用户的还原,用户查看跟用户信息的更改5个功能。管理员可以通过该模块可以增加用户,删除用户,将已经删除的用户进行还原,可

12、以通过一定信息对用户进行查找,可以对用户的密码进行修改,并且能够添加用户信息,是用户成为学生或者教师。用户管理模块用例图如图3-2所示: 3-2用户管理模块用例图3.1.1.2 学生管理模块学生管理模块用于对学生的管理,该模块包括学生的增加,学生的删除,学生查看跟学生信息的更改4个功能。通过该模块后台管理员可以将用户添加为学生,可以将学生改为用户,可以通过一定信息查找学生,还可以更改学生的信息。学生管理模块用例图如图3-3所示:3-3学生管理模块用例图3.1.1.3 教师管理模块教师管理模块用于对教师的管理,该模块包括教师的增加,教师的删除,教师查看跟教师信息的更改4个功能。通过该模块后台管理

13、员可以将用户添加为教师,可以将教师改为用户,可以通过一定信息查找教师,还可以更改教师的信息。教师管理模块用例图如图3-4所示:3-4教师管理模块用例图3.1.1.4 课程管理模块课程管理模块用于对课程的管理,该模块包括科目增加,科目删除,科目查看,科目更改,课程增加,课程删除,课程查看,课程更改,班级添加,班级删除,班级查看,班级更改共12个功能。课程管理较为复杂。每一门课程都有一个名字,这个名字叫科目,科目为一种课程总称,它只是记载这门的名称,如有一门课程为高数;由于每年基本上有开同一个课程,但是每年有都不一样,因此这种课程就叫做课程,如2010年开的课程,课程为每次开课课程的总称,它记载了

14、这门课程开课时间,学分,学院等信息;由于选同一门课程的人较多,有可能在不同时间,不同地点可同一门课程,因此每个课程就叫做一个班级。管理员可以通过该模块课程管理模块用例图如图所示;3-5教案管理模块用例图3.1.2 教案管理模块教案管理模块用于对教案的管理,通过该模块老师可以对教案进行编写删除等管理,而学生也可以对课程进行查看下载等应用。教案管理模块包括教案的管理,以及教案的使用两个模块。教案管理模块用例图如图3-6所示:3-6教案管理模块用例图3.1.2.1 教案管理模块教案管理模块用于教师对教案的管理,该模块包括教案的增加,教案的删除,教案查看,教案信息的更改以及教学日历生成5个功能。通过该

15、模块教师可以对教案进行增加,删除,可以通过课程对教案进行查找以及查看,当发现教案错误时可以通过该模块进行修改。当完成教案之后,教师可以通过该模块生成教学日历来帮助教师进行教学。教案管理模块用例图如图3-7所示:3-7教案管理模块用例图3.1.2.2 教学使用模块教案使用模块用于学生对教案的应用,该模块包括教案的下载以及教案查看2个功能。通过该模块,学生可以通过该模快查看教师的教案,或者下载教案,帮助学生学习。教案使用模块用例图如图3-8所示:3-8教案使用模块用例图3.1.3资料管理模块资料管理模块用于对教学资料的管理,通过该模块老师可以对资料进行编写删除上传等管理,而学生也可以对资料进行查看

16、下载等应用。资料管理模块用例图如图3-9所示: 3-9教案使用模块用例图3.1.3.1 视频管理模块视频管理模块用于对视频资料的管理,该模块包括视频增加,视频删除,视频修改,视频查找,视频的下载以及视频观看6个功能。通过该模块,教师可以向相对应的课程中添加视频资料,同时可以删除视频资料,查看视频资料以及对以上传的视频资料的信息进行修改,而学生可以通过课程查找相对应的视频资料,同时可以在线观看视频资料和下载视频资料。视频管理模块用例图如图3-10所示:3-10视频模块用例图3.1.3.2 音频管理模块音频管理模块用于对音频资料的管理,该模块包括音频增加,音频删除,音频修改,音频查找,音频的下载以

17、及音频观看6个功能。通过该模块,教师可以向相对应的课程中添加音频资料,同时可以删除音频资料,查看音频资料以及对以上传的音频资料的信息进行修改,而学生可以通过课程查找相对应的音频资料,同时可以在线观看音频资料和下载音频资料。音频管理模块用例图如图3-11所示:3-11音频模块用例图3.1.3.3 PPT管理模块PPT管理模块用于对PPT资料的管理,该模块包括PPT增加,PPT删除,PPT修改,PPT查找,PPT的下载以及PPT观看6个功能。通过该模块,教师可以向相对应的课程中添加PPT,同时可以删除PPT,查看PPT以及对以上传的PPT的信息进行修改,而学生可以通过课程查找相对应的PPT,同时可

18、以在线观看PPT和下载PPT。PPT管理模块用例图如图3-12所示:3-12模块用例图3.1.3.4 资料及其他管理模块资料及其他管理模块用于对资料及其他的管理,该模块包括资料及其他增加,资料及其他删除,资料及其他修改,资料及其他查找,资料及其他的下载以及资料及其他观看6个功能。通过该模块,教师可以对资料及其他进行增加打相对应的课程中,同时可以删除错误的资料,同时可以通过课程进行资料查找。学生可以通过课程进行查找资料,也可以在线观看和下载资料。资料及其他管理模块用例图如图3-13所示:3-13资料及其他模块用例图3.2 非功能需求感观性:用户界面较为整洁,简单。易用性:能够让大部分能简单操作电

19、脑的用户迅速学会使用该系统。可扩充性与可维护性:使用常见的架构,使维护变得容易。 更加便于扩充。 第四章 系统设计4.1 架构设计系统是一个典型的四层架构体系。分为表述层,业务逻辑层,持久化层,数据库层。表述层实现的功能是同最终用户进行交互,帮助用户有效高效地完成他们需要的业务。具体实现的技术为:html网页,js脚本,css样式表;业务逻辑层的主要功能是业务逻辑实现(业务组件,服务),对外接口等;持久化层负责数据访问,数据对象等;数据库层负责数据的存储。4.2数据库设计整体数据库设计如图所示4-1(a)4-1(b)4.3 类接口设计类接口如图4-2所示4-2(a)4-2(b)第五章 系统实现

20、5.1 用户管理模块5.1.1 用户管理模块添加用户时序图如图所示 5-1添加用户状态图如图所示5-2用例说明:用例:增加用户简要说明:用户管理系统前置条件:管理员登陆系统后置条件:成功后置条件,有新用户加入; 失败后置条件:无变化。角色:系统管理员触发条件:系统管理员点击新增用户按钮基本事件流描述、步骤:1登陆 2 点击新用户 3 确认用户信息 4 新增用户5.1.2 学生管理模块添加用户状态图如图所示5-3用例说明:用例:删除学生简要说明:用户管理系统前置条件:管理员登陆系统后置条件:成功后置条件,有学生删除; 失败后置条件:无变化。角色:系统管理员触发条件:系统管理员点击删除学生按钮基本

21、事件流描述、步骤:1登陆 2 点击删除学生 3 确认删除学生 4 删除学生5.1.3 教师管理模块添加用户状态图如图所示5-4用例说明:用例:查看教师简要说明:用户管理系统前置条件:管理员登陆系统后置条件:成功后置条件,可查看教师信息; 失败后置条件:无变化。角色:系统管理员触发条件:系统管理员点击查看教师按钮基本事件流描述、步骤:1登陆 2 点击查看教师 3 确认查看教师 4 查看教师5.1.4 课程管理模块添加用户状态图如图所示5-5用例说明:用例:修改课程信息简要说明:用户管理系统前置条件:管理员登陆系统后置条件:成功后置条件,课程信息被修改; 失败后置条件:无变化。角色:系统管理员触发

22、条件:系统管理员点击修改课程信息按钮基本事件流描述、步骤:1登陆 2 点击修改课程信息 3 确认修改课程信息 4 课程信息被修改5.2 教案管理模块5.2.1 教案管理模块添加用户状态图如图所示5-6用例说明:用例:增加课程教案简要说明:教案管理系统前置条件:教师登陆系统后置条件:成功后置条件,有新教案添加; 失败后置条件:无变化。角色:教师触发条件:教师点击新增教案按钮基本事件流描述、步骤:1登陆 2 选择课程 3 点击新教案 4 确认教案信息 5新增教案5.2.2 教学日历管理模块添加用户状态图如图所示5-7用例说明:用例:增加教学日历简要说明:教案管理系统前置条件:教师登陆系统后置条件:

23、成功后置条件,有新教学日历添加; 失败后置条件:无变化。角色:教师触发条件:教师点击新增教学日历按钮基本事件流描述、步骤:1登陆 2 选择课程 3 点击生成教学日历 4 确认添加教学日历 5新增教学日历5.3资料管理模块5.3.1 视频管理模块添加用户状态图如图所示5-8用例说明:用例:增加课程视频简要说明:资料管理系统前置条件:教师登陆系统后置条件:成功后置条件,有新视频添加; 失败后置条件:无变化。角色:教师触发条件:教师点击新增教案按钮基本事件流描述、步骤:1登陆 2 选择课程 3 点击新视频 4 确认视频信息 5 新增视频5.3.2 音频管理模块添加用户状态图如图所示5-9用例说明:用

24、例:增加课程音视频简要说明:资料管理系统前置条件:教师登陆系统后置条件:成功后置条件,有新音频添加; 失败后置条件:无变化。角色:教师触发条件:教师点击新增音频按钮基本事件流描述、步骤:1登陆 2 选择课程 3 点击新音频 4 确认音频信息 5 新增音频5.3.3 PPT管理模块添加用户状态图如图所5-10用例说明:用例:下载课程PPT简要说明:资料管理系统前置条件:学生登陆系统后置条件:成功后置条件,成功下载PPT; 失败后置条件:无变化。角色:学生触发条件:学生点击下载PPT按钮基本事件流描述、步骤:1登陆 2 选择课程 3 点击下载PPT 4 确认下载PPT 5 成功下载PPT5.3.4

25、 资料管理模块添加用户状态图如图所5-11用例说明:用例:查看课程资料简要说明:资料管理系统前置条件:学生登陆系统后置条件:成功后置条件,成功查看资料; 失败后置条件:无变化。角色:学生触发条件:学生点击查看资料按钮基本事件流描述、步骤:1登陆 2 选择课程 3 点击查看资料 4 确认查看资料 5 成功查看资料5.1MD5加密为了防止用户的密码被盗走,而给用户带来损失,该系统采用了MD5的加密方式来增加用户使用该系统的安全性。MD5以512位分组来处理输入的信息,且每一分组又被划分为16个32位子分组,经过了一系列的处理后,算法的输出由四个32位分组组成,将这四个32位分组级联后将生成一个12

26、8位散列值。首先需要对将密码进行填充,使其字节长度对512求余数的结果等于448。因此,密码的字节长度将被扩展至N*512+448,即N*64+56个字节,N为一个正整数。填充的方法如下,在信息的后面填充一个1和无数个0,直到满足上面的条件时才停止用0对信息的填充。然后再在这个结果后面附加一个以64位二进制表示的填充前的密码长度。经过这两步的处理,现在的密码字节长度=N*512+448+64=(N+1)*512,即长度恰好是512的整数倍数。MD5中有四个32位被称作链接变量的整数参数,他们分别为:A=0x01234567,B=0x89abcdef,C=0xfedcba98,D=0x76543

27、210。 当设置好这四个链接变量后,就开始进入算法的四轮循环运算,循环的次数是信息中512位信息分组的数目。将上面四个链接变量复制到另外四个变量中:A到a,B到b,C到c,D到d。 主循环有四轮(MD4只有三轮),每轮循环都很相似。第一轮进行16次操作。每次操作对a、b、c和d中的其中三个作一次非线性函数运算,然后将所得结果加上第四个变量。再将所得结果向右环移一个不定的数,并加上a、b、c或d中之一。最后用该结果取代a、b、c或d中之一。 以一下是每次操作中用到的四个非线性函数(每轮一个)。F(X,Y,Z)=(XY)( X)Z)G(X,Y,Z)=(XZ)(Y( Z)H(X,Y,Z)=XYZI(X,Y,Z)=Y(X( Z)其中,是异或,是与,是或, 是反符号。如果X、Y和Z的对应位是独立和均匀的,那么结果的每一位也应是独立和均匀的。F是一个逐位运算的函数。即,如果X,那么Y,否则Z。函数H是逐位奇偶操作符。所有这些完成之后,将A,B,C,D分别加上a,b,c,d。然后用下一分组数据继续运行算法,最后的输出是A,B,C和D的级联。最后得到的A,B,C,D就是输出结果,A是低位,D为高位,DCBA组成128位输出结果。第六章 系统测试与部署第七章 总结

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 办公文档 > 其他范文


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号