《UML用户指南(第2版.修订版)》—第2章2.3节体系结构

2.3 体系结构
UML用户指南(第2版.修订版)
可视化、详述、构造和文档化一个软件密集型系统,要求从几个角度去观察系统。各种人员——最终用户、分析人员、开发人员、系统集成人员、测试人员、技术资料作者和项目管理者——各自带着项目的不同日程,在项目的生命周期内各自在不同的时间、以不同的方式来看系统。系统体系结构或许是最重要的制品,它可以驾驭不同的视点,并在整个项目的生命周期内控制对系统的迭代和增量式开发。

【第1章讨论需要从不同的角度观察复杂系统。】

体系结构是一组有关下述内容的重要决策:

软件系统的组织;
对组成系统的结构元素及其接口的选择;
像元素间的协作所描述的那样的行为;
将这些结构元素和行为元素组合到逐步增大的子系统中;
指导这种组织的体系结构风格:静态和动态元素以及它们的接口、协作和组成。
软件体系结构不仅关心结构和行为,而且还关心用法、功能、性能、弹性、复用、可理解性、经济与技术约束及其折中,以及审美的考虑。

如图2-23所示,最好用5个互连的视图来描述软件密集型系统的体系结构。每一个视图是在一个特定的方面对系统的组织和结构进行的投影。

【第32章讨论对系统的体系结构建模。】

系统的用况视图(use case view)由描述可被最终用户、分析人员和测试人员看到的系统行为的用况组成。用况视图实际上没有描述软件系统的组织,而是描述了形成系统体系结构的动力。在UML中,该视图的静态方面由用况图表现;动态方面由交互图、状态图和活动图表现。

系统的设计视图(design view)包含了类、接口和协作,它们形成了问题及其解决方案的词汇。这种视图主要支持系统的功能需求,即系统应该提供给最终用户的服务。在UML中,该视图的静态方面由类图和对象图表现;动态方面由交互图、状态图和活动图表现。类的内部结构图特别有用。

系统的交互视图(interaction view)展示了系统的不同部分之间的控制流,包括可能的并发和同步机制。该视图主要针对性能、可伸缩性和系统的吞吐量。在UML中,对该视图的静态方面和动态方面的表现与设计视图相同,但着重于控制系统的主动类和在它们之间流动的消息。

系统的实现视图(implementation view)包含了用于装配与发布物理系统的制品。这种视图主要针对系统发布的配置管理,它由一些独立的文件组成;这些文件可以用各种方法装配,以产生运行系统。它也关注从逻辑的类和构件到物理制品的映射。在UML中,该视图的静态方面由构件图表现,动态方面由交互图、状态图和活动图表现。

系统的部署视图(deployment view)包含了形成系统硬件拓扑结构的结点(系统在其上运行)。这种视图主要描述组成物理系统的部件的分布、交付和安装。在UML中,该视图的静态方面由部署图表现,动态方面由交互图、状态图和活动图表现。

这5种视图中的每一种都可单独使用,使不同的人员能专注于他们最为关心的体系结构问题。这5种视图也会相互作用,如部署视图中的结点拥有实现视图的构件,而这些构件又表示了设计视图和交互视图中的类、接口、协作以及主动类的物理实现。UML允许表达这5种视图中的任何一种。

本文仅用于学习和交流目的,不代表异步社区观点。非商业转载请注明作译者、出处,并保留本文的原始链接。

时间: 2024-10-02 01:57:00

《UML用户指南(第2版.修订版)》—第2章2.3节体系结构的相关文章

《UML用户指南(第2版.修订版)》—第2章2.2节UML的概念模型

2.2 UML的概念模型 UML用户指南(第2版.修订版) 为了理解UML,需要形成该语言的概念模型,这要求学习建模的3个要素:UML的基本构造块.支配这些构造块如何放在一起的规则和一些运用于整个UML的公共机制.如果掌握了这些思想,就能够读懂UML模型,并能建立一些基本模型.当有了较丰富的应用UML的经验时,就能够在这些概念模型之上使用更高深的语言特征进行构造. 2.2.1 UML的构造块 UML的词汇表包含下面3种构造块: (1)事物: (2)关系: (3)图. 事物是对模型中首要成分的抽象

《UML用户指南(第2版.修订版)》—第2章2.4节软件开发生命周期

2.4 软件开发生命周期 UML用户指南(第2版.修订版) UML在很大程度上是独立于过程的,这意味着它不依赖于任何特殊的软件开发生命周期.然而,为了从UML中得到最大的收益,应该考虑这样的过程,它是: 用况驱动的: 以体系结构为中心的: 迭代的和增量的. [在附录B中概述了Rational统一过程,对该过程的更完整处理在The Unified Software Development Process一书以及The Rational Unified Process中讨论.] 用况驱动(use c

《UML用户指南(第2版.修订版)》—第1章1.2节建模原理

1.2 建模原理UML用户指南(第2版.修订版)各种工程学科都有其丰富的建模运用历史.这些经验形成了建模的四项基本原理,现分别叙述如下. 第一,选择要创建什么模型,对如何动手解决问题和如何形成解决方案有着意义深远的影响. 换句话说,就是要好好地选择模型.正确的模型将清楚地表明最棘手的开发问题,提供不能轻易地从别处获得的洞察力:错误的模型将使人误入歧途,把精力花在不相关的问题上. 暂时先把软件问题放在一边,假设现在正试图解决量子物理学上的一个问题.诸如光子在时空中的相互作用问题,其中充满了令人惊奇

《UML用户指南(第2版.修订版)》—第1章1.3节面向对象建模

1.3 面向对象建模UML用户指南(第2版.修订版)土木工程师构造了很多种模型.通常这些模型能帮助人们可视化并说明系统的各部分以及这些部分之间的相互关系.根据业务或工程中所着重关心的内容(例如为了帮助研究一个结构在地震时的反应)工程师也可以建立动态模型.各种模型的组织是不同的,各有自己的侧重点.对于软件,有好几种建模的方法.最普通的两种方法是从算法的角度建模和从面向对象的角度建模. 传统的软件开发是从算法的角度进行建模.按照这种方法,所有的软件都用过程或函数作为其主要构造块.这种观点导致开发人员

《UML用户指南(第2版.修订版)》目录—导读

版权声明UML用户指南(第2版.修订版)Authorized translation from the English language edition, entitled The Unified Modeling Language User Guide, Second Edition, 0321267974 by Grady Booch, James Rumbaugh, and Ivar Jacobson, published by Pearson Education, Inc., publi

《UML用户指南(第2版.修订版)》—第1章1.1节建模的重要性

第一部分 入门UML用户指南(第2版.修订版) 第1章 为什么要建模UML用户指南(第2版.修订版)本章内容建模的重要性建模的4项原理软件系统的基本蓝图面向对象建模成功的软件组织应该总是能够交付满足其用户需要的软件.如果一个软件组织能够及时并可预测地开发出这样的软件,并能够有效地利用人力和物力资源,那么这个软件组织就是可持续发展的. 在上段话里有一个重要的含义:一个开发队伍的主要产品不应该是一堆漂亮的文档.世界级的会议.伟大的口号或者几行获得普利策奖金的源代码,而应该是满足不断发展的用户及其业务

《CCNA ICND2(200-101)认证考试指南(第4版)》——第1章定义生成树协议

第1章 定义生成树协议CCNA ICND2(200-101)认证考试指南(第4版)本章涵盖以下考试要点:LAN 交换技术了解高级的交换技术RSTPPVSTP以太网通道配置和验证PVSTP 操作解释根网桥选择生成树协议 (STP) 可以让以太网LAN 在LAN内安装冗余链路拥有额外好处的同时,还能克服在添加这些链路时会发生的已知问题.在LAN设计中采用冗余的链路,可以保证在某些链路失效甚至某些交换机完全失效时LAN依然能够工作.完备的LAN设计应当添加足够的冗余,保证任何单点失效不会令整个LAN崩

《CCENT/CCNA ICND1(100-101)认证考试指南(第4版)》——第1章TCP/IP和OSI网络模型

第1章 TCP/IP和OSI网络模型欢迎学习CCENT/CCNA的第1章内容,本章内容主要基于网络.由于网络是按照一定的逻辑规则来请求所有设备,所以我们将首先探讨网络模型,通过它可以更方便理解网络逻辑规则. 网络模型可以被视为房屋的建筑设计图.由于参与建造房屋的人很多,如设计人员.电工.泥瓦匠.油漆工等,如果让他们参考同一张图纸会事半功倍.同样,不参考现有的网络模型,网络设计师也可以组建网络.编写软件.制造网卡.但是倘若购买并使用符合常用网络模型要求的产品来组建网络就会容易得多.由于网络产品制造

《Ruby程序员修炼之道》(第2版)—第1章1.1节进入Ruby的世界

第1章 进入Ruby的世界 Ruby程序员修炼之道(第2版) 本章主要内容 Ruby语法的生存工具箱① Ruby基础编程指引:程序编写.保存.运行和错误检查 Ruby安装指南 Ruby的扩展机制 Ruby中易用的命令行工具,包括交互式Ruby解释器(irb) 本书的内容是Ruby基础,而本章是基础中的基石.本章的目标是让读者在开始学习Ruby之前掌握足够的知识和技巧. 接下来读者将看到Ruby的基本语法和技术,以及Ruby的运行机制:如何写一个程序,怎样使用Ruby运行程序,以及如何把一个程序分