【读书笔记】20年后的人月神话

关于《人月神话》(notes),作者在20周年后的自嘲:20年前的一本与30年前开发经验相关的书。我们知道软件工程师大概分三种:编码员(Coder)、程序师(Entrepreneur)、架构师(Architect),20年之后他依然对架构师不厌其烦的强调。

作为架构师,他们需要维护概念一致性。一个整洁、优雅的编程产品必须向它的每个用户提供一个条理分明的概念模型,这个模型描述了应用、实现应用的方法以及用来指明操作和各种参数的用户界面使用策略。上次我们谈到什么是创新的时候讨论过“怎样才能创新”这样一个问题,现在我认为应该概念一致性这一点也是创新的重要因素

架构师的思维不需要天马行空,甚至要阻止出现这些点子,因为这些拼凑在一起的点子只会让产品结构变成一团乱麻,他们需要的是有秩序、有逻辑的思维。这些有规则的游戏才能反复使用并保存下去。

为了尽量保持这种概念一致性,设计产品时就不能添加太多边缘功能。我们要清楚自己的核心在哪,优势在哪。这对正要着手于团队项目的我们十分重要,但问题也随之而生,如何才能围绕核心,从为用户服务的角度来看我们首先要做到就是必须要掌握用户的需求。对于大的用户群,为用户群的属性明确地记载各种猜测。清晰和错误都比模糊不清好得多。

思想概论课上老师以韩剧《来自星星的你》为例说明了贴近用户的重要性,电视剧试播时由于男主角的衣服由深V变成了高领而引起观众的强烈不满,所以剧组立马调整回来,赢得了一致好评。用户的需求复杂性常常超过我们的理解,再完备的数据分析也不如尽早的发行出alpha版本给用户测试,这才是解决这个问题的终极之道。

瀑布模型的基本谬误是它假设项目只经历一次过程,而且体系结构出色并易于使用,设计是合理可靠的,随着测试的进行,编码实现是可以修改和调整的。所以增量开发模型更加贴近我们的开发过程。

 

posted @ 2018-04-26 10:51  Chihkat  阅读(177)  评论(1编辑  收藏  举报