Spring+SpringMVC+MyBatis+Bootstrap+Vue开发在线学习系统
项目运行说明书:
论文章节结构:
部分内容节选: 在线学习平台主要分为三大功能模块:系统管理员模块、教师模块和学生模块。如图2-1所示。
图2-1 系统功能概述
1、管理员模块:每一个应用系统都需要这样的一个角色,它能保证系统能够在动态中稳定运行,管理系统各种配置属性,即拥护最高的权限。具体功能如下:
学院管理:对学院这个实体进行添加、删除、查询、修改等操作。
课程管理:对课程这个实体进行添加、删除、查询、修改等操作。课程应该归属指定的学院。
教师管理:对教师信息进行管理,包括添加、删除、查询、修改。同时可以通过excel表格批量导入教师信息。
学生管理:对学生信息进行管理,包括添加、删除、查询、修改。同时可以通过excel表格批量导入学生信息。
课程资料管理:对教师上传的课程视频、文档进行管理。
考试管理:可以对教师发布的考试进行管理。
论坛管理:对师生之间的讨论信息进行管理。
公告管理:对在线学习平台的全局公告进行管理。
3.1.1 系统类图设计 从在线学习平台的需求分析中大致可以分析出一些类,但是还不能全面的分析出系统中的实体类。考虑著名的MVC模式,我们需要识别实体、控制和边界三种对象。按照MVC模式来为识别对象做指导,是非常好的做法。对象识别的结果,就是我们所需要的静态模型,通常表现为类图。这个过程使用UML建模技术,将系统中的类结构描绘出来。
首先识别出实体对象,这些对象是比较容易看出来的,例如系统中的角色(管理员、教师、学生)。根据现实世界,角色应该有姓名、性别、电话号码、身份证等属性。系统角色类图如图3-1所示。
在线学习平台中的学院、课程、课件等实体类。其中课程应该归属某一个学院的,并且课件的应该是属于某一个课程,由教师上传。课件可以由学生登录平台进行在线观看和下载,其中path字段存储文件的路径。其类图如图3-2所示: 除了上面这些实体类,还有一些通知类。系统公告,是所有的登录用户都可以看到的。教师可以发布课程的问题让学生参与其中讨论,这样就需要一个讨论的实体类discuss。有些实体对象需要稍微分析一下才能得到,例如,在在线学习平台中,为了记录学生对教师发布的讨论进行回复,这时就需要一个对象来专门记录这一信息(Discuss_post实体)。其类图如图3-3所示:
在线学习平台还有一个在线测试的功能,教师发布考试并且添加试题同时给出试题的正确答案。学生登录系统后,可以在线完成测试,系统自动给该生打分。这样一个功能的完成,需要的实体类有task(考试)、task_question(试题详细)、student_task(学生成绩)。其类图如图3-4所示: