软件体系结构原理、方法与实践


前言

提示:本文章内容仅是复习总结,不作为详细讲解。


一、软件体系结构概论

软件开发不仅是把程序写好就够了,还需要做前期的需求和体系结构设计,而且,前期的设计比程序编码更重要。

1.1从软件危机谈起

软件危机(Software crisis)是指计算机软件开发和维护过程中所遇到的一系列严重问题

①软件危机的表现:
1.软件成本日益增大
2.开发进度难以控制
3.软件质量差
4.软件维护困难

②软件危机的原因:
1.用户需求不明确
2.缺乏正确的理论指导
3.软件规模越来越大
4.软件复杂度越来越高

③如何克服软件危机:软件工程是用工程、科学和数学的原则和方法研制、维护计算机软件的有关技术及管理方法。软件工程包括三个要素:方法工具过程

1.2构建与软件重用

软件重用是指两次或多次不同的软件开发过程中重复使用相同或相近软件元素的过程。软件元素包括程序代码、测试用例、设计文档、设计过程、需求分析文档甚至领域知识。通常,把这种可重用的元素称作构件

构件模型及实现:构件是指语义完整、语法正确和有可重用价值的单位软件,是软件重用过程中可以明确辨识的系统;结构上,它是语义描述、通信接口和实现代码的复合体。
构件模型(model)是对构件本质特征的抽象描述。
构件实现时指具体实现构件功能的逻辑系统,通常也称为代码构件。

构件获取:
1.从现有构件中获得符合要求的构件,直接使用或作适应性修改,得到可重用的构件
2.通过遗留工程,将具有潜在重用价值的构件提取出来,得到可重用的构件
3.从市场上购买现成的商业构件
4.开发新的符合要求的构件

构件管理:目前已有的构建分类方法可以归纳为三大类,分别是关键字分类法刻面分类法超文本组织法

构件库系统包括5类用户:注册用户公共用户构建提交着者一般系统管理员超级系统管理员

构件重用的步骤:
1.检索与提取构件:关键字分类法刻面分类法超文本组织法
2.理解与评价构件
3.修改构件
4.构件组装:基于功能组装基于数据组装面向对象组装

层次式软件体系结构,将产品的系统构件模型定义为4个层次:
1.系统构件层。
2.通用类构件层。
3.业务构件层。
4.表现层。

产品开发过程中建立了重用的组织框构,主要由三组成员组成:构件开发组软件应用组协调组

1.3软件体系结构的兴起与发展

软件体系结构为软件系统提供了一个结构、行为和属性的高级抽象,由构件系统的元素描述、这些元素的相互作用、指导元素集成的模型以及这些模型的约束组成。

软件开发经历了四个阶段:
1.无体系结构设计阶段
2.萌芽阶段
3.初级阶段
4.高级阶段

二、软件体系构建模型

2.1.“4+1”视图模型

“4+1”视图是从5个不同的视角来描述软件体系结构:
1.逻辑视图:主要支持系统的功能需求,即系统提供给最终用户的服务。
2.开发视图:也称模块视图,只要侧重于软件模块的组织和管理。
3.进程视图:也称并发视图,侧重于系统的运行特性,主要关注一些非功能性需求,例如系统的性能和可用性。
4.物理视图:主要考虑如何把软件映射到硬件上,它通常要考虑到系统性能、规模、可靠性等。
5.场景:可以看作是那些重要系统活动的抽象,它使4个视图有机联系起来,从某种意义上说场景是最重要的需求抽象。

4+1模型

2.2软件体系结构的核心模型

体系结构的核心模型由5种元素组成:构件连接件配置端口角色。其中,构件连接件配置最基本的元素。

2.3软件体系结构的生命周期模型

各阶段的功能:
1.需求分析阶段:包括获取、生成类图、对类分组、将类打包成构件和需求评审等过程。
2.建立软件体系结构阶段:体系结构设计师主要从结构的角度对整个系统进行分析,选择恰当的构件、构件间的相互作用关系以及对它们的约束,最后形成一个系统框架以满足用户需求,为设计奠定基础。
3.设计阶段:主要是对系统进行模块化并决定描述各个构件间的详细接口、算法和数据类型的选定,对上支持建立体系结构阶段形成的框架,对下提供实现基础。

  • 8
    点赞
  • 80
    收藏
    觉得还不错? 一键收藏
  • 4
    评论
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值