SP2.1 | Personal Software Process Stages | 预估耗时(min) | 实际耗时(min) |
Planning | 计划 | 30 | 30 |
· Estimate | 估计这个开发要多少时间 | 48*60 | 48*60 |
Development | 开发 | 720 | 480 |
· Analysis | 需求分析 | 30 | 30 |
· Design Spec | 生成设计文档 | ||
· Design Review | 设计复审 | 10 | 10 |
· Coding Standard | 代码规范 | 60 | 60 |
· Design | 具体设计 | 30 | 30 |
· Coding | 具体编码 | 600 | 400 |
· Code Review | 代码复审 | 30 | 10 |
Test | 测试 | 30 | 60 |
Test Report | 测试报告 | ||
Size MEASUREMENT | 计算工作量 | 60 | 60 |
合计 |
810 | 610 |
博客地址 | https://www.cnblogs.com/cc456xie/ |
伙伴博客地址 | https://www.cnblogs.com/yutao-1117/ |
GIT地址 | https://github.com/AngelYT/WordCount.git |
GIT用户名 | AngelYT |
作业地址 | https://edu.cnblogs.com/campus/xnsy/SoftwareEngineeringClass2/homework/2879 |
2,设计流程
我和伙伴进行了分工讨论,最后讨论的结果是我负责代码的编写和功能的实现,他负责代码审查,单元测试以及GIT上传
这是我和伙伴一起结对编程的照片
由于我主要负责代码的编写,所以流程分析图在我和结对伙伴进行半个小时的计划和需求分析后,我设计出了流程图,以实现要求的功能。
3,代码实现
我主要负责代码的编写,包括GetNum类方法的实现,以及Num接口的封装和Main函数中的调用
下面是GetNum类的编写,在编写用排序时,由于我自身能力有限,所以借鉴了同学的方法才完成这个功能,这提醒我要加强自己的编写能力
下面是Num接口的封装
再Main函数中调用Num接口
4,功能效果
我们用了一个名为TEST.txt的文本来测试功能:
我们实现了基本功能:(因为我又在TEST文本上进行了增添,并且伙伴的的测试也用了其他文本,所以下面几张运行截图的数据对不上,但都是正确的)
通过控制台以及CMD运行程序
由于能力有限,没有完成命令行参数功能。
这是输出到文件的功能,输出在名为output.txt的数据:
5,错误处理及单元测试
这部分由结对伙伴余滔实现,一开始进行单元测试的时候就发生了不大不小的错误,导致测试一直没有成功
后来发现是没有引入命名空间导致的,其实在编码过程中还有很多大大小小的问题,但在我们的不懈努力下都完成了,只是没有心情和空闲截图
这是单元测试的部分截图:
6,效能分析
运行比较流畅,没有占用过多内存。
7,上传至GIT
这一步也由余滔完成,没有发生困难
总结:结对编程确实能提高项目的完成效率,但各个成员应该有一个明确的分工,明确各部分的职责,优化时间方案
这样就能最大程度地增加效率。