谷歌软件工程师是怎样写设计文档的?

谷歌软件工程文化的主要元素之一就是通过设计文档定义软件设计。在开始项目编码工作之前,软件系统或应用程序的作者会创建这些相对非正式的文档。设计文档记录了高级实现策略和关键设计决策,并且重点记录了这些决策之间的权衡考虑。

作为软件工程师,我们的工作本质上不是生产代码,而是解决问题。非结构化文本,类似设计文档的形式,也许是在项目早期解决问题比较好的工具,因为它易于理解、更简洁,且以比代码更高的层次来沟通问题和方案。

除软件设计的原始文档外,设计文档还实现了软件开发周期中的如下功能:

  • 在早期发现设计问题,而那时变更的成本还比较小
  • 在组织内围绕设计达成共识
  • 确保考虑到交叉领域的问题
  • 将高级工程师的知识扩展到组织中
  • 围绕设计决策形成组织记忆的基础
  • 在软件设计师的技术组合中充当总结工具

设计文档的结构

设计文档是非正式文档,因此它们的内容不会遵循严格的准则。一个首要原则是,针对具体项目可以用任何最合理的形式编写。

话虽如此,形成的特定结构必定有其价值所在。

上下文和范围

这一部分会粗略地向读者介绍新系统是如何构建的以及实际情况如何。这不是需求文档。请保持简洁!我们的目标是直接让读者了解最新情况,但先前的一些情况可以被推测或者能链接到详细信息。这个部分应该完全聚焦于客观背景事实。

原文链接:【https://www.infoq.cn/article/o7076wCBpBkWEwJbtByz】。未经作者许可,禁止转载。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章