描述软件体系结构.pdfVIP

  • 16
  • 0
  • 约5.91万字
  • 约 32页
  • 2018-02-16 发布于河北
  • 举报
描述软件体系结构.pdf

第6 章. 描述软件体系结构 6.1 软件体系结构描述概述 体系结构与体系结构描述是两个不同的内容,体系结构是软件系统中存在的实质性内容, 而体系结构描述虽然体现了一部分软件体系结构的内容,但还需要涉及为了易于交流而设定 的文档及其标准[Maier2001] 。这就像建筑体系结构与建筑作图是不同的内容一样。所以, 本章讨论的重点不是应该描述什么内容,而是如何进行描述。 6.1.1 软件体系结构描述的内容需要 真正的软件体系结构存在于最终软件之中,纸面上所能表现的仅仅是它的一部分,其中 的核心是描述高层结构。 在高层结构的描述上,要充分体现软件体系结构的抽象与实现两个层次,既要说明软件 体系结构的抽象规格,又要详细描述软件体系结构的实现。 按照软件体系结构的抽象规格语义,描述它的模型需要以部件、端口、连接件、角色、 配置等抽象规格元素为基础,阐述其高层结构和设计机制。 高层结构的实现因素与抽象规格一样也是需要描述的重要内容,它需要以模块、层、进 程、网络节点、程序调用、消息、事件等实现元素为基础,阐明软件体系结构对详细设计、 实现等后续开发活动的指导与限定。 除了高层结构的抽象规格和实现之外,对软件体系结构的描述还要说明其运行时表现、 设计决策等超出高层结构的内容。 为了用于交流,起到交流媒介的作用,软件体系结构描述的内容还要表现各方面的关注 点,体现功能需求、质量和环境,还要反映分工协同等开发特征。 6.1.2 软件体系结构描述的语言需要 描述软件体系结构的模型语言应该既严格、准确,又要能够体现各方的关注点,为所有 涉众共同理解。 软件体系结构是高层设计活动的结果,是软件系统的高层设计方案。设计方案作为开发 的规划图,其描述必须要清晰、准确,所以软件体系结构的描述需要使用严格、准确的模型 语言。这些模型语言既要能够很好地表现软件体系结构的基本结构,又要能够形成严密的逻 辑体系,帮助软件体系结构师分析高层结构,对设计方案进行推理和验证。 作为重要的交流媒介,软件体系结构的描述除了要帮助设计人员进行软件体系结构设计 之外,还要能够形成所有人员的共同理解,供所有相关人员交流。因此,描述的语言和形式 要能够被所有人员(尤其是用户)理解,严格的同时不能过于晦涩。 6.2 软件体系结构的多视点描述 6.2.1 建立软件体系结构描述统一模型语言的困难 按照软件体系结构的描述要求,它所基于的模型语言应该是严格的以帮助进行体系结构 设计,同时所描述的内容应该是比较广泛的以反映各方的关注点,这两个要求联合起来就给 模型语言的建立和选择带来了困难。 模型语言有三个要素,分别是:语法、语义、语用。语法告诉我们怎样使用模型的元素, 并且以什么方式组织、连接或关联这些元素;语义说明了一个特定模型元素所具有的含义; 语用给出了一个模型元素更宽广的描述背景和环境,以及影响该模型元素意义的约束和假定。 模型语言的三个要素之间互为依赖,每个要素都为下一个要素提供了一个必需的环境。 如果一个模型语言没有语法,也就没有语义。没有语义,它就不能提供任何语用用途。如果 一个模型语言的语法非常复杂,那么它就会具有丰富的语义和广泛的语用用途。如果一个语 言具有简练的语法,那么它就具有简洁的语义和限定的语用。因为简单规则比复杂规则更容 易建立严密的逻辑体系,所以简练的语法通常更加严格。 例如,自然语言的语法规则非常复杂,它的语义与语用就比较丰富和广泛,可以描述现 实世界中发生的各种情况。再例如,基本数学运算语言的语法规则比自然语言要简单得多, 它的语义和语用就比自然语言有限的多,仅能描述那些符合数学特性的事情。而且,数学语 言的语法明显比自然语言的语法要严格得多。 因此,如果软件体系结构描述的模型语言要确立严格的语法以更好地辅助设计,就很难 同时具有广泛的语用,无法同时描述各种关注点。而如果软件体系结构描述的模型语言要充 分描述各种关注点,那么它的语法就会因为语用广泛而变得复杂,很难建立严格的语法体系。 为了解决语法与语用之间互相依赖和难以两全的问题,人们提出了多视点的解决方案。 6.2.2 多视点描述方法 多视点方法如图6-1 所示。 多视点方法所运用的是与抽象、分解两种手段并列的投射(Reflection )手段,它的基 本思想是将需要建模和描述的内容按照关注点(Concern )的不同,划分为

文档评论(0)

1亿VIP精品文档

相关文档