《人件》:人与人之间的交互是复杂的,并且其效果从来都难以预期,但却是工作中最为重要的方面。
人不是“插入即兼容的编程装置”。--凝聚力
1.敏捷实践
敏捷软件开发宣言
Ø 个体和交互胜过过程和工具
Ø 可以工作的软件胜过面面俱到的文档
工作的软件是首要的进度度量标准。
Ø 客户合作胜过合同谈判
Ø 响应变化胜过遵循计划
为下两周做详细的计划,为下三个月做粗略的计划,再以后就做极为粗糙的计划。
2.极限编程
eXtreme Programming.
Ø 短交付周期(每两周一次迭代-客户反馈)
Ø 测试驱动开发(测试脚本)
JUnit,NUnit
3.计划
当你能够度量你说的,并且能够用数字去表达它时,就表示你了解了它;若你不能度量它,不能用数字去表达它,那么说明你的知识是匮乏的,不能令人满意的。
4.测试
测试驱动的开发方法:
Ø 保证每一个功能都是正确的
Ø 从程序调用者的角度编写程序,设计出便于调用的软件
Ø 程序是可测试的,解耦合,促使模块之间隔离
例如,解除用户界面和业务规则之间的耦合。
Ø 测试是一种无价的文档形式