图 4-6 删除信息流程图
4.3 数据库设计
4.3.1 数据库 E-R 图设计
本系统采用的是 MYSQL 数据库,由于是面向想要学习编程的青少年开发的,属于学习系统,所以就需要对用户以及学习资料信息进行管理,信息会很多,这就需要数据库分类要清楚,在添加或修改信息时,不能出现信息混乱,各个实体之间的关系也要清楚明确[10] 。本系统的各个实体和它们各自相对应的属性如下:
(1)用户实体类的属性包括:姓名、头像、联系电话、用户 ID 、创建时间、用户名、密码等,E-R 图如图:
图 4-7 用户 E-R 图
(2)管理员实体类的属性主要有管理员 ID 、用户名、密码等, E-R 图如下图所示:
图 4-8 管理员 E-R 图
(3)资料分类实体类的属性有资料 ID 、创建时间以及分类名, E-R 图如下图所示:
图 4-9 资料分类 E-R 图
(4)学习资源实体类的属性主要有相关资料内容、音频、资料介绍、点击次数、视频、资料ID、资料标题等, E-R 图如下图所示:
图 4-10 学习资源 E-R 图
(5)系统公告实体类的属性主要有公告 ID 、创建时间、标题、简介等, E-R 图如下图所示:
图 4-11 系统公告 E-R 图
(6)留言反馈实体类的属性主要有留言 ID 、创建时间、用户 ID 、用户名、留言内容以及回复内容,E-R 图如下图所示:
图 4-12 留言反馈 E-R 图
(7)评论内容实体类的属性主要有用户名、评论内容、回复内容等, E-R 图如下:
图 4-13 评论内容 E-R 图
(8)轮播图实体类的属性有轮播图 ID 、图片名、图片, E-R 图如下:
图 4-14 轮播图 E-R 图
4.3.2 数据库逻辑设计
本系统的主要数据库表如下:
(1)用户信息表,用来存储用户的个人信息,如用户名、密码、姓名、性别以及联系电话等。如表 4-1 :
表 4-1 用户表
(2)管理员表,存储管理员的个人信息,如编号、用户名以及密码等 [11] 。如表 4-2 :
表 4-2 管理员表
(3)资料分类表,存储资料分类的情况,包括资料编号、创建时间以及分类。如表 4-3 : 10
表 4-3 资料分类表
(4)学习资源表 , 存储了资料的编号、创建时间、资料标题、视频信息、资料介绍以及发布日期等。如表 4-4 :
表 4-4 学习资源表
(5)系统公告表,包含了所上传公告的编号、标题、内容等。如表 4-5 :
表 4-5 系统公告表
(6)留言反馈表,包含了留言编号、留言内容以及回复等。如表 4-6
表 4-6 留言反馈表
(7)评论内容表,包含了评论的用户名、评论内容以及回复内容等。如表 4-7
表 4-7 评论内容表
(8)轮播图表,包含了轮播图的编号、图片名以及图片。如表 4-8 :
表 4-8 轮播图表
5 系统功能实现
5.1 主界面的设计与实现
根据系统的需求分析,最终设计出如下界面。作为一个针对青少年的编程学习系统,要符合青少年的操作习惯,界面必须直观简洁,不可太过复杂繁琐反而影响学习效率。系统前台能够对首页、学习资源、系统公告、留言反馈、个人中心等内容进行查看,如图 5-1 所示:
图 5-1 系统功能界面图
5.2 管理员功能模块
当管理员要在本系统进行登录时,必须要在登录时填写正确的用户名、密码,并选择正确的角色进行登录,如图 5-2 所示:
图 5-2 管理员登录界面图
管理员可以对平台首页、个人中心、用户管理、资料分类管理、学习资源管理、留言管理、系统管理等模块进行信息管理和查看。
5.2.1 个人中心
在个人中心可以对自己用户名以及密码进行修改。
图 5-3 个人中心界面图
5.2.2 用户管理
用户管理:当管理员进入用户管理页面后,可以对已经存在的数据信息进行修改、删除,如图 5-4 所示:
图 5-4 用户管理界面图
5.2.3 资料分类管理
资料分类管理:管理员在此页面可以查看已经建立好的资料类别,也可以对不需要的资料分类进行删除,或者增添新需要的类别,还可以在搜索栏直接搜索想要找的类别,可快速对它做出修改操作,如图 5-5 所示:
图 5-5 资料分类界面图
5.2.4 学习资料管理
学习资料管理:该页面可以进行资料上传,包括视频、音频已经相关的试题资料,可以对资料标题、标签和介绍等内容进行修改,也可以直接进行资料添加和删除。还可以查看对应视频下的用户评论。如图 5-6 所示:
图 5-6 资源管理界面图
5.2.5 留言管理
留言管理:在此页面管理员可以查看和管理用户留言,还可以解答用户提出的问题。如图 5-7 所示:
图 5-7 留言管理界面图
5.2.6 系统管理
系统管理:在系统管理页面可以对系统公告和轮播图进行管理,增添新的图片和公告内容,或者对不需要的轮播图片和公告内容进行删除。页面如下图:
图 5-8 公告管理界面图
图 5-9 轮播图管理界面图
5.3 用户功能模块
5.3.1 用户注册功能实现
用户在注册时需按照系统提示填写自己的信息,然后点击注册,如用户注册成功,系统就会自动弹出登录窗口,输入正确信息可完成登录。如图 5-10 :
图 5-10 用户注册
5.3.2 用户登录功能实现
如果在本平台已经完成过注册,则可以直接打开登录界面,然后输入自己的账号和密码进行登录。登录页面如图 5-11 :
图 5-11 用户登录
5.3.3 学习资源分类功能实现
平台针对青少年的可接受程度分为八个类别。用户点击不同的类别,就可以查看该类别下的所有资料。点击之后可以查看视频,下载资料。资料分类页面,如图 5-12 :
图 5-12 资源分类
5.3.4 资料搜索功能实现
用户在浏览学习资料页面时,可以进行搜索查询。本平台可以通过资料标题、分类名称以及相关标签进项查询。如图 5-13 :
图 5-13 资料搜索
5.3.5 资料详情功能实现
用户在打开资料信息后,可以查看对应的分类、资料介绍以及发布日期等,信息下方即对应的视频课程,可以进行下载、倍速播放等。如图 5-14 :
图 5-14 资料详情
5.3.6 评论功能实现
用户登录后在视频资料下方可以进行评论交流。如图 5-15 :
图 5-15 评论功能
5.3.7 加入收藏功能实现
用户可以将自己喜欢的资料加入收藏,点击“我的收藏管理”进行查看,方便查找。如图 5-16:
图 5-16 加入收藏
5.3.8 系统公告功能实现
用户可以在此页面查看管理员最新发布的消息。如图 5-17 :
图 5-17 系统公告
5.3.9 留言反馈功能实现
用户可以在此页面对平台提出意见反馈,以促进平台改进。如图 5-18 :
图 5-18 留言反馈
5.3.10 个人中心相关功能实现
在个人中心页面,用户可以修改自己已经上传保存过的信息;点击“我的收藏”可查看之前收藏过的资料。如图 5-19 :
图 5-19 个人中心
6 系统测试
对系统进行测试可完善系统中存在的一些问题,使预期想要的系统界面和功能得以实现,并检验网站能否符合要求正常运行,以便对后续问题做出相应的解答和完善,使网站后期投入使用后尽少出错。
6.1 测试定义
测试必须贯穿系统整个生命周期。本系统测试使用了黑盒测试方法来对该系统进行测试 。
6.2 测试目的
系统开发设计工作结束后,要对系统进行功能测试,以便发现系统中有哪些漏洞,并针对漏洞问题做出及时修改措施,确保系统能够按预期所设想正常稳定地运行[14-15] 。
6.3 功能测试
6.3.1 管理员登录测试
主要测试管理员输入不同的用户名、密码后,系统显示的结果,具体测试输入情况如下表 6-1 示:
表 6-1 管理员登录测试用例表
6.3.2 用户登录测试
用户在登录之后才可以进入平台进行一系列操作,此处为用户登录的测试用例。
表 6-2 用户登录测试用例表
6.3.3 留言发布
发布留言可以与管理员进行交流沟通。发布留言测试用例如表如下:
表 6-3 发布留言测试用例表
7 结论
本文研究了青少年编程学习系统的设计与实现,首先简述了系统开发的背景、现状等,然后是可行性分析、需求分析和相关技术介绍,之后是相关功能设计与实现,最后是系统的功能测试以及结论。
本论文实现了用 Java 、 MYSQL 等设计开发的青少年编程学习系统,本系统采用 B/S 架构, 用户无需再下载其他软件,在浏览器里打开即可使用。在本次系统开发之前,由于本人对于 Java 知识的掌握不透彻,所以起初遇到很多问题,在不断的上网查找相关信息,并找老师寻求相关问题的指导和解答,以及和同学探讨之后,出现的大部分问题基本得到了解决。在这次的系统开发过程中,本人对之前学过的书本内容有了更清晰全面的掌握,也认识到了自己的不足,同时更加深刻地体会到要想解决问题一定要亲自实践,并敢于试错,相信这些对自己今后的发展都会有很大帮助。
参考文献:
[1] 孙丹 , 李艳 . 国内外青少年编程教育的发展现状、研究热点及启示——兼论智能时代我国编程教育的实施策略[J]. 远程教育杂志 ,2019,37(03):47-60.
[2] 李 杰 , 陈 惠 敏 . 基 于 SSM 的 在 线 学 习 平 台 设 计 与 实 现 [J]. 电 脑 编 程 技 巧 与 维护,2019,(11):53-54+66.
[3] 孙丹 , 李艳 . 我国青少年编程教育课程标准探讨 [J]. 开放教育研究 ,2019,25(05):99-109.
[4] 彭 聪 . 在 线 编 程 平 台 数 据 集 的 研 究 与 实 现 [D]. 北 京 邮 电 大
学 ,2020.DOI:10.26969/d.cnki.gbydu.2020.000280.
[5] 姜 丽 莉 , 涂 玄 武 . 基 于 SSM 的 “ 我 的 课 堂 ” 管 理 系 统 的 设 计 与 实 现 [J]. 科 技 与 创
新 ,2021,(06):118-119.
[6] 邓子云 .Java 网络编程从基础到实践 [M]. 北京 : 电子工业出版社 ,2019.
[7] 陈圣国 .Java 信息系统设计与开发实例 [M]. 北京:机械工业出版社, 2019. [8] 石正喜 . MySQL 数据库实用教程 . 北京:北京师范大学出版社 2019
[9] 孔硕 . Scratch 在线编程学习系统的研究与实现 [D]. 北京邮电大学 ,2019.
[10] 王玉英 . 基于 Java 的 MySQL 数据库访问技术 [J]. 现代计算机:专业版 , 2018, 19(14):63-66
[11] 郭 鑫 . 基 于 HUSTOJ 的 青 少 年 编 程 在 线 训 练 比 赛 系 统 设 计 与 实 现 [D]. 山 东 师 范 大
学 ,2019.DOI:10.27280/d.cnki.gsdsu.2019.000025.
[12] Todd Cook. Java 从入门到精通 [W]. 北京:电子工业出版社, 2019.
[13] Bruce Eckel. Thinking in java(English Edition). 北京:机械工业出版社 ,2019
[14] Yutaka Watanobe,Chowdhury Intisar,Ruth Cortez,Alexander Vazhenin. Next-Generation
Programming Learning Platform: Architecture and Challenges[J]. SHS Web of Conferences,2020,77.
[15] Ko Eunji,Lee Jeongmin. Assessment Process Design for Python Programming Learning[J].
Journal of The Korean Association of Information Education,2020,24(1).
喜欢的点赞收藏加关注私信作者沟通交流