软件体系结构设计的一个核心问题是如何有效地使用重复的体系结构模式,即达到软件体系结构级的软件重用。软件体系结构风格(Software Architecture Style)是描述软件系统组织方式的常用模式,在实践中已经被多次应用。按照Shaw和Garlan的说法,"一种体系结构风格定义了构件类型和连接件类型的词汇表,以及它们如何组合的约束条件"。体系结构风格通常分为数据流(Data Flow)风格、调用/返回(Call/eturn)风格、独立构件(Independent Components)风格、虚拟机(Virtual
Machines)风格和仓库(Repositories)风格五大类。在实际应用中,随着软件系统规模的扩大和复杂,一个系统往往会同时使用多类体系结构风格,这些风格可以交叉组合、彼此重叠。 请围绕"软件体系结构风格及其应用"论题,依次从以下3个方面进行论述:
①概要叙述你参与管理和开发的软件项目及你在其中所担任的主要工作。
②请说明以上软件体系结构风格分类中每一类有哪些经典的软件体系结构设计风格,并就其中至少三类论述其具体的软件体系结构风格的构件、连接件类型和组合约束要求等结构特征及其应用特点。
③具体阐述你参与管理和开发的项目中在体系结构设计时选择使用软件体系结构风格的情况,包括选择的依据、多个风格组合使用的情况等,以及最终实际效果。