《程序设计基础》在线教育系统的设计与实现毕业设计论文Word格式文档下载.docx

上传人:b****4 文档编号:16685564 上传时间:2022-11-25 格式:DOCX 页数:89 大小:2MB
下载 相关 举报
《程序设计基础》在线教育系统的设计与实现毕业设计论文Word格式文档下载.docx_第1页
第1页 / 共89页
《程序设计基础》在线教育系统的设计与实现毕业设计论文Word格式文档下载.docx_第2页
第2页 / 共89页
《程序设计基础》在线教育系统的设计与实现毕业设计论文Word格式文档下载.docx_第3页
第3页 / 共89页
《程序设计基础》在线教育系统的设计与实现毕业设计论文Word格式文档下载.docx_第4页
第4页 / 共89页
《程序设计基础》在线教育系统的设计与实现毕业设计论文Word格式文档下载.docx_第5页
第5页 / 共89页
点击查看更多>>
下载资源
资源描述

《程序设计基础》在线教育系统的设计与实现毕业设计论文Word格式文档下载.docx

《《程序设计基础》在线教育系统的设计与实现毕业设计论文Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《《程序设计基础》在线教育系统的设计与实现毕业设计论文Word格式文档下载.docx(89页珍藏版)》请在冰豆网上搜索。

《程序设计基础》在线教育系统的设计与实现毕业设计论文Word格式文档下载.docx

Andthendothegeneraldesignanddetaileddesign,atthesametimewecompletethedatabaseanalysisanddesign;

Finallyweusethetoday'

spopularprogramdevelopmentintegrationtoolsMyEclipsetorealizetheconcreteprogramming.Thissystemisdividedintothefrontdeskonlinelearningsubsystem,includingonlinetesting,onlinelearning,resourcedownloading,submittingassignmentsandunriddling;

Thebackgroundmanagementsubsystem,includinguserinformationmanagement,coursewareresourcemanagement,newsbulletinmanagement,homeworkmanagement,onlinetestingmanagementandmessageboardmanagement.Thesystemhasfourkindsofroles,administrator,student,teacherandvisitor.Throughusingthissystem,wecanmakethetraditionalclassroomteachinggetwellextend,providingthestudents’afterclasslearningandtheteachers’teachingandthecommunicationbetweeneachotherwithagoodplatform.

KEYWORDS:

Onlineeducation;

JSP;

Onlinetesting;

Onlinelearning;

Submitassignments

1绪论

1.1题目

《程序设计基础》在线教育系统

1.2课题背景

随着Internet/Intranet的普及,计算机应用己经从传统的单机模式转变为以全球互联网WWW(WorldWideWeb)平台为基础的新型服务模式。

但由于受时间和空间的限制,传统教学模式的局限性变得越来越突出。

而WWW以丰富的超文本(图形、声音、动画、视频等)、统一的用户平台(网络浏览器)和其易用性得到了人们的广泛接受。

计算机辅助教学系统面临着一场深刻的改革,作为一种全新的教育形式,基于Web的教学管理系统应运而生。

在这种教学方式下,人们突破了时空的局限,随时可以从网上获取最新、最形象表示的前沿知识。

通过基于Web环境的合作学习,学生可以与其他在线学习者彼此讨论,汇集集体智慧,达到合作学习的效果。

网上教学不仅仅是简单的将教学材料在网上发布,而更多的是学生与教师之间、学生与学生之间的充分沟通与交流,由于远程教学教师与学生之间在空间上的分离,这种沟通与交流就显得尤为重要,另外,传统教学过程中一些保证教学质量的关键环节,如作业、考试、图书馆、笔记记录等,都应该能够在网上得到很好的支持。

所有的沟通与交流以及关键教学环节,都需要一些专用的工具来支持,但是现有Internet技术并没有提供这些工具。

因此迫切需要一套在线教育系统,为教师在网上实施教学提供全面的工具支持,也使得网上教学从简单的教学信息发布变成一个充满交流与互动的虚拟化学习社区。

1.3课题研究目的及意义

1.3.1研究目的

本课题是在线教育综合管理系统的一部分,实现本科生对《程序设计基础》课程的网上学习。

其包括六个部分:

用户信息管理,课件资源管理,新闻公告管理,作业批改管理,在线测试管理,留言板管理。

该系统的主要目的是实现一个在线学习与资源共享平台,用户借助此平台可以随时随地、灵活有效的学习和测试,共享资源,提高学习效率。

并与小组成员共同努力,开发一个完整的《程序设计基础》在线教育系统,进一步提高程序设计基础的教学水平和同学们的编程能力。

从学习和实践角度来说,通过此次开发工作,对本科阶段学习进行总结和检验。

通过本项目开发来提高自己的软件需求管理、系统设计、编程技能、文档编写能力,同时培养自己的小组协作能力和软件工程意识。

1.3.2研究意义

在传统的课堂式教学下学习存在着很多的缺点,如:

享受到最优秀老师服务的只能是少数人;

不能灵活的掌握学习主动权。

随着科学技术的不断提高,计算机科学与技术日渐成熟,计算机应用的普及,计算机已进入人类社会生活的各个领域,并发挥着越来越重要的作用,越来越多的学生选择网上在线学习。

在线教育系统提供最优秀的教育资源。

传统授课方式中,真正能享受到最优秀老师服务的只能是少数人,而通过在线教育系统提供的视频学习,任何人都可以轻松享受到优秀老师提供的教学服务。

在线教育系统整合各领域最优秀的教学视频,可以让你接受第一流的教育。

在线学习不受时间的限制,并且可以随时随地在可以上网的地方参与学习。

同时,本课题能够锻炼一个人在面对具体项目时,遇到问题,分析问题,解决问题的能力;

获得独立策划、实施课题,并按照既定计划进行开发的经验,以及查找相关文献的能力。

通过自己的努力使得对于在线教育系统有一个全面的、深刻的认识。

为以后研发工作打下坚实的基础,积累宝贵的经验。

1.4设计时间

16周

1.5课题内容及分工

1.5.1课题内容

《程序设计基础》在线教育系统主要提供《程序设计基础》课程的网上教学平台。

通过对本系统的开发,主要实现以下功能:

1)教师可以通过该系统发布教案、布置/批改作业、发布公告和答疑解惑等;

2)学生可以通过该系统完成自学,向老师提出问题,跟老师和其他同学讨论,

上交作业,浏览公告,查询作业及成绩等。

1.5.2课题分工

共同合作:

需求分析,数据库分析设计,管理员子系统的编码实现。

刘鹏:

教师子系统、在线测试系统的编码实现,数据库设计,撰写部分文档、论文。

武林:

学生子系统、在线测试系统的编码实现,系统测试,撰写用户手册、论文。

1.5.3设计成果

1)系统可执行程序一套;

2)毕业设计论文一份;

3)系统用户手册一份。

2相关技术原理及开发环境

2.1相关技术原理

2.1.1Browser/Server系统的三层体系结构

在Browser/Server的系统中,用户可以通过浏览器向分布在网络上的许多服务器发出请求。

Browser/Server结构极大的简化了客户机的工作,客户机上只需安装、配置少量的客户端软件即可,服务器将担负更多的工作,对数据库的访问和应用程序的执行将在服务器上完成。

在Browser/Server三层体系结构下,表示层(Presentation)、业务逻辑层(BusinessLogic)、数据访问层(DataService)被分割成三个相对独立的单元(如图2-1所示):

图2-1三层结构模型

第一层--表示层:

Web浏览器

在表示层中包含系统的显示逻辑,位于客户端。

它的任务是由Web浏览器向网络上的某一Web服务器提出服务请求,Web服务器对用户身份进行验证后用HTTP协议把所需的主页传送给客户端,客户机接受传来的主页文件,并把它显示在Web浏览器上。

第二层--业务逻辑层:

具有应用程序扩展功能的Web服务器

在业务逻辑层中包含系统的事务处理逻辑,位于Web服务器端。

它的任务是接受用户的请求,首先需要执行相应的扩展应用程序与数据库进行连接,通过SQL等方式向数据库服务器提出数据处理申请,而后等数据库服务器将数据处理的结果提交给Web服务器,再由Web服务器传送回客户端。

第三层--数据访问层:

数据库服务器

在数据访问层中包含系统的数据处理逻辑,位于数据库服务器端。

它的任务是接受Web服务器对数据库操纵的请求,实现对数据库查询、修改、更新等功能,把运行结果提交给Web服务器。

从上面的分析中可以看出,三层的Browser/Server体系结构是把二层Client/Server结构的事务处理逻辑模块从客户机的任务中分离出来,由单独组成的一层来负担其任务,这样客户机的压力大大减轻了,把负荷均衡地分配给了Web服务器,于是由原来的两层的Client/server结构转变成三层的Browser/Server结构。

2.1.2JavaServerPage(JSP)技术

在本系统的开发过程中采用的是JSP+JavaBean+Servlet模式,在该模式中,结合了JSP和Servlet技术,充分利用了JSP和Servlet两种技术原有的优点。

此模式遵循视图控制器(MVC)模式,它的主要思想是使用一个或多个Servlet作为控制器。

请求由前沿的Servlet接收并处理后,会重新定向到JSP。

在Servlet作为控制器时,每个Servlet通常只实现很少一部分功能,多个Servlet控制器就可以结合起来完成复杂的任务,这样的好处是Servlet的重用性好。

在此模式中,JavaBean作为模型的角色,它充当JSP和Servlet通信的中间工具,Servlet处理完后设置Bean属性,JSP读取此Bean的属性,然后进行显示。

此模式更加明显的把显示和逻辑分离,使代码容易管理,适合于大型项目的开发,所以在本系统中采用了这种模式[8]。

此模式的数据传递关系如图2-2所示。

图2-2JSP+JavaBean+Servlet开发模式数据传递关系

首先,J2EE结构是设计和开发在线教育系统的核心。

第二,系统提供的大部分操作都涉及到与用户动态地进行信息交互,要求系统能够实现数据的动态发布。

第三,位于客户端的用户主要通过浏览器使用本系统。

第四,在Sun公司提出的J2EE蓝图中明确推荐使用JSP技术为动态内容提供服务[9]。

因此,在J2EE结构的模型框架下,JSP技术是实现此系统动态信息交互功能的首选方案。

JSP技术主要有以下一些特点[17]:

1)应用程序逻辑和页面显示相分离的特性。

JSP把用户界面从系统内容中分离

开来,使得设计人员能够在不改变底层动态内容的前提下改变整个网页布局。

2)组件的可重用性。

绝大多数JSP页面依赖于可重用的、跨平台的组件来执行

应用程序的处理。

开发人员能够共享和交换执行组件,并利用这些组件创建应用程序。

基于组件的方法加速了开发过程,提高了应用程序的开发效率[15]。

3)跨平台特性。

JSP技术将“一次编写,随处运行”的思想推广到了交互网页

中,因此不需要作任何更改,就可以很轻松地跨平台和跨Web服务器移动JSP页。

4)可以用多种格式为动态内容提供服务。

JSP可以为不同的客户端提供服务,

包括使HTML/DHTML的常规浏览器、使用WML的移动电话和PDA等手持式无线设备以及使用XML的其他B2B应用程序等[19]。

2.1.3JDBC技术

JDBC技术在J2EE结构的中间层与EIS层的数据源之间提供了数据库独立的开放性连接,使应用程序不仅可以对基于SQL标准的关系数据库系统进行访问,而且还可以对其他类型的数据源进行访问[12]。

JDBC技术通过提供API使Java应用程序能够实现位于系统层的数据库的访问能力。

J2EE结构中间层的应用组件通过JDBC技术可以完成下列功能:

实现与位于J2EE结构中系统层的数据库服务器的连接;

管理事务;

将SQL请求传送到数据库管理系统进行预处理并执行相应的数据操作;

执行存储过程;

检查修改查询语句的执行结果等。

JDBC有一个非常独特的动态连接结构,它使得系统模块化。

使用JDBC来完成对数据库的访问包括以下四个主要组件:

Java的应用程序、JDBC驱动器管理器、驱动器和数据源。

图2-3展示了Java程序、JDBC、JDBC驱动器和数据源之间的关系。

图2-3java程序通过JDBC访问数据库

其访问过程为:

1)通过驱动器管理器获取连接接口。

2) 

获得Statement或它的子类。

3) 

限制Statement中的参数。

4)执行Statement。

5)查看返回的行数是否超出范围。

6)关闭Statement。

7)处理其它的Statement。

8)关闭连接接口。

JDBC向应用程序开发者提供了独立于数据库的统一的API。

这个API提供了编写的标准和考虑所有不同应用程序设计的标准。

其奥秘是一组由驱动程序实现的Java接口。

驱动程序负责标准JDBC调用向支持的数据库所要的具体调用转变。

JDBC 

API用于连接Java应用程序与各种关系数据库。

这使得人们在建立客户/服务器应用程序时,通常把Java作为编程语言,把任何一种浏览器作为应用程序的友好界面,把Internet或Intranet作为网络主干,把有关的数据库作为数据库后端。

以下是使用JDBC的优缺点。

优点如下:

1)JDBC 

API与ODBC十分相似,有利于用户理解。

2)JDBC使得编程人员从复杂的驱动器调用命令和函数中解脱出来,可以致力于应用程序中的关键地方。

3)JDBC支持不同的关系数据库,使得程序的可移植性大大加强。

4)用户可以使用JDBC-ODBC桥驱动器将JDBC函数调用转换为ODBC。

5)JDBC 

API是面向对象的,可以让用户把常用的方法封装为一个类,以备后用。

缺点如下:

1)使用JDBC,访问数据记录的速度会受到一定程度的影响。

2)JDBC结构中包含了不同厂家的产品,这就给更改数据源带来了很大的麻烦。

2.2开发环境

2.2.1系统硬件环境

1)服务器:

PentiumIII1G(或与此相当的CPU)以上配置的高性能PC机,有网络接口卡(NIC),内存应在256M以上,硬盘在80G以上。

数据库软件IBMDB2,还可选用备份服务器。

2)操作系统:

Windows2000Server/WindowsXP操作系统。

3)客户端:

PentiumIII500(或与此相当的CPU)以上配置的PC机,有网络接口卡(NIC),内存应在128M以上,硬盘在10G以上。

Windows98以上操作系统,安装Web浏览器。

4)网络:

服务器和客户端应有网络连通。

配置TCP/IP协议。

2.2.2系统开发工具

1)开发环境:

MyEclispse7.5。

2)Web服务平台:

Tomcat6.0。

3)数据库:

SQLServer2005。

3需求分析

3.1引言

为了对在线教育系统的性能和功能更好的分析,我们首先进行了需求分析工作。

通过需求分析我们可以了解到在线教育系统中用户所要知道完成的主要功能就是课程与班级的选择,学习资料的下载、浏览,留言与回复,在线测试,从而使用户达到自己的目的。

软件需求包括三个不同的层次:

业务需求、用户需求和功能需求也包括非功能需求。

业务需求反映了组织机构或客户对系统、产品高层次的目标要求,它们在项目视图与范围文档中予以说明。

用户需求文档描述了用户使用产品必须要完成的任务,这在使用实例文档或方案脚本说明中予以说明。

功能需求定义开发人员必须实现的软件功能,使得用户能完成他们的任务,从而满足了业务需求。

3.2可行性分析

3.2.1技术可行性

本课题所涉及的研究目标,在国内外已经有相当成熟的理论基础和技术基础。

通过开发人员的文献调查,对于在线教育系统所涉及到的技术问题进行细致的分析,绝大部分可以使用计算机科学与技术的专业知识进行构建,其他的部分则可以通过自学,调用已经开发好的一些功能模块的接口完成课题涉及到的技术要求。

3.2.2经济可行性

本课题通过对既有开发平台的使用,能够设计出比较完善的《程序设计基础》在线教育系统,没有任何经济上的负担,通过本课题可以自主开发我院网上教学平台,即节省了学院的经费,又锻炼了学生的自我研发意识和自己动手的能力。

3.2.3操作可行性

本课题要求对于在线教育系统有比较细致的了解,能够通过对于既有文献的学习和既有技术文档和程序的研习,利用自己在校学习的系统的计算机科学与技术的专业知识,自主开发出《程序设计基础》在线教育系统。

本系统的界面友好,具有详细的帮助文档。

从可操作性的角度来讲,完全可行。

3.3功能需求

《程序设计基础》在线教育系统采用面向对象的编程,结合网络和数据库技术,实现、控制和管理其他教学网站所具有的基本功能。

本系统有学生、教师、访客和管理员四类角色,其结构图如图3-1所示。

图3-1网站用户结构图

在同知道老师探讨后,结合我们和本学院相关学生的沟通,以及网络上的一些常规需求,总结出以下需求。

学生的需求:

(1)注册学生通过浏览网页,下载课件以及教学资源,观看网络精品教程,向老师提出问题,跟老师和其他同学讨论,上交作业,浏览公告,查询作业及成绩,进行在线测试等。

(2)非注册学生只能浏览公告。

管理员的需求:

在后台完成公告管理、学生和教师的资料管理、上传资源及题库管理。

教师的需求:

教师通过浏览网页可以发布教案,布置/批改作业,发布公告和答疑解惑,同时完成考试管理和资源管理。

3.4系统的UML建模

3.4.1系统的用例图

创建用例图之前首先需要确定参与者。

1)系统中,需要学生和教师的参与。

注册学生通过浏览网页,下载课件以及教学资源,观看网络精品教程,向老师提出问题,跟老师和其他同学讨论,上交作业,浏览公告,查询作业及成绩,进行在线测试等。

非注册学生只能浏览公告。

教师作为教学的主导者,可以通过浏览网页可以发布教案,布置/批改作业,发布公告和答疑解惑,同时完成考试管理和资源管理。

2)需要一个专门的管理者进行日常维护与管理,所以需要有系统管理员参与。

(1)系统用户参与的总的用例图

教师和学生都可以从“网站用户”这个参与者泛化而来,网站用户是指网站的注册用户,注册用户可以登录系统完成相应的操作。

系统用户参与的总的用例图如图3-2所示。

从图中可以清楚地看到泛化关系与各个参与者所参与的用例。

图3-2系统用户参与的总的用例图

抽象参与者注册用户的用例只有登录系统(SystemLogin)一个,学生和老师用户除了包含这个用例以外,还各自有相对应的用例。

(2)学生参与者的用例图

学生参与者的用例图如下图3-3所示。

图3-3学生参与的用例图

a)浏览用例:

学生可以浏览诸如课程简介,教学计划,学习方法等教师发布的文章。

b)搜索用例:

学生可以使用搜索功能根据关键字查询相应的文章。

c)下载用例:

学生可以使用下载功能将网站上的课件以及资料信息下载到本地机器上。

〖用例图说明〗

(a)Download:

文件下载用例。

(b)Lookthroughinfo:

文章浏览用例。

(c)Articlesearch:

文章搜索用例。

(3)教师参与者的用例图

教师参与者的用例图如下3-4所示。

图3-4教师参与的用例图

a)添加课程简介用例:

教师可以为自己所教授的课程添加课程简介。

b)上传课件用例:

教师可以将课程的课件上传到网站上供学生下载。

c)文章或消息发布用例:

教师可以发布介绍学习方法,课程重点等和教学相关的文章,以及和课程相关的通知等。

d)文章或消息修改用例:

教师可以修改自己发布的文章和通知。

(a)CourseIntro:

添加课程简介用例。

(b)UploadCAI:

上传课件用例。

(c)MessageIssue:

文章或消息发布用例。

(d)MessageUpdate:

文章或消息修改用例。

(4)系统管理员参与者的用例图

系统管理员的用例图如下3-5所示。

图3-5系统管理员参与的用例图

a)页面维护。

系统管理员可以对网站进行日常维护与管理。

b)处理注册申请。

系统管理员可以处理学生或教师用户的注册申请。

(a)PageMaintenance:

页面维护。

(b)InformationUpdate:

页面更新。

系统管理员负责网站的页面更新,除了文

章,消息,图片等的更新,还包括页面的美化和板块的调整。

(c)QuestionsManage:

题库管理。

3.4.2系统的时序图

网络教学系统中的用例很多,所能画出的时序图也很多,在此不一一介绍。

1)系统管理人员管理网站的时序图如图3-6所示:

图3-6系统管理人员管理网站的时序图

〖时序图说明〗

(1)Librarian:

管理人员,进行各种系统的操作。

(2)UserLogin:

用户登录,需要管理员输入登录必须的验证信息。

(3)Operation:

基本操作,管理员根据相应的要求进行添加、修改、删除等操

作。

(4)Maintenance:

维护,管理员进行信息的维护。

(5)Query:

查询,管理员进行信息的查询。

系统管理人员通过与管理窗口的交互可以添加或删除文章,更新CAI课件,添加或删除用户。

具体的操作由管理窗口与数据库交互完成,管理员操作后的结果会在页面上显示。

2)用户登录系统的时序图如图3-7所示:

图3-7用户登录系统的时序图

(1)Input(String,String):

输入用户名和密码的函数。

(2)Send(String,String):

将用户名

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

当前位置:首页 > 求职职场 > 简历

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1