软件架构的争论

办公室里,关于什么是软件架构,争论正酣。

程序员说:软件架构就是要决定需要编写哪些类、使用哪些现成框架。程序经理笑了;

程序经理说:软件架构就是模块的划分和接口的定义。系统分析员笑了;

系统分析员说:软件架构就是为业务领域对象的关系建模。配置管理员笑了;

配置管理员说:软件架构就是开发出来的以及编译过后的软件到底是啥结构。数据库工程师笑了;

数据库工程师说:软件架构规定了持久化数据的结构,其他一切只不过是对数据的操作而已。部署工程师笑了;

部署工程师说:软件架构规定了软件部署到硬件的策略。用户笑了;

用户说:软件架构就是决定一个个功能子系统如何划分。程序员又笑了;

大家想了想说,这些架构视图好像我们都需要啊,软件架构师哭了。

......

上述争论可以总结为一句话:不同涉众看待软件架构的视角是不同的。

相关推荐