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


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

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

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

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

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

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

     

  • 相关阅读:
    linux centos7 如何安装mysql
    Json转换 在java中的应用
    最最简单的spring mvc + Maven项目
    windows下 申请免费ssl证书的方法 (letsencrypt)
    PowerDesigner中Table视图同时显示Code和Name
    在linux中 部署 mongo 数据库服务端
    Java保存图片到数据库Blob格式
    MyBatis mapper记录
    vue防止多次点击,重复请求
    金额的单位转换,元转分
  • 原文地址:https://www.cnblogs.com/chenzhikai/p/8947885.html
Copyright © 2020-2023  润新知