第一次个人编程作业

| 这个作业属于哪个课程 |软件工程|

| ----------------- |--------------- |

| 这个作业要求在哪里|个人项目1|

| 这个作业的目标 |完成论文查重功能并熟悉psp流程|

PSP2.1 Personal Software Process Stages 预估耗时(分钟) 实际耗时(分钟)
Planning 计划 30 180
· Estimate · 估计这个任务需要多少时间 30 180
Development 开发 360 455
· Analysis · 需求分析 (包括学习新技术) 100 200
· Design Spec · 生成设计文档 20 20
· Design Review · 设计复审 10 5
· Coding Standard · 代码规范 (为目前的开发制定合适的规范) 5 5
· Design · 具体设计 20 30
· Coding · 具体编码 125 60
· Code Review · 代码复审 20 15
· Test · 测试(自我测试,修改代码,提交修改) 60 120
Reporting 报告 40 45
· Test Repor · 测试报告 20 30
· Size Measurement · 计算工作量 10 5
· Postmortem & Process Improvement Plan · 事后总结, 并提出过程改进计划 10 10
合计 430 680
  • 计算模块接口的设计与实现过程
    除main函数外仅一个CalculateSimilarity函数,用于计算文档间重复字数并返回重复字占原文字数的比例。

  • 计算模块接口部分的性能改进
    由于使用的是查找相同字的方法,仅占用几百kb内存,故无性能改进。

  • 单元测试

TEST_CLASS(UnitTest1)
{
public:
	Calculate cal1;
	TEST_METHOD(TestMethod1)
	{
		string originalText = "我叫小明";
		string plagiarzedText = "我叫小红";
		Assert::AreEqual(0.75, cal1.CalculateSimilarity(originalText, plagiarzedText));
	}
};

  • 异常处理说明
    仅处理了当文件打开失败的情况,打印Failed to open input or output file.
posted @ 2024-03-11 23:06  凛雨1  阅读(94)  评论(0编辑  收藏  举报