电脑软件与软件工程论文提纲

2022-10-06

论文题目:基于事件驱动的SQL在线考试系统的设计与实现

摘要:在线考试系统能够支持学生和老师在线上快速进行考试,完成教学任务。随着互联网发展,在线考试系统的应用不断普及。在疫情背景下,在线考试成为线上教育不可或缺的一部分。SQL在线编程考试是软件工程在线考试的重要部分,能够提升软件工程考试的效率。数据库是软件工程的重要组成部分,高校软件学院通常设有数据库相关课程,而SQL编程是数据库课程的重要考核内容。数据库笔试中,SQL编程题要求学生手写SQL代码,而学生平时都使用电脑编写代码,手写SQL代码效率较低;老师批改试卷时,需要阅读大量手写的SQL代码,且无法立刻运行代码以验证其正确性,批改试卷效率较低。所以需要一个功能完备的SQL在线考试系统,提高SQL编程考核的效率。本系统运用事件驱动设计思想,结合Web IDE在线编程技术实现了考试模块、个人信息模块、题库模块和群组模块。考试模块负责维护考试信息,支持学生进行考试并提交答案,个人信息模块负责维护个人信息包括姓名学号等等,题库模块负责为考试模块提供考题和答案,群组模块负责根据学生个人信息名单进行分组,进而安排考试。考虑到考试时存在较大的高并发压力,系统使用消息队列技术保证系统的可靠性,使用负载均衡技术提升系统的并发性能。使用本系统,学生可以迅速进行线上考试,无需配置环境,编码后可以快速获得运行结果;老师可以从题库快速选取题目并安排考试,系统会根据题目答案自动评判学生答题是否正确,无需老师手动批改。考试结束后,学生成绩会被持久记录。在用户体验方面,系统还提供便捷的快捷键操作和代码缓存机制,提高学生的编码效率和考试代码的安全性。本系统于2021年1月7日第一个正式版本上线,并支持学院数据库课程近200名研究生和300名本科生进行线上考试,反响良好。

关键词:在线考试;SQL;在线编程;事件驱动;Web IDE

学科专业:工程硕士(软件工程领域)(专业学位)

摘要

Abstract

第一章 引言

1.1 项目背景

1.2 国内外SQL在线考试系统研究现状

1.3 本文的主要工作

1.4 本文的组织结构

第二章 技术概述

2.1 基于Node.js的Express框架

2.2 Sequelize数据库框架+MySQL技术

2.3 事件驱动的RabbitMQ消息队列技术

2.4 React+Hook+CSS技术

2.5 负载均衡技术

2.6 Passport用户认证技术

2.7 Docker容器化技术

2.8 本章小结

第三章 SQL在线考试系统的需求分析与概要设计

3.1 系统需求分析

3.1.1 系统总体需求分析

3.1.2 考试需求分析

3.1.3 个人信息需求分析

3.1.4 题库需求分析

3.1.5 群组需求分析

3.1.6 用户管理需求分析

3.1.7 非功能性需求分析

3.2 系统概要设计

3.2.1 系统整体架构设计

3.2.2 4+1视图

3.3 系统模块设计

3.3.1 考试模块设计

3.3.2 个人信息模块设计

3.3.3 题库模块设计

3.3.4 群组模块设计

3.4 实体关系设计

3.4.1 考试实体关系设计

3.4.2 个人信息实体关系设计

3.4.3 题库实体关系设计

3.4.4 群组实体关系设计

3.5 本章小结

第四章 SQL在线考试系统的详细设计与实现

4.1 考试模块的详细设计与实现

4.1.1 考试模块的详细设计

4.1.2 查询考试列表功能的实现

4.1.3 答案提交功能的实现

4.2 个人信息模块的详细设计与实现

4.2.1 个人信息模块的详细设计

4.2.2 编辑个人信息的实现

4.3 题库模块的详细设计与实现

4.3.1 题库模块的详细设计

4.3.2 上传数据文件的实现

4.3.3 编辑题库的实现

4.4 群组模块的详细设计与实现

4.4.1 群组模块的详细设计

4.4.2 查询群组列表的实现

4.4.3 编辑群组的实现

4.5 用户权限认证的实现

4.5.1 用户注册的实现

4.5.2 用户登录的实现

4.6 本章小结

第五章 SQL在线考试系统的测试评估

5.1 系统测试概述

5.1.1 测试工作总体描述

5.2 接口测试

5.3 功能测试

5.4 压力测试

5.5 本章小结

第六章 总结与展望

6.1 总结

6.2 进一步工作展望

参考文献

致谢

本文来自 99学术网(www.99xueshu.com),转载请保留网址和出处

上一篇:高校学生消费论文提纲下一篇:计算机网络实验教学论文提纲