[架构之路-112]-《软考-系统架构设计师》-软件架构设计-5-软件工程与基于架构的软件开发流程ABSD
Posted 文火冰糖的硅基工坊
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了[架构之路-112]-《软考-系统架构设计师》-软件架构设计-5-软件工程与基于架构的软件开发流程ABSD相关的知识,希望对你有一定的参考价值。
前言:
![](https://image.cha138.com/20230304/3b3a42e14e774b0e9e6679d422d43a75.jpg)
第5节 基于架构的软件开发流程ABSD
5.1 软件开发流程
软件开发流程是软件工程领域的概念。
软件工程是一门研究用工程化方法构建和维护有效、实用和高质量的软件的学科。它涉及程序设计语言、数据库、软件开发工具、系统平台、标准、设计件有电子邮件、嵌入式系统、人机界面、办公套件、操作系统、编译器、数据库、游戏等。同时,各个行业几乎都有计算机软件的应用,如工业、农业、银行、航空、政府部门等。这些应用促进了经济和社会的发展,也提高了工作效率和生活效率 。
软件开发流程即软件设计思路和方法的一般过程,包括对软件先进行需求分析,设计软件的功能和实现的算法和方法、软件的总体结构设计和模块设计、编码和调试、程序联调和测试以及编写、提交程序等一系列操作以满足客户的需求并且解决客户的问题,如果有更高需求,还需要对软件进行维护、升级处理,报废处理。
![](https://image.cha138.com/20230304/7ae2d322e40f45ce9a8a55c5085c1b8d.jpg)
![](https://image.cha138.com/20230304/35dcbd7784ac4672bddd10bb7f28f5d7.jpg)
![](https://image.cha138.com/20230304/67e882a809a14c35a7a9ae5a6b3689b7.jpg)
![](https://image.cha138.com/20230304/2c318b4cbcb142baaa4a182e808d95f3.jpg)
![](https://image.cha138.com/20230304/dbc6ecd3d1d84ec1b516a9b586fd9b3e.jpg)
![](https://image.cha138.com/20230304/ac4b23916c854e629aed8ff690d45a6e.jpg)
![](https://image.cha138.com/20230304/be1abf2acdaf457f9052a33a64e0f7ed.jpg)
沈阳软件项目开发流程图-沈阳微信软件开发公司 (syjinqidian.com)
5.2 基于架构的软件开发流程
5.2.1 定义
基于架构的软件开发流程其背后的核心思想是:架构驱动软件开发流程。也就是说,通过软件架构这个主线来贯串整个软件开发流程,即从项目开始、到需求分析、到软件设计、到软件编程、直到项目结束,架构都贯串起始。
软件架构中包含了业务的功能性需求、非功能的质量需求以及它们的组合。
通过选择合理风格的架构,确保目标软件系统的质量需求和业务需求。
通过选择合理的软件架构模板/设计模式,降低软件的开发周期、减少软件的故障,提升软件的质量。
![](https://image.cha138.com/20230304/dd4a74958a5740ed91ba083a32902515.jpg)
视角与视图:看到的内容并非是软件代码,而是架构!!!因此,这里的视图是指架构视图!!!
5.2.2 开发过程
![](https://image.cha138.com/20230304/641f20efcab341af85f92e3c7d839812.jpg)
架构设计:输出文档包括架构设计规格说明书和测试架构需求的质量设计说明书!!!
架构实现:通过编码实现软件架构的功能
架构演进:架构不是一次成形的,是需要不断的演进,持续迭代。
![](https://image.cha138.com/20230304/06ae912ce2f64063b2d177e19423c318.jpg)
需求库:通用的需求进行标准化,并生成了可反复复用的需求库。
架构需求:软件需求分析与领域建模,并标准化程各种类与构建(component),构建是一组类或对象的集合。
架构设计:架构设计,顶层架构设计与详细架构设计,不包括软件编码!!!
![](https://image.cha138.com/20230304/125cab9935b04343983364705eacbff0.jpg)
对于一个成熟的组织而言,软件的需求库和软件的组件库为架构设计提供了源源不断的原料。
类似硬件设计的原理图库和PCB库!!!!
5.2.3 与硬件原理图库的比较
![](https://image.cha138.com/20230304/35a88cd61942452a8dceac6ed91c04ec.jpg)
在上述硬件原理图架构中,每个器件都被标准化成了一个原理图库的component.
通过连线,把各个component连接起来,就构成了整个硬件原理图的架构。
5.2.4 与硬件PCB库的比较
![](https://image.cha138.com/20230304/d5b59aa5efc848d1abdfa4168b08a188.jpg)
在上述硬件原理图架构中,每个器件都被标准化成了一个PCB库的component.
通过连线,把各个component连接起来,就构成了整个硬件PCB的架构。
以上是关于[架构之路-112]-《软考-系统架构设计师》-软件架构设计-5-软件工程与基于架构的软件开发流程ABSD的主要内容,如果未能解决你的问题,请参考以下文章
[架构之路-116]-《软考-系统架构设计师》-软架构设计-9-构件与中间件技术
[架构之路-117]-《软考-系统架构设计师》-软架构设计-10-应用程序架构与基于Web的架构设计负载均衡技术
[架构之路-110]-《软考-系统架构设计师》-软件架构设计-3-架构描述语言ADL与UML
[架构之路-107]-《软考-系统架构设计师》-0-系统分析师与系统架构设计师简介与官网介绍
系统架构设计师软考简介 ( 软考好处 | 职称晋升 | 工作居住证 | 积分落户 | 系统架构设计师与系统分析师备考及难度 | 软考报名考试注意事项 )
系统架构设计师软考简介 ( 软考好处 | 职称晋升 | 工作居住证 | 积分落户 | 系统架构设计师与系统分析师备考及难度 | 软考报名考试注意事项 )