第一次个人编程作业
| 课程:软件工程导论 | 班级链接 |
|---|---|
| 作业要求 | 个人项目 |
| 作业目标 | 完成一个个人项目 |
PSP表格
| PSP2.1 | Personal Software Process Stages | 预估耗时(分钟) | 实际耗时(分钟) |
|---|---|---|---|
| Planning | 计划 | 30 | 20 |
| Estimate | 估计这个任务需要多少时间 | 10 | 20 |
| Development | 开发 | 300 | 270 |
| Analysis | 需求分析 (包括学习新技术) | 120 | 100 |
| Design Spec | 生成设计文档 | 20 | 20 |
| Design Review | 设计复审 | 20 | 20 |
| Coding Standard | 代码规范 (为目前的开发制定合适的规范) | 30 | 30 |
| Design | 具体设计 | 10 | 20 |
| Coding | 具体编码 | 30 | 30 |
| Code Review | 代码复审 | 30 | 20 |
| Test | 测试(自我测试,修改代码,提交修改) | 40 | 50 |
| Reporting | 报告 | 40 | 50 |
| Test Report | 测试报告 | 20 | 20 |
| Size Measurement | 计算工作量 | 20 | 20 |
| Postmortem & Process Improvement Plan | 事后总结, 并提出过程改进计划 | 20 | 20 |
| Total | 合计 | 740 | 710 |
计算模块接口的设计与实现过程


一共3个函数,分别是预处理文本,计算相似度,还有主函数
主程序在接收到命令行传来的三个文件路径后,通过文件路径,读取文件。在预处理原文和抄袭版文本,然后将两个预处理文本进行相似度计算,最后进行输出。
性能分析


使用Line-profiler库,对程序性能进行分析,在命令行中输入参数之后运行测试程序,得到性能分析表。
代码覆盖率


使用coverage库,在pycharm自带的终端中进行覆盖率测试
在正常输入情况下有五行代码无需使用,这是正常的。
异常处理



已经消除所有的警告。
当命令行中输入的参数数量不对,或者是文件无法找到的情况下,就会报错。
实际运行结果


浙公网安备 33010602011771号