1、基于 Matlab GUI 的高职数学学习训练考试系统设计易同贸(长江工程职业技术学院,湖北 武汉 430212)摘要:为提升 Matlab 辅助教学的效率,本文提出 Matlab 学习训练考试系统的设计目标、设计思路和功能特色,将高职数学中的重点概念和主要方法进行整理归类,结合 Matlab 软件操作,以由浅至深方式进行学习训练及测试,旨在提高学生掌握数学理论知识和 Matlab 操作水平以及解决实际问题的能力。本系统用户操作界面灵活友好,非常适合高职生自主学习和使用。关键词:高职数学;实践性教学;Matlab;图形用户界面(GUI)中图分类号:G712;TP391文献标识码:A文章编号:2
2、095-8153(2023)01-0067-06收稿日期:2023-01-16基金项目:长江工程职业技术学院应用技术项目课题“Matlab 学习训练考试系统的设计开发(高职数学版)”(2021YJS04);长江工程职业技术学院研究课题“构建职业教育服务全民终身学习教育体系的路径研究”(2021A01)。作者简介:易同贸(1970),男,长江工程职业技术学院副教授,研究方向:数学教育。数学实验是体现高职数学课程的高阶性和创新性的突破口。数学实验往往借助常用数学软件,利用计算机强大的计算功能和绘图功能,以实际问题为导向,结合所学的数学知识来解决实际问题,既能调动学生充分应用所学数学知识,还能让学生
3、在实际操作中加深对数学知识的理解,体现了“用数学”的教育观念,与传统的理论教学活动有着明显区别。在“十三五”职业教育国家规划教材中,有关高职数学课程的大多数教材里都将 Matlab 的使用融入到教学内容中。许多学者对基于 Matlab GUI 实现辅助教学进行了研究,例如,闫熙1 提出高等数学计算机辅助教学系统的编写方法与步骤,任敏2 将微积分课程内容体系整合为函数与极限、微分学、积分学、无穷级数四个知识模块确立各个模块实验教学系统的主要内容、实验目的和操作界面,曾冠雄3 设计了一个微积分相关计算的验证系统,聂奥洋4 设计了以矩阵的运算、矩阵的求值、线性方程组求解等模块的矩阵相关运算的验证系统
4、。本文基于 Matlab GUI,设计一种适合高职学生或数学基础较低的业余爱好者使用的可远程自主学习、自主训练以及完成测试检验的学习系统。1高职数学课程的现状与问题目前,数学实验与理论教学相融合已经成为主流,但学校的重视程度不够、教学课时数在不断压缩和教学场所限制等因素制约了高职数学课程的建设和发展,学校对数学课程的实践教学设施投入不足,往往把实践教学视为培养学生技能的手段,忽略了其对提高学生综合素质的重要作用。大部分高职院校采用教师在课堂上主讲理论,学生在课后自学数学实验的模式,教学实施过程出现很多问题和困难。(1)教师教学理念较保守,教学创新动力不足数学教师对实践教学的理解不够深入,认为本
5、课程的定位应该是理论教学,实践教学是专业课的事情,没有花时间去思考实践教学的内涵和实施办法。很多数学老师比较善长数学公式的推导与运用,喜欢让学生多做练习,认为做练习就是实践教学,对数学实验的内涵和实施办法没有深入研究。另外,学校没有建立合适的评价考核体系,缺乏科762023 年 2 月湖北工业职业技术学院学报Feb,2023第 36 卷第 1 期Journal of Hubei Industrial PolytechnicVol36 No1学规范的标准,使得教学实验的水平难以评价,没有很好地引导教师进行教学实验的研究和摸索,教师没有动力和热情。(2)学生数学基础普遍不好,学习欲望不强高职学生的
6、层次比较复杂,基础差异性很大。大部分学生的基础薄弱,对数学课程的学习积极性和热情也不高,甚至有些学生对数学课程心存畏惧。学生长期形成了依赖教师传授的习惯,自学意识很弱,学生在课后自主学习效果很不理想。很多学生往往认为“数学等于计算”,心中充满恐惧和厌烦,“应试教育”思想严重,依赖刷题来获得数学高分,但在解决现实中的新问题时往往困难重重。教学中缺少图形和可视化,学生在理解数学概念方面遇到困难。有部分学生数学基础较高但计算机操作水平不强,基本上没有编程经验和能力,如果没有老师的指导,很难通过自学来提升自己的数学实践能力。(3)课程与专业培养对接不紧密,专业服务意识待提高例如我校的五大专业群建设,其
7、核心课程或专业基础课程中有很多内容需要学生有一定的数学软件的操作水平和编程思想,如大数据与会计专业的人才培养方案中开设有 Python 编程语言,其中编程语言的操作和编程思想的运用与 Matlab 有很大的相似性,又如在智能制造专业群中有些专业开设了仿真实训环节,需要用到 Matlab 的仿真工具包,诸如此类的课程有很多,充分说明了数学课程中早些介绍和引导学生了解 Matlab 是非常有必要的,但Matlab 的教学需要有一定的计算机编程功底的老师承担,很多数学老师自身都不太熟悉,在教学中一般都是让学生自学,很少能主动指导学生。2开发背景与设计目标Matlab 具有数值计算、符号计算和图形展示
8、等特点,非常适合高职学生运用它来解决数学(包括中学阶段和高职阶段)相关的计算,利用它的强大图形功能可以让学生更好地领悟数学的相关概念、方法和思想。(1)转变学生的观念,提高其学习兴趣数学软件的引入可以改变学生的传统认识,减少学生对数学计算的恐惧心理,更好地启发学生感悟数学的基本概念和基本思想。利用 Matlab 的高效数值计算及符号计算功能,能使用户从繁杂的数学运算分析中解脱出来,利用其完备的图形处理功能来实现复杂函数的作图,让学生对函数的特点有非常直观的认识,把主要精力放在分析和研究函数的本身问题。(2)提高学生计算机操作能力及编程水平大多数学生习惯于图形化界面下的鼠标点击操作方式,对 Ma
9、tlab 命令行模式操作很不适应。Matlab 需要从键盘中敲入相应命令来解决问题,需要记住相关的操作方法和众多的命令,对于计算机编程基础薄弱的高职学生而言,这种操作方式学生需要一定时间来适应,学生的学习热情会有所影响。设计这套系统就是为了尽快解决这个问题,让学生很快适应软件操作方式。(3)数学理论与计算机编程有机结合,实现数学与专业课程融合虽然 Matlab 使用了接近数学表达式的自然化语言,但它毕竟是计算机语言,与数学传统手写方式还有较大差距,学生在使用中会觉得很别扭和繁琐。因此,通过本系统,一方面将数学理论知识和相关书写符号进行复习和整理,另一方面,将数学手工书写形式与计算机相应命令操作
10、结合起来,让学生将数学理论和计算机操作完美融合,相得益彰,为持续的专业课程学习奠定很好基础。3系统需求分析和设计原则(1)用户对象(教师)的需求分析应明确系统使用目标和展示的主要内容,即通过此系统的使用,希望教师用户达到对教学目标怎样的展示和完成效果,观测对象(学生)获得怎样的认知体验。针对高职数学各章节知识结构的特点,明确各章节知识的重难点,知识之间的逻辑层次关系,从而设置系统的整体框架,并对每一模块结合高等数学各章节知识的具体特点设计演示的子界面,子界面的设计重在体现重点、突破难点。(2)用户对象(学生)的需求分析先通过视频学习了解 Matlab 的基本使用规则和命令,再利用数学手写符号与
11、计算机输入命令形式的对比,加深对数学理论知识的理解,同时增加学生体验,给出典型例题,要求学生模拟 MATALB环境输入相关命令完成例题求解,最后增设综合训练和结业考试环节,逐步提高难度,让学生操作能力不断提升,学习兴趣更加浓厚。(3)系统所需要的相关数据的需求分析所有用户都要有相关信息来确认其身份,记录其使用情况,学习视频存放位置及播放的次数统计86易同贸:基于 Matlab GUI 的高职数学学习训练考试系统设计记录,章节学习和训练以及测试的相应素材如何管理与存放,如何读取和使用,后台数据库的网络配置等许多问题需要研究和解决。系统的设计与开发需要符合以下几条基本原则:友好性。开发系统的界面要
12、尽可能友好,交互式比较良好,要尽快让学生从图形式界面操作方式转化为键盘输入方式,更好地体验软件的强大功能。体系性。结合高职特点,要优选知识要点,更好配合理论教学。从基本代数运算到函数的图形性质分析,再升级到高等数学中的微积分、概率论和线性代数等内容,让学生能由浅入深较全面地梳理所学理论知识。针对性。学习的层次性和难易度要考虑周全,要注重学生的类型特点(如普通高考生与技能高考生),有一定的梯度和难度,让每个学生都能够有自己的收获。进阶性。综合训练与结业考试要符合学生的进阶要求,设置一些有进阶特色的综合训练,给出现实问题或提炼后的数学问题,要求学生能够提出解决方法和具体代码并实时进行检验,学生能得
13、到实时反馈,可以通过参考答案进行反思和提高。4系统设计基本思路针对高职数学理论知识体系的逻辑结构,结合高职学生的能力基础和学习特点,围绕函数基本操作、微积分理论、概率论、矩阵理论、数学建模的运用等内容,基于 Matlab 软件开放性和移植性好,符号计算函数丰富的特点,利用 GUI 的组件、图形窗口、回应等必要元素和各种函数调用,将知识点分类,按视频学习、章节训练、单元测试、综合考核等环节进行界面设计和程序设计,完成典型知识点和理论方法自主视频学习、按经典任务进行章节强化训练、典型任务的重点测试和综合型任务的结业考核等功能的开发和应用。学生先通过视频学习了解 Matlab 的基本使用规则和命令,
14、再利用数学手写符号与计算机输入命令形式的对比,加深对数学理论知识的理解,同时增加学生体验,给出典型例题,要求学生模拟 Mat-lab 环境输入相关命令完成例题求解,最后增设综合训练和结业考试环节,逐步提高难度,让学生操作能力不断提升,学习兴趣更加浓厚。教师结合学生的能力基础和学习特点对高职阶段所需要掌握的知识点进行梳理、分类和归纳,设计相应的学习模块和内容,精心挑选与数学概念方法相对应的 Matlab 指令或函数,配套相应的例题让学生操作和领悟,对学生的学习进度和掌握情况及时跟踪,实时反馈,加强辅导。本系统的开发需要资深的数学教师与计算机编程人员齐心协力共同努力。既要对高职数学课程的教学内容和
15、学生特点有深入理解和掌握,也要对 Matlab 软件有一定的认识,要充分考虑学生的自主学习的特点,软件界面设置要简便直观,师生能尽快投入使用。5系统总体设计与功能介绍51 开发环境开发环境为 Matlab 2018,主要原因是学生有训练和测试中必须用到 MATLAB 的专门命令,需要有它的执行运行环境,安装客户端应用程序时要安装 MAT-LAB 的编译运行库程序(MC)。因此本系统采用基于 C/S 多层分布式体系设计,需要在终端安装软件,用户需要远程登录、注册后才能进入系统,教师进行身份验证授权后才能正常使用。数据库为 SQL Server2018,管理的重要表格:学生信息表、教师信息表、教学
16、视频信息表、单元学习信息表、综合训练信息表、考试试题库、电子证书信息表等。52 基本功能主要功能模块主要内容备注学生客户端注册、登录、视频学习单元学习、综合训练、结业 考 试 采 用 C/S模式,学生端电脑需要安装应用程序教师客户端班级管理、学习数据统计,考试成绩设置,电子结业证书发放采用 C/S 模式,教师通过客户端进行学生管理和数据上传和学习进度统计。数据库管理员系统数据库的维护、数据的导入与导出采用 SQL 技术,创建系统数据库,对底层数据进行维护。53 总体设计系统总体设计包括三个角色(学生、老师、系统管理员),主要实现:(1)学生用户:登录注册,加入班级,维护个人信息,观看学习视频,完成章节训练和章节自测,完成综合考试,下载结业证书等。(2)教师用户:登录注册,建立班级,管理学生名单,更新和上传学习视频,更新和上传章节训练题,更新和上传综合考试题,检验学生的结业考试通过情况,审批结业证书的发布等。96湖北工业职业技术学院学报2023 年第 1 期第 36 卷第 1 期(3)系统管理员用户:完成系统数据库的创建与维护,对教师用户的个人信息进行管理,对教师的数据管理权限进行授权等