论文部分内容阅读
摘 要:为开发一套能够辅助中医学生学习《中医诊断学》课程、满足学生随时随地的学习需求、方便教师和学生进行交流的移动学习系统,文章从移动学习系统的国内外研究现状入手,对系统进行需求分析、总体设计,仔细分析系统采用的关键技术。作者使用SQL Server数据库进行数据存储,用Android Studio和MyEclipse开发工具实现了系统,其中包括学生端App、教师端App和后台管理系统3个子系统。教学实践证明,该系统学习理念先进、界面友好、使用流畅,能够满足学生和教师的需求,具有一定的实用价值。
关键词:移动学习;中医诊断学;系统设计
中图分类号:TP393 文献标志码:B 文章编号:1673-8454(2018)16-0070-04
《中医诊断学》是中医相关专业学生的一门必修课程,学生在学习过程中不仅要学习望闻问切四诊法,还要建立唯物辨证思想,熟练掌握诊察病情、判断病证的方法和技能。其内容抽象、重点繁琐,学生在学习过程中较难掌握课程的核心思想,经过死记硬背后的学习效果甚微。[1]根据对大学生移动学习的需求分析,开发一款有效学习《中医诊断学》、提升用户体验度、促进中医学子交流的移动端平台企足而待。因此,本文的主要目的是开发一套能够辅助学生用户进行《中医诊断学》课程学习,满足学生随时随地的学习需求,方便教师和学生进行交流的移动学习系统。
一、国内外研究现状
1.国外研究现状
国外移动学习主要集中在欧洲和北美部分发达国家。国外的移动学习研究项目包括:应用于中小学教育领域的欧洲Learning2GO项目,把课堂学习延伸到了户外;[2]瑞典Vaxjo大學用Java和XML技术开发的C-Notes项目支持学生移动协作学习;[3]芬兰赫尔辛基大学的移动学习项目UniWap为学习者和教师提供了一个可操作的移动学习环境,学习者和教师能够通过智能手机随时随地访问教学和学习资源;斯坦福大学学习实验室(SLL)针对语言学习,开发出了移动学习模块,其模块包括了单词、测验和生词训练等功能,并且每个模块的持续时间被控制在30s-10min之间;[4]新墨西哥大学开发的Mentira是一款结合GPS并贴近真实社会的游戏,使用者在游戏里与人物进行交流,从而提高使用者的西班牙语交流能力[5]等。
2.国内研究现状
国内的移动学习研究相对国外起步较晚,但在最近几年也取得了不错的成就。如:应用于英语学习领域的百词斩、扇贝单词;实现资源共享,提供快捷问答交互功能的百度作业帮、学霸君;提供丰富课程资源的在线移动课堂沪江网校、网易云课堂;为社会考试而生的提分利器驾考宝典、粉笔公考等。
从上述的研究实例可以看出,移动学习的研究范围已经应用到基础教育、高校教育的补充、社会考试等领域,可以说是非常广泛。但目前市场上应用于中医学习方面的移动学习系统还比较少,特别是只针对《中医诊断学》的移动学习系统几乎没有,所以积极开展《中医诊断学》课程移动学习系统的研究尤为必要。
二、系统设计
1.需求分析
结合不同操作系统的移动终端使用量,选择Android这一开源的开发平台进行开发。《中医诊断学》师生交互式智能学习系统(以下称为“中诊学习小助手”)面向的主要用户是中医院校的教师和学生,我们通过发放问卷、访谈的方式,结合国内外先进的学习理念以及当前学习类App的特点,总结出学生的学习需求、教师的教学需求。
学生的学习需求主要为视频学习、习题检测和互动交流等。我们挖掘出以下5个功能:①系统学习。采用微课式教学方法,[6]基于中医诊断学界泰斗朱文峰教授主讲的《中医诊断学》视频资源,把视频进行分解,划分为相对独立的知识模块,每个学习视频用10min-15min来阐述一个独立小知识点,有助于学生利用碎片时间随时学习,提高学习效率。另外,每个视频还应配有知识概要、入门习题以及可供下载的资源。②名师讲解。这是中医诊断学系统理论的扩展部分,采用视频学习的方式,视频内容可以是名师的教学心得、病案分析、中医诊断学的现代研究进展等,用于扩充学生的知识面。③习题检测。应提供进阶练习:入门习题对应于系统学习模块的每个视频,即每个知识点;精通习题采用遗传算法进行智能组卷,根据用户选择的难易程度组出更适合学生的个性化试卷,这也是本系统的亮点之一;大师习题是看图辩证的习题,由于辩证是一个动态的过程,所以该处习题的图片采用的是GIF动图。④你问我答。给学生和教师提供交流社区,以发帖的形式提出问题、解答问题、分享学习经验和心得。⑤个人中心。学生用户可以在此对个人信息进行管理。
教师的教学需求主要为查看学生学习情况、互动交流、分享资源等。我们挖掘出以下3个功能:①查看学生学习情况。以柱状图和饼状图的形式展示学生的学习情况,一目了然。②你问我答。该功能同学生用户的你问我答。③个人中心。对教师来说,在此模块除了能对个人信息进行管理外,还提供了上传资源的功能,实现资源共享。
本系统还需设置后台管理员,后台管理员通过后台管理系统实现对用户、视频、题库、问答资源的管理。
2.总体设计
(1)系统功能模块设计
中诊学习小助手分为学生端App、教师端App以及后台管理系统3个子系统,分别针对学生、教师、管理员三种不同的用户。
学生端App分为名师讲解、系统学习、习题检测、你问我答、个人中心5个功能模块;教师端App分为查看学生学习情况、你问我答、个人中心3个功能模块;后台管理系统分为用户管理、视频资源管理、题库资源管理、问答资源管理4个功能模块。其中,每个模块实现不同的功能,模块与模块之间有一定的联系,使用者可以根据自己的需求选择相应的模块使用系统。系统的功能模块图如图1所示。
(2)技术架构设计 本系统的学生端App、教师端App与服务器端进行交互,是基于C/S架构的智能学习平台,后台管理系统通过浏览器与服务器端进行交互,即B/S架构。在系统的整体设计上,采用两种架构结合的方式——扩展化的B/S架构。[7]
系统分为终端层、服务器端接入层、服务器端业务层、服务器端数据层。通过这种分层的形式,实现了前后端的分离,降低了各层之间的耦合度,使得代码更加简洁,同时也便于系统后期的优化和维护工作。本系统的终端有浏览器终端和移动终端两种类型,用于显示界面、向服务器发送请求;服务器端接入层主要负责接收终端的请求以及给终端发送响应;服务器端业务层用于处理各种业务逻辑;服务器端数据层与数据库进行交互,为上层提供数据访问服务。为了提高代码的复用度,每一层都将提供一个通用的接口Java实现类。
终端与服务器的通讯采用HTTP协议,用Servlet技术接收或响应请求,JSON作为数据传输的格式。针对通信安全的问题,采用MD5数据加密算法对私密信息进行加密处理。
(3)数据库设计
系统采用SQL Server 2005数据库实现数据的存储。系统数据库包括用户表、章表、视频表、习题表、问题表、回答表、错题表、资源表。
数据库中存在以下实体类:用户、视频、习题、问题、回答、资源等,这些实体中存在“一对一”“一对多”以及“多对多”的关系。在设计表结构时,把存在“一对一”关系的放在一张表中,存在“一对多”关系的拆分在两张表中,对于“多对多”的实体,建立一张中间表,将其拆分成“一对一”和“一对多”的关系。
本着建立冗余较小、结构合理的数据库的原则,在设计数据库时遵循了三大范式:①数据库中的每张表的每一个字段都保证了其原子性,满足了第一范式。②数据库中的每张表的每一个字段都和所在表的主键相关,而不能仅满足主键的一部分,即一个表中只能保存一种数据,如有多种数据应进行拆分,用多张表进行存储,这就满足了第二范式。③数据库中的每一张表的每一个字段都和主键直接相关,而不能间接相关,满足第三范式。另外,考虑到在查询数据时的性能,适当增加了一些数据冗余,以达到时间性能的要求。
三、关键技术实现
1.Android客户端与服务器数据交互
Android客户端与服务器端数据交互的主要工作流程为:Android客户端通过HTTP协议,采用POST或者GET方法向服务器提交数据请求。服务器将数据请求通过服务器的Servlet子类HttpServlet对象提交给服务器的业务逻辑部分处理,服务器的业务逻辑部分根据Android客户端的要求进行运算,将运算的结果封装成JSON格式,再通过服务器端的HttpServlet响应到Android客户端。Android客户端将接收到的JSON格式的数据进行解析后显示在UI界面上。[8-10]
2.在线视频播放
通过服务器端的授权访问,采用HTTP协议从服务器获取课程视频的资源路径,并使用Vitamio框架,通过调用其提供的接口,访问资源路径进行视频播放。
3.智能组卷
在设计系统时,在习题检测的精通模块,要求进行智能组卷,试卷要满足用户的难度需求,区分度高。针对这样的多目标多约束求最优解问题,分析了多种算法,发现遗传算法非常适合解决此类问题。
遗传算法的过程类似于基因演化:①随机产生N个个体作为初始种群,设置最大迭代次数;②计算个体适应度,如果个体适应度符合期望值或迭代次数达到最大值,则输出最优解并结束,否则进入下一步;③依据适应度、采用轮盘赌的方式选择父代个体;④按照一定的交叉概率和交叉方法生成新的子代;⑤按照一定的变异概率和变异方法生成新的子代;⑥交叉和变异产生了新一代的种群,返回到步骤②。其流程图如图2所示。
考虑到使用传统的遗传算法进行组卷时会出现迭代后期效率慢、易陷入局部最优等问题,本系统在设计时对遗传算法进行了一些改进。在编码时,采用了分段实数的编码方案;在执行选择操作时,融入了精英保留策略;在执行交叉操作时,采用了分段单点交叉的方式。
四、系统功能测试
学生端App和教师端App使用魅族MX5手机安装直接运行进行测试,测试机参数见表1。后台管理系统采用Google浏览器访问网站运行进行测试。测试用例及结果见表2。
测试结果表明,各个模块的功能基本实现。在测试过程中,系统没有出现崩溃的情况,性能良好,能够满足学生的学习需求和教师的教学需求。
五、結束语
本文针对《中医诊断学》内容抽象、重点繁琐的特点,从移动学习的理论入手,对系统进行需求分析、总体设计和关键技术研究,使用Android Studio和MyEclipse开发了一套基于Android系统的《中医诊断学》课程移动学习系统,为中医专业学生的学习提供了科学有效的资源、方法,给学生和教师提供更好的学习交流平台,有助于提高学生的学习效率和学习效果。另外,本文采用的设计理念和实现方法符合移动学习系统的设计原则,适合大多数课程的学习情况。只需少量修改即可运用于其他课程或学科的学习,具有一定的实用和参考价值。但由于时间和技术等原因,本系统的智能组卷模块还未完整实现,这是系统下一步需要完善的部分。
参考文献:
[1]宋厚盼,黄惠勇,凌智等.微课在《中医诊断学》教学中的运用和评价[J].湖南中医药大学学报,2016,36(7):95-97.
[2]郭绍青,黄建军,袁庆飞.国外移动学习应用发展综述[J].电化教育研究,2011(5):105-109.
[3]刘帅.基于视频课程的移动学习系统的设计与开发[D].北京:北京邮电大学,2015.
[4]刘豫钧,鬲淑芳.移动学习——国外研究现状之综述[J].现代教育技术,2004(3):12-16.
[5]杨红云,覃李静,黎晨.近年来国外移动学习发展现状研究[J].软件导刊(教育技术),2016,15(3):91-93.
[6]何磊,车志英,樊尊峰.基于现代网络通讯工具的《中医诊断学》教学实践与探索[J].中国中医药现代远程教育,2014,12(17):78-79.
[7]王倩,季红.基于MVC的Web与Android双模式在线教学平台的研究与设计[J].软件,2013,34(10):66-69 72.
[8]刘平.Android手机访问服务器的一种数据交互方法[J].电子设计工程,2010,18(9):96-98 102.
[9]谭翔纬.利用JSON实现Android客户端与Web服务器间的数据交互[J].福建电脑,2013,29(2):166-167.
[10]侯妍.基于Android的计算机网络课程学习系统设计与实现[D].西安:西安石油大学,2017.
(编辑:鲁利瑞)
关键词:移动学习;中医诊断学;系统设计
中图分类号:TP393 文献标志码:B 文章编号:1673-8454(2018)16-0070-04
《中医诊断学》是中医相关专业学生的一门必修课程,学生在学习过程中不仅要学习望闻问切四诊法,还要建立唯物辨证思想,熟练掌握诊察病情、判断病证的方法和技能。其内容抽象、重点繁琐,学生在学习过程中较难掌握课程的核心思想,经过死记硬背后的学习效果甚微。[1]根据对大学生移动学习的需求分析,开发一款有效学习《中医诊断学》、提升用户体验度、促进中医学子交流的移动端平台企足而待。因此,本文的主要目的是开发一套能够辅助学生用户进行《中医诊断学》课程学习,满足学生随时随地的学习需求,方便教师和学生进行交流的移动学习系统。
一、国内外研究现状
1.国外研究现状
国外移动学习主要集中在欧洲和北美部分发达国家。国外的移动学习研究项目包括:应用于中小学教育领域的欧洲Learning2GO项目,把课堂学习延伸到了户外;[2]瑞典Vaxjo大學用Java和XML技术开发的C-Notes项目支持学生移动协作学习;[3]芬兰赫尔辛基大学的移动学习项目UniWap为学习者和教师提供了一个可操作的移动学习环境,学习者和教师能够通过智能手机随时随地访问教学和学习资源;斯坦福大学学习实验室(SLL)针对语言学习,开发出了移动学习模块,其模块包括了单词、测验和生词训练等功能,并且每个模块的持续时间被控制在30s-10min之间;[4]新墨西哥大学开发的Mentira是一款结合GPS并贴近真实社会的游戏,使用者在游戏里与人物进行交流,从而提高使用者的西班牙语交流能力[5]等。
2.国内研究现状
国内的移动学习研究相对国外起步较晚,但在最近几年也取得了不错的成就。如:应用于英语学习领域的百词斩、扇贝单词;实现资源共享,提供快捷问答交互功能的百度作业帮、学霸君;提供丰富课程资源的在线移动课堂沪江网校、网易云课堂;为社会考试而生的提分利器驾考宝典、粉笔公考等。
从上述的研究实例可以看出,移动学习的研究范围已经应用到基础教育、高校教育的补充、社会考试等领域,可以说是非常广泛。但目前市场上应用于中医学习方面的移动学习系统还比较少,特别是只针对《中医诊断学》的移动学习系统几乎没有,所以积极开展《中医诊断学》课程移动学习系统的研究尤为必要。
二、系统设计
1.需求分析
结合不同操作系统的移动终端使用量,选择Android这一开源的开发平台进行开发。《中医诊断学》师生交互式智能学习系统(以下称为“中诊学习小助手”)面向的主要用户是中医院校的教师和学生,我们通过发放问卷、访谈的方式,结合国内外先进的学习理念以及当前学习类App的特点,总结出学生的学习需求、教师的教学需求。
学生的学习需求主要为视频学习、习题检测和互动交流等。我们挖掘出以下5个功能:①系统学习。采用微课式教学方法,[6]基于中医诊断学界泰斗朱文峰教授主讲的《中医诊断学》视频资源,把视频进行分解,划分为相对独立的知识模块,每个学习视频用10min-15min来阐述一个独立小知识点,有助于学生利用碎片时间随时学习,提高学习效率。另外,每个视频还应配有知识概要、入门习题以及可供下载的资源。②名师讲解。这是中医诊断学系统理论的扩展部分,采用视频学习的方式,视频内容可以是名师的教学心得、病案分析、中医诊断学的现代研究进展等,用于扩充学生的知识面。③习题检测。应提供进阶练习:入门习题对应于系统学习模块的每个视频,即每个知识点;精通习题采用遗传算法进行智能组卷,根据用户选择的难易程度组出更适合学生的个性化试卷,这也是本系统的亮点之一;大师习题是看图辩证的习题,由于辩证是一个动态的过程,所以该处习题的图片采用的是GIF动图。④你问我答。给学生和教师提供交流社区,以发帖的形式提出问题、解答问题、分享学习经验和心得。⑤个人中心。学生用户可以在此对个人信息进行管理。
教师的教学需求主要为查看学生学习情况、互动交流、分享资源等。我们挖掘出以下3个功能:①查看学生学习情况。以柱状图和饼状图的形式展示学生的学习情况,一目了然。②你问我答。该功能同学生用户的你问我答。③个人中心。对教师来说,在此模块除了能对个人信息进行管理外,还提供了上传资源的功能,实现资源共享。
本系统还需设置后台管理员,后台管理员通过后台管理系统实现对用户、视频、题库、问答资源的管理。
2.总体设计
(1)系统功能模块设计
中诊学习小助手分为学生端App、教师端App以及后台管理系统3个子系统,分别针对学生、教师、管理员三种不同的用户。
学生端App分为名师讲解、系统学习、习题检测、你问我答、个人中心5个功能模块;教师端App分为查看学生学习情况、你问我答、个人中心3个功能模块;后台管理系统分为用户管理、视频资源管理、题库资源管理、问答资源管理4个功能模块。其中,每个模块实现不同的功能,模块与模块之间有一定的联系,使用者可以根据自己的需求选择相应的模块使用系统。系统的功能模块图如图1所示。
(2)技术架构设计 本系统的学生端App、教师端App与服务器端进行交互,是基于C/S架构的智能学习平台,后台管理系统通过浏览器与服务器端进行交互,即B/S架构。在系统的整体设计上,采用两种架构结合的方式——扩展化的B/S架构。[7]
系统分为终端层、服务器端接入层、服务器端业务层、服务器端数据层。通过这种分层的形式,实现了前后端的分离,降低了各层之间的耦合度,使得代码更加简洁,同时也便于系统后期的优化和维护工作。本系统的终端有浏览器终端和移动终端两种类型,用于显示界面、向服务器发送请求;服务器端接入层主要负责接收终端的请求以及给终端发送响应;服务器端业务层用于处理各种业务逻辑;服务器端数据层与数据库进行交互,为上层提供数据访问服务。为了提高代码的复用度,每一层都将提供一个通用的接口Java实现类。
终端与服务器的通讯采用HTTP协议,用Servlet技术接收或响应请求,JSON作为数据传输的格式。针对通信安全的问题,采用MD5数据加密算法对私密信息进行加密处理。
(3)数据库设计
系统采用SQL Server 2005数据库实现数据的存储。系统数据库包括用户表、章表、视频表、习题表、问题表、回答表、错题表、资源表。
数据库中存在以下实体类:用户、视频、习题、问题、回答、资源等,这些实体中存在“一对一”“一对多”以及“多对多”的关系。在设计表结构时,把存在“一对一”关系的放在一张表中,存在“一对多”关系的拆分在两张表中,对于“多对多”的实体,建立一张中间表,将其拆分成“一对一”和“一对多”的关系。
本着建立冗余较小、结构合理的数据库的原则,在设计数据库时遵循了三大范式:①数据库中的每张表的每一个字段都保证了其原子性,满足了第一范式。②数据库中的每张表的每一个字段都和所在表的主键相关,而不能仅满足主键的一部分,即一个表中只能保存一种数据,如有多种数据应进行拆分,用多张表进行存储,这就满足了第二范式。③数据库中的每一张表的每一个字段都和主键直接相关,而不能间接相关,满足第三范式。另外,考虑到在查询数据时的性能,适当增加了一些数据冗余,以达到时间性能的要求。
三、关键技术实现
1.Android客户端与服务器数据交互
Android客户端与服务器端数据交互的主要工作流程为:Android客户端通过HTTP协议,采用POST或者GET方法向服务器提交数据请求。服务器将数据请求通过服务器的Servlet子类HttpServlet对象提交给服务器的业务逻辑部分处理,服务器的业务逻辑部分根据Android客户端的要求进行运算,将运算的结果封装成JSON格式,再通过服务器端的HttpServlet响应到Android客户端。Android客户端将接收到的JSON格式的数据进行解析后显示在UI界面上。[8-10]
2.在线视频播放
通过服务器端的授权访问,采用HTTP协议从服务器获取课程视频的资源路径,并使用Vitamio框架,通过调用其提供的接口,访问资源路径进行视频播放。
3.智能组卷
在设计系统时,在习题检测的精通模块,要求进行智能组卷,试卷要满足用户的难度需求,区分度高。针对这样的多目标多约束求最优解问题,分析了多种算法,发现遗传算法非常适合解决此类问题。
遗传算法的过程类似于基因演化:①随机产生N个个体作为初始种群,设置最大迭代次数;②计算个体适应度,如果个体适应度符合期望值或迭代次数达到最大值,则输出最优解并结束,否则进入下一步;③依据适应度、采用轮盘赌的方式选择父代个体;④按照一定的交叉概率和交叉方法生成新的子代;⑤按照一定的变异概率和变异方法生成新的子代;⑥交叉和变异产生了新一代的种群,返回到步骤②。其流程图如图2所示。
考虑到使用传统的遗传算法进行组卷时会出现迭代后期效率慢、易陷入局部最优等问题,本系统在设计时对遗传算法进行了一些改进。在编码时,采用了分段实数的编码方案;在执行选择操作时,融入了精英保留策略;在执行交叉操作时,采用了分段单点交叉的方式。
四、系统功能测试
学生端App和教师端App使用魅族MX5手机安装直接运行进行测试,测试机参数见表1。后台管理系统采用Google浏览器访问网站运行进行测试。测试用例及结果见表2。
测试结果表明,各个模块的功能基本实现。在测试过程中,系统没有出现崩溃的情况,性能良好,能够满足学生的学习需求和教师的教学需求。
五、結束语
本文针对《中医诊断学》内容抽象、重点繁琐的特点,从移动学习的理论入手,对系统进行需求分析、总体设计和关键技术研究,使用Android Studio和MyEclipse开发了一套基于Android系统的《中医诊断学》课程移动学习系统,为中医专业学生的学习提供了科学有效的资源、方法,给学生和教师提供更好的学习交流平台,有助于提高学生的学习效率和学习效果。另外,本文采用的设计理念和实现方法符合移动学习系统的设计原则,适合大多数课程的学习情况。只需少量修改即可运用于其他课程或学科的学习,具有一定的实用和参考价值。但由于时间和技术等原因,本系统的智能组卷模块还未完整实现,这是系统下一步需要完善的部分。
参考文献:
[1]宋厚盼,黄惠勇,凌智等.微课在《中医诊断学》教学中的运用和评价[J].湖南中医药大学学报,2016,36(7):95-97.
[2]郭绍青,黄建军,袁庆飞.国外移动学习应用发展综述[J].电化教育研究,2011(5):105-109.
[3]刘帅.基于视频课程的移动学习系统的设计与开发[D].北京:北京邮电大学,2015.
[4]刘豫钧,鬲淑芳.移动学习——国外研究现状之综述[J].现代教育技术,2004(3):12-16.
[5]杨红云,覃李静,黎晨.近年来国外移动学习发展现状研究[J].软件导刊(教育技术),2016,15(3):91-93.
[6]何磊,车志英,樊尊峰.基于现代网络通讯工具的《中医诊断学》教学实践与探索[J].中国中医药现代远程教育,2014,12(17):78-79.
[7]王倩,季红.基于MVC的Web与Android双模式在线教学平台的研究与设计[J].软件,2013,34(10):66-69 72.
[8]刘平.Android手机访问服务器的一种数据交互方法[J].电子设计工程,2010,18(9):96-98 102.
[9]谭翔纬.利用JSON实现Android客户端与Web服务器间的数据交互[J].福建电脑,2013,29(2):166-167.
[10]侯妍.基于Android的计算机网络课程学习系统设计与实现[D].西安:西安石油大学,2017.
(编辑:鲁利瑞)