软件体系结构建模的种类 : 结构模型, 框架模型, 动态模型, 过程模型,功能模型 "4+1"视图模型: 1.逻辑视图:逻辑视图主要支持系统的功能需求,即系统提供给最终用户的服务。 2.开发视图:开发视图也称模块视图,主要侧重于软件模块的组织和管理。 3.进程视图:进程视图侧重于系统的运行特性,主要关注一些非功能性的需求。强调并发性、分布性、系统集成性和容错能力,以及从逻辑视图中的主要抽象如何适合进程结构。 4.物理视图:物理视图主要考虑如何把软件映射到硬件上,它通常要考虑到系统性能、规模、可靠性等。 5.场景:场景可以看作是那些重要系统活动的抽象,它使四个视图有机联系起来,从某种意义上说场景是最重要的需求抽象。 体系结构核心模型由5中元素组成:构件、连接件、配置、端口和角色。 经典的体系结构风格 数据流风格:批处理序列;管道/过滤器。 ◎ 调用/返回风格:主程序/子程序;面向对象风格;层次结构。 ◎ 独立构件风格:进程通讯;事件系统。 ◎ 虚拟机风格:解释器;基于规则的系统。 ◎ 仓库风格:数据库系统;超文本系统;黑板系统。 ◎ 其他(如适应性软件系统的体系结构风格、面向Agent的研究、网格计算、Web服务等) 过滤器的活动可通过以下三种方式激活: 后续构件从过滤器中取出数据; 前序构件向过滤器推入数据; 过滤器处于活跃状态,不断从前序构件取出、并向后续部件推入数据。 软件体系结构描述方法 : 图形表达工具、模块内连接语言、 基于软构件的系统描述语言、 软件体系结构描述语言 软件体系结构描述语言ADL是在底层语义模型的支持下,为软件系统的概念体系结构建模提供了具体语法和概念框架。基于底层语义的工具为体系结构的表示、分析、演化、细化、设计过程等提供支持。其三个基本元素是:构件、连接件、体系结构配置。 主要的体系结构描述语言有Aesop、MetaH、C2、Rapide、SADL、Unicon和Wright等,尽管它们都描述软件体系结构,却有不同的特点。 作业题: 第一章: 1、根据自己的经验,谈谈对软件危机的看法。 2、什么是软件重用?软件重用的元素有哪些?就项目管理方面而言,软件重用项目与非重用项目有哪些不同之处。 3、实际参与/组织一个软件重用项目的开发,然后总结你是如何组织该项目的开发的。 4、为什么要研究软件体系结构? 5、根据软件体系结构的定义,你认为软件体系结构的模型应该由哪些部分组成? 6、在软件体系结构的研究和应用中,你认为还有哪些不足之处? 第二章: 1、软件体系结构模型包括哪几种?Kruchten提出的“4+1”模型又包含哪些?结合UML的相关知识,理解“4+1”模型中各种模型的功能及含义。选择一个规模合适的系统,为其建立“4+1”模型。 2、体系结构的核心模型包含哪些元素,各自的含义是什么? 3、引入了软件体系结构以后,传统软件过程发生了哪些变化?这种变化有什么好处? 4、软件体系结构的生命周期模型与软件生命周期模型有什么关系? 第三章: 1、什么叫软件体系结构风格,研究软件体系结构风格的关键要素有哪些? 2、经典的软件体系结构风格主要有哪几类,各类包含哪些常用的软件体系结构风格,试举例说明各自特点。 3、层次系统结构和基于消息的层次系统结构有什么区别? 4、试分析和比较B/S,二层C/S和三层C/S,指出各自的优点和缺点。 5、组织或参与一个采用B/S和C/S混合体系结构的软件项目的开发,总结开发经验。 6、组织或参与一个采用三层体系结构的软件项目的开发,总结开发经验。 7、什么是DSSA? SIS和DSSA分别用在哪些场合? 8、在软件开发中,采用异构结构有什么好处,其负面影响有哪些? 9、面向模式的软件体系结构的研究主要分为哪几个方面? 10、什么是正交软件体系结构?主要特征有哪些? 本文来源:https://www.wddqw.com/doc/8facfb941937f111f18583d049649b6648d709bf.html