第三次作业
2019-04-01 15:24 goodnight1 阅读(356) 评论(4) 编辑 收藏 举报
链接:
作业地址:https://edu.cnblogs.com/campus/xnsy/SoftwareEngineeringClass2/homework/2879
共用的GIT仓库地址:https://github.com/pg7go/SchoolAssignment_WordCount.git
小队:何婷、陈一鑫
1. PSP表格
PSP2.1 |
Personal Software Process Stages |
预估耗时(分钟) |
实际耗时(分钟) |
Planning |
计划 |
||
· Estimate |
· 估计这个任务需要多少时间 |
180 | 122 |
Development |
开发 |
||
· Analysis |
· 需求分析 (包括学习新技术) |
10 | 12 |
· Design Spec |
· 生成设计文档 |
0 | 0 |
· Design Review |
· 设计复审 (和同事审核设计文档) |
0 | 0 |
· Coding Standard |
· 代码规范 (为目前的开发制定合适的规范) |
0 | 0 |
· Design |
· 具体设计 |
5 | 3 |
· Coding |
· 具体编码 |
90 | 75 |
· Code Review |
· 代码复审 |
10 | 0 |
· Test |
· 测试(自我测试,修改代码,提交修改) |
10 | 20 |
Reporting |
报告 |
||
· Test Report |
· 测试报告 |
10 | 7 |
· Size Measurement |
· 计算工作量 |
0 | 0 |
· Postmortem & Process Improvement Plan |
· 事后总结, 并提出过程改进计划 |
10 | 5 |
合计 |
145 | 122 |
2.讨论
看到作业后,我就找到陈一鑫组队,然后在第二天,星期六,我们就在一起讨论了一下怎么写。
讨论图如下:
分工与合作:
我们都是一个团队的队员,也有过一些合作,所以这次的项目对我们来说并不是很复杂,所以我们就大致的讨论了下。
先是分工方面:
我主要负责代码测试和复审,做单元测试等等,他的技术比我强,所以主要负责整体的代码部分。
然后是合作:
项目的难度并不是很大。所以就一起商讨画了一个结构图,
我们都觉得这样基本的功能都囊括了。
花费的时间也比较的短,大约也就10分钟吧
项目的实现
陈一鑫的部分:
代码的编写,这是他说的比较难的一部分:
我的部分:
测试:
我们选的是英文反乌托邦小说《1984》作为我们的测试数据
(大概的算了一下字数有10多万字,字符有50多万)
测试后输出的数据如图
我发现这里有一些错误,好像是空格也算进去了
然后我给陈一鑫说了一下
这是他改正的代码
复测
改正后再次测试
陈一鑫的部分:
加入新功能
运行结果:
我的部分:
单元测试:
我对代码进行了单元测试:
运行过程没有什么错误,一次正确
性能测试:
这是性能分析的图片,从中我们可以看出,wordCount函数所花费的时间最长
陈一鑫的部分:
异常处理
GIT提交
顺便把测试样例上传,方便大家做测试
总结:
1. 我的技术比陈一鑫的差,不少部分他也给我提了一些意见和指导,在这次结对编程中,我的收获还是挺多的
2.我基本上是陈一鑫带着,对于我来说,确实提高了我的效率,但是对于技术好的,可能就是存在拖累了,所以我觉得结对编程适合技术相当的两个人,这样的话,大家才能一起查漏补缺,互相进步,且不存在拖累的情况。同时,我觉得,结对编程适合一些更高的项目,适合两个人一起做的哪种,这个项目用结对编程,效率可能不会太高。
3.在这个过程中,我也发现了自己的一些缺点,比如看了陈一鑫的代码,我觉得我自己写的代码可阅读性太差;
我接触的各方面太窄,知识学的不够深入,这样会导致我们看到问题的深度不同,谁的更容易解决。
这是一个长期积累的过程,我需要多多努力。