基于JavaEE的信息学院网络教学综合平台 毕业设计.doc_第1页
基于JavaEE的信息学院网络教学综合平台 毕业设计.doc_第2页
基于JavaEE的信息学院网络教学综合平台 毕业设计.doc_第3页
基于JavaEE的信息学院网络教学综合平台 毕业设计.doc_第4页
基于JavaEE的信息学院网络教学综合平台 毕业设计.doc_第5页
已阅读5页,还剩50页未读 继续免费阅读

下载本文档

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

文档简介

jiu jiang university毕 业 论 文题 目 基于javaee的信息学院网络 教学综合平台 英文题目 the network education platform based on javaee for school of information 院 系 信息科学与技术学院 专 业 计算机科学与技术 姓 名 聂婷婷 班级学号 a081122 指导教师 杨振宇 二一二年五月信息科学与技术学院学士学位论文摘 要论文从网络教学综合平台的背景和意义开始,阐述了网络教学综合平台的发展趋势,采用mvc设计模式,以javaee开发平台技术为基础,提供了基于java的jsp、javabean、struts技术实现组件化的web程序和b/s三层体系开发的基本思想。从业务需求、模块功能需求等方面,分别对系统中教师、学生、管理员三种角色的体系结构和功能作用进行了分析。从表示层、业务层和数据层三层逻辑层,进行了具体设计和实现。系统主要实现的效果是教师可以管理课程,如添加某门课程,添加教学大纲、教师计划,还可以实现在线观看视频、发布课后作业等。教师可以查看授课班级学生信息及作业成绩,同时可以发布公告和发布日记。学生可以查看公告、教师信息及课程的相关信息,还可以提交课后作业,对于不懂的问题可以进行网上答疑。管理员可以对教师和学生进行有关操作,同时管理网上答疑模块。通过这个系统,学生可以方便的获取所学课程的学习资料,触发的学习积极性。老师能够在线辅导学生,通过课后作业,了解学生的学习情况。关键词:网络教学综合平台,javaee,mvc设计模式,struts abstractfrom the network background and significance of education platform, paper has explain the trends in network education platform, using the mvc design pattern for javaee development platform technology, provides a java-based jsp, javabean, struts technology components of the web programs and b/s three-tier system, developed the basic idea. demand from the business requirements, functional requirements and other aspects of the module, analysis system structure and function of the teacher, student, and administrator three roles. from the presentation layer, business logic layer and data layer three-layer, the specific design and implementation. this system to achieve the effect is that teachers can manage courses, such as adding a class, add a syllabus, teaching plan, but also can be achieved online watch videos, publish homework. teachers can view students of the teaching class information and score, and also can publish the announcement message and diary. students can view the announcement message, teacher information and course information. students can also submit homework and solve the unknown problems by online q & a. administrator can operate teachers and students, and also manages the online q & a module. through this system, students can easily obtain the information of the courses, and can be triggered the enthusiasm for study. teacher can help student on internet, and understand students learning situation by homework which is submitted.keywords: the network education platform, javaee, mvc design pattern , struts目 录摘 要iabstractii1 绪论1.1研究背景及意义(1)1.2网络教学综合平台的发展(2)1.3网络教学综合平台存在的问题及原因分析(3)1.4本章小结(4)2 相关技术简介2.1 javaee平台(5)2.2 mvc设计模式(5)2.3 struts2技术(7)2.4 uml建模语言(8)2.5本章小结(9)3 系统需求分析3.1业务需求分析(10)3.2功能需求分析(14)3.3功能模型分析(17)3.4本章小结(20)4 系统设计4.1系统总体体系结构(21)4.2数据库设计(22)4.3表示层设计(26)4.4业务逻辑层设计(26)4.5数据层设计(29)4.6本章小结(31)5 系统实现5.1开发环境部署(32)5.2表示层的实现(32)5.3系统有关逻辑功能的实现(35)5.4数据层的实现(39)5.5本章小结(41)6 系统测试6.1单元测试(42)6.2功能测试(43)6.2本章小结(44)致 谢(45)参考文献(46)481 绪论1.1研究背景及意义在知识大爆炸的现代,怎样才能更好地学习摆在大家面前的一个难题。随着计算机技术和宽带网络的飞速发展,网络教学综合平台为学校教学提供了一种新的手段和方式。一定意义上说,网络教学综合平台的使用对于学校教学是一场革命。20世纪90年代中后期到现在,网络在学校得到了普遍的应用,各高校的校园网也相继出现,但是校园网络在教学方面的发展相对较缓慢,未能起到其应有的作用。在教学对象上,偏重于更加功利的远程教育,不够重视学校的教育。大力开展网上教学,注重学生对教学资源的真实需求,推动信息技术与课程信息的集合,是推动教学改革,培养创新人才的有效途径,也是教育技术在教学中充分应用的体现1。网络教学不仅取代传统方式的课堂教学,而是将网络教学模式和课堂教学融合在一起,吸收传统课堂教学的优点,并克服其时间时空限制等弱点,发挥网络教学的优点,构建一种全新的教学模式。网络教学综合平台的实现主要有以下几点意义。(1)消除学习的时间和空间的限制,提高学生学习效率,并且极大限度的激发学生的学习潜能通过建立此平台,可以使学生在任何有网络的地点学习知识。消除了学习在时间和空间上的限制。学生不必再因为没有听清楚内容或者忘记内容而耽误学习,极大的提高了学生的学习效率。教学平台的应用,使得教学资源可视化,这是对传统学习的一种颠覆,一场革命。学生通过教学资源,可以根据自身情况,自身特点和需求来学习,可以发散自己的思维,而不是一味的跟随老师的思想,这样激发了学生对学习的兴趣,有助于学生创新能力的提高,并极大限度的激发了学生的学习潜能。(2)促进教育教学结构的改革以往的教学改革,都是教学内容、教学手段和教学方法的改革,但是对于教学模式的改革却很少,这对于教学作为一个系统说是不合理的,这点已得到众多专家学者的认同,对于教学结构的改革,在观念和体制的束缚下难以推进,而观念的改变是一个渐进的过程,开展网络教学可以促进这一过程的进行,让教师和学生逐渐从习惯课堂教学过渡到接受网络教学,他们需要心理的准备,也需要信息技术素养的准备(3)汇总大量的教学资源及教学信息,促进高校整体的管理如大家所知,教学资源数量类别庞大,建立网络教学平台可以更好的管理它们,还可以将它们汇总,并分门别类整理,为学生提供了方便快捷的学习资源。由于教学是一个长期的活动,将教学资源信息整合为以后的教学平台还提供了学生、老师信息的汇总管理,新闻的发布以及最新的通知事宜,这也促进了高校在整体上的管理。1.2网络教学综合平台的发展20世纪90年代中期,为了满足网络教学的发展需要,一些教育和商业机构开始开发专门的教学系统。这些系统从最初帮助教育机构开发教学资源库,到后来支持和管理网络教学,都是围绕教学资源的管理和网络教学活动的管理两方面的功能发展起来的网络教学综合平台。网络教学综合平台大体经历了四个发展阶段:第一阶段:普通的学习资源库,也成为内容管理系统。在网络技术发展的初期,一些大学、公司和培训机构开始有意识地开发专门的网络资源库,用来存储和管理教学资源,从而减少开支,使学习者可以自主地学习,也丰富了知识的传播途径。但其功能仅限于资源管理,资源格式与管理技术不统一,难以广泛共享。第二阶段:学习管理系统。学习管理系统源于自动化系统,具有用户注册管理、课件目录管理、学习者的信息数据记录等功能,但一般不具备教学内容制作的功能。第三阶段:学习内容管理系统。学习内容管理师最初为高等教育开发的传统课件管理系统的发展版,旨在帮助没有技术经验的教师或资源专家设计、创建、发布和管理网络课件。同时它能够对用户进行管理,可以跟踪学生的学习进度并及时调整以适合学习者的学习需要。学习内容管理系统使学习的共享和教学系统的交互成为可能。第四阶段:通用网络教学综合平台2。通用网络教学综合平台在既有教学系统的基础上,从对教学过程(课件的制作与发布、教学组织、教学交互、学习支持和教学评价)的全面支持,到教学的管理(用户与课程的管理),再到与网络教学资源库及其管理系统的整合,集成了网络教学需要的主要子系统,形成了一个相对完整的网络教学支持环境。1.3网络教学综合平台存在的问题及原因分析(1)网络教学综合平台不符合高校的教学模式传统的网络教学综合平台大都是按学科体系,重理论的讲授,平台按学科体系进行教学内容的讲解及理论,没有以能力或技能的为 主线的模块化课程内容,没有按案例或任务驱动的教学模式。(2)网络课程注重教学内容的传授,缺乏学习环境设计纵观大部分的网络教学综合平台都非常重视教学内容的简单传授,提供诸如课程介绍、课程内容、教学大纲、教学录像等功能。虽然大部分网络课程的教学内容讲解与演示都比较到位,提供了大量教学的讲义ppt文件和上课的视频录像,但基本都是书本、课堂教学的简单搬迁。但是课程一开始就进入知识教学,没有为学习者设计相关的情景导入环节,完全忽略了教学环境的设计,将学习者置身于一个空洞的学习环境之中,学习者的知识学习和真实的生活环境脱节,更无从谈起使学习者获得实际的、能解决问题的技能相关联起来。(3)网络教学综合平台对学习者的高要求与学生现有水平存在矛盾网络教学对学习者的能力提出了很高要求,如良好的自我监控能力、计算机操作技能、与他人交互与协作的能力,以及信息的检索、分析、处理能力等等。但在长期应试教育的影响下,学生缺乏学习主体性意识,自主思考、探索、创新的精神不足,因而表象出对自主性学习方式适应不良。自制能力较差的学生容易沉溺于非学习性质的网络空间,造成学习的止步不前。(4)网络教学综合平台课程资源库建设滞后,学习者不能参与资源库的建设目前很多网络教学平台学习资源较少,不能及时更新。资源建设不足,表现为:一是量的不足:二是质的欠佳。不少网络教学平台明显有“赶活儿”的嫌疑,在一段时间内集中添加资源,时间紧、任务重,难免就有资源的选择与取舍不当之处,更缺乏资源的导学,又或者其他可能的问题,导致资源不是最合用的,而且资源库仅仅靠开发者自身的力量完成建设,也许不是最好的方式。1.4本章小结本章从网络教学综合平台的背景及意义、网络教学综合平台的发展和网络教学综合平台存在的问题做了简要的分析。2 相关技术简介随着计算机的高速发展,web技术也在不断的提高。本章将对系统中应用的一些技术(如:javaee、mvc模式、struts等)进行简单的介绍。 2.1 javaee平台java平台共分为三个主要版本javaee、javase和javame。javaee(java platform,enterprise edition)是sun公司推出的一种全新的容器概念模型,是一个基于java组件技术的企业级应用程序版本。这个版本以前称为j2ee3。javaee能够为我们帮助开发和部署可移植、健壮、可伸缩且安全的服务器端java应用程序。javaee是在javase的基础上构建的,它提供web服务、组件模型、管理和通信api,可以用来实现企业级的面向服务体系结构(service-oriented architecture,soa)和web2.0应用程序。 javaee的基础核心是在标准版“编写一次、随处运行”、jdbc api等特性的基础上,能够进一步对jsp、xml技术提供全面支持。其最终目的就是成为一个能够使企业开发者大幅缩短投放市场时间的体系结构。它具有以下特点。一是规范了标准的运用开发体系结构,使与基础结构服务相关的问题以及底层分配问题都由运用程序容器或者服务器来处理。二是提供的中间层集成框架,可满足运用系统高可用性、高可靠性以及可扩展性的需求。三是基于组件技术规范定义的标准开发平台,支持应用程序的集成,降低多层应用开发复杂性。javaee体系结构如图2-1所示。图2-1 javaee体系结构图2.2 mvc设计模式mvc是一种目前广泛流行的软件设计模式4。随着网络应用的快速增加,mvc模式对于web应用的开发无疑是一种非常先进的设计思想,无论你选择哪种语言,无论应用多复杂,它都能为你理解分析应用模型时提供最基本的分析方法,为你构造产品提供清晰的设计框架,为你的软件工程提供规范的依据5。(1)mvc设计思想mvc英文即model-view-controller,即把一个应用的输入、处理、输出流程按照model、view、controller的方式进行分离,这样一个应用被分成三个层模型层、视图层、控制层。视图(view)代表用户交互界面,对于web应用来说,可以概括为html界面,但有可能为xhtml、xml和applet。随着应用的复杂性和规模性,界面的处理也变得具有挑战性。一个应用可能有很多不同的视图,mvc设计模式对于视图的处理仅限于视图上数据的采集和处理,以及用户的请求,而不包括在视图上的业务流程的处理。业务流程的处理交予模型(model)处理。模型(model):就是业务流程/状态的处理以及业务规则的制定。业务流程的处理过程对其它层来说是黑箱操作,模型接受视图请求的数据,并返回最终的处理结果。业务模型的设计可以说是mvc最主要的核心。控制(controller)可以理解为从用户接收请求, 将模型与视图匹配在一起,共同完成用户的请求6。划分控制层的作用很重要,它清楚地告诉你,它就是一个分发器,选择什么样的模型,选择什么样的视图,可以完成什么样的用户请求。控制层并不做任何的数据处理。一个模型可能对应多个视图,一个视图可能对应多个模型。mvc设计模型体系结构如图2-2所示。(2)mvc拥有以下几个优点:最重要的是应该有多个视图对应一个模型的能力。这样减少了代码的复制,即减少了代码的维护量,一旦模型发生改变,也易于维护;由于模型返回的数据不带任何显示格式,因而这些模型也可直接应用于接口的使用;一个应用被分离为三层,因此有时改变其中的一层就能满足应用的改变;它还有利于软件工程化管理。由于不同的层各司其职,每一层不同的应用具有某些相同的特征,有利于通过工程化、工具化产生管理程序代码。图2-2mvc设计模型体系结构综合上述,mvc是构筑软件非常好的基本模式,至少将业务处理与显示分离,强迫将应用分为模型、视图以及控制层, 使得你会认真考虑应用的额外复杂性,把这些想法融进到架构中,增加了应用的可拓展性。如果能把握到这一点,mvc模式会使得你的应用更加强壮,更加有弹性,更加个性化。2.3 struts2技术struts2 是一个web应用框架。它不是一个struts的新的发布版本,而是一个全新的框架。struts2是第二代基于model-view-controller (mvc)模型的web应用框架。 struts2是java企业级web应用的可扩展性的框架7。它是webwork和struts社区合并后的产物。它继承了mvc的各项特性,并更具javaee了相应的变化和扩展。struts2工作时使用拦截器作为处理,以用户的业务逻辑控制器为目标,创建一个控制器代理。控制器代理负责处理用户请求,处理用户请求时回调业务控制器的execute方法,该方法的返回值决定了struts2将怎样的视图资源呈现。struts2框架的大致处理流程如下: (1)浏览器发送请求,例如请求showcourse.action、 .action等;(2)读取配置文件(struts配置文件中的action);(3)核心控制器filterdispatcher根据请求决定调用合适的action;(4)struts2的拦截器链自动对请求应用通用功能;(5)处理业务,回调action的execute方法,该execute方法先获取用户请求参数,然后执行某种数据库操作。实际上,因为action只是一个控制器,它会调用业务逻辑组件来处理用户的请求;(6)返回响应(通过execute方法将信息返回到fileterdispatch);(7)查找响应(fileterdispatch根据配置查找响应的信息跳转页面);(8)响应用户(jsp客户浏览器显示,采用struts2标签库)8。struts2的体系结构如图2-3所示。图2-3 struts2的体系结构图2.4 uml建模语言uml是一种language(语言),是一种modeling(建模)language,是unified(统一)modeling language。它已进入全面应用阶段的事实标准,它的应用领域正在逐渐扩展,包括嵌入式系统建模、业务建模、流程建模等多个领域,而且它还成为“产生式编程”的重要支持技术:mda、可执行uml等。它定义了易于表达、功能强大、普遍适用的新思想、新技术和新方法。它是面向对象分析与设计的一种标准表示形式,主要用于对软件面向对象的分析与设计,还支持从需求分析开始的软件开发的全过程9。uml组成,由以下三部分(构造块、规则、公共机制)构成:(1)构造模块。包含三项:uml中的建模元素:元素又分为结构元素、行为元素、分组元素和注解元素; uml中的关系:uml中有四种关系,分别为关联关系、依赖关系、泛化关系和实现关系;uml中的图:uml中的图主要有用例图、组件图、对象图、类图、时序图、活动图、状态图 、配置图等10。(2)公共机制。公共机制中规定的描述就是对构造块的语句和语义的描述;修饰就是指对一些细节的符号修饰。(3)规则。规则的命名就是元素的名字;规则的范围就是类似类的作用域;规则的可见性有:public、protected、private、package四种。uml的组成结构如图2-4所示。图2-4 uml的组成结构2.5本章小结本章对javaee结构、mvc模式、struts和uml做了详细的分析,为开发奠定了基础,确定了javaee为软件架构的标准平台,mvc为软件架构的设计模式的开发理念。3 系统需求分析在系统工程或软件工程中,需求分析指的是在建立一个新的或改变一个现存的系统或产品时,确定新系统的目的、范围、定义和功能时所要做的所有工作。需求分析是软件工程中的一个关键过程11。在这个过程中,系统分析员和软件工程师确定顾客的需要。只有在确定了这些需要后他们才能够分析和寻求新系统的解决方法。本章将从业务需求、功能需求和功能模型对系统进行分析。3.1业务需求分析3.1.1业务需求业务需求是指客户对产品开发商的系统的关系需求,反映组织机构或客户对系统、软件产品的基本的目标要求12。该系统的客户所涉及的业务主要分为三个部分:(1)教师业务需求,参与者为任课教师。主要从五个方面展开,一是教师可以发布公告,对自己的公告可以改和删的操作。二是教师可以增加课程,对课程执行相关的操作,还可以布置作业。三是教师可以查询学生信息、作业成绩等。四是教师可以上传资源,对于自己的资源拥有删除的权限。五是教师可以网上答疑,回答学生的问题。(2)学生业务需求,参与者为学生。主要从五个方面展开,一是学生可以查询作业成绩和个人信息。二是学生可以下载相关教学资源。三是可以查询教师和课程的相关信息。四是对于不懂的问题,学生可以进行网上答疑。五是学生可以看的教师发布的一些公共消息。(3)管理员业务需求,参与者为管理员。主要从方面展开,一是管理员可以添加删除学生信息。二是管理员可以添加删除教师信息。三是管理员可以对网上答疑进行相关的操作。3.1.2业务流程(1) 教师业务流分析教师业务活动图和课程活动图如图3-1和3-2所示,教师登录网络教学平台系统后,可以拥有以下几个主要功能。发布公告,教师可以根据需要发布上课、考试、作业等信息;学生管理,教师可以查看授课班级的学生信息,还可以查看学生作业完成的情况和成绩的情况;课程管理,教师可以根据自己的情况,添加新学期的课程,并添加该课程的有关信息,包括课程介绍、课程大纲、课程计划、课程教材、教学录像等,同时还可以布置作业;资源管理,教师可以上传教学资源,可以删除自己上传的资源,下载资源;日记管理,教师可以发布日记,对日记设置查看权限,同时对日记有增、删、改、查的功能;网上答疑,当学生在网上答疑平台上提出疑问,教师可以帮助解答。图3-1 教师业务活动图图3-2 教师业务之课程管理活动图(2) 学生业务流分析学生业务活动图如图3-3所示,学生可以在没有登录时可以拥有以下的功能:查看教师信息,包括教师的基本信息以及授课信息;查看课程信息,可以包括课程的基本信息,课程的一些相关信息(教学大纲、教学计划、课程教材等);查看公告信息,学生可以在主界面看到新发布的公告消息,也可以在自己的界面看到主修课程的公告消息;资源的下载,学生可以对课程的资源或者其他资源进行下载;网上答疑,学生可以在网上提出疑问。学生在登录后拥有的功能:作业管理,学生可以查看老师布置的作业,并提交作业,还可以查看作业的成绩;个人信息管理,学生可以操作自己的个人信息。图3-3 学生业务活动图(3) 管理员业务流分析管理员业务活动图如图3-4所示,管理员登录后可以拥有的功能:学生管理,管理员可以添加学生信息(单个或批量),删除学生信息(单个或批量),修改学生信息;教师管理,管理员可以添加教师信息(单个或批量),删除教师信息,修改教师信息;网上答疑管理,管理员可以对该模块进行查看、删除。图3-4 管理员业务活动图3.2功能需求分析网络教学综合平台系统,是为师生提供一个良好的教学平台,打造一个完整的网络教学体系。按角色可以分为教师、学生、管理员,每个角色赋予不同的权限,满足各个角色的业务需求,形成一个科学的合理的网络教学模式13。具体系统功能结构如图3-5所示。图3-5 网络教学平台系统的功能层次结构图根据系统的需求分析,可以根据角色把系统分层三个子系统,即:教师子系统、学生子系统、管理员子系统。(1)教师子系统教师子系统主要由六个大模块组成,即学生管理、课程管理、资源管理、公告管理、辅助答疑、日记管理。学生管理。教师可以对选修本门课的学生进行管理,包括查看学生的基本信息、作业成绩。课程管理。课程管理是网络教学平台的重点,它是连接学生与教师的枢纽。课程管理包括了课程介绍、教学大纲、教学计划、课程教学、教学录像等。教师还可以布置作业。学生可以很清楚的了解该课程的信息以及能把握学习的方向。学生还可以从中下载老师的课件、一些相关的教学资源。方便学生学习,为学生提供广阔的平台。资源管理。教师可以上传与课程有关的资源,还可以上传一些其他的资源,例如:素材、软件、源代码等。教师可以对自己的资源进行管理。公告管理。教师可以发表一些公共消息。例:通知什么时候要考试,什么时候要交作业。教师也可以发表一些关于学习上的通知。教师对自己发表的公告拥有控制权限。网上答疑。网上答疑,为学生提供了一个很好的解决疑惑的平台。学生可以在该平台提出任何疑问,包括学习和生活上的问题。教师可以在网上进行回应,帮助解决问题,或找到解决的方法。日记管理。教师可以发表日记,同时可以设置发表权限。(2)学生子系统学生子系统主要由查看公告、查看教师信息、查看课程信息、资源下载、网上答疑等五模块构成。查看公告。学生可以查看教师发表的公告消息。查看教师信息。学生可以查看教师的个人信息。查看课程信息。学生可以查看所有课程的课程信息,包括课程介绍、教学大纲、教学计划、课程教材等,还可以下载关于该课程的一些资源,在线看视频。学生可以提交所学课程的课后作业。资源下载。学生可以在资源下载中心,下载有关的资源。网上答疑。对于不解的问题、或者是生活中的未能解决的烦恼。可以在该平台提出。学生和教师都可以给予解答。(3)管理员子系统管理员子系统包括学生管理、教师管理、资源管理、公告管理、网上答疑管理等五个模块组成。学生管理。管理员可以添加学生和删除学生。添加学生可以单个添加和批量添加。删除学生也可以单个删除和批量删除。管理员还可以更改学生的某些信息。教师管理。管理员可以添加教师和删除教师。添加教师可以单个添加和批量添加。删除教师只能是单个删除。管理员对教师的某些信息有更改的权限。网上答疑管理。管理员可以对网上答疑中的帖子进行管理。3.3功能模型分析为了能够更加清楚的分析系统功能,采用用例图来解释相应的功能。用例图采用面向对象的思想,又是基于用户角度,采用简单的图形表示12。用例图表示了角色和用例之间的关系。它描述了系统、子系统和类的功能集合,表现为系统与一个或多个角色的消息交互动作关系和扩展关系。所以,用例图是非常重要的。网络教学平台系统主要有三种角色:教师、学生、管理员。以不同的角色登录,将显示不同的功能界面,从根本上保证系统使用者个人信息的安全性。3.3.1 网络教学平台中教师用例教师登录后,主要有学生管理、公告管理、课程管理、日记管理、资源管理、个人信息管理等功能。教师用例图如图3-6所示。布置作业用例规约如表3-1所示。图3-6 教师用例图表3-1布置作业用例规约表用例名称布置作业角色教师用例说明该用例主要是实现发布作业的功能,起始于教师点击“发布习题”按钮前置条件进入课程界面基本事件流参与者动作系统响应1.教师输入发布系统的基本信息(包括作业标题、作业备注、上传文件)。系统把数据插入到数据库内,若成功则进入查看作业页面,失败则显示失败页面。备选事件流参与者动作系统响应2.1 未输入标题2.1 提示用户输入标题2.2 未上传文件2.2 提示用户上传文件后置条件作业发布成功3.3.2 网络教学平台学生用例学生登录后可以下载资源、查看成绩、网上答疑、查看教师信息、查看课程信息、完成课后作业等功能。学生用例图如图3-7所示。提交作业用例规约如表3-2所示。图3-7 学生用例图表3-2 提交作业用例规约表用例名称提交作业角色学生用例说明该用例主要是实现作业提交功能,起始于学生点击“上传作业”按钮前置条件学生登录后,进入课程界面,再进入查看作业的详细信息界面基本事件流参与者动作系统响应1. 点击“上传作业”按钮,进入上传作业界面。2. 输入上传作业的相关信息(作业标题、作业备注、上传文件)。系统把数据插入到数据库内,若成功则进入查看作业页面,失败则显示失败页面。备选事件流参与者动作系统响应2.1 未输入标题2.2 未上传文件2.1 提示用户输入标题2.2 提示用户上传文件后置条件作业提交成功3.3.3 网络教学平台管理员用例管理员登录后,可以对人员进行管理,包括学生管理和教师管理。管理员还可以对公告、资源、网上答疑进行管理。管理员用例图如图3-8所示。添加用例规约如表3-3所示。图3-8 管理员用例图表3-3 添加教师用例规约表用例名称添加教师角色管理员用例说明该用例主要是实现添加教师的功能,起始于教师点击“增加教师”按钮前置条件管理员登陆,进入管理员界面基本事件流参与者动作系统响应1. 输入教师的基本信息(教师编号、教师姓名、登陆密码)系统首先查询数据库,查看是否存在该教师,若有则添加失败,则进入2.2。若没有则把信息插入到数据库中,并转到成功页面备选事件流参与者动作系统响应2.1 未输入教师编号2.2 未输入教师姓名2.3 未输入登陆密码2.1 提示教师编号、教师姓名、登陆密码不能为空。2.2 提示该教师已经存在。后置条件教师添加成功3.4本章小结本章从系统的业务需求、功能需求、功能模块三个方面,利用功能层次结构图、活动图、用例图,来对网络教学综合平台系统进行详细的需求分析。4 系统设计系统设计是系统的物理设计阶段,主要是确定系统的逻辑模型和功能要求,还包括数据库的设计。本章主要是介绍系统的总体结构体系,再分别细致地对每一层进行详细介绍。4.1系统总体体系结构4.1.1系统的分层结构框架网络教学综合平台系统是基于javaee的架构,该技术是一种利用java来简化企业解决方案的开发、部署和管理相关的复杂问题的体系结构。根据功能的不同,把应用程序按逻辑划分成表示层、业务层、数据层。分层结构框架如图4-1所示。图4-1 分层结构框架图4.1.2系统的分层结构的工作原理首先用户在表示层发出http请求,然后把请求移交给控制器servlet,控制器servlet接受请求并进行校验,合法的请求将转到业务层,业务层根据请求内容访问数据层相对应的数据表,找到数据后封装成javabean,jsp文件获取javabean对象获得数据,以html的格式显示请求信息,这样完成了一次数据请求。4.2数据库设计4.2.1数据表间的关系 数据库的概念设计是在需求分析的基础上,用概念数据模型如常用的e-r数据模型表示数据及其相互间的关系,是准确表达现实世界数据间关系的重要环节。数据库的设计是允许数据库访问的web应用程序开发的非常重要的环节。数据库设计是允许数据库访问的web应用程序开发的非常重要的部分,它将直接影响系统的长期有效性和产品化程度。系统中的数据表间都有着相互连接的关系,如图4-2所示,学生与教师之间的关系是系统的主要关联关系。主要是通过学生选课表来建立联系,在学生选课表中有教师id、班级、课程id字段,它们单独则作为该表的外键,一起则作为主键。这样学生可以通过班级和老师、课程建立联系。由图4-2中可以看出,在系统中,对数据表间的关系做了清晰的标识,表与表直接可能存在一对一、一对多、多对多的关系,大大提高了系统的访问请求的能力。图4-2 学生与教师之间关系e-r图4.2.2数据库表结构系统中学生信息、教师信息、管理员信息、课程信息等都是存在数据库内,因此,数据库设计的合理性和优越性直接影响到整个系统开发的成败以及系统的可维护性。在系统的开发中,需要使用的表很多,针对一些比较重要的表进行介绍。(1)学生信息表学生信息表主要是用来记录学生的信息,包括学生的学号、密码、姓名、性别等一些基本信息。学生信息表如表4-1所示。表4-1 学生信息表(teacher)字段名称字段类型描述stu_numvarchar学生学号(主键)stu_pswvarchar学生密码stu_namevarchar学生姓名stu_birthdayvarchar学生出生日期stu_classvarchar学生所在班级stu_televarchar学生联系电话stu_mailvarchar学生邮箱stu_addressvarchar学生家庭住址stu_selfvarchar学生自我描述(2)教师信息表教师信息表主要包括用户编号、用户密码、用户名称以及用户的简介。教师信息表如表4-2所示。(3)管理员信息表管理员信息表主要是记录管理员的一些基本信息,如管理员编号、管理员姓名、管理员密码等。管理员信息表如表4-3所示。(4)消息公告表消息公告表主要是记录发布的消息主题、消息内容、消息发布者、消息发布时间等。消息公告表如表4-4所示。表4-2 教师信息表(teacher)字段名称字段类型描述tea_numvarchar教师编号(主键)tea_pswvarchar教师密码tea_namevarchar教师姓名tea_televarchar教师电话号码tea_mailvarchar教师邮箱tea_selfvarchar教师简介表4-3 管理员信息表(admin)字段名称字段类型描述adm_numvarchar管理员编号(主键)adm_pswvarchar管理员密码adm_namevarchar管理员姓名adm_televarchar管理员电话号码adm_mailvarchar管理员邮箱表4-4 消息公告表(message)字段名称字段类型描述mess_idint消息编号(主键)mess_titlevarchar消息主题mess_contextvarchar消息内容mess_authorvarchar消息发布者(外键)mess_datedate消息发布时间(5)文件上传表文件上传表主要是存储资源的一些相关信息,包括资源的名称、资源大小、资源类型、资源提供者、资源上传时间等。文件上传表如表4-5所示。表4-5 文件上传表(upload)字段名称字段类型描述file_idint文件编号(主键)file_namevarchar文件名称file_sizeint文件大小file_typevarchar资源类型file_parentidint文件的父节点file_downcountint文件下载次数file_authorvarchar文件上传者(外键)file_timedate文件上传时间cou_idvarchar文件所属课程的id(外键)cou_infovarchar上传文件的描述file_themevarchar上传文件的主题file_scorevarchar教师的评分file_scoreinforvarchar教师给的意见(6)课程信息表课程信息表主要是存储有关课程的信息。课程信息表如表4-6所示。表4-6 课程信息表(course)字段名称字段类型描述cou_idint课程id(主键)cou_namevarchar课程名称cou_typevarchar课程类型cou_teaidvarchar授课教师id(外键)cou_placevarchar授课地点cou_informationvarchar课程简介(7)学生选课表学生、教师与课程主要是通过表4-7取得联系,所以这张表的设计是关键。当以下三个字段合起来时是该表的主键,分开则为外键。课程信息表如表4-7所示。表4-7课程信息表(course)字段名称字段类型描述cou_idint课程id(外键)cou_classvarchar选课班级(外键)cou_teaidvarchar授课教师id(外键)4.3表示层设计表示层就是用户界面。在某些方面,界面甚至可以被认为是业务应用程序中最重要的部分,因为对大多数用户来说,界面就是应用程序。一个设计良好的用户界面有助于保证业务应用程序的成功并被用户所接受。表示层在mvc模式中充当v模式(即视图模式),能与用户交互,它们向用户显示数据,从用户处获得数据,解释由用户操作所引发的事件,改变用户界面的状态,并帮助用户查看任务的进度。系统中采用了两种界面风格,分为主界面和角色界面(用户登录后显示的界面)。主界面的jsp页面由页头、导航、主页面和尾页构成,页面的头部、导航和尾页形成了整个页面风格,能够给用户以整洁、美观的视觉享受。设计过程中采用jsp标签,避免了很多代码片段的重复拷贝。角色界面采用html标签方式,组织三个窗口(头窗口、导航窗口和主文档窗口),每个窗口存在独立文档,界面直观、简单能够清楚的表达业务需求功能,而且也提高了页面的可维护性。4.4业务逻辑层设计业务逻辑层实际上是根据业务需求,把一些方法重新组合和编排,绑定成一个流程,从而成为一个单独的应用程序。主要目的是完成对系统功能的具体实现,在该层通过调用dao层,完成对数据的访问,同时实现系统中需要实现的各项功能。由于该系统没有很复杂的业务逻辑,所以就和action融合,通过控制action中业务逻辑,调用dao层方法。action调用dao层结构图如图4-3所示。图4-3 action调用dao层的结构图系统的业务逻辑层的架构可以通过需求分析得到,相应的功能设计可以利用业务流程图表示。下面以教师上传文件资源和作业成绩统计为例进行讲解。(1)文件资源上传。网络教学综合平台中存在三种角色,教师、学生、管理员。其中教师拥有上传资源文件的功能。当教师登录后,进入教师界面,可以上传文件资源,输入文件上传界面需要的信息,提交后,通过验证是否符合界面输入要求,若通过则走到下一级判断是否文件已经重复上传,若重复了,则上传失败,若没有则再判断该教师的文件空间是否足够大,若不够就上传失败,否则就上传成功。教师上传文件资源活动图如图4-4所示。图4-4 教师上传文件资源活动图(2)作业成绩统计。教师统计学生的作业成绩,首先是判断该课程有哪些班级选修了,若没有班级选修这门课程,则就不可能有作业成绩,若有则统计选修该课程的班级,再分别统计每个班级的学生,如果该学生未提交作业,则成绩就为0分,该学生若提交了作业,但是教师未评分,那么他的成绩也为0分,统计每个班级的成绩,把成绩分为5个不同的阶段,统计每个阶段的人数,绘制成图标显示出来。通过这个图表可以很清楚的看出,班级与班级的对比,每个班级学生的学习情况。作业成绩统计活动图如图4-5所示。图4-5 作业成绩统计活动图4.5数据层设计数据库层,也称作dao层,dao层的主要功能就是实现对持久化对象的crud访问,主流的数据库接口包括jdbc,hibernate,ibatis等。系统采用jdbc进行数据库的操作。接下来从以下两个方面进行讲解。4.5.1jdbc数据访问jdbc(java data base connectivity,java数据库连接)是为服务java程序的数据库操作功能,而设计的专门java数据库编程接口,在java程序中使用数据库操作功能简化。jdbc专门提供与服务商无关的数

温馨提示

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

评论

0/150

提交评论