第一次个人编程作业

这个作业属于哪个课程 软件工程2024 (广东工业大学)
这个作业要求在哪里 个人项目
这个作业的目标 学习个人完成项目的过程

正文

一、GitHub

github地址

二、PSP表格

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

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

各个模块接口

主要的算法运用类似于编辑距离的算法,简述为计算抄袭文章需要花费多少操作才能与原文一样。

四、计算模块接口部分的性能改进

若不计main函数,程序消耗最大的是保存文章内容的操作。

因为要对比文章内容,必须要使用数据类型进行存储,由于文章内容长度未知,若提前开辟数组空间可能造成浪费或者不足,故本文使用string来保存内容,暂时想不到其他改进方法。

五、计算模块部分单元测试展示

该函数思路为以原文为模板,将原文每个字符按顺序在抄袭文章中寻找相应位置,若两个字的位置相差过大则舍去,看作需要添加该字,反之将该距离算作要删除的字数,最后利用相应算式得出结果。

在测试的样例文章《活着》中,先输入两个文章的绝对路径,最后命令行输出答案的绝对路径,打开答案文件则得到:

六、计算模块部分异常说明

若输入文件不存在,则命令行会提示文件打开失败,同时说明答案文件属于错误文件。

posted @ 2024-03-14 11:50  常泪  阅读(3)  评论(0编辑  收藏  举报