1:博客作业要求地址
https://www.cnblogs.com/happyzm/p/9626779.html
2:PSP表格
结对伙伴:吴福强
结对学号:201621123018
结对博客地址:http://www.cnblogs.com/hamawep789/p/9756848.html
结对码云地址:https://gitee.com/Lunter-zst/PersonalProject-Java (由于没有结对码云,以我的码云代替)
结对照片:
3:PSP表格
PSP2.1 | 结对开发流程 | 预估耗费时间(分钟) | 实际耗费时间(分钟) |
---|---|---|---|
Planning | 计划 | 10 | 5 |
· Estimate | 明确需求和其他相关因素,估计每个阶段的时间成本 | 10 | 5 |
Development | 开发 | 200 | 225 |
· Analysis | 需求分析 (包括学习新技术) | 10 | 10 |
· Design Spec | 生成设计文档 | 10 | 5 |
· Design Review | 设计复审 | 10 | 10 |
· Coding Standard | 代码规范 | 0 | 0 |
· Design | 具体设计 | 30 | 20 |
· Coding | 具体编码 | 90 | 120 |
· Code Review | 代码复审 | 20 | 10 |
· Test | 测试(自我测试,修改代码,提交修改) | 30 | 50 |
Reporting | 报告 | 15 | 5 |
· | 测试报告 | 5 | 2 |
· | 计算工作量 | 5 | 2 |
· | 并提出过程改进计划 | 3 | 1 |
4:解题思路描述
看见题目发现是在上次的基础上进一步改进,增加了三个功能--参数执行,词组频数,写入文件。
- 对于参数执行,只需将输入的命令进行分割然后循环去比对读取即可。
- 对于词组频数,按词组的长度要求去循环遍历list(在之前读取词数的时候顺便存入),然后入map,最后对map进行排序输出。
- 对于写入文件,使用PrintWrite即可完成。
5:代码说明
-
主函数中对输入参数进行判断
-
文件读取函数
-
词组匹配入map
-
文件写入函数
6:单元测试
-
运行全部参数测试
-
对空命令进行测试
-
对错误参数进行测试
7:代码覆盖率
-
包含-i和-n参数
-i G:\github\java\SoftwareEngineering\src\week2\1.txt -n 5
-
包含-i和-m参数
-i G:\github\java\SoftwareEngineering\src\week2\1.txt -m 3
-
包含-i、-n和-o参数
-i G:\github\java\SoftwareEngineering\src\week2\1.txt -n 5 -o G:\github\java\SoftwareEngineering\src\week2\test.txt
-
包含全部参数
-i G:\github\java\SoftwareEngineering\src\week2\1.txt -n 5 -m 3 -o G:\github\java\SoftwareEngineering\src\week2\test.txt
8:心路历程与收获
- 本次实验是在上次的实验基础上进一步完善,为了更方便的进行功能扩展,于是将之前混杂的代码进行修改使得每个功能分别独立出来,这使得代码更加的简洁也更方便他人理解。
- 对于结对编程,为了对方能够理解通常代码都写得比较易懂,也更方便于扩展。同时结对编程可以相互交流,减少了自己一个人苦苦思考的烦恼,使得编程过程更加轻松愉快。但是可以感受到结对编程在某些方面效率没有各自编程高。