好久没有好好的读一本书了,浮躁的内心不知怎样归于平静。断断续续的读完本书,发现自己确实需要多阅读一些与自己专业相关的书籍。不仅可以提前了解职场中可能发生的问题,也能为自己提供遇到相同问题该如何解决的答案。因为没有相关经验,所以并不是所有内容都看的明白,所以只摘录了一些自己认为较好的部分,供自己回顾也供读者交流学习。
0、书籍简介
初识:如何构建一款软件
作者:[美] 罗恩-杰弗里斯 [译]王凌云
出版时间: 2017.1 人民邮电出版社
阅读来源:网易蜗牛阅读
时间:2019.12.20-2020.1.4
1、目录
第一部分 将产品分解为以功能为单位
第二部分 什么是价值
第三部分 软件开发很难,如何提高软件开发的效率
1.1 根据功能特性划分产品
根据功能特性划分产品的不同版本,快速交付上线会有诸多好处。如有利于掌握软件开发进度和软件开发方向,根据功能的重要性依次递减上线,增加产品反馈信息,减少不必要功能的开发,是否去除某些特性,是否更改某些特性,不断调整软件开发方向。软件开发不可能马上开发出所有你想要的功能,而用户也不需要一个软件的所有功能,因此核心功能完成即可交付上线。
1.2 根据功能特性构建产品
我们需要公开地去做所有这些事情。团队的每个成员都需要看到实际的进展情况。我们不接受诸如“完成了90%”这样的表述。功能特性要么“已完成”,要么“未完成”,不存在中间地带。必须清楚地看到项目内部真实的进展情况,这样才能够将项目引向最好的结果。
2.1 什么是价值?
价值就是那些我们想要的东西。一个软件是否能提供用户想要的东西,是证明这款软件价值的根本,因此核心功能需要需要围绕最大用户群进行展开。
2.2 如何衡量价值?
通过对比,可以衡量一件事情的价值,甚至可以了解这件事情是否真的有价值。软件的功能也可以通过对比衡量,因为在规定时间内开发出一款软件的所有功能是不可能也是没有必要的,因为我们不知道市场和我们的预期会相差多少,用户与感受如何,所以才会有所取舍和衡量,让最优价值的最先上线,后序再进行不断更新和改进。
3.1 组建强大的团队
目的、自主与专精是提高员工满意度和工作效率的三大驱动力。——《驱动力》
有一些团队的产品推动人会直接给出明确的解决方法,而不是将疑虑或者问题告诉团队。虽然这样做或许同样能够解决问题,但是这一做法并不值得提倡。由于是被“填鸭式”地直接告知解决方法,而不是通过主动思考,因此整个团队将需要更长的时间获得明确的目标感。而当整个团队一起合作解决问题时,产品推动人能够更好地知道他到底想要什么以及怎样表达得更清楚。这样一来,整个团队以及产品推动人的能力都会有所提高,这就是目的带来的好处。
3.2 监督员工更加努力的工作并不可取
曾有一位高级管理人员在被告知某个项目的实际进展速度要比预期的慢时,这样回答道:“看来我们只能监督员工更加努力地工作了”。我发现很难从管理人员那里听到比这更令人反感的话了。而且,我敢肯定这样做只会适得其反。通过压榨员工的劳动力,效果并不会太好,反而会让员工更加急促,忙乱,增加产品出错的可能。
3.3 能力是提高速度的前提
为了加快开发速度,我们能做的最有价值的事情就是提高团队成员的技能。这一投入很快就能带来以下回报:浪费在修复缺陷上的时间会更少、开发过程会更加顺畅。不要将迅猛当作高效。速度最快的团队总是平稳、优雅地前进。