基于白箱测试的源代码在线评测系统
摘要 | 第1-4页 |
ABSTRACT | 第4-8页 |
第一章 课题背景 | 第8-13页 |
·程序设计教学中的困难 | 第8-11页 |
·代码手工评测模式 | 第8-9页 |
·代码手工评测的困难和弊端 | 第9-11页 |
·源代码自动评测系统的发展及现状 | 第11-13页 |
·PC~2在线评测系统 | 第11-12页 |
·新加坡国立大学Online Judge平台 | 第12页 |
·国内高校的Online Judge平台 | 第12-13页 |
第二章 系统实施环境及开发工具 | 第13-14页 |
·系统实施环境 | 第13页 |
·开发工具 | 第13-14页 |
第三章 相关技术介绍 | 第14-17页 |
·白箱测试技术 | 第14页 |
·ADO.NET技术简介 | 第14-16页 |
·ADO.Net概述 | 第14-15页 |
·ADO.Net的优越性 | 第15-16页 |
·MVC开发模型 | 第16-17页 |
第四章 总体设计 | 第17-23页 |
·系统结构 | 第17页 |
·数据库设计与访问实现 | 第17-21页 |
·数据库设计 | 第17-20页 |
·数据库访问的实现 | 第20-21页 |
·评测流程 | 第21-23页 |
第五章 用户模块 | 第23-28页 |
·用户结构及用户登录 | 第23-25页 |
·四级用户结构 | 第23-24页 |
·用户登录 | 第24页 |
·修改个人信息 | 第24-25页 |
·管理员 | 第25-26页 |
·管理所有用户信息 | 第25页 |
·管理所有题集信息 | 第25-26页 |
·管理所有项目 | 第26页 |
·管理所有成绩 | 第26页 |
·教师 | 第26-27页 |
·添加、修改和删除题目 | 第26页 |
·成绩查阅 | 第26-27页 |
·项目申请 | 第27页 |
·学生 | 第27页 |
·在线评测功能 | 第27页 |
·参与在线辅助教学、在线考试和竞赛 | 第27页 |
·普通用户 | 第27-28页 |
第六章 项目管理模块 | 第28-31页 |
·项目类型和结构 | 第28页 |
·项目管理的实现 | 第28-31页 |
·在线辅助教学项目 | 第28-29页 |
·在线考试项目 | 第29-30页 |
·在线竞赛项目 | 第30-31页 |
第七章 C/C++代码安全检查 | 第31-47页 |
·代码安全检查的必要性 | 第31页 |
·静态代码分析技术 | 第31页 |
·常见安全漏洞分析 | 第31-39页 |
·存储越界 | 第32-34页 |
·动态内存分配错误 | 第34-36页 |
·内存泄漏 | 第36-37页 |
·类型不一致 | 第37-38页 |
·指针 | 第38页 |
·死循环 | 第38-39页 |
·对内存泄漏的检测 | 第39-44页 |
·控制流图 | 第39-40页 |
·基于控制流图的基本检测方法 | 第40-41页 |
·基于别名分析的检测方法 | 第41-44页 |
·对数组越界的检测 | 第44-47页 |
·程序分析 | 第44-45页 |
·数组越界查找 | 第45-47页 |
第八章 代码剽窃检测 | 第47-53页 |
·常见代码剽窃分析 | 第47-48页 |
·代码剽窃检测技术分析 | 第48-50页 |
·属性计数法 | 第49页 |
·结构度量法 | 第49-50页 |
·综合方法 | 第50页 |
·源代码在线评测系统中剽窃检测技术的实现 | 第50-53页 |
·代码的预处理 | 第51页 |
·特征向量生成 | 第51页 |
·计算代码相似度 | 第51-52页 |
·根据相似度给出嫌疑代码 | 第52-53页 |
第九章 总结 | 第53-54页 |
参考文献 | 第54-56页 |
攻读学位期间发表的学术论文目录 | 第56-57页 |
致谢 | 第57页 |