个人项目:论文查重

个人项目:论文查重

这个作业属于哪个课程 https://edu.cnblogs.com/campus/gdgy/Networkengineering1834
这个作业要求在哪里 https://edu.cnblogs.com/campus/gdgy/Networkengineering1834/homework/11146
这个作业的目标 实现论文查重算法,学会使用PSP表格估计,学会电脑的仓库代码上传至GitHub中,学会 Git commit 规范,学会单元测试

1. GitHub仓库

https://github.com/deng-jx/3218005307-paper

2. PSP表格

PSP2.1 Personal Software Process Stages 预估耗时(分钟 实际耗时(分钟)
Planning 计划 30 35
· Estimate · 估计这个任务需要多少时间 30 30
Development 开发 720 750
· Analysis · 需求分析 (包括学习新技术) 30 35
· Design Spec · 生成设计文档 50 55
· Design Review · 设计复审 60 65
· Coding Standard · 代码规范 (为目前的开发制定合适的规范) 10 10
· Design · 具体设计 35 35
· Coding · 具体编码 200 220
· Code Review · 代码复审 55 65
· Test · 测试(自我测试,修改代码,提交修改) 65 75
Reporting 报告 60 65
· Test Repor · 测试报告 30 40
· Size Measurement · 计算工作量 15 15
· Postmortem & Process Improvement Plan · 事后总结, 并提出过程改进计划 30 30
· 合计 1420 1530

3. 计算模块接口的设计与实现过程

  • 类图
    个人项目:论文查重

  • 函数的流程图
    个人项目:论文查重
    个人项目:论文查重
    个人项目:论文查重
    个人项目:论文查重
    个人项目:论文查重

  • 算法思路
    AbsolutePath类读取相对路径下的原始论文存储路径和抄袭论文原始路径,获取文本特征之后,将字符串以两个字符为单元有重叠地进行切割,切割的结果存入coupleWordsList中,例如:“一位真正的作家只为内心写作”分词后的结果:一位、位真、真正、正的、的作、作家、家为、为内、内心、心写、写作。之后通过分段落比较两个字符串(将段落的符号和空格去掉)。最后两两分组计算重复率,并且把重复率写入结果文件中。

4. 计算模块接口部分的性能改进

  • JProfiler的性能分析图
    个人项目:论文查重

  • 内存分析
    个人项目:论文查重

5. 计算模块部分单元测试展示

  • 测试的函数:Main()
    个人项目:论文查重

  • 单测的测试覆盖率
    个人项目:论文查重

6. 计算模块部分异常处理说明

  • 找不到系统文件
    个人项目:论文查重

个人项目:论文查重

上一篇:vertical-align:top;文字置顶


下一篇:内存管理工具,帮助检查内存泄露及野指针问题