《软件开发本质论》总结

这本书是大领导推荐,内容是作者关于软件开发工作的经验总结,本书薄薄的一本,字数不多,其价值在我这样的新手看来很是重要,现总结这本书的一些内容(其中有些是个人体会,会有括弧标识):

1、价值是我们软件开发行业者的工作重点,产品功能的设计、团队的组建、软件的开发需要以创造价值为导向;

2、当软件发布并且被实际使用时,项目才实现了价值的交付,我们需要尽早地交付价值;

3、一个项目由多个功能点组成,功能点的实现有两个基本的特性:价值、成本,为使得整个项目的价值得到最高效的实现,应该将价值高成本低的功能点优先交付,其次价值中成本中,最后价值低成本高(很多情况下,最后的低价值高成本的功能点往往不会去实现);

4、尽早发布产品的小版本是个很好的测试市场反应的方法,有助于快速占领市场并且迅速调整产品方向;

5、逐个发布版本和功能特性,相比于完全开发完毕,可以更早交付价值;

6、组建团队时,以功能为中心,吸收所有的需要的技能人员进组,能降低很多的沟通成本以及交付成本;

相比较于需求为一个团队,开发为一个团队,测试为一个团队,一个团队的工作全部完成后,项目才能进入下一个阶段,一个团队直接拥有所有技能人员的反应速度要快得多;

而且组员直接能互相学习,扩展综合能力;

7、老师傅工资高,一方面是技能到位,一方面是可以教出更多的老师傅;

8、工作任务分配时,项目需要以构成故事的功能为最小单位切割,越小越好,前提是仍然可以构成一个故事。

如果继续切割,工作任务会失去趣味性,大大降低开发人员的工作积极性;

9、开发人员不仅仅只关注技术,同样也需要关注产品、客户等等方面,什么都懂一点,团队的工作效率整体会高很多(个人体会);

10、防止产品因质量问题被退回的解决方法是:严格保证质量,避免出现这种问题,退回会严重影响商业计划;

11、重构比较理想的情况是:当新的开发任务碰到需要重构的代码时,才重构它。

整个团队,停止新任务的开发,整个投入到项目的整体重构有时不是一个最优方案;

11、因商业的特性,外包项目做完就丢,所以不大出现重构的情况;

产品为保持设计与性能的最优,往往需要重构与迭代,不过本人还未接触过一个严格的具有广泛意义的作为甲方工作人员开发的产品(个人体会);

12、团队进度不理想时,关注原因比给团队施加压力更重要;

13、能力的提升是速度提升的前提;

posted @ 2020-03-26 22:51  anderson_1996  阅读(299)  评论(0编辑  收藏  举报