软件体系结构复习要点——chapter 1 软件体系结构概论

Chapter 1 软件体系结构概论

1. 软件危机的表现:

    软件成本日益增长、开发进度难以控制、软件质量差、软件维护困难。

2. 软件危机的成因:

    用户需求不明确、缺乏正确的理论指导、软件规模越来越大、软件复杂度越来越高。

3. 如何克服软件危机?

    ●人们面临的不光是技术问题,更重要的是管理问题。管理不善必然导致失败。

    ●软件工程在软件开发方法、工具、管理等方面的应用缓解了软件危机造成的被动局面。

    ●软件工程包括了三个要素:方法、工具、过程。

4. 构件与重用

    ●要提高软件开发效率,提高软件产品质量,必须采用工程化的开发方法与工业化的生产技术。

    ●在技术上,应该采用基于重用的软件生产技术;在管理上,应该采用多维的工程管理模式。

    ●要真正解决软件危机,实现软件的工业化生产是唯一可行的途径。

    ●成功的工业的发展模式均是符合标准的零部件/构件生产以及基于标准构件的产品生产,其中,构件是核心和基础,重用是必需的手段。实践表明,这种模式是产业工程化、工业化的成功之路,也将是软件产业发展的必经之路。

    ●软件重用是指在两次或多次不同的软件开发过程中重复使用相同或相近软件元素的过程。

    ●软件重用的好处:减少软件开发活动中大量的重复性活动,这样就能提高软件生产率,降低开发成本,缩短开发周期。有助于改善软件质量,软件的灵活性和标准化程度也能得到提高。

5. 构件模型及实现

    ●构件是指语义完整、语法正确和有可重用价值的单位软件,是软件重用过程中可以明确辨识的系统;结构上,它是语义描述、通信接口和实现代码的复合体。简单地说,构件是具有一定的功能,能够独立工作或能同其他构件装配起来协调工作的程序体,构件的使用同它的开发、生产无关。整个构件隐藏了具体的实现,只用接口对外提供服务。

    ●构件模型是对构件本质特征的抽象描述。

    ●三个主要流派:OMG的CORBA、Sun的EJB、Microsoft的DCOM

    ●北大杨芙清院士等人提出的“青鸟构件模型”。

6. 构件获取的途径:

    (1)从现有构件中获得符合要求的构件,直接使用或作适应性修改。

    (2)通过遗留工程,将具有潜在重用价值的构件提取出来。

    (3)从市场上购买现成的商业构件,即COTS(commercial off-the-shell)构件。

    (4)开发新的符合要求的构件。

    ●领域工程可划分为:领域分析、领域设计、领域实现。

7. 构件分类方法:

    关键字分类法、刻面分类法、超文本组织方法。

8. 构件重用:

    检索与提取构件、理解与评价构件、修改构件、组装构件

    ●构件组装:基于功能、基于数据、面向对象

    ●面向对象的组装技术:

    构造法——在子类中引进基类的对象作为子类的成员变量,然后在子类通过成员变量重用基类的属性和方法。

    子类法——子类法将新子类直接说明为库中基类的子类,通过继承和修改基类的属性与行为完成新子类的定义。

9. 软件总是具有体系结构,不存在没有体系结构的软件。

10. 软件体系结构的定义:

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

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

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

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

         ●明确了对系统实现的约束条件。

         ●决定了开发和维护组织的组织结构。

         ●制约着系统的质量属性。

         ●通过研究体系结构可能预测软件的质量。

         ●使推理和控制更改更简单。

         ●有助于循序渐进的原型设计。

         ●作为培训的基础。

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

12. 软件体系结构的发展史:

    ●“无体系结构”设计阶段——汇编语言

    ●萌芽阶段——控制流图和数据流图

    ●初期阶段——UML

    ●高级阶段——高层抽象结构为中心,“4+1”模型为标志

13. 常用的软件体系结构评估方法:

     ●体系结构权衡分析方法(ATAM)

     ●软件体系结构分析方法(SAAM)

    ● 中间设计的积极评审(ARID)

你可能感兴趣的:(软件体系结构,软件体系结构,软件工程)