第一次个人编程作业

发布时间:2022-07-05 发布网站:脚本宝典
脚本宝典收集整理的这篇文章主要介绍了第一次个人编程作业脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。

gIThub地址: Visionsssss/Visionsssss (github.COM)

作业课程首页 - 网工1934-软件工程 - 广东工业大学 - 班级博客 - 博客园 (cnblogs.com)
作业要求 个人项目 - 作业 - 网工1934-软件工程 - 班级博客 - 博客园 (cnbLOGs.com)
作业的目标 实现论文查重,学会使用工具进行代码优化和性能分析

1、psp表格

PSP2.1PErsonal Software PRocess Stages预估耗时(分钟)实际耗时(分钟)
Planning 计划 15 10
EstiMATE 估计这个任务需要多少时间 5 5
Development 开发 360 400
Analysis 需求分析 (包括学习新技) 20 20
Design Spec 生成设计文档 0 0
Design review 设计复审 0 0
Coding Standard 代码规范 (为目前的开发制定合适的规范) 15 10
Design 具体设计 0 0
Coding 具体编码 180 240
Code Review 代码复审 60 30
test 测试(自我测试,修改代码,提交修改) 60 30
Reporting 报告 60 120
Test Repor 测试报告 20 20
Size Measurement 计算工作量 5 5
Postmortem & Process Improvement Plan 事后总结, 并提出过程改进计划 60 30
  合计 500 520

2、模块接口的设计与实现过程

项目类图:

第一次个人编程作业

类图说明:PaperPass类的main()方法中创建两个Paper类,paper对象调用split()将论文以两个字符为一个基本单元划分文本特征,然后调用PaperComparator.compare()对原文文件和抄袭文件的文本特征进行比较。

关键函数的流程图:(1)将论文分词存入集合中

第一次个人编程作业

(2)原始论文和抄袭论文的文本特征进行比较

第一次个人编程作业

算法的关键:两个相邻字符为一个基本单元进行分词,提高准确率。

3、模块接口部分的性能改进

JProfiler的性能分析图

第一次个人编程作业

程序中耗时最大的函数:Paper类的初始化方法

第一次个人编程作业

4、模块部分单元测试展示

    @org.junit.Test
    public void testMain(){
        String[] paths = {
                "E:\test\orig.txt",
                "E:\test\orig_0.8_add.txt",
                "E:\test\ans.txt"
        };
        try {
            PaperPass.main(paths);
        } catch (IOException e) {
            e.printStackTrace();
        }
    }

测试的函数:main()方法。单元测试的测试覆盖率截图:

第一次个人编程作业

5、模块部分异常处理说明

(1)找不到文件或文件不存在

第一次个人编程作业

(2)IO读取/关闭异常

脚本宝典总结

以上是脚本宝典为你收集整理的第一次个人编程作业全部内容,希望文章能够帮你解决第一次个人编程作业所遇到的问题。

如果觉得脚本宝典网站内容还不错,欢迎将脚本宝典推荐好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。