首页 » 程序员必读之软件架构 » 程序员必读之软件架构全文在线阅读

《程序员必读之软件架构》第32章 沟通障碍

关灯直达底部

如果你正在一个敏捷软件开发团队中工作,那就看看周围。不管是真实还是虚拟的,可能都有一个故事墙或看板,可视化了将要开始的、进行中的和已完成的工作。

为什么?简单来说,可视化软件开发流程是一个引入透明的奇妙方式,因为任何人都能从一个较高层次一眼看清当前的进度。将它与价值流程图1 之类的技术结合起来,就可以开始设计一些复杂看板来体现团队的工作方式。我们这个行业已经变得非常善于可视化软件开发流程。

1 http://en.wikipedia.org/wiki/Value_stream_mapping

然而,我们似乎已经忘了如何对正在构架的软件进行可视化。我指的不仅是项目完成后的文档,还包括软件开发过程中的沟通。

理解软件架构并不等于能够表达它。你办公室墙上的那些架构图,是反映了正在构建的系统,还是跟代码结构没有任何相似之处的概念抽象而已。多年来,我举办的架构培训班已有上千人参与,我可以非常自信地说,可视化一个软件系统的架构是一种只有极少人具备的技能。很多人都可以画图,但那些图往往有太多的想象空间,也几乎没有人使用正规的图表符号来描述他们的解决方案,这跟我十年前和软件团队工作的经验形成鲜明对比。