go on!
在项目开始之前
1)需求之坑。完美,不是在没有什么需求可以增加,而是在没有什么需要去掉时达到。
不要搜集需求,发掘他们。和用户一起工作,从而能够像他们那样思考。
管理需求增长的关键是向项目出资人说明每项新特性对项目进度的影响。
2)解开谜题。有的时候加给你的约束很多,自由度很少,这就是解不开的谜题。
对付的方法:要挑战自己的先入之见,并且评估他们哪些是真正的约束,哪些是令人误解的约束,并且区分他们。
3)等你准备好。倾听反复出现的疑虑,等你准备好再开始。软件开发还不是科学,让你的直觉为你的表演加分。
4)规范的陷阱。应该把需求收集,设计,以及实现视为同一个过程的不同方面,采用无缝的方法编写规范和设计实现的代码。
5)批判的对待方法学,并从各种方法学中提取精华,融合成自己每个月都在变好的好习惯。不断提炼改善开发过程。
绝不要把方法学的呆板限制当做你的世界的边界。不要向方法的虚假权威屈服。
注重实效的项目团队
1)注重实效团队的表现。
不要留“破窗户”,一定要严把质量关,每个人都要有质量意识。
煮青蛙。即使在项目开发最火热的时候,也不要忘记观察需求等的变化。
交流。有自己项目比较容易记住的名字,还要创个logo,很可爱好笑的那种。
不要重复你自己,专人专责。
围绕功能,而不是围绕工作的职务组织团队。
自动化。技术经理可以做好自动化的培训和搭建工作,鼓励大家的开发热情。
让每个成员都以他们自己的方式闪亮,但是要注意无限制下去的诱惑。
2)无情的测试。
早测试,常测试,自动化测试。不一定要提交代码之后才可以测试。
要到全部通过测试,编码工作才算全部完成。
单元测试,集成测试,性能测试,可用性测试。
3)文档很重要。
程序员的文档中要有注释,这样更方便后来的维护,对自己也是一种鼓励,因为有这样一个让自己完美的机会。
技术文档的撰写。不一定是专门的文档撰写人员,程序员也要参与,虽然写文档的过程很痛苦。
4)和用户交流期望,温和的超出用户的期望。