模式系统
模式并不是孤立存在的——它们之间相互依赖,模式系统将它的组成模式捆绑在一起。
软件体系结构的模式系统是一个软件体系结构模式的汇集,它包括模式在软件开发中实现、组合和实际使用的指南。软件体系结构模式系统的主要目标是支持高质量的软件系统开发。所谓“高质量”是指系统既实现其功能需求又实现其非功能需求。为了达到这个目标,一个模式系统必须满足以下的需求:
1)应该包括足够的基本模式。我们需要可以用来详细描述系统基本结构的模式,可以支持我们细化系统的模式,可以帮助我们用具体的程序设计语言来实现软件体系结构的模式。
2)应该统一描述它所有的模式。描述的形式必须既捕获模式的本质又对其细节进行准确叙述。这种形式必须能进一步支持模式与其他模式进行比较。
3)应该提示模式间的各种关系。模式系统必须能够识别什么样的模式是通过模式细化得到的,什么样的模式是通过模式揭示得到的,模式可以和哪些模式相结合以及可以使用什么样的可选模式。
4)应该组织它的组成模式。用户应该可以很快找到能帮助他们解决具体设计问题的模式,并且他们可以根据不同的模式探索不同的解决方法。
5)应该支持软件系统的构造。模式系统应该说明怎样应用并实现它的组成模式。
6)应该可以进行自我演化。随着技术的不断发展,模式系统也将逐步发展。现有的模式可能会改变,它们的描述将改进,新的或者缺少的模式将被增加,现有的模式甚至可能“死亡”。