5 建立评价软件体系结构的方法
通过分析来预见软件的质量,通过分析来创建、选择、评估与比较不同的体系结构。例如,Kazman等人在2000年提出的ATAM(Architectural Tradeoff Analysis Method)方法。ATAM方法不但能够揭示体系结构如何满足特定的质量需求(例如性能和可修改性),而且还提供了分析这些质量需求之间交互作用的方法。使用ATAM方法评价一个软件体系结构的目的是理解体系结构设计满足系统质量需求的结果。采用ATAM方法的步骤如图3所示,限于篇幅,在此不再详细介绍具体步骤,有兴趣的读者可查阅有关ATAM方法的文献。

三、发展方向
1 各种ADLs之间的信息互换
现有的ADLs大多是与领域相关的,所以不利于对不同领域体系结构的说明。但这些针对不同领域的ADLs在某些方面又大同小异,造成资源的冗余。其实,大多数ADLs具有一系列的共同概念。如何用一种公共形式把各种语言综合起来,使得能够交换各种体系结构描述信息,将是今后软件体系结构研究和实践的重点之一。
2 设计工具和环境
软件体系结构设计既然作为软件工程的一部分,它的计算机辅助实现手段是相当重要的。我们应当开发出一些软件工具来实现体系结构的描述和分析,开发阶段转换工具,以实现阶段成果的自动转换,例如,把需求规格说明自动转换为构件等。目前关于这方面的研究成果很少,特别是可以应用到实际项目开发中的工具和环境就更少。
3 体系结构再工程
当今软件系统的规模变得越来越大,结构也越来越复杂,同时从头开始构建的大系统数量在急剧地减少,因而很多遗留系统正在被逐步地利用。从遗留系统软件代码和系统中抽取结构信息,经过描述、统一、抽象、一般化与实例化等处理,可总结出系统的体系结构。
在这种情况下,软件再工程变得越来越重要,因为它提供了一条把遗留系统转换为可进化系统的现实可行的途径,是一种可以改进人们对软件的理解和改进软件本身的活动。这类研究的目的是为一些特定的应用领域的软件系统提供一些体系结构框架,如控制系统、移动机器人和用户接口界面等。通过这些框架可以很方便地构造一个新的软件系统。