包图,构件图,静态视图

本文介绍了模型管理视图,强调包作为模型内容的基本组织单元,模型和子系统作为特殊包的角色。同时,文章讨论了物理视图,包括实现视图和部署视图,用构件图来展示系统的软件单元和依赖关系,并以剧院系统为例展示了包和构件的关系。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

· 模型管理视图
模型管理视图对模型自身组织建模。一系列由模型元素(如类、状态机和用例)构成的包组成了模型。一个包 (package) 可能包含其他的包,因此,整个模型实际上可看成一个根包,它间接包含了模型中的所有内容。包是操作模型内容、存取控制和配置控制的基本单元。每一个模型元素包含于包中或包含于其他模型元素中。
模型是从某一观点以一定的精确程度对系统所进行的完整描述。从不同的视角出发,对同一系统可能会建立多个模型,例如有系统分析模型和系统设计模型之分。模型是一种特殊的包。
子系统是另一种特殊的包。它代表了系统的一个部分,它有清晰的接口,这个接口可作为一个单独的构件来实现。
模型管理信息通常在类图中表达。
图 3 – 10 显示了将整个剧院系统分解所得到的包和它们之间的依赖关系。售票处子系统在前面的例子中已经讨论过了,完整的系统还包括剧院管理和计划子系统。每个子系统还包含了多个包。

图 3–10 包
· 物理视图

前面介绍的视图模型按照逻辑观点对应用领域中的概念建模。物理视图对应用自身的实现结构建模,例如系统的构件组织和建立在运行节点上的配置。这类视图提供了将系统中的类映射成物理构件和节点的机制。物理视图有两种:实现视图和部署视图。

实现视图为系统的构件建模型—构件即构造应用的软件单元—还包括各构件之间的依赖关系,以便通过这些依赖关系来估计对系统构件的修改给系统可能带来的影响。

实现视图用构件图来表现。 图 3 – 7 是售票系统的构件图。图中有三个用户接口:顾客和公用电话亭之间的接口、售票员与在线订票系统之间的接口和监督员查询售票情况的接口。售票方构件顺序接受来自售票员和公用电话亭的请求;信用卡主管构件之间处理信用卡付款;还有一个存储票信息的数据库构件。构件图表示了系统中的各种构件。在个别系统的实际物理配置中,可能有某个构件的多个备份。


图 3–7 构件图

图中的小圆圈代表接口,即服务的连贯集。从构件到接口的实线表明该构件提供的列在接口旁的服务。从构件到接口的虚线箭头说明这个构件要求接口提供的服务。例如,购买个人票可以通过公用电话亭订购也可直接向售票员购买,但购买团体票只能通过售票员。

静态视图

· 静态视图

静态视图对应用领域中的概念以及与系统实现有关的内部概念建模。这种视图之所以被称之为是静态的是因为它不描述与时间有关的系统行为,此种行为在其他视图中进行描述。静态视图主要是由类及类间相互关系构成,这些相互关系包括:关联、泛化和各种依赖关系,如使用和实现关系。一个类是应用领域或应用解决方案中概念的描述。类图是以类为中心来组织的,类图中的其他元素或属于某个类或与类相关联。静态视图用类图来实现,正因为它以类为中心,所以称其为类图。

在类图中类用矩形框来表示,它的属性和操作分别列在分格中。如不需要表达详细信息时,分格可以省略。一个类可能出现在好几个图中。同一个类的属性和操作只在一种图中列出,在其他图中可省略。

关系用类框之间的连线来表示,不同的关系用连线上和连线端头处的修饰符来区别。

图 3–1 是售票系统的类图,它只是售票系统领域模型的一部分。图中表示了几个重要的类,如 Customer 、 Reservation 、 Ticket 和 Performance 。顾客可多次订票,但每一次订票只能由一个顾客来执行。有两种订票方式:个人票或套票;前者只是一张票,后者包括多张票。每一张票不是个人票就是套票中的一张,但是不能又是个人票又是套票中的一张。每场演出都有多张票可供预定,每张票对应一个唯一的座位号。每次演出用剧目名、日期和时间来标识。

点击放大
图 3–1 售票系统的类图

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值