什么是类图?什么是对象图?

什么是类图?什么是对象图?,第1张

你好~

类图是描述类、接口、协作以及它们之间关系的图,用来显示系统中各个类的乎凯悉静态结构。

类图描述系统中类的静态结构,它不仅定义系统中的类,描述类之间的联系,如:关联、依赖、聚合等,还包括类的内部结构孙运(类的属性和 *** 作);

类图描述的是一种静态关系,在系统的整个生命周期中都是有效的

类图中允许出现的模型元素只有类和它之间的关系。

类图的另一种表示是用类的具体对象代替类,这种表示方法是类图的变种,称作对象图。

对象图: 描述的岁乎是参与交互的各个对象在交互过程中某一时刻的状态。对象图被看作是类图在某一时刻的连接关系。

希望可以帮助到你~

{} 不是数组。[] 才是燃唯数组。

{} 可以理解是一个胡段困对裤念象。

你概念混淆了

你可以这样 *** 作:

for(var key in str){

data[key] = str[key]

}

1.基于构件的软件开发的优势是什么?

基于构件的软件将软件开发的重点从程序编写转移到了基于已有构件的组装,更快地构造系统,减轻用来支持和升级大型系统所需要的维护负担,从而降低了软件开发的费用

2.尝试用自己的语言介绍Kruchten的“4+1”模型。

Kruchten 提出了一个"4+1"视图模型,从5个不同的视角包括包括逻辑试图、进程视图、物理视图、开发视图、场景视图来描述软件体系结构。每一个视图只关心系统的一个侧面,5个试图结合在一起才能反映系统的软件体系结构的全部内容 。

3.在希赛公司的一个财务管理系统,财务部要客户提供…… ……

4.不同的体系结构风格具有各自的特点、优劣和用途。试对管道-过滤器风格、事件驱动风格、分层系统、C2风格和基于消息总线的风格进行分析比较。P52-56

(1)管道和过滤器

特点:

@使得软构件具有良好的隐蔽性和高内聚、低耦合的特点;

@允许设计者将整个系统的输入输出行为看成是多个过滤器的行为的简单合成;

@支持软件重用。只要提供适合在两个过滤器之间传送的数据,任何两个过滤器都可被连接起来;

@系统维护和增强系统性能简单。新的过滤器可以添加到现有系统中来;旧的可以被改进的过滤器替换掉;

@允许对一些如吞吐量、死锁等属性的分析;

@支持并行执行。每个过滤器是作为一个单独的任务完成,因此可与其它任务并行执行

缺点:①通常导致进程成为批处理的结构。

②不适合处理交互的应用。

③因为在数据传输上没有通用的标准,每个过滤器都增加了解析和合成数据的工作,这样就导致了系统性能下降,并增加了编写过滤器的复杂性。

(2)

(3)

分层系统体系结构有以下优点:

第一,支持基于抽象程度递增的系统设计。这允许设计者可以将一个复杂系统设计按递增的步骤进行分解。

第二,支持功能增强。因为每层至多和与之相邻的上层和下层交互,所以,改变某层的功能最多只会影响与之相游李邻的其它两层。

第三,支持重用。与抽象数据类型一样,只要对相邻层提供同样的接口,每层可以有很多不同的可相互替代的实现方法。因此,可能出现对于标准的层接口的定义可以有不同的实现方法。但是分层系统体系结构也有存在

缺点:首先并不是每个系统都可以很容易地划分为分层的模式。甚至即使一个系统可在逻辑上进行分层,但可能出于性能的考虑需要在逻辑上与处于高层的函数和处于低层的实现之间建立紧密的联系。其次,很难找到一个合适的、正确的层次抽象方法。

(4)C2体系结构风格可以概括为通过连接件绑定在一起的、按照一组规则运作的并行构件网络。

特点:①系统中的构件可实现应用需求,并能将任意复杂度的功能封装在一起。

②所有构件之间的通信是通过以连接件为中介的异步消息 交换机制来实现的。

③构件相对独立,构件之间依赖性较少。系统中不存在某些构件将在同一地址空间内执行,或某些构件共享特定控制线程之类的相关性假设。

(5)………………

5.典型的软件体系结构描述语言包括哪些?她们分别需要描述体系结构中的哪些基本元素?

主要有五种 ADL:UniCon,Darwin,C2 SADL,Acme 和 xADL. Rapide:一种事件驱动的 ADL,它以体系结构定义作为开发框架,支持基于构件的开则磨核发.该语 言提供了建模,分析,仿真和代码生成的能力,但是没有…………

6.软件体系结构可通过UML直接进行描述,请说明UML包括哪些图,以及各自的作用是什么?

From百度百科!UML中的各个图的功用做一个简单介绍:

用例图:描述角色以及角色与用例之间的连接关系。说明的是谁要使用系统,以及他们使用该系统可以做些什么。一个用例图包含了多个模型元素,如系统、参与者和用例,并且显示了这些元素之间的各种关系,如泛化、关联和依赖。

类图:类图是描述系统中的类,以及各个类之间的关系的静态视图。能够让我们在正确编写代码以前对系统有一个全面的认识。类图是一种模型类型,确切的说,是一种静态模型类型。类图表示类、接口和它们之间的协作关系。

对象图:与类图极为相似,它是类图的实例,对象图显示类的多个对象实例,而不是实际的类。它描述的不是类之间的关系,而是对象之间的关系。

包图:包图用于描述系统的分层结构,由包或类组成,表示包与包之间的关系。

活动图:描述用例要求所要进行的活动,孙掘以及活动间的约束关系,有利于识别并行活动。能够演示出系统中哪些地方存在功能,以及这些功能和系统中其他组件的功能如何共同满足前面使用用例图建模的商务需求。

状态图:描述类的对象所有可能的状态,以及事件发生时状态的转移条件。可以捕获对象、子系统和系统的生命周期。他们可以告知一个对象可以拥有的状态,并且事件(如消息的接收、时间的流逝、错误、条件变为真等)会怎么随着时间的推移来影响这些状态。一个状态图应该连接到所有具有清晰的可标识状态和复杂行为的类;该图可以确定类的行为,以及该行为如何根据当前的状态变化,也可以展示哪些事件将会改变类的对象的状态。状态图是对类图的补充。

序列图(顺序图):序列图是用来显示你的参与者如何以一系列顺序的步骤与系统的对象交互的模型。顺序图可以用来展示对象之间是如何进行交互的。顺序图将显示的重点放在消息序列上,即强调消息是如何在对象之间被发送和接收的。

协作图:和序列图相似,显示对象间的动态合作关系。可以看成是类图和顺序图的交集,协作图建模对象或者角色,以及它们彼此之间是如何通信的。如果强调时间和顺序,则使用序列图;如果强调上下级关系,则选择协作图;这两种图合称为交互图。

构件图(组件图):描述代码构件的物理结构以及各种构建之间的依赖关系。用来建模软件的组件及其相互之间的关系,这些图由构件标记符和构件之间的关系构成。在组件图中,构件是软件单个组成部分,它可以是一个文件,产品、可执行文件和脚本等。

部署图(配置图):是用来建模系统的物理部署。例如计算机和设备,以及它们之间是如何连接的。部署图的使用者是开发人员、系统集成人员和测试人员。部署图用于表示一组物理结点的集合及结点间的相互关系,从而建立了系统物理层面的模型。

From网:

UML图包括九种:用例图、类图、对象图、状态图、时序图、协作图、活动图、组件图、配置图。

1)用例图

它是UML中最简单也是最复杂的一种UML图。说它简单是因为它采用了面向对象的思想,又是基于用户视角的,绘制非常容易,简单的图形表示让人一看就懂。说它复杂是因为用例图往往不容易控制,要么过于复杂,要么过于简单。用例图表示了角色和用例以及它们之间的关系。

2)类图

是最常用的一种图,类图可以帮助我们更直观的了解一个系统的体系结构。通过关系和类表示的类图,可以图形化的方式描述一个系统的设计部分。

3)对象图

UML面向对象中对象图是类图的实例,几乎使用与类图完全相同的标识。它们的不同点在于对象图显示类的多个对象实例,而不是实例的类。一个对象图是类图的一个实例。由于对象存在生命周期,因此对象图只能在系统某一时间段存在。

4)状态图

UML图中状态图用来描述一个实体基于事件反应的动态行为,显示了该实体如何根据当前所处的状态对不同的时间做出反应的。通常创建一个UML状态图是为了以下的研究目的:研究类、角色、子系统、或组件的复杂行为。

5)时序图

又称顺序图,描述了对象之间动态的交互关系,着重体现对象间消息传递的时间顺序。顺序图由一组对象构成,每个对象分别带有一条竖线,称作对象的生命线,它代表时间轴,时间沿竖线向下延伸。顺序图描述了这些对象随着时间的推移相互之间交换消息的过程。消息用从一务垂直的对象生命线指向另一个对象的生命线的水平箭头表示。图中还可以根据需要增加有关时间的说明和其他注释。

6)协作图

UML面向对象中协作图用于显示组件及其交互关系的空间组织结构,它并不侧重于交互的顺序。协作图显示了交互中各个对象之间的组织交互关系以及对象彼此之间的链接。与序列图不同,协作图显示的是对象之间的关系。另一方面,协作图没有将时间作为一个单独的维度,因此序列号就决定了消息及并发线程的顺序。协作图是一个介于符号图和序列图之间的交叉产物,它用带有编号的箭头来描述特定的方案,以显示在整个方案过程中消息的移动情况。UML图中协作图用途:通过描绘对象之间消息的移动情况来反映具体的方案。显示对象及其交互关系的空间组织结构,而非交互的顺序。

7)活动图

UML面向对象中UML活动图记录了单个 *** 作或方法的逻辑,单个用户案例,或者单个业务流程的逻辑。描述系统中各种活动的执行顺序,通常用于描述一个 *** 作中所要进行的各项活动的执行流程。同时,它也常被用来描述一个用例的处理流程,或者某种交互流程。活动图由一些活动组成,图中同时包括了对这些活动的说明。当一个活动执行完毕之后,控制将沿着控制转移箭头转向下一个活动。活动图中还可以方便地描述控制转移的条件以及并行执行等要求。

8)组件图

UML图的组件图是用来反映代码的物理结构。从组件图中,可以了解各软件组件(如源代码文件或动态链接库)之间的编译器和运行时依赖关系。使用组件图可以将系统划分为内聚组件并显示代码自身的结构。组件图的主要目的是显示系统组件间的结构关系。

9)配置图

UML面向对象中配置图描述系统中硬件和软件的物理配置情况和系统体系结构。在UML图的配置图中,用结点表示实际的物理设备,如计算机和各种外部设备等,并根据它们之间的连接关系,将相应的结点连接起来,并说明其连接方式。在结点里面,说明分配给该结点上运行的可执行构件或对象,从而说明哪些软件单元被分配在哪些结点上运行

7.什么是动态软件体系结构?动态软件体系结构的动态性主要体现在哪三个方面?

动态软件体系结构的动态性包括:交互性动态性,结构化动态性,体系结构动态性


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/bake/11993057.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-20
下一篇 2023-05-20

发表评论

登录后才能评论

评论列表(0条)

保存