基于web的综合练习及评测系统设计与实现开题报告

 2022-05-16 20:30:40

1. 研究目的与意义

随着科学技术的不断发展,信息化时代已经到来,计算机技术已经运用各个领域中,包括现在的教育事业,将计算机技术与教育事业相结合,一种新的教育方式应运而生。现在,越来越多的网络教学平台油然而生,学生可以轻易地从网络上获取自己想要的知识,这种新兴的网络教育彻底改变了传统的教育方式,随之产生的便是网络考试,与传统的纸质考试不同,网络考试是无纸化的,并且阅卷也摆脱了传统的人工阅卷的桎梏,采用在线的程序设计与评价系统实现自动化阅卷,网络教育将会成为主流的新式教育方式。

正是在信息化的大背景下,程序设计能力尤为重要,各大高校为了更好地培养学生的编程能力,都使用了在线练习和评测系统,学生可使用系统进行编程练习以及参加考试,在练习时,学生可以选择整套题目或者针对性地选择基础薄弱的题型进行练习,也可选择考试模式,参加考试。在传统考试方式下,组织一次考试至少要经过五个步骤,即人工出题、考生考试、人工阅卷、成绩评估和试卷分析,而网络考试系统则是通过某种规则或算法从题库中抽取相应的题目,并且还可以对考生提交的试卷进行自动阅卷,反馈编译运行中的错误信息。显然,这种无纸化考试能够随机出题和评测,从而大大降低了教师的工作量,而且效率很高,传统的考试方式已经不能适应现代考试的需要。

基于web的综合练习及评测系统作为网络考试的核心组成部分,其重要性不言而喻,一个好的练习及评测系统将直接关系到网络考试的能否正常进行,因此,本课题依据现有技术和相关试题库管理系统知识,对练习及评测系统进行实现,主要实现题库资源的类别管理、用户管理、题目录入、组卷、统计分数等管理功能。

2. 研究内容和预期目标

1.利用powerdesigner这一工具,对该练习及评测系统进行需求分析、概要设计等。

2.完成数据库的设计,主要包括对题目、教师信息、学生成绩、学生信息、试卷分析等的数据库表设计,以便利用数据库存储相关信息。

3. 设计并实现按学生、教师、管理员分角色分权限管理的方式

剩余内容已隐藏,您需要先支付后才能查看该篇文章全部内容!

3. 研究的方法与步骤

3.1研究方法

3.1研究方法

系统功能模块图如下:

3.1.1系统功能模块主要划分为用户管理模块、课程管理模块、题型管理模块、题库管理模块、组卷模块以及试卷分析模块

3.1.1.1用户管理模块

用户管理模块要求完成对用户的分角色管理,不同角色可拥有不同的权限

3.1.1.2题库管理模块

题库管理模块可以实现对对题目类型的管理,根据题目类型可以实现对试题的添加、删除、修改模块

3.1.1.3组卷模块

组卷模块按照一定的组卷规则或算法抽取试题库中的试题进行组卷,各类型试题抽取一定数量的题目进行组卷并提供给学生进行答题。

3.1.1.4试卷分析模块

当学生用户对组完卷的试题答完题并提交后,系统可以自动对试卷进行批阅分析,给出答卷分数,并可以统计所有考生得分给出排名。

3.1.1.5课程管理模块

可以对系统进行添加和删除课程。

3.1.1.6题型管理模块

可以对系统进行添加和删除题型。

3.1.2采用的语言以及开发工具

本人打算以java为基础,使用mysql数据库并且基于Idea开发平台对软件进行开发,开发软件完成后,准备使用黑盒和白盒测试对软件进行测试,主要测试软件是否符合需求以及有无bug,最后形成毕业论文,做好PPT和准备论文答辩。

经查阅java语言主要有以下特点:

1)跨平台性

2)面向对象

3)安全性

4)多线程

5)简单易用

与其他语言对比:

Java是为了web而生的。隐藏了底层的实现细节,以及令人困惑的指针这些容易导致内存泄露等不安全结果的概念,让开发者更多地关注业务逻辑。对比起C语言,JAVA语言让编程者无法找到指针来直接访问内存无指针,并且增添了自动的内存管理功能,从而有效地防止了c语言中指针操作失误,如野指针所造成的系统崩溃,而对于垃圾管理,java将自动对内存进行回收,此外,java的跨平台型获得众多编程者的喜爱。

3.1.3数据库设计

本系统拟采用Mysql数据库,目前设计的表主要有(1)用户表:

字段

类型

可否为空

id

vchar(8)

N

Name

vchar(16)

Y

Sex

vchar(64)

Y

Role

vchar(2)

Y

Id用于标识唯一用户,name为用户名,sex为用户性别,role为用户角色,用于对用户进行权限分类

(2)Score表设计如下:

字段

类型

可否为空

id

vchar(8)

N

sumscore

vchar(64)

Y

count

vchar(16)

Y

Id为学生用户id,Sumscore为学生测试成绩总和,count为学生测试次数

(3)试卷信息表设计如下:

字段

类型

可否为空

id

vchar(8)

N

Subject

vchar(64)

Y

Type

vchar(16)

Y

lessonid

int

Y

Professionid

int

Y

Questionid

Int

Y

OptionA

vchar(50)

Y

OptionB

vchar(50)

Y

OptionC

vchar(50)

Y

OptionD

vchar(50)

Y

Answer

Char(10)

Y

Note

vchar(50)

Y

(4)考生信息表设计如下:

字段

类型

可否为空

id

vchar(8)

N

Name

vchar(64)

Y

Sex

vchar(16)

Y

Pwd

vchar(20)

Y

Profession

vchar(20)

Y

作用:用于保存考生的信息

(5)科目信息表设计如下:

字段

类型

可否为空

id

vchar(8)

N

Name

vchar(64)

Y

LessonID

vchar(16)

Y

(6)考生专业信息表设计如下:

字段

类型

可否为空

id

vchar(8)

N

Pname

vchar(100)

Y

(7)教师信息表设计如下:

字段

类型

可否为空

id

vchar(8)

N

Name

vchar(64)

Y

Pwd

vchar(16)

Y

(8)登录日志管理表设计如下:

字段

类型

可否为空

id

vchar(8)

N

Name

vchar(64)

Y

Success

vchar(16)

Y

Role

vchar(64)

Y

Ip

vchar(10)

Y

Logtime

vchar(30)

Y

作用:用来保存用户登录的状态信息

MySQL数据库具有以下主要特点:1. 同时访问数据库的用户数量不受限制;2. 可以保存超过50,000,000条记录;3. 是目前市场上现有产品中运行速度最快的数据库系统;4. 用户权限设置简单、有效。这也是我采用mysql数据库的最直接原因。

3.2研究步骤:

1.查阅文献资料,了解系统大体功能

2.对系统进行需求分析,了解系统的功能需求。然后进行资源搜索,参照一些现有的课程管理系统的功能、界面等,与自己的需求分析进行比较,查漏补缺,并对功能进行优化。然后进行功能定义,角色功能描述。

3.进行概要设计和详细设计

4.代码编写及测试

优化功能并完善系统系统功能模块图如下:

3.1.1系统功能模块主要划分为用户管理模块、课程管理模块、题型管理模块、题库管理模块、组卷模块以及试卷分析模块

3.1.1.1用户管理模块

用户管理模块要求完成对用户的分角色管理,不同角色可拥有不同的权限

3.1.1.2题库管理模块

题库管理模块可以实现对对题目类型的管理,根据题目类型可以实现对试题的添加、删除、修改模块

3.1.1.3组卷模块

组卷模块按照一定的组卷规则或算法抽取试题库中的试题进行组卷,各类型试题抽取一定数量的题目进行组卷并提供给学生进行答题。

3.1.1.4试卷分析模块

当学生用户对组完卷的试题答完题并提交后,系统可以自动对试卷进行批阅分析,给出答卷分数,并可以统计所有考生得分给出排名。

3.1.1.5课程管理模块

可以对系统进行添加和删除课程。

3.1.1.6题型管理模块

可以对系统进行添加和删除题型。

3.1.2采用的语言以及开发工具

本人打算以java为基础,使用mysql数据库并且基于Idea开发平台对软件进行开发,开发软件完成后,准备使用黑盒和白盒测试对软件进行测试,主要测试软件是否符合需求以及有无bug,最后形成毕业论文,做好PPT和准备论文答辩。

经查阅java语言主要有以下特点:

1)跨平台性

2)面向对象

3)安全性

4)多线程

5)简单易用

与其他语言对比:

Java是为了web而生的。隐藏了底层的实现细节,以及令人困惑的指针这些容易导致内存泄露等不安全结果的概念,让开发者更多地关注业务逻辑。对比起C语言,JAVA语言让编程者无法找到指针来直接访问内存无指针,并且增添了自动的内存管理功能,从而有效地防止了c语言中指针操作失误,如野指针所造成的系统崩溃,而对于垃圾管理,java将自动对内存进行回收,此外,java的跨平台型获得众多编程者的喜爱。

3.1.3数据库设计

本系统拟采用Mysql数据库,目前设计的表主要有(1)用户表:

字段

类型

可否为空

id

vchar(8)

N

Name

vchar(16)

Y

Sex

vchar(64)

Y

Role

vchar(2)

Y

Id用于标识唯一用户,name为用户名,sex为用户性别,role为用户角色,用于对用户进行权限分类

(2)Score表设计如下:

字段

类型

可否为空

id

vchar(8)

N

sumscore

vchar(64)

Y

count

vchar(16)

Y

Id为学生用户id,Sumscore为学生测试成绩总和,count为学生测试次数

(3)试卷信息表设计如下:

字段

类型

可否为空

id

vchar(8)

N

Subject

vchar(64)

Y

Type

vchar(16)

Y

lessonid

int

Y

Professionid

int

Y

Questionid

Int

Y

OptionA

vchar(50)

Y

OptionB

vchar(50)

Y

OptionC

vchar(50)

Y

OptionD

vchar(50)

Y

Answer

Char(10)

Y

Note

vchar(50)

Y

(4)考生信息表设计如下:

字段

类型

可否为空

id

vchar(8)

N

Name

vchar(64)

Y

Sex

vchar(16)

Y

Pwd

vchar(20)

Y

Profession

vchar(20)

Y

作用:用于保存考生的信息

(5)科目信息表设计如下:

字段

类型

可否为空

id

vchar(8)

N

Name

vchar(64)

Y

LessonID

vchar(16)

Y

(6)考生专业信息表设计如下:

字段

类型

可否为空

id

vchar(8)

N

Pname

vchar(100)

Y

(7)教师信息表设计如下:

字段

类型

可否为空

id

vchar(8)

N

Name

vchar(64)

Y

Pwd

vchar(16)

Y

(8)登录日志管理表设计如下:

字段

类型

可否为空

id

vchar(8)

N

Name

vchar(64)

Y

Success

vchar(16)

Y

Role

vchar(64)

Y

Ip

vchar(10)

Y

Logtime

vchar(30)

Y

作用:用来保存用户登录的状态信息

MySQL数据库具有以下主要特点:1. 同时访问数据库的用户数量不受限制;2. 可以保存超过50,000,000条记录;3. 是目前市场上现有产品中运行速度最快的数据库系统;4. 用户权限设置简单、有效。这也是我采用mysql数据库的最直接原因。

3.2研究步骤:

1.查阅文献资料,了解系统大体功能

2.对系统进行需求分析,了解系统的功能需求。然后进行资源搜索,参照一些现有的课程管理系统的功能、界面等,与自己的需求分析进行比较,查漏补缺,并对功能进行优化。然后进行功能定义,角色功能描述。

3.进行概要设计和详细设计

4.代码编写及测试

优化功能并完善系统

3.1研究方法

系统功能模块图如下:

3.1.1系统功能模块主要划分为用户管理模块、课程管理模块、题型管理模块、题库管理模块、组卷模块以及试卷分析模块

3.1.1.1用户管理模块

用户管理模块要求完成对用户的分角色管理,不同角色可拥有不同的权限

3.1.1.2题库管理模块

题库管理模块可以实现对对题目类型的管理,根据题目类型可以实现对试题的添加、删除、修改模块

3.1.1.3组卷模块

组卷模块按照一定的组卷规则或算法抽取试题库中的试题进行组卷,各类型试题抽取一定数量的题目进行组卷并提供给学生进行答题。

3.1.1.4试卷分析模块

当学生用户对组完卷的试题答完题并提交后,系统可以自动对试卷进行批阅分析,给出答卷分数,并可以统计所有考生得分给出排名。

3.1.1.5课程管理模块

可以对系统进行添加和删除课程。

3.1.1.6题型管理模块

可以对系统进行添加和删除题型。

3.1.2采用的语言以及开发工具

本人打算以java为基础,使用mysql数据库并且基于Idea开发平台对软件进行开发,开发软件完成后,准备使用黑盒和白盒测试对软件进行测试,主要测试软件是否符合需求以及有无bug,最后形成毕业论文,做好PPT和准备论文答辩。

经查阅java语言主要有以下特点:

1)跨平台性

2)面向对象

3)安全性

4)多线程

5)简单易用

与其他语言对比:

Java是为了web而生的。隐藏了底层的实现细节,以及令人困惑的指针这些容易导致内存泄露等不安全结果的概念,让开发者更多地关注业务逻辑。对比起C语言,JAVA语言让编程者无法找到指针来直接访问内存无指针,并且增添了自动的内存管理功能,从而有效地防止了c语言中指针操作失误,如野指针所造成的系统崩溃,而对于垃圾管理,java将自动对内存进行回收,此外,java的跨平台型获得众多编程者的喜爱。

3.1.3数据库设计

本系统拟采用Mysql数据库,目前设计的表主要有(1)用户表:

字段

类型

可否为空

id

vchar(8)

N

Name

vchar(16)

Y

Sex

vchar(64)

Y

Role

vchar(2)

Y

Id用于标识唯一用户,name为用户名,sex为用户性别,role为用户角色,用于对用户进行权限分类

(2)Score表设计如下:

字段

类型

可否为空

id

vchar(8)

N

sumscore

vchar(64)

Y

count

vchar(16)

Y

Id为学生用户id,Sumscore为学生测试成绩总和,count为学生测试次数

(3)试卷信息表设计如下:

字段

类型

可否为空

id

vchar(8)

N

Subject

vchar(64)

Y

Type

vchar(16)

Y

lessonid

int

Y

Professionid

int

Y

Questionid

Int

Y

OptionA

vchar(50)

Y

OptionB

vchar(50)

Y

OptionC

vchar(50)

Y

OptionD

vchar(50)

Y

Answer

Char(10)

Y

Note

vchar(50)

Y

(4)考生信息表设计如下:

字段

类型

可否为空

id

vchar(8)

N

Name

vchar(64)

Y

Sex

vchar(16)

Y

Pwd

vchar(20)

Y

Profession

vchar(20)

Y

作用:用于保存考生的信息

(5)科目信息表设计如下:

字段

类型

可否为空

id

vchar(8)

N

Name

vchar(64)

Y

LessonID

vchar(16)

Y

(6)考生专业信息表设计如下:

字段

类型

可否为空

id

vchar(8)

N

Pname

vchar(100)

Y

(7)教师信息表设计如下:

字段

类型

可否为空

id

vchar(8)

N

Name

vchar(64)

Y

Pwd

vchar(16)

Y

(8)登录日志管理表设计如下:

字段

类型

可否为空

id

vchar(8)

N

Name

vchar(64)

Y

Success

vchar(16)

Y

Role

vchar(64)

Y

Ip

vchar(10)

Y

Logtime

vchar(30)

Y

作用:用来保存用户登录的状态信息

MySQL数据库具有以下主要特点:1. 同时访问数据库的用户数量不受限制;2. 可以保存超过50,000,000条记录;3. 是目前市场上现有产品中运行速度最快的数据库系统;4. 用户权限设置简单、有效。这也是我采用mysql数据库的最直接原因。

3.2研究步骤:

1.查阅文献资料,了解系统大体功能

2.对系统进行需求分析,了解系统的功能需求。然后进行资源搜索,参照一些现有的课程管理系统的功能、界面等,与自己的需求分析进行比较,查漏补缺,并对功能进行优化。然后进行功能定义,角色功能描述。

3.进行概要设计和详细设计

4.代码编写及测试

优化功能并完善系统

4. 参考文献

[1]张利强,李尧.基于b/s的高校程序在线评测系统设计与实现[j].通信与信息技术.2018年第4期(第234期),p33-36

[2]马金强,苗志宏.程序设计类课程案例演示系统的设计与开发[j],武警学院学报,2013年8月.第34卷第4期,p19-20

[3]翟瞳飞,王少魁等.便携式程序设计测评系统设计与开发[j].三明学院学报,2017年24期,p41-45

剩余内容已隐藏,您需要先支付后才能查看该篇文章全部内容!

5. 计划与进度安排

2022.12.25----2022.01.01查阅相关文献资料

2022.01.02----2022.01.07撰写开题报告

2022.01.08----2022.03.10 需求分析,熟悉开发工具

剩余内容已隐藏,您需要先支付 10元 才能查看该篇文章全部内容!立即支付

发小红书推广免费获取该资料资格。点击链接进入获取推广文案即可: Ai一键组稿 | 降AI率 | 降重复率 | 论文一键排版