郭宏子龙
摘要:随着互联网的发展,软件已经改变了传统教学的一些固定模式和行为习惯,本文依此为目的设计实现了一款教学论坛App,主要作用是利用此软件使得学生、教师以及课程管理人员实现课程和其他相关信息的互动和交流。为使系统更加适用以及更加方便运营,本文详细完成了需求分析和角色设置工作,然后对系统进行了总体设计、各模块详细设计、数据库设计等工作,最后利用安卓开发技术和Node.js的Express框架进行系统开发并且完成了系统测试工作。
关键词: 教学论坛App; 需求分析; 系统设计; Express框架
【Abstract】 With the development of the Internet, software has changed some patterns and behavioral habits of traditional teaching. This paper has designed and implemented a teaching forum App for the purpose of using this software to enable students, teachers and course managers to achieve interaction and communication between the course and other topics. In order to make the system more applicable and more convenient to operate, this paper has completed the requirements analysis and role setting work in detail, the overall design of the system, detailed design of each module and database design. Based on the above, Android and Node.js Express framework are used to develop and complete the system test work.
【Key words】 teaching forum App; requirements analysis; system design; Express framework
0 引 言
随着互联网时代的不断发展,学生的学习方式也发生了显著变化,目前有越来越多的教学资源从课堂转移到了网络,学生在互联网上学习时间也在延长。部分互联网教育平台已经实现了线上正式授课的教学模式,而且为每个课程设置了相关讨论区,学生们在上课之余可以在讨论区中来提出自己学习中的疑問等待回复,也可以浏览他人的帖子进行课程的二次学习。但是目前随着移动互联网的广泛普及,各种讨论互动的操作从电脑端转向手机端已然成为必然趋势。因此本文面向教学业务研发出一款手机App,除了具备基本的课程讨论互动功能外,还将扩展出综合讨论区和数据录入管理等功能。系统将从需求及功能分析、系统设计和系统实现三方面展开研究论述。
1 讨论区需求分析
1.1 主要功能介绍
本文开发的系统为面向教学的讨论区App,主要使用人群是学生和教师,并以系统管理者和教学管理员为主要系统运营人员的课程交流平台。该系统的运行场景图如图1所示,系统的主要功能有2类,分别是:用户及课程数据管理以及讨论区内容浏览和发帖回复功能。对此可做探讨表述如下。
(1)用户及课程数据管理功能。平台的所有用户数据由系统管理员来维护,学生和教师名单要从学校对应的教务处中获取导入到平台中。教学管理员名单需由学院确定专门负责人后,由系统管理员进行信息录入。一方面是统筹处理课程数据,教学管理员需从教务处中导入本学院的课程信息,同时获取学生的选课信息和教师授课信息,在学生和教师于系统登录之前就填写好学生课表和教师课表数据。另一方面,也担负教学管理员的职责。学生和教师能够在自己登录后的平台中看到有关于本人的全部信息和选课信息等数据。
(2)讨论区内容浏览和发帖回复功能。平台中有2类讨论区。一类是与课程相关的讨论区,即针对课程重点难点知识的讨论;另一类是综合讨论区,包括学生反馈、课程设置和教学方法等较为宽泛的话题。学生和教师可以在自己的账户中进行参与评论、发帖和收藏帖子的数据操作。在课程讨论区中,学生会在本人所选课程中看到与课程相关的帖子,也可以看到其它人的讨论内容,并以发帖的形式参与讨论、提出问题等待别人回复。这些操作也同样适用于老师。不仅如此,还可以采用匿名操作。综合讨论区和课程讨论区的场景相似,只是需要教学管理者来进行分类管理和发帖,学生和教师只有浏览和评论的功能,学生可以采用匿名操作。
1.2 角色及需求分析
讨论区App的使用可以归纳为4类用户,分别是:系统管理员、教学管理员、不同课程对应的教师和相关学生。对此功能和使用权限可做阐释分述如下。
(1)系统管理员。主要职责是管理系统其他角色的用户名单。对于学生角色,系统管理员要通过教务处取得每门课程的选课学生名单,再将其导入到数据库中,同时还要负责管理学生登录,这里不仅涉及到学生都能完成登录,而且还要开放相应课程的讨论权限。而对于教师角色和教学管理者而言,同样也要获取课程对应的教师名单并导入数据库,且同步完成登录监督工作。
(2)教学管理者。主要职责是维护课程信息和设置非课程类的综合讨论话题。对于前者,教学管理员要在数据库中导入课程名称、课程开课学期和对应教师与学生。就后者来说,就是发布主题帖子供大家参与讨论。例如发布对于学院的课程改革来征集建议等。
(3)教师和学生。除了基本的登录注册功能外,主要是在系统讨论区内浏览信息和发布信息,实现学生和老师在课程信息等方面的交流讨论,同时在发表时也可以选择是否采用匿名发表方式。
2 系统设计
2.1 系统结构设计
打开App后,无论何种身份的用户都需进入系统的登录界面,输入账号和密码后进入该用户所在权限的页面。初始账号和密码由系统管理员导入来生成,登录成功后不同角色进入不同的入口。系统结构总体设计如图2所示。系统对此设计表述详见如下。
(1)系统管理员。在登录后,可以查看和修改自己的个人信息。系统管理员可以进入系统名单导入页面,并按照教师名单、学生名单和教学管理员名单进行名单导入与设置处理,而且也可以查看和删除已导入的名单,页面设计逻辑见图3。
(2)教学管理员。在登录后,进入相应页面查看和修改自己的个人信息。在系统管理员的名单导入工作结束后,教学管理员就可以导入课程名单,及设置授课教师、上课学生和开课时间等信息,由此一门课程正式开设上线。此外,教学管理员还要管理综合讨论区,通过进入综合讨论区管理页面,负责综合讨论区的话题发布和浏览回复等工作。教学管理员对课程讨论区有浏览的权限,页面设计逻辑见图4。
(3)教师。在登录后,可以进入相应页面查看和修改个人信息,同时还可以进入另一页面查看上课课表,但对于课表只有浏览、而不具备修改功能。讨论区方面,教师只能对自己所授课程讨论区进行管理,对于综合讨论区的内容只有浏览权限。针对自己授课课程,教师可以发布一些有意义的讨论话题,并且针对讨论内容做出必要的疑问解答等。仍需一提的是,教师可以进入推荐待回复内容页面中进行课程答疑,教师页面设计逻辑见图5。
(4)学生。在登录后,可以查看和修改个人信息,并且对于课表只有浏览、也不具备修改功能。讨论区方面,学生可以同时浏览综合讨论区和课程讨论区,对于课程讨论区有参与讨论和发帖的权限,对于综合讨论区只有参与讨论的权限。对于学生在课程讨论区产生的数据有记忆功能,可以查看自己在课程讨论区曾经的发帖,进行回复和收藏,发帖不能删除,但回复和收藏可以删除。学生在自己的推荐页面有2类内容。一类是根据自己的提问推荐可能有帮助的回复。另一类是推荐一些待回答的问题。教师页面设计逻辑见图6。
2.2 数据库设计
本次研究的实体对象有学生、教师、系统管理员和教师管理员四个角色,同时还有课程实体,此外还包括独立的综合和课程讨论帖以及相应的独立回复与子回复实体。在研发过程中,教师实体和课程实体能够结合学期学年等信息生成唯一课程。而这门课程在添加学生信息后产生了学生课表实体。学生在浏览讨论帖时需要进行日志记录产生帖子浏览记录实体。此外,将根据学生在讨论区的个人数据记录,即个人收藏帖、个人创建帖和个人参与帖产生相应3个个人数据实体。
3 系统实现
3.1 实现技术
教学论坛是基于安卓端开发的系统,手机页面的实现是编写许多xml文件,而后用Java语言编写控制页面的活动类和各种基础类。服务器端采用Node.js的Express框架技术,这个框架有速度快、轻量级和开发易于上手等特点。考虑到数据库部分的业务中存在大量数据字段扩展和数据存储灵活性等特点,因此采用典型的非关系型数据库MongoDB进行存储。
3.2 用户界面展示
系统用户界面总共分为3类界面。具体阐述如下。
(1)登录界面。学生、教师、教学管理员和系统管理员需要在登录界面中输入账号密码之后才能进入个人角色的特定页面,登录界面如图7所示。
(2)角色功能页面。即不同角色有不同的个人功能页面,比如学生有个人课表,个人收藏等页面,而系统管理员没有。下面即以学生角色为例给出个人空间页面,如图8,图9所示。
(3)讨论区页面。包括综合讨论区和课程讨论区的帖子总览、帖子详情、回复和创建等页面。这里展示帖子总览和帖子详情页面,如图10,图11所示。
3.3 系统测试
在系统开发完成后,先要设置一个系统管理员,进行初步自测。系统管理员录入教学管理员、教师和学生后再分别登录进入各自角色的页面进行功能测试。系统的前后端实现完全分离,自测时要在程序各个模块输出必要信息方便调试和过程跟踪。在初步自测过程后,利用爬虫技术在其他教学论坛中爬取大量讨论区数据,进行数据格式转化后再录入系统数据库中,方便于大数据环境下进行测试。据此可增加多名测试人员共同使用此软件,以确保系统在大数据和多人使用下的实时性、数据同步性和并行性等。
4 结束语
本文根据大学教学过程中的实际需求,设计了一个服务于教师和学生使用的讨论区App。软件设计过程从需求分析出发,分析软件的核心功能和角色设计,然后进行系统的总体设计和各模块详细设计,最后利用安卓开发技术和服务器端Express框架进行系统开发,完成了系统测试工作。当然,随着使用人员的增加和需求的不断变化,系统仍要不断地修改和完善。目前各类实践均已表明,本文研究成果有着广阔应用前景。
参考文献
[1] 何艷君,马炅. 基于MOOC平台的社会性交互个案研究—以“现代教育技术”课程为例[J]. 中国信息技术教育,2018(Z2):155.
[2]吴俊伟,沈立炜,郭武楠,等. 安卓应用用户界面交互模式抽取与检索[J]. 软件学报,2018,29(8):2198.
[3]王书振,王雄智,张晓庆,等. 基于“慕课+翻转课堂”的安卓开发课程教学改革探究[J]. 物联网技术,2018,8(12):113.
[4]杜春业,吴建华,宋巍. 基于移动终端的应用软件性能测试[J]. 电子技术与软件工程,2017(3):67.
[5]张璐妮,唐守廉,刘宇泓. MOOC学习者参与行为实证研究—以“中国大学MOOC”外语课程为例[J]. 北京邮电大学学报(社会科学版),2018,20(3):97.