基于B/S模式的大学课程教学辅助平台的设计与实现
2019-07-19夏芙蓉
夏芙蓉
摘 要 在信息化条件下创新教学模式已成为教学改革研究的重点。而JavaEE技术及其众多应用框架层出不穷,为我们实现一个方便高效、简单易用、便于开发和维护的基于B/S模式(Browser/Server,浏览器/服务器模式)的大学课程教学辅助平台提供了技术上的可行性。该平为教师提供作业自动批改、试题创建与维护、试卷在线生成、学生疑惑在线解答等一系列方便的功能。同时也为学生提供在线课程学习、在线作业书写、在线提问、错题回顾等一系列功能。
关键词 教学辅助平台 JavaEE技术 B/S模式 在线题库
中图分类号:TP311文献标识码:A
0引言
大学教育具有一定的专业性和针对性。而课程是大学教育的载体。
在传统的大学教育中,教师的教学负担重,而学生的学习主动性也不高。随着计算机技术飞速发展,各种图形化技术、存储技术、人机交互技术为教育改革提供了充分的可能性。
本文分析传统教学模式的弊端,并结合现有的技术条件,寻找解决办法:基于JavaEE技术,使用SSH框架,开发一个面向大学课程的教学辅助平台。该平台由课程资源子系统、题库资源子系统、过程考核子系统、师生交流互动子系统组成。为教师提供在线批改作业、题库维护、在线答疑、课程资源管理、学生考核管理等功能,为教师的教学提供帮助。也为学生提供了在线做作业、在线学习、学习历程回顾等功能。
1需求分析
系统软件最终是否成功,很大程度上都依赖于软件的需求分析是否合理完善。如软件应具有哪些功能、软件系统自身的性能、后期的维护和扩展上有怎样的要求等。
结合大学课程的实际情况及软件系统的功能建模,大学课程教学辅助平台应该具有以下功能:(1)个人信息管理;(2)课程信息资源管理;(3)题库管理;(4)作业发布与批改;(5)实验发布与批改;(6)师生反馈与交流;(7)在线测试管理;(8)课程公告信息管理;(9)系统权限管理;(10)用户管理;(11)平时成绩分析。
同时,作为一个完善的软件系统平台,该辅助平台应该具有以下特点:(1)面向大学课程设计,有针对性;(2)符合教师教学习惯,有高效性;(3)满足学生学习需求,有专业性;(4)适合教师和学生,以及管理员各种用户角色使用,功能完善;(5)系统中产生的数据的保存具有安全稳定性;(6)人机交互界面要直观大方,简单易用;(7)使用模式采用B/S模式,方便用户使用。
2系统设计
系统设计的目的就是将目标系统从整体上进行分析,设计总体的系统结构和不同功能模块,以及模块之间的相互关系,还有不同逻辑层的接口之间相互调用的关系,最后还需要对数据库进行设计。最终实现一个逻辑清晰、高效易用、便于开发、易于维护的软件系统。本系统平台的系统体系架构图如图1所示,自底向上分为数据层、业务逻辑层、控制层、用户界面层。
2.1 MVC设计模式
MVC(Model/View/Controller)设计模式即模型-视图-控制器设计模式,是一种广泛应用于软件设计中的系统结构模式。这种模式将数据、业务逻辑和视图表示严格地分开,使得系统结构模块化,便于开发和维护,有较强的扩展性。
2.2数据层
数据层是软件系统中最底层,数据层为上层提供基础数据,上层有了数据才能进一步分析和处理。数据层主要由数据库和数据层访问接口构成。数据库保存着系统中各种可能的对象,以及对象之间的关系。
而数据层访问接口对外提供一系列能获取数据库中数据的功能。数据库接口的设计需要满足调用简单、参数设置合理、目的明确等要求。
2.3业务逻辑层
业务逻辑层的作用是接受上一层传递过来的请求,然后调用数据层中的数据应用一定的业务逻辑规则进行处理,将处理后的结果返回到上一层的调用者。
业务逻辑层中封装了系统中各个业务的逻辑功能,各个功能需要有效的封装和组合,相互之间不能有功能重合和功能缺失。在各个功能的配合下,通过数据访问层获取数据,然后使用数据进行处理,得到想要的目标结果。
2.4控制层
控制层的作用就是接受用户层传递过来的用户请求,然后将请求按照约定的规则和不同目标进行请求分发,将不同的请求下发到下面业务逻辑层,调用业务逻辑层中封装的业务功能,然后收到业务逻辑层的返回结果。收到结果之后就返回到用户表示层,选择更新和渲染视图。
在B/S模式中,控制层主要通过URL来识别不同的请求,通过URL的构造来解析请求中携带的请求参数和目标,决定应该分发到何处,调用什么样的方法,最后根据结果更新什么样的视图。
2.5用户层
用户层也叫用户表示层或者MVC模式中的视图层,用户层的作用就是软件系统与用户之间的沟通桥梁。
用户层中封装了各式各样的文字、图像、表单等组件,使用户能方便地通过客户端来完成系统操作。在B/S模式中,客户端就是浏览器,用户层中的组件都是使用HTML标签进行实现的。
3功能设计
本系统平台的功能详细设计如图2所示。
大学课程教学辅助平台主要分为以下几个子系统:(1)课程管理子系统;(2)题库管理子系统;(3)作业管理子系统;(4)实验管理子系统;(5)在线交流子系统;(6)其他功能。
将大型系统拆分为若干个子系统有助于理清逻辑结构,每个子系统有自己的功能模块,系统向外提供的功能就显得井井有条。功能之间不会重复,用户能清晰明确在系统软件中通过有序的功能结构划分实现自己想要的操作。
3.1课程管理子系统
课程管理子系统的主要功能是对一门课程进行全方位管理,如课程创建功能,需要录入课程的基本信息,比如课程名,授课教师,课程的开课学期,课程的选课人数上限等等。創建之后,拥有该课程的教师还可以修改课程中设置错误的信息。教师还可以发布课程公告,在公告中通知选择了该课程的所有学生一些事项,比如课程作业,课程变更等。
3.2题库管理子系统
题库管理子系统的主要功能是维护一门课程的题库,教师可以将试题输入到题库中,为以后的作业和考试的试题做准备。题目的类型包括常见的单选、多选、判断、问答等。教师也可以对题库中的题目有误的地方进行修改。作业发布和试题生成功能可以调用题库提供的接口,从题库中按教师制定的规则抽取若干题目,来生成一套完整作业或试卷。
3.3作业管理子系统
作业管理子系统的主要功能是对课程中的作业的管理。教师可以从题库中按照期望的规则生成一次作业。学生根据教师发布的作业,在网上进行作答。除了主观题,其他的客观题如选择题和判断题都能在线自动批改,学生能立即得到反馈。
3.4实验管理子系统
许多课程都有实验环节,学生需要对实验进行记录,并按照要求书写实验报告,老师通过实验报告来判断学生学习的情况,以及将实验报告作为期末成绩考核的一部分。
因此实验管理系统就需要贴近需求,制定功能。比如教师发布实验报告要求和实验报告书写模板,学生根据要求和报告模板来完成实验报告。学生提交报告之后,教师批改并给出分数和评语。
3.5在线交流子系统
在线交流子系统为师生提供了一个沟通桥梁,学生可以在上面进行留言,表达自己在学习上的困惑或者其他方面的疑問。教师或者其他同学看到留言之后,可以对留言进行回复和解答。
3.6其他功能
除了上述核心子系统功能外,一个成熟的软件系统还有一些必不可少的支撑性功能。比如平台的用户的登录注册功能,平台用户的权限管理,课程中一些基础数据和资源的维护功能。虽然这些功能和大学课程没有直接关联,但对于系统平台的稳定性和可用性却必不可少。
4系统实现
本章主要介绍了系统平台的实现细节。介绍了系统的技术框架的选择和两个最为核心的功能子系统。从技术实现方面来深入了解大学课程教学辅助平台的技术架构。
4.1技术选型
结合大学课程的特点、师生习惯,本文在充分调研之后,该平台的实现将基于B/S模式。后台基于Java语言,采用MVC设计模式以便进行高效的开发和灵活的扩展和维护,使用SSH(Spring/SpringMVC/Hibernate)框架实现快速开发迭代。前端基于HTML、CSS、JavaScript语言,并使用一些流行的前端框架实现用户友好的交互界面。数据库采用开源的MySQL数据库保障数据的安全可靠。
4.2作业管理子系统
作业管理子系统由作业发布、作业作答、作业自动批改、作业手动批改、成绩统计的功能部分组成。
4.3题库管理子系统
题库管理子系统由题库由添加题目、修改题目、删除题目功能部分组成。
5总结
本文从需求分析到系统设计,最后到系统实现,详细地描述了一个基于B/S模式的适用于大学的教学辅助系统软件平台,此平台针对大学课程的特点,为教师和学生提供了一个界面友好、操作方面、简单高效的教学辅助系统。该系统采用流行的JavaEE语言,利用业界常用的SSH框架和优秀的前端技术框架进行开发,创新地将传统教学和学习过程移植到网络平台之中,教师和学生因此仅使用浏览器就能随时随地进行教学和学习。在线自动评改功能、作业自动生成发布功能等实用功能都极大地提高了教学和学习的效率。同时直观的作业情况展示和记录追踪可以作为教学和学习的评价指标。
参考文献
[1] 谢维和.论大学课程的科学性[J].中国大学教学,2018(02):4-6+13.
[2] 唐莺,陈棣湘,潘孟春.“电工与电路基础”教学中科学思维能力的培养[J].大学教育,2014(17):86-87.
[3] 李超,谢坤武.软件需求分析方法研究进展[J].湖北民族学院学报(自然科学版),2013,31(02):204-211.
[4] 敖冰峰.软件教学中关于软件设计的概要设计与详细设计[J].北方经贸,2002(05):119-120.