软考 系统架构设计师系列知识点之基于架构的软件开发方法ABSD(5)

接前一篇文章:软考 系统架构设计师系列知识点之基于架构的软件开发方法ABSD(4)

所属章节:

第7章. 系统架构设计基础知识

第2节. 基于架构的软件开发方法

9. 体系结构演化

在构件开发过程中,用户的需求可能还有变动;在软件开发完毕正常运行后,由一个单位移植到另一个单位,需求也会发生变化。在这两种情况下,就必须相应地修改软件体系结构,以适应已发生变化的软件需求,这就是体系结构演化。

体系结构演化是使用系统演化步骤去修改应用,以满足新的需求 。主要包括以下6个步骤:

(1)需求变化归类

首先必须对用户需求的变化进行归类,使变化的需求与已有构件对应。对找不到对应构件的变动,也要做好标记,在后续工作中,将创建新的构件,以对应这部分变化的需求。

(2)制订体系结构演化计划

在改变原有结构之前,开发组织必须制订一个周密的体系结构演化计划,作为后续演化开发工作的指南。

(3)修改、增加或删除构件

在演化计划的基础上,开发人员可根据在第1步得到的需求变动的归类情况,决定是否修改或删除存在的构件、增加新构件。最后,对修改和增加的构件进行功能性测试。

(4)更新构件的相互作用

随着构件的增加、删除和修改,构件之间的控制流必须得到更新。

(5)构件组装与测试

通过组装支持工具把这些构件的实现组装起来,完成整个软件系统的连接与合成,形成新的体系结构。然后对组装后的系统整体功能和性能进行测试。

(6)技术评审

对以上步骤进行确认,进行技术评审。评审组装后的体系结构是否反应需求变动、符合用户需求。如果不符合,则需要在第2步到第6步之间进行迭代。

在原来系统上所做的所有修改必须集成到原来的体系结构中,完成一次演化过程。

相关推荐
长不大的杨瑞杰3 天前
ChatGPT 广告技术栈架构拆解:多轮意图、LLM 工具编排、ANN 召回与拍卖闭环
人工智能·chatgpt·系统架构·推荐系统·广告
艺杯羹4 天前
Windows原生软件锁设计:从暴力杀进程丢数据到零轮询事件驱动架构
windows·系统架构·开源·开源软件·内存管理·开源协议
jktantan4 天前
注解式脱敏:用 Jackson 的 ContextualSerializer 做字段级策略(一)
spring boot·后端·算法·spring cloud·系统架构
佛祖让我来巡山6 天前
系统架构师基础知识点概览汇总
软考高级·软考·系统架构师
艺杯羹6 天前
MCP本地服务集成避坑:从Stdio管道僵死到双向JSON-RPC稳健通信
人工智能·python·ai·系统架构·大语言模型·ai编程·mcp
奇树谦6 天前
Qt Quick 图片加载与 GPU 纹理机制详解:QImage、QQuickTextureFactory、QSGTexture 与异步加载
开发语言·qt·系统架构
无心水7 天前
24、系统架构师论文写作专题 核心考点与学习笔记
笔记·学习·系统架构·架构师·安全架构·软考架构师·软考系统架构设计师
拆房老料8 天前
DeepSeek Super-agent 架构解析:从单任务 Agent 到持续运行的任务系统
人工智能·设计模式·系统架构
Jmyd01238 天前
文物3D数字化的技术选型指南:从WW/T 0115标准到落地工程,一次讲透采集、建档、管理与展示
3d·系统架构·博物馆·数字展厅·博物馆数字化
薛定谔的猫-菜鸟程序员9 天前
软件架构设计师开发资料大全(从入门到精通)
后端·python·系统架构·flask·架构设计师