软件工程第二次作业:论文查重项目
| 课程名称 | https://edu.cnblogs.com/campus/gdgy/CSGrade21-12 |
|---|---|
| 作业要求 | https://edu.cnblogs.com/campus/gdgy/CSGrade21-12/homework/13014 |
| 作业目标 | 完成软件工程第一次项目 |
一.github链接:https://github.com/yia02/yia02
二.PSP表格
| PSP2.1 | Personal Software Process Stages | 预估耗时(分钟) | 实际耗时(分钟) |
|---|---|---|---|
| Planning | 计划 | 30 | 30 |
| -Estimate | -估计这个任务需要多少时间 | 30 | 30 |
| -Analysis | -需求分析 (包括学习新技术) | 150 | 90 |
| -Design Spec | -生成设计文档 | 60 | 0 |
| -Design Review | -设计复审 | 20 | 20 |
| -Coding Standard | -代码规范 (为目前的开发制定合适的规范) | 30 | 10 |
| -Coding | -具体编码 | 120 | 180 |
| -Code Review | -代码复审 | 20 | 40 |
| Test | 测试(自我测试,修改代码,提交修改) | 220 | 260 |
| -Reporting | -报告 | 100 | 120 |
| -Size Measurement | -计算工作量 | 40 | 40 |
三.接口设计与实现
| 函数 | 功能 |
|---|---|
| remove(file) | 清除标点符号 |
| readfile(file) | 读写文件 |
| analyse(ori, ori_add) | 计算文本之间的相似度 |
关键函数实现

使用Simhash算法生成两个文本间的Simhash值,其中相似的文本具有较高的汉明距离,而不相似的文本具有较低的汉明距离。 计算两个文本间的海明距离,即Simhash值
之间的汉明距离。海明距离表示两个Simhash值二进制表示中不同位的数量。 根据海明距离计算相似度, 公式为:1 - (海明距离 / 两个文本的文本的SimHash值中的较大值)。
四.性能改进
1.性能分析图

2.代码覆盖率

五.异常处理
