《《软件体系结构建模》PPT课件.ppt》由会员分享,可在线阅读,更多相关《《软件体系结构建模》PPT课件.ppt(37页珍藏版)》请在三一办公上搜索。
1、郑州大学软件学院 赵哲,软件体系结构,软件体系结构建模,郑州大学软件学院 赵哲,复习,软件体系结构概论软件危机构件与软件重用软件体系结构的兴起和发展软件体系结构的应用现状,郑州大学软件学院 赵哲,本章主要内容,软件体系结构建模概述4+1视图模型,郑州大学软件学院 赵哲,软件体系结构建模概述,建模modeling:建立系统模型的过程软件体系结构建模:如何对软件体系结构建立系统模型根据建模的侧重点不同可将软件体系结构模型分为5类,郑州大学软件学院 赵哲,软件体系结构模型的分类,结构模型(骨头拆分)框架模型(骨骼)动态模型(时序图、状态图和活动图来,与操作时间或顺序有关)过程模型(步骤、过程)功能模
2、型(层次)P31,郑州大学软件学院 赵哲,一点延伸,架构要涵盖的内容和决策太多了,超过了人脑“一蹴而就”的能力范围,因此采用“分而治之”的办法从不同视角分别设计;同时,也为软件架构的理解、交流和归档提供了方便。,郑州大学软件学院 赵哲,4+1视图模型 P32,以上5种模型各有所长,将5种模型有机的结合在一起,形成一个完整的模型来刻画软件体系结构更为合适。,郑州大学软件学院 赵哲,4+1模型,Kruchten在1995年提出了“4+1”的视图模型“4+1”视图模型从5个不同的视角包括逻辑视图、进程视图、物理视图、开发视图和场景视图来描述软件体系结构每一个视图只关心系统的一个侧面,5个视图结合在一
3、起才能反映系统的软件体系结构的全部内容。,郑州大学软件学院 赵哲,4+1视图模型,郑州大学软件学院 赵哲,4+1,郑州大学软件学院 赵哲,逻辑视图,逻辑视图主要支持系统的功能需求,即系统提供给最终用户的服务。在逻辑视图中,系统分解成一系列的功能抽象可以用来进行功能分析可用作标识在整个系统的各个不同部分的通用机制,郑州大学软件学院 赵哲,逻辑视图,郑州大学软件学院 赵哲,连接件,关联:一个类的存在不是孤立的。与其他类以不同的方式合作,共同完成某些系统功能。有关某种意义的合作,要由附加在横线之上的短语来说明。,郑州大学软件学院 赵哲,连接件,包含:实心圆表示整体,另一端表示部分。实心圆包含另一端。
4、使用:空心圆表示who,另一端表示使用what。继承:箭头端表示基类,另一端表示子类。子类指向基类。,郑州大学软件学院 赵哲,逻辑视图种要注意的问题,保持单一的、内聚的对象模型内聚模块内部各成分的关联程度对象模型对谁做几个逻辑上相关的功能(或其他方面)放在同一个模块中。,郑州大学软件学院 赵哲,ACS体系结构逻辑视图,郑州大学软件学院 赵哲,空中交通逻辑视图,郑州大学软件学院 赵哲,开发视图,开发视图Development View也称模块视图Module View主要侧重软件模块的组织和管理,为编程人员服务。软件可以通过程序库或子程序进行组织,这样就可以由不同的人进行开发,郑州大学软件学院
5、赵哲,开发视图,开发视图要考虑软件内部的需求,如软件开发的容易性、软件的重用和软件的通用性,要充分考虑由于具体开发工具的不同而带来的局限性。开发视图通过系统输入输出关系的模型图和子系统图来描述。,郑州大学软件学院 赵哲,开发视图,郑州大学软件学院 赵哲,开发视图,在开发视图中,最好采用4-6层子系统,而且每个子系统仅仅能与同层或更低层的子系统通讯,这样可以使每个层次的接口既完备又精练,避免了各个模块之间很复杂的依赖关系。设计时要充分考虑,对于各个层次,层次越低,通用性越强,这样,可以保证应用程序的需求发生改变时,所做的改动最小。开发视图所用的风格通常是层次结构风格。,郑州大学软件学院 赵哲,开
6、发视图,郑州大学软件学院 赵哲,进程视图,进程视图侧重于系统的运行特性,主要关注一些非功能性的需求。系统性能、可用性进程视图强调并发性、分布性、系统集成性和容错能力,以及从逻辑视图中的主要抽象如何适合进程结构。它也定义逻辑视图中的各个类的操作具体是在哪一个线程中被执行的。,郑州大学软件学院 赵哲,进程视图,设计:进程视图可以描述成多层抽象,每个级别分别关注不同的方面。在最高层抽象中,进程结构可以看作是构成一个执行单元的一组任务。它可看成一系列独立的,通过逻辑网络相互通信的程序。它们是分布的,通过总线或局域网、广域网等硬件资源连接起来。,郑州大学软件学院 赵哲,进程视图,郑州大学软件学院 赵哲,
7、进程视图,郑州大学软件学院 赵哲,物理视图,物理视图Physical View主要考虑如何把软件映射到硬件上通常要考虑到系统性能、规模、可靠性等,郑州大学软件学院 赵哲,物理视图,郑州大学软件学院 赵哲,ACS系统的物理视图,郑州大学软件学院 赵哲,场景,场景Scenarios可以看做重要系统活动的抽象它使4个视图有机联系在一起。场景是最重要的需求抽象开发体系结构时,可以帮助设计者找到体系结构的构件和它们之间的作用关系。场景可以用文本表示,也可以用图形表示,郑州大学软件学院 赵哲,场景图,郑州大学软件学院 赵哲,4+1总汇,郑州大学软件学院 赵哲,设计思想,逻辑视图和开发视图为静态结构进程视图和物理视图为动态结构管理系统侧重逻辑视图和开发视图实时控制系统侧重进程视图和物理视图,郑州大学软件学院 赵哲,软件过程,郑州大学软件学院 赵哲,需求分析,与用户沟通由不同代表组成的小组:分析人员、客户、设计人员、测试人员等对需求进行审查,郑州大学软件学院 赵哲,建立体系结构,由体系结构设计师对整个系统进行分析选择一个合适的体系结构风格,郑州大学软件学院 赵哲,设计、实现、测试,CodingTesting,
链接地址:https://www.31ppt.com/p-5610137.html