软件架构一致性 —— 被忽视的研发成本
出处:
mp.weixin.qq.com
作者:
许晓斌
广义的软件研发活动涉及到需求分析、源码阅读和理解、代码编写、测试编写、配置环境、发布运维、安全漏洞修复,各种基础软件升级等等,这些方方面面的工作,大致可以分为两类,第一类是价值创造活动,第二类是为了价值创造不得不付出的成本。 新产品特性的研发,属于价值创造的部分。例如一个编辑器的软件,新增特性可现实用户当前编写文章的字数,这个特性可以激励用户更积极地创作,潜在的用户会更喜欢这个编辑器软件。新产品特性的研发,对于开发者来说,是一个学习和创造的过程,他可能需要和用户沟通,和产品经理沟通,需要理解现有系统的概念和运行逻辑,以及在必要的时候需要通过搜索学习新的技术以实现特性,有了这些上下文基础,才能进行编码和测试等工作。可以把编码理解成翻译工作,在我看来,把英文翻译成中文,和把领域知识翻译成编程语言,有着非常高的相似度。这类研发活动,通常是产品导向的,其关键目标是给用户创造增量的价值。