一. git地址
github地址 | 个人地址 |
---|---|
结对伙伴地址 | 结对伙伴地址 |
二. 结对过程
三. PSP表格
PSP2.1 | Personal Software Process Stages | 预估耗时(分钟) | 实际耗时(分钟) |
---|---|---|---|
Planning | 计划 | 20min | 10min |
Estimate | 估计这个任务需要多少时间 | 380min | 430min |
Development | 开发 | 30min | 40min |
Analysis | 需求分析 (包括学习新技术) | 30min | 20min |
Design Spec | 生成设计文档 | 10min | 20min |
Design Review | 设计复审 (和同事审核设计文档) | 30min | 30min |
Coding Standard | 代码规范 (为目前的开发制定合适的规范) | 20min | 20min |
Design | 具体设计 | 40min | 30min |
Coding | 具体编码 | 30min | 50min |
Code Review | 代码复审 | 20min | 30min |
Test | 测试(自我测试,修改代码,提交修改) | 50min | 60min |
Reporting | 报告 | 40min | 40min |
Test Report | 测试报告 | 20min | 30min |
Size Measurement | 计算工作量 | 10min | 20min |
Postmortem & Process Improvement Plan | 事后总结, 并提出过程改进计划 | 50min | 30min |
合计 | 380min | 430min |
四. 问题分析
本次作业我们选择了“WinForm随机点名的程序”。首先我们把这个程序拆分为四部分:学生表数据库、实体层、点名方法以及附加的新功能:记录缺席人员。
五. 模块接口的设计与实现过程
模块和接口设计主要参考老师上课所讲,如下所示
六. 代码互审和复审
代码规范:
(一)代码风格规范
(1)缩进
(2)行宽及括号
(3)断行和分行
(4)变量命名
(5)下划线及注释
(二)代码设计规范
(1)C#中的类
(2)错误处理
总结:互审过程中参照代码规范,出现了一些问题,比如C#类的命名
在C#中,命名尽量的采用英文,尽量不使用汉语拼音。
在代码编写过程中我负责的UI设计时出现了一个问题
图中所画的含义:行单元格的默认样式。当初编写代码时跟着老师的操作,始终没显示学生列表的名字和学号(数据存在没显示),后来在小伙伴的帮助下找到了问题的根源,如图所示:
首先老师和我选择的目标框架不同,其实我也不太懂框架的意思,最后问题的原因是设置的字体是白色。。所以显示不出来。。。
七. 单元测试
单元测试项目:
代码覆盖率测试
源代码管理
八. 附加功能
附加功能:增加了缺勤人员的输出记录功能,目的在于减少上课所浪费的时间:点击人员姓名,选择是否缺勤,缺勤则记录。
九. 结论和感悟
这次作业学习了如何规范和高效的写一个项目,同时也意识到了自己的缺点,有些代码书写还不够规范。最后,在这次结对作业中我也了解了结对小伙伴的编程特点,认识到了其他人编程的习惯,也可从中学习他人的经验。