软件体系结构第一章

1. 软件危机的表现:

(1)软件成本日益增长

(2)开发进度难以控制

(3)软件质量差

(4)软件维护困难

2. 软件危机的原因:

(1)用户需求不明确

(2)缺乏正确的理论指导

(3)软件规模越来越大

(4)软件复杂度越来越高

3. 17世纪20年代,具有丰富建造单层炮舰但缺乏双层舰建造经验的设计师亨瑞克.赫勃兹逊耗尽了毕生精力建造了一艘双层舰,但是下海之后很快沉入水底。

阅读体会:合理的、切实可行的体系结构是保证应用系统运行的首要条件。构建任何一个应用系统之前,应对所用的体系结构进行评价,以便减少开发无先例的全新系统所承担的风险。

4. 软件体系结构:

(1)软件体系结构包括一个软件和系统构件,互联及约束的集合;一个系统需求说明的集合;一个基本原理用以说明这一构件,互联和约束能够满足系统需求。

(2)软件体系结构包括一个或一组软件构件、软件构件的外部的可见特性及其相互关系。其中,“软件外部的可见特性”是指软件构件提供的服务、性能、特性、错误处理、共享资源使用等。

【这个强调的是构件、服务和共享资源的使用、构件之间的关系。体系结构定义了元素以及它们如何交互。】

5. 每个系统都有一个体系结构

每个系统都是由元素和元素之间的关系组成。最简单的例子,一个系统就是由一个元素和它自身的关系组成。

6. 构架是系统的总体结构。(错)

它暗含了意思是系统只有一个结构。而结构的多样性位于构架概念的核心。

7. 构架是组件和连接器。(不完全)

因为连接器是指系统运行时为传送控制和数据信息而采用的机制。因此这种说法强调了运行时的构架。

8. 构件:

(1)构件是指语义完整、语法正确和有可重用价值的单位软件,是软件重用过程中可以明确辨识的系统.

【语义完整:能实现相关功能       语法正确:可运行】

(2)结构上,构件是语义描述、通讯接口和实现代码的复合体。

【语义描述:相关功能描述      通讯接口:可独立使用,并和其他交互】

9. 软件体系结构的意义:

(1)体系结构是风险承担者进行交流的手段

【体系结构提供了一种共同语言来表达各种关注和协商。系统的大部分有关人员能把它作为建立一个互相理解的基础,形成统一认识,互相交流】

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

【明确了对系统实现的约束条件,决定了开发和维护组织的组织结构,制约着系统的质量属性】

(3)软件体系结构是可传递和可重用的模型

【基于构件的软件开发】

10. 软件体系结构在软件开发各阶段中的作用

(1)项目规划阶段

【运行环境、工具和构件是否满足要求、是否有现有系统】

(2)需求分析阶段

【沟通交流,找到合理的平衡方案】

(3)项目设计阶段

【参考风格,设计体系结构模型,修改,求精,文档化】

(4)项目实施阶段

(5)测试与系统评估阶段

【可用性和可靠性】

(6)维护与升级阶段

11. 思考题

(1)为什么软件体系结构应遵循统一的标准?

(2)软件体系结构在软件开发的各个阶段起什么作用?

(3)为什么说软件体系结构是系统分析和设计的高层复用?

你可能感兴趣的:(软件体系结构第一章)