软件体系结构描述课件

上传人:阳*** 文档编号:84160797 上传时间:2022-05-03 格式:PPT 页数:51 大小:252.50KB
收藏 版权申诉 举报 下载
软件体系结构描述课件_第1页
第1页 / 共51页
软件体系结构描述课件_第2页
第2页 / 共51页
软件体系结构描述课件_第3页
第3页 / 共51页
资源描述:

《软件体系结构描述课件》由会员分享,可在线阅读,更多相关《软件体系结构描述课件(51页珍藏版)》请在装配图网上搜索。

1、第第4 4章章 软件体系结构描述软件体系结构描述 描述方法的种类描述方法的种类 第第4 4章章 软件体系结构描述软件体系结构描述4.1 4.1 软件体系结构描述方法软件体系结构描述方法 图形表达工具图形表达工具 模块内连接语言模块内连接语言 基于软构件的系统描述语言基于软构件的系统描述语言 软件体系结构描述语言软件体系结构描述语言 图形表达工具图形表达工具 第第4 4章章 软件体系结构描述软件体系结构描述4.1 4.1 软件体系结构描述方法软件体系结构描述方法项目管理测试结果打印程序复杂度函数调用关系图带时间特性的流程图复杂度计算布图算法最优/最劣时间计算缓冲测试结果库测试配置时间分析器静态分

2、析器 模块内连接语言模块内连接语言 第第4 4章章 软件体系结构描述软件体系结构描述4.1 4.1 软件体系结构描述方法软件体系结构描述方法 采用将一种或几种传统程序设计语言的模块连接起来的模块内采用将一种或几种传统程序设计语言的模块连接起来的模块内连接语言。由于程序设计语言和模块内连接语言具有严格的语义连接语言。由于程序设计语言和模块内连接语言具有严格的语义基础,因此它们能支持对较大的软件单元进行描述,诸如定义基础,因此它们能支持对较大的软件单元进行描述,诸如定义/ /使使用和扇入用和扇入/ /扇出等操作。例如,扇出等操作。例如,AdaAda语言采用语言采用useuse实现包的重用,实现包的

3、重用,PascalPascal语言采用过程(函数)模块的交互等。语言采用过程(函数)模块的交互等。 MIL MIL方式对模块化的程序设计和分段编译等程序设计与开发技方式对模块化的程序设计和分段编译等程序设计与开发技术确实发挥了很大的作用。但是由于这些语言处理和描述的软件术确实发挥了很大的作用。但是由于这些语言处理和描述的软件设计开发层次过于依赖程序设计语言,因此限制了它们处理和描设计开发层次过于依赖程序设计语言,因此限制了它们处理和描述比程序设计语言元素更为抽象的高层次软件体系结构元素的能述比程序设计语言元素更为抽象的高层次软件体系结构元素的能力。力。 基于软构件的系统描述语言基于软构件的系统

4、描述语言 第第4 4章章 软件体系结构描述软件体系结构描述4.1 4.1 软件体系结构描述方法软件体系结构描述方法 基于软构件的系统描述语言将软件系统描述成一种是由许多以基于软构件的系统描述语言将软件系统描述成一种是由许多以特定形式相互作用的特殊软件实体构造组成的组织或系统。特定形式相互作用的特殊软件实体构造组成的组织或系统。 例如,一种多变配置语言就可以用来在一个较高的抽象层次上例如,一种多变配置语言就可以用来在一个较高的抽象层次上对系统的体系结构建模,对系统的体系结构建模,DarwinDarwin最初用作设计和构造复杂分布式系最初用作设计和构造复杂分布式系统的配置说明语言,因具有动态特性,

5、也可用来描述动态体系结构。统的配置说明语言,因具有动态特性,也可用来描述动态体系结构。 这种表达和描述方式虽然也是较好的一种以构件为单位的软件这种表达和描述方式虽然也是较好的一种以构件为单位的软件系统描述方法,但是他们所面向和针对的系统元素仍然是一些层次系统描述方法,但是他们所面向和针对的系统元素仍然是一些层次较低的以程序设计为基础的通信协作软件实体单元,而且这些语言较低的以程序设计为基础的通信协作软件实体单元,而且这些语言所描述和表达的系统一般而言都是面向特定应用的特殊系统,这些所描述和表达的系统一般而言都是面向特定应用的特殊系统,这些特性使得基于软构件的系统描述仍然不是十分适合软件体系结构

6、的特性使得基于软构件的系统描述仍然不是十分适合软件体系结构的描述和表达。描述和表达。 软件体系结构描述语言软件体系结构描述语言 第第4 4章章 软件体系结构描述软件体系结构描述4.1 4.1 软件体系结构描述方法软件体系结构描述方法 软件体系结构的第四种描述和表达方法是参照传统程序设软件体系结构的第四种描述和表达方法是参照传统程序设计语言的设计和开发经验,重新设计、开发和使用针对软件体计语言的设计和开发经验,重新设计、开发和使用针对软件体系结构特点的专门的软件体系结构描述语言。系结构特点的专门的软件体系结构描述语言。 由于由于ADLADL是在吸收了传统程序设计中的语义严格精确的特点是在吸收了传

7、统程序设计中的语义严格精确的特点基础上,针对软件体系结构的整体性和抽象性特点,定义和确基础上,针对软件体系结构的整体性和抽象性特点,定义和确定适合于软件体系结构表达与描述的有关抽象元素,因此,定适合于软件体系结构表达与描述的有关抽象元素,因此,ADLADL是当前软件开发和设计方法学中一种发展很快的软件体系是当前软件开发和设计方法学中一种发展很快的软件体系结构描述方法,目前,已经有几十种常见的结构描述方法,目前,已经有几十种常见的ADLADL。 IEEE P1471IEEE P1471 第第4 4章章 软件体系结构描述软件体系结构描述4.2 软件体系结构描述框架标准软件体系结构描述框架标准 IE

8、EE P1471IEEE P1471于于20002000年年9 9月月2121日通过日通过IEEE-SAIEEE-SA标准委员标准委员会评审。会评审。 IEEE P1471IEEE P1471适用于软件密集的系统,其目标在于:适用于软件密集的系统,其目标在于:便于体系结构的表达与交流,并通过体系结构要素及其便于体系结构的表达与交流,并通过体系结构要素及其实践标准化,奠定质量与成本的基础。实践标准化,奠定质量与成本的基础。 IEEE P1471IEEE P1471详细介绍了一套体系结构描述的概念框详细介绍了一套体系结构描述的概念框架,并给出建立框架的思路。但如何描述以及具体的描架,并给出建立框架

9、的思路。但如何描述以及具体的描述技术等方面缺乏更进一步的指导。述技术等方面缺乏更进一步的指导。 RationalRational 第第4 4章章 软件体系结构描述软件体系结构描述4.2 软件体系结构描述框架标准软件体系结构描述框架标准 RationalRational起草了可重用的软件资产规格说明,专门讨论了体系起草了可重用的软件资产规格说明,专门讨论了体系结构描述的规格说明,提出了一套易于重用的体系结构描述规范。结构描述的规格说明,提出了一套易于重用的体系结构描述规范。该建议草案已经提交该建议草案已经提交OMGOMG。 基于基于RUPRUP(Rational United ProcessRa

10、tional United Process)、采用)、采用UMLUML模型描述软模型描述软件的体系结构,认为体系结构描述的关键是定义视点、视图以及件的体系结构,认为体系结构描述的关键是定义视点、视图以及建模元素之间的映射关系。建模元素之间的映射关系。 与与IEEE P1471IEEE P1471相比,该建议标准的体系结构描述方案涉及面比相比,该建议标准的体系结构描述方案涉及面比较窄,所注重的层次比较低,因而更具体。由于将体系结构的描较窄,所注重的层次比较低,因而更具体。由于将体系结构的描述限于述限于UMLUML和和RUPRUP,具有一定的局限性,但该建议标准结合了业界,具有一定的局限性,但该建

11、议标准结合了业界已经广泛采用的建模语言和开发过程,因而易于推广,可以有效已经广泛采用的建模语言和开发过程,因而易于推广,可以有效实现在跨组织之间重用体系结构描述结果。实现在跨组织之间重用体系结构描述结果。第第4 4章章 软件体系结构描述软件体系结构描述4.3 软件体系结构描述语言软件体系结构描述语言 ADL ADL是在底层语义模型的支持下,为软件系统的概念体系结构是在底层语义模型的支持下,为软件系统的概念体系结构建模提供了具体语法和概念框架。基于底层语义的工具为体系结建模提供了具体语法和概念框架。基于底层语义的工具为体系结构的表示、分析、演化、细化、设计过程等提供支持。其三个基构的表示、分析、

12、演化、细化、设计过程等提供支持。其三个基本元素是:构件、连接件、体系结构配置。本元素是:构件、连接件、体系结构配置。 主要的体系结构描述语言有主要的体系结构描述语言有AesopAesop、MetaHMetaH、C2C2、RapideRapide、SADLSADL、UniconUnicon和和WrightWright等,尽管它们都描述软件体系结构,却有等,尽管它们都描述软件体系结构,却有不同的特点。不同的特点。 这些这些ADLADL强调了体系结构不同的侧面,对体系结构的研究和应强调了体系结构不同的侧面,对体系结构的研究和应用起到了重要的作用,但也有负面的影响。每一种用起到了重要的作用,但也有负面

13、的影响。每一种ADLADL都以独立的都以独立的形式存在,描述语法不同且互不兼容,同时又有许多共同的特征,形式存在,描述语法不同且互不兼容,同时又有许多共同的特征,这使设计人员很难选择一种合适的这使设计人员很难选择一种合适的ADLADL,若设计特定领域的软件体,若设计特定领域的软件体系结构又需要从头开始描述。系结构又需要从头开始描述。第第4 4章章 软件体系结构描述软件体系结构描述4.3 软件体系结构描述语言软件体系结构描述语言 构造能力:构造能力:ADLADL能够使用较小的独立体系结构元素来能够使用较小的独立体系结构元素来建造大型软件系统;建造大型软件系统; 抽象能力:抽象能力:ADLADL使

14、得软件体系结构中的构件和连接件使得软件体系结构中的构件和连接件描述可以只关注它们的抽象特性,而不管其具体的实现描述可以只关注它们的抽象特性,而不管其具体的实现细节;细节; 重用能力:重用能力:ADLADL使得组成软件系统的构件、连接件甚使得组成软件系统的构件、连接件甚至是软件体系结构都成为软件系统开发和设计的可重用至是软件体系结构都成为软件系统开发和设计的可重用部件;部件; ADLADL与其他语言的比较与其他语言的比较(1)(1) 第第4 4章章 软件体系结构描述软件体系结构描述4.3 软件体系结构描述语言软件体系结构描述语言 组合能力:组合能力:ADLADL使得其描述的每一系统元素都有其自使

15、得其描述的每一系统元素都有其自己的局部结构,这种描述局部结构的特点使得己的局部结构,这种描述局部结构的特点使得ADLADL支持支持软件系统的动态变化组合;软件系统的动态变化组合; 异构能力:异构能力:ADLADL允许多个不同的体系结构描述关联存允许多个不同的体系结构描述关联存在;在; 分析和推理能力:分析和推理能力:ADLADL允许对其描述的体系结构进行允许对其描述的体系结构进行多种不同的性能和功能上的多种推理分析。多种不同的性能和功能上的多种推理分析。 ADLADL与其他语言的比较与其他语言的比较(2)(2)第第4 4章章 软件体系结构描述软件体系结构描述4.3 软件体系结构描述语言软件体系

16、结构描述语言 常见的软件体系结构元素常见的软件体系结构元素 第第4 4章章 软件体系结构描述软件体系结构描述4.4 典型软件体系结构描述语言典型软件体系结构描述语言 C2C2和其提供的设计环境(和其提供的设计环境(ArgoArgo)支持采用基于时间)支持采用基于时间的风格来描述用户界面系统,并支持使用可替换、可重的风格来描述用户界面系统,并支持使用可替换、可重用的构件开发用的构件开发GUIGUI的体系结构。的体系结构。 在在C2C2中,连接件负责构件之间消息的传递,而构件中,连接件负责构件之间消息的传递,而构件维持状态、执行操作并通过两个名字分别为维持状态、执行操作并通过两个名字分别为“top

17、top”和和“bottombottom”的端口和其它的构件交换信息。的端口和其它的构件交换信息。 每个接口包含一种可发送的消息和一组可接收的消每个接口包含一种可发送的消息和一组可接收的消息。构件之间的消息要么是请求其它构件执行某个操作息。构件之间的消息要么是请求其它构件执行某个操作的请求消息,要么是通知其他构件自身执行了某个操作的请求消息,要么是通知其他构件自身执行了某个操作或状态发生改变的通知消息。或状态发生改变的通知消息。 C2C2概述概述(1)(1)第第4 4章章 软件体系结构描述软件体系结构描述4.4 典型软件体系结构描述语言典型软件体系结构描述语言 构件之间的消息交换不能直接进行,而

18、只能通过连接构件之间的消息交换不能直接进行,而只能通过连接件来完成。每个构件接口最多只能和一个连接件相连,而件来完成。每个构件接口最多只能和一个连接件相连,而连接件可以和任意数目的构件或连接件相连。连接件可以和任意数目的构件或连接件相连。 请求消息只能向上层传送而通知消息只能向下层传送。请求消息只能向上层传送而通知消息只能向下层传送。 通知消息的传递只对应于构件内部的操作,而和接收通知消息的传递只对应于构件内部的操作,而和接收消息的构件的需求无关。消息的构件的需求无关。 C2C2对构件和连接件的实现语言、实现构件的线程控制、对构件和连接件的实现语言、实现构件的线程控制、构件的部署以及连接件使用

19、的通讯协议等都不加限制。构件的部署以及连接件使用的通讯协议等都不加限制。 C2C2概述概述(2)(2)第第4 4章章 软件体系结构描述软件体系结构描述4.4 典型软件体系结构描述语言典型软件体系结构描述语言 C2C2对构件的描述对构件的描述 第第4 4章章 软件体系结构描述软件体系结构描述4.4 典型软件体系结构描述语言典型软件体系结构描述语言 C2C2对构件接口的描述对构件接口的描述 interface_requests :=interface_requests := request request; | null | null; interface_notifications :=inte

20、rface_notifications := notification notification; | null | null; request :=request := message_name(request_parameters) message_name(request_parameters) request_parameters :=request_parameters := to component_nameparameter_list to component_nameparameter_list notification :=notification := message_na

21、meparameter_list message_nameparameter_list component_message_interface :=component_message_interface := top_domain_interface top_domain_interface bottom_domain_interface bottom_domain_interface top_domain_interface :=top_domain_interface := top_domain is top_domain is out interface_requests out int

22、erface_requests in interface_notifications in interface_notifications bottom_domain_interface :=bottom_domain_interface := bottom_domain is bottom_domain is out interface_notifications out interface_notifications in interface_requests in interface_requests第第4 4章章 软件体系结构描述软件体系结构描述4.4 典型软件体系结构描述语言典型软件

23、体系结构描述语言 会议安排系统的会议安排系统的C2C2风格风格Attendee-1Attendee-M.AttConnImportantAttendee-1ImportantAttendee-N.ImportantAttConnMainConnMeetingInitiator第第4 4章章 软件体系结构描述软件体系结构描述4.4 典型软件体系结构描述语言典型软件体系结构描述语言 C2C2对对MeetgingInitiatorMeetgingInitiator构件的描述构件的描述(1)(1) component MeetingInitiator iscomponent MeetingInitia

24、tor is interface interface top_domain is top_domain is out out GetPrefSet() GetPrefSet(); GetExclSet()GetExclSet(); GetEquipReqts()GetEquipReqts(); GetLocPrefs()GetLocPrefs(); RemoveExclSet()RemoveExclSet(); RequestWithdrawal(to Attendee)RequestWithdrawal(to Attendee); RequestWithdrawal(to Important

25、Attendee)RequestWithdrawal(to ImportantAttendee); AddPrefDates()AddPrefDates(); MarkMtg(d:dateMarkMtg(d:date;l:lov_type)l:lov_type);第第4 4章章 软件体系结构描述软件体系结构描述4.4 典型软件体系结构描述语言典型软件体系结构描述语言 C2C2对对MeetgingInitiatorMeetgingInitiator构件的描述构件的描述(2)(2) in in PrefSet(p:date_mg) PrefSet(p:date_mg); ExclSet(e:dat

26、a_mg)ExclSet(e:data_mg); EquipReqts(eq:equip_type)EquipReqts(eq:equip_type); LocPref(l:loc_type)LocPref(l:loc_type); behaviorbehavior startup always_generate GetPrefSet startup always_generate GetPrefSet, GetExclSetGetExclSet, GetEquipReqtsGetEquipReqts,GetLocPrefsGetLocPrefs; received_messages Pref

27、Set may_generate RemoveExclSet xor received_messages PrefSet may_generate RemoveExclSet xor RequestWithdrawal xor MarkMtgRequestWithdrawal xor MarkMtg; received_messages ExclSet may_generate AddPrefDates xor received_messages ExclSet may_generate AddPrefDates xor RemoveExclSet xor RequestWithdrawal

28、xor MarkMtgRemoveExclSet xor RequestWithdrawal xor MarkMtg; received_messages EquipReqts may_generate AddPrefDates xor received_messages EquipReqts may_generate AddPrefDates xor RemoveExclSet xor RequestWithdrawal xor MarkMtgRemoveExclSet xor RequestWithdrawal xor MarkMtg; received_messages LocPref

29、always_generate nullreceived_messages LocPref always_generate null;end MeetingInitiatorend MeetingInitiator; 第第4 4章章 软件体系结构描述软件体系结构描述4.4 典型软件体系结构描述语言典型软件体系结构描述语言 C2C2对对AttendeeAttendee构件的描述构件的描述(1)(1) component Attendee is component Attendee is interface interface bottom_domain is bottom_domain is o

30、ut out PrefSet(p:date_mg) PrefSet(p:date_mg); ExclSet(e:date_mg)ExclSet(e:date_mg); EquipReqts(eq:equip_type)EquipReqts(eq:equip_type); inin GetPrefSet() GetPrefSet(); GetExclSet()GetExclSet(); GetEquipReqts()GetEquipReqts(); RemoveExclSet()RemoveExclSet(); RequestWithdrawal()RequestWithdrawal(); Ad

31、dPrefDates()AddPrefDates(); MarkMtg(d:dateMarkMtg(d:date;l:loc_type)l:loc_type);第第4 4章章 软件体系结构描述软件体系结构描述4.4 典型软件体系结构描述语言典型软件体系结构描述语言 C2C2对对AttendeeAttendee构件的描述构件的描述(2)(2) behavior behaviorreceived_messages GetPrefSet always_generate PrefSetreceived_messages GetPrefSet always_generate PrefSet;receiv

32、ed_messages AddPrefDates always_generate PrefSetreceived_messages AddPrefDates always_generate PrefSet;received_messages GetExclSet always_generate ExclSetreceived_messages GetExclSet always_generate ExclSet;received_messages GetEqipReqts always_generate EqipReqtsreceived_messages GetEqipReqts alway

33、s_generate EqipReqts;received_messages RemoveExclSet always_generate ExclSetreceived_messages RemoveExclSet always_generate ExclSet;received_messages ReuestWithdrawal always_generate nullreceived_messages ReuestWithdrawal always_generate null;received_messages MarkMtg always_generate nullreceived_me

34、ssages MarkMtg always_generate null;end Attendeeend Attendee; 第第4 4章章 软件体系结构描述软件体系结构描述4.4 典型软件体系结构描述语言典型软件体系结构描述语言 C2C2对对ImportantAttendeeImportantAttendee构件的描述构件的描述component ImportantAttendee is subtype Attendee(in and beh)component ImportantAttendee is subtype Attendee(in and beh) interface interf

35、ace bottom_domain is bottom_domain is out out LocPrefs(l:loc_type) LocPrefs(l:loc_type); ExclSet(e:date_mg)ExclSet(e:date_mg); EquipReqts(eq:equip_type)EquipReqts(eq:equip_type); inin GetLocPrefs() GetLocPrefs(); behaviorbehaviorreceived_messages GetLocPrefs always_generate LocPrefsreceived_messages

36、 GetLocPrefs always_generate LocPrefs;end ImportantAttendeeend ImportantAttendee; 第第4 4章章 软件体系结构描述软件体系结构描述4.4 典型软件体系结构描述语言典型软件体系结构描述语言 C2C2对体系结构的描述对体系结构的描述architecture MeetingScheduler isarchitecture MeetingScheduler is conceptual_components conceptual_components Attendee Attendee;ImportantAttendeeI

37、mportantAttendee;MeetingInitiatorMeetingInitiator; connectorsconnectors connector MainConn is message_filter no_filtering connector MainConn is message_filter no_filtering; connector AttConn is message_filter no_filteringconnector AttConn is message_filter no_filtering; connector ImportantAttConn is

38、 message_filter no_filteringconnector ImportantAttConn is message_filter no_filtering; architectural_topologyarchitectural_topology connector AttConn connections connector AttConn connections top_ports Attendee top_ports Attendee; bottom_ports MainConnbottom_ports MainConn; connector ImportantAttCon

39、n connectionsconnector ImportantAttConn connections top_ports ImportantAttendee top_ports ImportantAttendee; bottom_ports MainConnbottom_ports MainConn; connector MainConn connectionsconnector MainConn connections top_ports AttConn top_ports AttConn;ImportantAttConnImportantAttConn; bottom_ports Mee

40、tingInitiatorbottom_ports MeetingInitiator;end MeetingSchedulerend MeetingScheduler; 第第4 4章章 软件体系结构描述软件体系结构描述4.4 典型软件体系结构描述语言典型软件体系结构描述语言 C2C2对会议安排系统的描述对会议安排系统的描述 system MeetingScheduler_1 is system MeetingScheduler_1 is architecture MeetingScheduler witharchitecture MeetingScheduler with Attendee i

41、nstance Att_1Attendee instance Att_1,Att_2Att_2,Att_3Att_3; ImportantAttendee instance ImpAtt_1ImportantAttendee instance ImpAtt_1,ImpAtt_2ImpAtt_2; MeetingInitiator instance MtgInit_1MeetingInitiator instance MtgInit_1; end MeetingScheduler_1end MeetingScheduler_1; 第第4 4章章 软件体系结构描述软件体系结构描述4.4 4.4 典

42、型软件体系结构描述语言典型软件体系结构描述语言 ACMEACME 结构属性设计约束类型和风格第第4 4章章 软件体系结构描述软件体系结构描述4.4 4.4 典型软件体系结构描述语言典型软件体系结构描述语言 ACMEACME 结构结构构件连接件系统端口端口角色表述表述图第第4 4章章 软件体系结构描述软件体系结构描述4.4 4.4 典型软件体系结构描述语言典型软件体系结构描述语言 ACMEACME 结构结构构件连接件系统端口端口角色表述表述图第第4 4章章 软件体系结构描述软件体系结构描述4.5 软件体系结构与软件体系结构与UML UMLUML简介简介 UML(Unified Modeling

43、Language)UML(Unified Modeling Language)是下面这些最是下面这些最好的建模方法中最好部分的集成好的建模方法中最好部分的集成: : 商务流程模型商务流程模型(Work Flow)(Work Flow) 对象建模方法对象建模方法 软构件建模思想软构件建模思想 UML UML是一种用可视化方法对软件系统进行描述、实是一种用可视化方法对软件系统进行描述、实施和说明的标准语言。施和说明的标准语言。 支持用不同实现技术进行的软件开发全过程。支持用不同实现技术进行的软件开发全过程。第第4 4章章 软件体系结构描述软件体系结构描述4.5 软件体系结构与软件体系结构与UML

44、UMLUML简介简介 第第4 4章章 软件体系结构描述软件体系结构描述4.5 软件体系结构与软件体系结构与UML UMLUML简介简介 Use CaseDiagramsUse CaseDiagrams用例图用例图ScenarioDiagramsScenarioDiagrams协作图协作图StateDiagramsStateDiagrams构件图构件图ComponentDiagramsComponentDiagrams部署图部署图StateDiagramsStateDiagrams对象图对象图ScenarioDiagramsScenarioDiagrams状态图状态图Use CaseDiagra

45、msUse CaseDiagrams序列图序列图StateDiagramsStateDiagrams类图类图活动图活动图UML第第4 4章章 软件体系结构描述软件体系结构描述4.5 软件体系结构与软件体系结构与UML 用例图用例图用于显示用于显示若干角色若干角色以及这些以及这些角色与系角色与系统提供的统提供的用例之间用例之间的连接关的连接关系。用例系。用例是系统提是系统提供的功能供的功能的描述的描述 第第4 4章章 软件体系结构描述软件体系结构描述4.5 软件体系结构与软件体系结构与UML 类图类图表示系表示系统中的统中的类和类类和类与类之与类之间的关间的关系,它系,它是对系是对系统静态统静态

46、结构的结构的描述描述 第第4 4章章 软件体系结构描述软件体系结构描述4.5 软件体系结构与软件体系结构与UML 序列图序列图用来反映若用来反映若干个对象之干个对象之间的动态协间的动态协作关系,也作关系,也就是随着时就是随着时间的推移,间的推移,对象之间是对象之间是如何交互的如何交互的 第第4 4章章 软件体系结构描述软件体系结构描述4.5 软件体系结构与软件体系结构与UML 协作图协作图描述对象间的描述对象间的协作关系,协协作关系,协作图跟序列图作图跟序列图相似,显示对相似,显示对象间的动态合象间的动态合作关系。作关系。如果强调时间如果强调时间和顺序,则使和顺序,则使用序列图;如用序列图;如

47、果强调上下级果强调上下级关系,则选择关系,则选择协作图。这两协作图。这两种图合称为交种图合称为交互图。互图。 第第4 4章章 软件体系结构描述软件体系结构描述4.5 软件体系结构与软件体系结构与UML 状态图状态图描述类的描述类的对象所有对象所有可能的状可能的状态以及事态以及事件发生时件发生时状态的转状态的转移条件。移条件。通常,状通常,状态图是对态图是对类图的补类图的补充充 第第4 4章章 软件体系结构描述软件体系结构描述4.5 软件体系结构与软件体系结构与UML 活动图活动图描述满足描述满足用例要求用例要求所要进行所要进行的活动以的活动以及活动间及活动间的约束关的约束关系,有利系,有利于识

48、别并于识别并行活动行活动 第第4 4章章 软件体系结构描述软件体系结构描述4.5 软件体系结构与软件体系结构与UML 构件图构件图描述代描述代码构件码构件的物理的物理结构及结构及各构件各构件之间的之间的依赖关依赖关系系 第第4 4章章 软件体系结构描述软件体系结构描述4.5 软件体系结构与软件体系结构与UML 部署图部署图部署图部署图定义系定义系统中软统中软硬件的硬件的物理体物理体系结构系结构 第第4 4章章 软件体系结构描述软件体系结构描述4.5 软件体系结构与软件体系结构与UML 直接使用直接使用UMLUML建模建模 元-元模型元模型模型用户对象元元- -元模型层定义了元模型层元模型层定义

49、了元模型层的规格说明语言,元模型层的规格说明语言,元模型层为给定的建模语言定义规格为给定的建模语言定义规格说明,模型层用来定义特定说明,模型层用来定义特定软件系统的模型,用户对象软件系统的模型,用户对象用来构建给定模型的特定实用来构建给定模型的特定实例。例。 第第4 4章章 软件体系结构描述软件体系结构描述4.5 软件体系结构与软件体系结构与UML 直接使用直接使用UMLUML建模建模 语义约束语义约束 由对象约束语言由对象约束语言OCLOCL表示,表示,OCLOCL基于一阶谓词逻辑,基于一阶谓词逻辑,每一个每一个OCLOCL表达式都处于一些表达式都处于一些UMLUML模型元素的背景下(由模型

50、元素的背景下(由“self”self”引用),可使用该元素的属性和关系作为其项引用),可使用该元素的属性和关系作为其项(termterm),同时),同时OCLOCL定义了在集合(定义了在集合(setssets)、袋)、袋(bags)(bags)等上的公共操作集和遍历建模元素间关系的构造,因此,等上的公共操作集和遍历建模元素间关系的构造,因此,其它建模元素的属性也可以作为它的项。其它建模元素的属性也可以作为它的项。第第4 4章章 软件体系结构描述软件体系结构描述4.5 软件体系结构与软件体系结构与UML 直接使用直接使用UMLUML建模建模 UML UML中的通用表示中的通用表示 (1 1)字符

51、串:表示有关模型的信息;)字符串:表示有关模型的信息;(2 2)名字:表示模型元素;)名字:表示模型元素;(3 3)标号:不同于编程语言中的标号,是用于表示或说明图形符)标号:不同于编程语言中的标号,是用于表示或说明图形符号的字符串;号的字符串;(4 4)特殊字符串:表示某一模型元素的特性;)特殊字符串:表示某一模型元素的特性;(5 5)类型表达式:声明属性、变量及参数,含义同编程语言中的)类型表达式:声明属性、变量及参数,含义同编程语言中的类型表达式;类型表达式;(6 6)实体类型:它是)实体类型:它是UMLUML的扩充机制,运用实体类型可定义新类的扩充机制,运用实体类型可定义新类型的模型元

52、素;型的模型元素;第第4 4章章 软件体系结构描述软件体系结构描述4.5 软件体系结构与软件体系结构与UML 直接使用直接使用UMLUML建模建模 UML UML语义部分语义部分 通用元素:主要描述通用元素:主要描述UMLUML中各元素的语义。通用元素是中各元素的语义。通用元素是UMLUML中的中的基本构造单位,包括模型元素和视图元素,模型元素用来构造系基本构造单位,包括模型元素和视图元素,模型元素用来构造系统,视图元素用来构成系统的表示成分;统,视图元素用来构成系统的表示成分; 通用机制:主要描述使通用机制:主要描述使UMLUML保持简单和概念上一致的机制的语保持简单和概念上一致的机制的语义

53、。包括定制、标记值、注记、约束、依赖关系、类型义。包括定制、标记值、注记、约束、依赖关系、类型- -实例、类实例、类型型- -类的对应关系等机制;类的对应关系等机制; 通用类型:主要描述通用类型:主要描述UMLUML中各种类型的语义。这些类型包括布中各种类型的语义。这些类型包括布尔类型、表达式类型、列表类型、多重性类型、名字类型、坐标尔类型、表达式类型、列表类型、多重性类型、名字类型、坐标类型、字符串类型、时间类型、用户自定义类型等。类型、字符串类型、时间类型、用户自定义类型等。三部分不是相互独立的,而是相互交叉重叠、紧密相连,共同构三部分不是相互独立的,而是相互交叉重叠、紧密相连,共同构成了

54、成了UMLUML的完整语义。的完整语义。第第4 4章章 软件体系结构描述软件体系结构描述4.5 软件体系结构与软件体系结构与UML 直接使用直接使用UMLUML建模建模 会议安排系统的类图会议安排系统的类图 PersonImportantAttendeeAttendeeLocationMeetingInitiatorDateMeetingStronglyConflicts WithConflicts With0.*0.*0.*0.*Profers11111110.*0.*121.*1.* 0.*ProfersInvitesProposesExcludes0.*第第4 4章章 软件体系结构描述软

55、件体系结构描述4.5 软件体系结构与软件体系结构与UML 直接使用直接使用UMLUML建模建模 会议安排系统类接口会议安排系统类接口 MtgInitGetPrefSet();GetExclSet();RemoveExclSet();RequestWithdrawal(Attendee);AddPrefDates();ImportantMtgInitGetLocPrefs();MtgAttendPrefSet(date_mg);ExclSet(date_mg);EquipReqts(equip_type);ImportantMtgAttendLocPrefs(loc_type);第第4 4章章

56、软件体系结构描述软件体系结构描述4.5 软件体系结构与软件体系结构与UML 直接使用直接使用UMLUML建模建模 C2 C2连接件模型连接件模型 AttConnGetPrefSet();GetExclSet();RemoveExclSet();RequestWithdrawal(Attendee);AddPrefDates();PrefSet(date_mg);ExclSet(date_mg);EquipReqts(equip_type);ImportantAttConnGetLocPrefs();LocPrefs(loc_type);MainConn第第4 4章章 软件体系结构描述软件体系结

57、构描述4.5 软件体系结构与软件体系结构与UML 直接使用直接使用UMLUML建模建模 细化的类图细化的类图第第4 4章章 软件体系结构描述软件体系结构描述4.5 软件体系结构与软件体系结构与UML 直接使用直接使用UMLUML建模建模 会议安排系统的协作图会议安排系统的协作图 :Attendee:ImportantAttendee:MainConn:MeetingInitiator:ImportantAttConn:AttConn1:GetPrefSet()10:PrefSet(date_mg)9:PrefSet(date_mg)8:PrefSet(date_mg)7:PrefSet(dat

58、e_mg)6:PrefSet(date_mg)5:GetPrefSet()3:GetPrefSet()4:GetPrefSet()2:GetPrefSet()11:PrefSet(date_mg)第第4 4章章 软件体系结构描述软件体系结构描述4.5 软件体系结构与软件体系结构与UML 使用使用UMLUML扩展机制扩展机制 自学自学 XMLXML语言简介语言简介 第第4 4章章 软件体系结构描述软件体系结构描述4.6 4.6 可扩展标记语言可扩展标记语言 XML XML的发展的发展 XML XML标准及应用领域标准及应用领域 设计置标语言设计置标语言 数据交互数据交互 WEB WEB服务服务

59、XMLXML相关技术简介相关技术简介 第第4 4章章 软件体系结构描述软件体系结构描述4.6 4.6 可扩展标记语言可扩展标记语言 DTD DTD 与与 SchemaSchema CSS CSS 和和 XSL XSL Xpath Xpath、XpointerXpointer、XlinkXlink XML XML名称空间名称空间 XML XML查询语言查询语言 资源描述框架资源描述框架 DOM DOM、SAXSAX、XMLXML解析器解析器第第4 4章章 软件体系结构描述软件体系结构描述本章作业与思考题本章作业与思考题1 1、体系结构描述有哪些方法?有哪些标准和规范?、体系结构描述有哪些方法?有哪些标准和规范?2 2、体系结构描述语言与程序设计语言有什么区别?、体系结构描述语言与程序设计语言有什么区别?3 3、选择一个规模适中的系统,使用、选择一个规模适中的系统,使用UMLUML为其建模。为其建模。

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!