工程概论作业二--个人项目

发布时间 2023-09-20 16:53:27作者: 艤yi

github仓库

https://github.com/sg0329/sg0329/tree/main/202121331075

作业详情

这个作业属于哪个课程 工程概论
这个作业要求在哪里 个人项目
这个作业的目标 尝试做项目及学习项目管理

题目要求

题目:论文查重

描述如下:

设计一个论文查重算法,给出一个原文文件和一个在这份原文上经过了增删改的抄袭版论文的文件,在答案文件中输出其重复率。

原文示例:今天是星期天,天气晴,今天晚上我要去看电影。
抄袭版示例:今天是周天,天气晴朗,我晚上要去看电影。
要求输入输出采用文件输入输出,规范如下:

从命令行参数给出:论文原文的文件的绝对路径。
从命令行参数给出:抄袭版论文的文件的绝对路径。
从命令行参数给出:输出的答案文件的绝对路径。
我们提供一份样例,课堂上下发,上传到班级群,使用方法是:orig.txt是原文,其他orig_add.txt等均为抄袭版论文。

注意:答案文件中输出的答案为浮点型,精确到小数点后两位

开发环境

操作系统:Windows10
使用语言:java

实现设计

1、读取文本内容分别对两文件内容进行预处理
2、分隔单词,统计单词出现的频率
3、计算余弦相似度
4、主函数输出结果
image

运行结果

image

项目结构

image

异常处理

路径出错或格式错误导致打不开或找不到文件
image

image

PSP表格

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