软件体系结构期末大题(总 15页)--本页仅作为文档封面,使用时请直接删除即可----内页可以根据需求调整合适字体及大小--2-1•基于构件的软件开发的优势是什么?基于构件的软件将软件开发的重点从程序编写转移到了基于已有构件的组装,更快地构造系统,减轻用来支持和升级大型系统所需要的维护负担,从而降低了软件开发的费用2•尝试用自己的语言介绍 Kruchten 的“4+1”模型。Kruchten 提出了一个"4+1"视图模型,从 5 个不同的视角包括包括逻辑试图、进程视图、物理视图、开发视图、场景视图来描述软件体系结构。每一个视图只关心系统的一个侧面,5个试图结合在一起才能反映系统的软件体系结构的全部内容。逻辑视图(LogicVidt逻辑试图主要是用来描述系统的功能需戏即系统提供给最终用户的报务.在逻辑视图中「系统分解成一系列的功能抽象、功能分解与功能分析■这些主要来自问题领域[ProblemDefinition)。在面向对象技术中,通过抽软、封装-堆承.•可以用对象模型来代表逻辑视图,可以用类图(CI3SsDiagramJ来描 it 逻辑视團©如下图:构杵|C0mPorent3):类、类服筹、参数化类、类层找连接件 3®「町:关联、包含聚集、使用、继瓠实例化开发视囹(Devc1opmentcView)开境视图主要用来描述软件模块的组织与管理〔通过程序库或子系统)。服务于软件编程人员,方便后牍的设计与实现,它通过系统输入输出关系的模型图和子系统图来描述.要考虑软件的内部需求:开发的难易程度、重用的可龍性.通用性.局限性等等亠幵发视图的園格通常是层衣结构,层谀.越低,通用性越好〔底层库:JavaSDK,图橡处理软件包)。如下图:枸件:模块、子系统.层连接件蔘礙相关性、模块炮程调用谜程视图进程试图侧重系统的运行特性关注非功能性的需求(性能,可用性:k 服务干系统集成人员.方便屈续性龍测试。强调并发性、分布性、集成性、鲁棒性(容错)、可扩充性、吞吐量等。定义逻辑-3-视图中的各个类的具休操作是在哪一 t 线程(Thread)中被执行。如下團:构件.进程、简化进程、循环进程连接件・未指定,消息、远程过程调用(卯匸)、飘向涓息、事件广播物理视團物理试圉三要描述硬媲置。眾务于系统工程人员,解决系统的拓扑结构、系统安装、通信等问题°主要考虑如诃把软件映射到硬件上,也要考虑系统性能、规模、可靠性等■:可认与进程视图一起映射。如下图:构件:处理器、计算机、其它设备连接件通信协议毒场景(Scenarios)场景用于刻画枸件之间的相互关系将回个...