软件体系结构复习

本文探讨了软件危机的表现、原因和软件体系结构在其中的作用,以及基于构件的开发面临的挑战。章节涵盖了软件危机的特征、4+1模型、DSSA、体系结构描述方法、UML图、SOA特征、Web服务技术、软件测试和体系结构演化等内容。
摘要由CSDN通过智能技术生成

软件体系结构 原理、方法与实践(第三版 张)

第一章

软件危机的表现和产生原因?软件危机的特征

表现:

1)软件成本日益增加:开发、部署和应用成本高

2)开发进度难以控制:无法按时完成

3)软件质量差:错误率高,无法满足用户需求,没有生命力

4)软件维护困难:成本高,维护效果不理想,还有可能有潜在错误

产生原因:

1)用户要求不明确

2)缺乏正确的理论引导

3)软件规模越来越大

4)软件复杂度越来越高

软件危机与体系结构之间关系

20世纪60年代的软件危机使得人们开始重视软件工程的研究.起初,人们把软件设计的重点放在数据结构和算法的选择上,随着软件系统规模越来越大,越来越复杂,整个系统的结构和规格说明显得越来越重要.在此背景下,人们认识到对软件体系结构系统进行深入研究将成为提高软件生产率和解决软件维护问题的新的最有希望的途径。

即软件危机的出现导致人们开始重视对软件工程的研究,随着系统规模的越来越大,人们也开始意识到对软件体系结构研究的重要性。

P27题4 基于构件的软件开发的优势,面临哪些挑战和困难

优势:基于构件的软件将软件开发的重点从程序编写转移到了基于已有构件的组装,更快地构造系统,减轻用来支持和升级大型系统所需要的维护负担,从而降低了软件开发的费用困难和挑战:没有可依据的参考,可用资源和环境缺乏,开发难度高,而各方面需求增长速度与日剧增,更新和升级的跟进是一个不小的挑战.此外,在同一系统采用多个开发商提供的构件,它们之间的兼容性可能是开发过程中所要面对的一个严峻的问题

挑战和困难

(1)在同一系统采用多个开发商提供的构件,它们之间的兼容性可能是开发过程中所要面对的一个严峻的问题;

(2)采用随处可以购买到的构件可能会使开发出来的软件产品丧失技术上的独创性和市场上的竞争力;(3)第三方的构件开发商可能歇业,这会使购买的构件失去维护服务。这些都是在购买第三方构件进行软件开发时无法回避的问题,因此需要对这些风险进行充分的估计。

构件与重用的关系与定义

1、重用定义:重用是指在两次或多次不同的软件开发过程中,重复使用相同的或者相近软件元素的过程;

2、构件定义:具有一定的功能,能够独立工作或者能够同其他构件装配起来进行协调工作的程序体;

3、两者关系:要真正解决软件危机,就要实现软件的工业化生产,其中构件是核心和基础,重用是必需的手段。构件开发的目的是重用。重用技术的基础是构件。只有存在大量的可重用的构件,才能有效使用重用技术。

获取构件的主要途径

1、在现有的构件中搜寻,直接使用或修改后使用
2、通过遗留工程,将有重用价值的构件重用后使用
3、从市场上购买现成的商业构件
4、开发新构件

P27 题7 软件体系结构的定义众多,你是如何理解软件体系结构的(意义)?软件体系结构在软件系统中有什么作用?

       软件体系结构为软件系统提供了一个结构、行为和属性的高级抽象,由构成系统的元素的描述、这些元素的相互作用、指导元素集成的模式以及这些模式的约束组成。软件体系结构不仅指定了系统的组织结构和拓扑结构,并且显示了系统需求和构成系统的元素之间的对应关系,提供了一些设计决策的基本原理。 

作用: 

(1)体系结构是风险承担者进行交流的手段。软件体系结构代表了系统的公共的高层次的抽象。这样,系统的大部分有关人员(即使不是全部)能把它作为建立一个互相理解的基础,形成统一认识,互相交流。 体系结构提供了一种共同语言来表达各种关注和协商,进而对大型复杂系统能进行理智的管理。这对项目最终的质量和使用有极大的影响。

 (2)体系结构是早期设计决策的体现:

1)软件体系结构明确了对系统实现的约束条件;

2)软件体系结构决定了开发和维护组织的组织结构;

3)软件体系结构制约着系统的质量属性;

4)通过研究软件体系结构可能预测软件的质量;

5)软件体系结构使推理和控制更改更简单;

6)软件体系结构有助于循序渐进的原型设计;

7)软件体系结构可以作为培训的基础。

P27题8 程序结构、软件结构和软件体系结构的区别和联系

       程序结构指的是软件中的一个程序的模块及其相互关系;

软件结构指的是组成某个或某类软件的模块及其相互关系;

软件体系结构指的是:构成软件系统的元素的描述、元素之间的相互作用、元素的集成模式及模式约束,是一种结构、行为和属性的高级抽象。

第二章

4+1模型有些视图组成,各自的作用的是什么

       逻辑视图:设计的对象模型

       进程视图:捕捉设计的并发和同步特征

       物理视图:描述软件到硬件的映射,反映了分布性特性

       开发视图:描述了在开发环境中软件的静态组织结构

       架构的描述(场景视图):所作的各种决定围绕着以上四个视图来组织,然后用一些场景和用例来说明。

用自己的语言介绍4+1模型

       “4+1”的视图模型是Kruchten于1995年提出的用于描述软件体系结构的方式,主要用5个不同的视图:逻辑视图、进程视图、物理视图、开发视图和场景视图来描述软件体系结构。 每一个视图只关心系统的一个侧面,5个视图结合在一起才能反映系统的软件体系结构的全部内容。

软件体系结构在软件生命周期中的地位

       软件体系结构是必需的,软件体系结构是贯穿于软件研发的整个生命周期的系统开发、运行、维护所实施的全部工作和任务的结构框架,给出了软件开发活动各阶段之间的关系,软件体系结构的生命周期模型为软件生命周期模型提供了很好的结构依据和参考,也为其构建了很好的开发方式。

软件体系结构的生命周期模型(说明)

需求分析阶段,建立软件体系结构阶段,设计阶段,实现阶段;

软件体系结构的生命周期描述了软件研发的整个过程中的系统开发、运行、维护所实施的全部工作和任务的结构框架,给出了软件开发活动各阶段之间的关系。包括SA的非形式化描述;SA的规范描述和分析;SA的求精与验证;SA的实施;SA的演化和扩展;SA的提供、SA的评价和度量;SA的终结。

网上:(1)以自然语言进行软件结构的非形式化描述,(2)接着运用合适的形式化数学理论模型对上一阶段的非形式化描述进行规范定义,从而得到软件形式结构的形式化规范描述。(3)对设计好的软件体系结构进行验证和求精,直到不需要进行求精验证时,(4)转入软件体系结构的实施。在此阶段将软件结构实施于系统设计中,并将其结构的构件和连接件有机组织在一起。(5)判断软件体系结构是否需要扩展,演化。需要从则重复以上步骤,(6)否则对该体系结构进行评价、度量,(7)转入终结阶段。

第三章

特定领域软件体系结构DSSA,怎么理解

       DSSA描述了领域中各个应用的共同特征和动态行为

       DSSA是作用于领域中不同应用的设计蓝图

       DSSA的定义

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值