<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>演化 on Liangweidong's blog</title><link>https://liangweidonggood.github.io/tags/%E6%BC%94%E5%8C%96/</link><description>Recent content in 演化 on Liangweidong's blog</description><generator>Hugo -- gohugo.io</generator><language>zh-cn</language><lastBuildDate>Mon, 01 Jan 2024 00:00:00 +0000</lastBuildDate><atom:link href="https://liangweidonggood.github.io/tags/%E6%BC%94%E5%8C%96/index.xml" rel="self" type="application/rss+xml"/><item><title>12-软件架构演化与维护</title><link>https://liangweidonggood.github.io/p/12-ruan-jian-jia-gou-yan-hua-yu-wei-hu/</link><pubDate>Mon, 01 Jan 2024 00:00:00 +0000</pubDate><guid>https://liangweidonggood.github.io/p/12-ruan-jian-jia-gou-yan-hua-yu-wei-hu/</guid><description>&lt;h1 id="12-软件架构演化与维护基于第12小时"&gt;12-软件架构演化与维护（基于第12小时）
&lt;/h1&gt;
 &lt;blockquote&gt;
 &lt;p&gt;软考-系统架构设计师 | 第3篇 架构设计高级知识
出题形式：单项选择题 + 下午案例分析题
分值占比：约 3-5 分（选择），案例分析 25 分&lt;/p&gt;

 &lt;/blockquote&gt;
&lt;hr&gt;
&lt;h2 id="0-考点分析"&gt;0. 考点分析
&lt;/h2&gt;&lt;p&gt;本小时专注于软件架构的演化和维护，包括基本概念、演化类型、原则、评估方法和维护手段。&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;考试特点&lt;/strong&gt;：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;选择题 3-5 分（演化原则、动态/静态演化、原子操作）&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;案例分析题核心&lt;/strong&gt;（大型网站架构演化路径、演化评估）&lt;/li&gt;
&lt;li&gt;论文题高频素材（架构演化、维护管理）&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="1-核心知识点"&gt;1. 核心知识点
&lt;/h2&gt;&lt;h3 id="11-软件架构演化的重要性"&gt;1.1 软件架构演化的重要性
&lt;/h3&gt;&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;保障软件系统具备诸多好的特性&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;有效管控软件系统的整体复杂性和变化性&lt;/strong&gt;，降低软件检修和修改成本&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;保证软件系统演化的一致性和正确性&lt;/strong&gt;，增加便捷性&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id="12-演化和定义的关系"&gt;1.2 演化和定义的关系
&lt;/h3&gt;&lt;ul&gt;
&lt;li&gt;软件架构包括&lt;strong&gt;组件、连接件和约束&lt;/strong&gt;三大要素&lt;/li&gt;
&lt;li&gt;架构演化主要关注这三大要素的&lt;strong&gt;添加、修改和删除&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="13-面向对象软件架构演化过程4-类操作"&gt;1.3 面向对象软件架构演化过程（4 类操作）
&lt;/h3&gt;&lt;h4 id="对象演化"&gt;对象演化
&lt;/h4&gt;&lt;table&gt;
	&lt;thead&gt;
			&lt;tr&gt;
					&lt;th&gt;操作&lt;/th&gt;
					&lt;th&gt;含义&lt;/th&gt;
					&lt;th&gt;触发场景&lt;/th&gt;
			&lt;/tr&gt;
	&lt;/thead&gt;
	&lt;tbody&gt;
			&lt;tr&gt;
					&lt;td&gt;&lt;strong&gt;AO&lt;/strong&gt;（Add Object）&lt;/td&gt;
					&lt;td&gt;添加新对象&lt;/td&gt;
					&lt;td&gt;系统需要添加新功能或增加架构灵活性时&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;&lt;strong&gt;DO&lt;/strong&gt;（Delete Object）&lt;/td&gt;
					&lt;td&gt;删除对象&lt;/td&gt;
					&lt;td&gt;系统需要移除现有功能或降低架构复杂度时&lt;/td&gt;
			&lt;/tr&gt;
	&lt;/tbody&gt;
&lt;/table&gt;
&lt;h4 id="消息演化5-种操作"&gt;消息演化（5 种操作）
&lt;/h4&gt;&lt;table&gt;
	&lt;thead&gt;
			&lt;tr&gt;
					&lt;th&gt;操作&lt;/th&gt;
					&lt;th&gt;含义&lt;/th&gt;
					&lt;th&gt;触发场景&lt;/th&gt;
			&lt;/tr&gt;
	&lt;/thead&gt;
	&lt;tbody&gt;
			&lt;tr&gt;
					&lt;td&gt;&lt;strong&gt;AM&lt;/strong&gt;（Add Message）&lt;/td&gt;
					&lt;td&gt;增添一条新消息&lt;/td&gt;
					&lt;td&gt;对象之间需要增加新的交互行为&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;&lt;strong&gt;DM&lt;/strong&gt;（Delete Message）&lt;/td&gt;
					&lt;td&gt;删除当前消息&lt;/td&gt;
					&lt;td&gt;需要移除某交互行为&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;&lt;strong&gt;SMO&lt;/strong&gt;（Swap Message Order）&lt;/td&gt;
					&lt;td&gt;交换两条消息的时间顺序&lt;/td&gt;
					&lt;td&gt;需要改变两个交互行为之间顺序&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;&lt;strong&gt;OM&lt;/strong&gt;（Overturn Message）&lt;/td&gt;
					&lt;td&gt;反转消息的发送对象与接收对象&lt;/td&gt;
					&lt;td&gt;需要修改某个交互行为本身&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;&lt;strong&gt;CMM&lt;/strong&gt;（Change Message Module）&lt;/td&gt;
					&lt;td&gt;改变消息的发送或接收对象&lt;/td&gt;
					&lt;td&gt;需要修改某个交互行为本身&lt;/td&gt;
			&lt;/tr&gt;
	&lt;/tbody&gt;
&lt;/table&gt;
&lt;h4 id="复合片段演化4-种操作"&gt;复合片段演化（4 种操作）
&lt;/h4&gt;&lt;table&gt;
	&lt;thead&gt;
			&lt;tr&gt;
					&lt;th&gt;操作&lt;/th&gt;
					&lt;th&gt;含义&lt;/th&gt;
					&lt;th&gt;触发场景&lt;/th&gt;
			&lt;/tr&gt;
	&lt;/thead&gt;
	&lt;tbody&gt;
			&lt;tr&gt;
					&lt;td&gt;&lt;strong&gt;AF&lt;/strong&gt;（Add Fragment）&lt;/td&gt;
					&lt;td&gt;新增复合片段&lt;/td&gt;
					&lt;td&gt;需要增添新的控制流&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;&lt;strong&gt;DF&lt;/strong&gt;（Delete Fragment）&lt;/td&gt;
					&lt;td&gt;删除复合片段&lt;/td&gt;
					&lt;td&gt;需要移除某段控制流&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;&lt;strong&gt;FTC&lt;/strong&gt;（Fragment Type Change）&lt;/td&gt;
					&lt;td&gt;改变复合片段类型&lt;/td&gt;
					&lt;td&gt;需要改变某段控制流&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;&lt;strong&gt;FCC&lt;/strong&gt;（Fragment Condition Change）&lt;/td&gt;
					&lt;td&gt;改变复合片段内部执行条件&lt;/td&gt;
					&lt;td&gt;改变当前控制流的执行条件&lt;/td&gt;
			&lt;/tr&gt;
	&lt;/tbody&gt;
&lt;/table&gt;
&lt;h4 id="约束演化"&gt;约束演化
&lt;/h4&gt;&lt;table&gt;
	&lt;thead&gt;
			&lt;tr&gt;
					&lt;th&gt;操作&lt;/th&gt;
					&lt;th&gt;含义&lt;/th&gt;
					&lt;th&gt;触发场景&lt;/th&gt;
			&lt;/tr&gt;
	&lt;/thead&gt;
	&lt;tbody&gt;
			&lt;tr&gt;
					&lt;td&gt;&lt;strong&gt;AC&lt;/strong&gt;（Add Constraint）&lt;/td&gt;
					&lt;td&gt;添加新约束&lt;/td&gt;
					&lt;td&gt;需判断当前设计是否满足新约束&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;&lt;strong&gt;DC&lt;/strong&gt;（Delete Constraint）&lt;/td&gt;
					&lt;td&gt;移除约束&lt;/td&gt;
					&lt;td&gt;去除某些不必要条件&lt;/td&gt;
			&lt;/tr&gt;
	&lt;/tbody&gt;
&lt;/table&gt;
&lt;h3 id="14-软件架构演化方式的分类"&gt;1.4 软件架构演化方式的分类
&lt;/h3&gt;&lt;h4 id="按演化时期分4-类"&gt;按演化时期分（4 类）
&lt;/h4&gt;&lt;table&gt;
	&lt;thead&gt;
			&lt;tr&gt;
					&lt;th&gt;类型&lt;/th&gt;
					&lt;th&gt;时机&lt;/th&gt;
					&lt;th&gt;特点&lt;/th&gt;
			&lt;/tr&gt;
	&lt;/thead&gt;
	&lt;tbody&gt;
			&lt;tr&gt;
					&lt;td&gt;&lt;strong&gt;设计时演化&lt;/strong&gt;&lt;/td&gt;
					&lt;td&gt;体系结构模型与代码&lt;strong&gt;编译之前&lt;/strong&gt;&lt;/td&gt;
					&lt;td&gt;早期阶段&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;&lt;strong&gt;运行前演化&lt;/strong&gt;&lt;/td&gt;
					&lt;td&gt;&lt;strong&gt;编译之后、执行之前&lt;/strong&gt;&lt;/td&gt;
					&lt;td&gt;中间阶段&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;&lt;strong&gt;有限制运行时演化&lt;/strong&gt;&lt;/td&gt;
					&lt;td&gt;&lt;strong&gt;特定约束满足时&lt;/strong&gt;&lt;/td&gt;
					&lt;td&gt;受限运行&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;&lt;strong&gt;运行时演化&lt;/strong&gt;&lt;/td&gt;
					&lt;td&gt;运行时不能满足要求时&lt;/td&gt;
					&lt;td&gt;动态调整&lt;/td&gt;
			&lt;/tr&gt;
	&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;&lt;strong&gt;记忆口诀&lt;/strong&gt;：&lt;strong&gt;设计时→运行前→有限制运行时→运行时&lt;/strong&gt;（从早到晚）&lt;/p&gt;
&lt;h4 id="静态演化-vs-动态演化"&gt;静态演化 vs 动态演化
&lt;/h4&gt;&lt;table&gt;
	&lt;thead&gt;
			&lt;tr&gt;
					&lt;th&gt;维度&lt;/th&gt;
					&lt;th&gt;静态演化&lt;/th&gt;
					&lt;th&gt;动态演化&lt;/th&gt;
			&lt;/tr&gt;
	&lt;/thead&gt;
	&lt;tbody&gt;
			&lt;tr&gt;
					&lt;td&gt;&lt;strong&gt;需求&lt;/strong&gt;&lt;/td&gt;
					&lt;td&gt;设计时演化、运行前演化&lt;/td&gt;
					&lt;td&gt;软件内部执行导致架构改变、外部请求重配置&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;&lt;strong&gt;过程&lt;/strong&gt;&lt;/td&gt;
					&lt;td&gt;软件理解→需求变更分析→演化计划→系统重构→系统测试&lt;/td&gt;
					&lt;td&gt;实时调整&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;&lt;strong&gt;动态性等级&lt;/strong&gt;&lt;/td&gt;
					&lt;td&gt;-&lt;/td&gt;
					&lt;td&gt;交互动态性、结构动态性、架构动态性&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;&lt;strong&gt;演化内容&lt;/strong&gt;&lt;/td&gt;
					&lt;td&gt;-&lt;/td&gt;
					&lt;td&gt;属性改名、行为变化、拓扑结构改变、风格变化&lt;/td&gt;
			&lt;/tr&gt;
	&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;&lt;strong&gt;注意&lt;/strong&gt;：动态演化不包括&amp;quot;&lt;strong&gt;格式变化&lt;/strong&gt;&amp;quot;（考题陷阱）&lt;/p&gt;
&lt;h4 id="静态演化的原子操作"&gt;静态演化的原子操作
&lt;/h4&gt;&lt;p&gt;&lt;strong&gt;与可维护性相关&lt;/strong&gt;（7 种）：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;AMD（Add Module Dependence）— 添加模块依赖&lt;/li&gt;
&lt;li&gt;RMD（Remove Module Dependence）— 移除模块依赖&lt;/li&gt;
&lt;li&gt;AMI（Add Module Interface）— 添加模块接口&lt;/li&gt;
&lt;li&gt;RMI（Remove Module Interface）— 移除模块接口&lt;/li&gt;
&lt;li&gt;AM（Add Module）— 添加模块&lt;/li&gt;
&lt;li&gt;RM（Remove Module）— 移除模块&lt;/li&gt;
&lt;li&gt;SM（Split Module）— 拆分模块&lt;/li&gt;
&lt;li&gt;AGM（Aggregate Modules）— 聚合模块&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;与可靠性相关&lt;/strong&gt;（10 种）：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;AMS（Add Message）— 添加消息&lt;/li&gt;
&lt;li&gt;RMS（Remove Message）— 移除消息&lt;/li&gt;
&lt;li&gt;AO（Add Object）— 添加对象&lt;/li&gt;
&lt;li&gt;RO（Remove Object）— 移除对象&lt;/li&gt;
&lt;li&gt;AF（Add Fragment）— 添加片段&lt;/li&gt;
&lt;li&gt;RF（Remove Fragment）— 移除片段&lt;/li&gt;
&lt;li&gt;CF（Change Fragment）— 改变片段&lt;/li&gt;
&lt;li&gt;AU（Add Use Case）— 添加用例&lt;/li&gt;
&lt;li&gt;RU（Remove Use Case）— 移除用例&lt;/li&gt;
&lt;li&gt;AA（Add Actor）— 添加参与者&lt;/li&gt;
&lt;li&gt;RA（Remove Actor）— 移除参与者&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="15-动态软件架构dsa"&gt;1.5 动态软件架构（DSA）
&lt;/h3&gt;&lt;h4 id="实现动态演化的基本原理"&gt;实现动态演化的基本原理
&lt;/h4&gt;&lt;ul&gt;
&lt;li&gt;运行时刻&lt;strong&gt;体系结构相关信息的改变&lt;/strong&gt;可用来触发、驱动系统自身的动态调整&lt;/li&gt;
&lt;/ul&gt;
&lt;h4 id="dsa-描述语言按视角分"&gt;DSA 描述语言（按视角分）
&lt;/h4&gt;&lt;table&gt;
	&lt;thead&gt;
			&lt;tr&gt;
					&lt;th&gt;视角&lt;/th&gt;
					&lt;th&gt;语言&lt;/th&gt;
			&lt;/tr&gt;
	&lt;/thead&gt;
	&lt;tbody&gt;
			&lt;tr&gt;
					&lt;td&gt;行为视角&lt;/td&gt;
					&lt;td&gt;&lt;strong&gt;π-ADL&lt;/strong&gt;&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;反射视角&lt;/td&gt;
					&lt;td&gt;&lt;strong&gt;Pilar&lt;/strong&gt;&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;协调视角&lt;/td&gt;
					&lt;td&gt;&lt;strong&gt;LIME&lt;/strong&gt;&lt;/td&gt;
			&lt;/tr&gt;
	&lt;/tbody&gt;
&lt;/table&gt;
&lt;h4 id="dsa-演化工具4-种"&gt;DSA 演化工具（4 种）
&lt;/h4&gt;&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;使用反射机制&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;基于组件操作&lt;/li&gt;
&lt;li&gt;基于 π 演算&lt;/li&gt;
&lt;li&gt;利用外部的体系结构演化管理器&lt;/li&gt;
&lt;/ol&gt;
&lt;h4 id="动态软件架构应用实例--pkuas"&gt;动态软件架构应用实例 — PKUAS
&lt;/h4&gt;&lt;ul&gt;
&lt;li&gt;4 种类型：&lt;strong&gt;容器系统、公共服务、工具和微内核&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h4 id="动态重配置"&gt;动态重配置
&lt;/h4&gt;&lt;p&gt;&lt;strong&gt;4 种模式&lt;/strong&gt;：&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;主从模式&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;中央控制模式&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;客户端/服务器模式&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;分布式控制模式&lt;/strong&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;&lt;strong&gt;应用实例&lt;/strong&gt;：可重用、可配置的产品线架构&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;动态配置难点&lt;/strong&gt;：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;约束定义困难&lt;/li&gt;
&lt;li&gt;性能约束难以静态衡量&lt;/li&gt;
&lt;li&gt;难以管理所有方面&lt;/li&gt;
&lt;li&gt;需同时保证组件系统完整性和重配置策略的正确和安全性&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="16-软件结构演化原则18-大原则"&gt;1.6 软件结构演化原则（18 大原则）
&lt;/h3&gt;&lt;table&gt;
	&lt;thead&gt;
			&lt;tr&gt;
					&lt;th&gt;#&lt;/th&gt;
					&lt;th&gt;原则&lt;/th&gt;
					&lt;th&gt;关键点&lt;/th&gt;
			&lt;/tr&gt;
	&lt;/thead&gt;
	&lt;tbody&gt;
			&lt;tr&gt;
					&lt;td&gt;1&lt;/td&gt;
					&lt;td&gt;&lt;strong&gt;演化成本控制&lt;/strong&gt;&lt;/td&gt;
					&lt;td&gt;演化成本要控制在预期范围内&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;2&lt;/td&gt;
					&lt;td&gt;&lt;strong&gt;进度可控&lt;/strong&gt;&lt;/td&gt;
					&lt;td&gt;架构演化要在预期时间内完成&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;3&lt;/td&gt;
					&lt;td&gt;&lt;strong&gt;风险可控&lt;/strong&gt;&lt;/td&gt;
					&lt;td&gt;经济/时间/人力/技术/环境风险在可控范围内&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;4&lt;/td&gt;
					&lt;td&gt;&lt;strong&gt;主体维持&lt;/strong&gt;&lt;/td&gt;
					&lt;td&gt;软件演化的平均增量增长须保持平稳，主体行为稳定&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;5&lt;/td&gt;
					&lt;td&gt;&lt;strong&gt;系统总体结构优化&lt;/strong&gt;&lt;/td&gt;
					&lt;td&gt;演化后整体结构（布局）更加合理&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;6&lt;/td&gt;
					&lt;td&gt;&lt;strong&gt;平滑演化&lt;/strong&gt;&lt;/td&gt;
					&lt;td&gt;软件的演化&lt;strong&gt;速率趋于稳定&lt;/strong&gt;&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;7&lt;/td&gt;
					&lt;td&gt;&lt;strong&gt;目标一致&lt;/strong&gt;&lt;/td&gt;
					&lt;td&gt;阶段目标和最终目标要一致&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;8&lt;/td&gt;
					&lt;td&gt;&lt;strong&gt;模块独立演化&lt;/strong&gt;&lt;/td&gt;
					&lt;td&gt;各模块自身的演化最好相互独立&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;9&lt;/td&gt;
					&lt;td&gt;&lt;strong&gt;影响可控&lt;/strong&gt;&lt;/td&gt;
					&lt;td&gt;一个模块变更给其他模块带来的影响在可控范围&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;10&lt;/td&gt;
					&lt;td&gt;&lt;strong&gt;复杂性可控&lt;/strong&gt;&lt;/td&gt;
					&lt;td&gt;必须控制架构的复杂性&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;11&lt;/td&gt;
					&lt;td&gt;&lt;strong&gt;有利于重构&lt;/strong&gt;&lt;/td&gt;
					&lt;td&gt;演化后软件架构便于重构&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;12&lt;/td&gt;
					&lt;td&gt;&lt;strong&gt;有利于重用&lt;/strong&gt;&lt;/td&gt;
					&lt;td&gt;维持或提高整体架构的可重用性&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;13&lt;/td&gt;
					&lt;td&gt;&lt;strong&gt;设计原则遵循性&lt;/strong&gt;&lt;/td&gt;
					&lt;td&gt;演化不与架构设计原则冲突&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;14&lt;/td&gt;
					&lt;td&gt;&lt;strong&gt;适应新技术&lt;/strong&gt;&lt;/td&gt;
					&lt;td&gt;软件独立于特定技术手段，可运行于不同平台&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;15&lt;/td&gt;
					&lt;td&gt;&lt;strong&gt;环境适应性&lt;/strong&gt;&lt;/td&gt;
					&lt;td&gt;演化后软件版本容易适应新硬件/软件环境&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;16&lt;/td&gt;
					&lt;td&gt;&lt;strong&gt;标准依从性&lt;/strong&gt;&lt;/td&gt;
					&lt;td&gt;演化不违背相关质量标准（国际/国家/行业）&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;17&lt;/td&gt;
					&lt;td&gt;&lt;strong&gt;质量向好&lt;/strong&gt;&lt;/td&gt;
					&lt;td&gt;所关注的质量指标综合效果变更好&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;18&lt;/td&gt;
					&lt;td&gt;&lt;strong&gt;适应新需求&lt;/strong&gt;&lt;/td&gt;
					&lt;td&gt;很容易适应新的需求变更&lt;/td&gt;
			&lt;/tr&gt;
	&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;&lt;strong&gt;关键原则对比&lt;/strong&gt;：&lt;/p&gt;
&lt;table&gt;
	&lt;thead&gt;
			&lt;tr&gt;
					&lt;th&gt;原则&lt;/th&gt;
					&lt;th&gt;vs&lt;/th&gt;
			&lt;/tr&gt;
	&lt;/thead&gt;
	&lt;tbody&gt;
			&lt;tr&gt;
					&lt;td&gt;主体维持&lt;/td&gt;
					&lt;td&gt;平均增量&lt;strong&gt;平稳&lt;/strong&gt;&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;平滑演化&lt;/td&gt;
					&lt;td&gt;演化&lt;strong&gt;速率趋于稳定&lt;/strong&gt;&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;目标一致&lt;/td&gt;
					&lt;td&gt;阶段目标和最终目标&lt;strong&gt;一致&lt;/strong&gt;&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;系统总体结构优化&lt;/td&gt;
					&lt;td&gt;整体&lt;strong&gt;结构布局&lt;/strong&gt;合理&lt;/td&gt;
			&lt;/tr&gt;
	&lt;/tbody&gt;
&lt;/table&gt;
&lt;h3 id="17-软件架构演化评估方法"&gt;1.7 软件架构演化评估方法
&lt;/h3&gt;&lt;h4 id="演化过程已知的评估"&gt;演化过程已知的评估
&lt;/h4&gt;&lt;ul&gt;
&lt;li&gt;流程：将架构度量应用到演化过程中&lt;/li&gt;
&lt;li&gt;通过对&lt;strong&gt;演化前后的不同版本&lt;/strong&gt;的架构分别进行度量&lt;/li&gt;
&lt;li&gt;得到度量结果的&lt;strong&gt;差值及其变化趋势&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;计算架构间质量属性距离，对相关质量属性进行评估&lt;/li&gt;
&lt;/ul&gt;
&lt;h4 id="演化过程未知的评估"&gt;演化过程未知的评估
&lt;/h4&gt;&lt;ul&gt;
&lt;li&gt;教材图 12.3 展示评估过程&lt;/li&gt;
&lt;li&gt;通过反向工程等技术恢复架构信息&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="18-大型网站系统架构演化实例10-阶段"&gt;1.8 大型网站系统架构演化实例（10 阶段）
&lt;/h3&gt;&lt;table&gt;
	&lt;thead&gt;
			&lt;tr&gt;
					&lt;th&gt;阶段&lt;/th&gt;
					&lt;th&gt;架构&lt;/th&gt;
					&lt;th&gt;关键点&lt;/th&gt;
			&lt;/tr&gt;
	&lt;/thead&gt;
	&lt;tbody&gt;
			&lt;tr&gt;
					&lt;td&gt;&lt;strong&gt;第一阶段&lt;/strong&gt;&lt;/td&gt;
					&lt;td&gt;&lt;strong&gt;单体架构&lt;/strong&gt;&lt;/td&gt;
					&lt;td&gt;应用程序、数据库、文件等所有资源都在&lt;strong&gt;一台服务器&lt;/strong&gt;上&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;&lt;strong&gt;第二阶段&lt;/strong&gt;&lt;/td&gt;
					&lt;td&gt;&lt;strong&gt;垂直架构&lt;/strong&gt;&lt;/td&gt;
					&lt;td&gt;应用和数据分离，&lt;strong&gt;3 台服务器&lt;/strong&gt;：应用、文件、数据&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;&lt;strong&gt;第三阶段&lt;/strong&gt;&lt;/td&gt;
					&lt;td&gt;&lt;strong&gt;使用缓存改善性能&lt;/strong&gt;&lt;/td&gt;
					&lt;td&gt;本地缓存 + 远程&lt;strong&gt;分布式缓存&lt;/strong&gt;&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;&lt;strong&gt;第四阶段&lt;/strong&gt;&lt;/td&gt;
					&lt;td&gt;&lt;strong&gt;使用服务集群改善并发&lt;/strong&gt;&lt;/td&gt;
					&lt;td&gt;负载均衡调度服务器，分发请求到集群&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;&lt;strong&gt;第五阶段&lt;/strong&gt;&lt;/td&gt;
					&lt;td&gt;&lt;strong&gt;数据库读写分离&lt;/strong&gt;&lt;/td&gt;
					&lt;td&gt;主库写、从库读，&lt;strong&gt;主从复制&lt;/strong&gt;机制同步&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;&lt;strong&gt;第六阶段&lt;/strong&gt;&lt;/td&gt;
					&lt;td&gt;&lt;strong&gt;反向代理和 CDN 加速&lt;/strong&gt;&lt;/td&gt;
					&lt;td&gt;CDN 部署在网络提供商机房（距离最近）；反向代理部署在中心机房&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;&lt;strong&gt;第七阶段&lt;/strong&gt;&lt;/td&gt;
					&lt;td&gt;&lt;strong&gt;分布式文件系统和分布式数据库&lt;/strong&gt;&lt;/td&gt;
					&lt;td&gt;&lt;strong&gt;业务分库&lt;/strong&gt;，不同业务部署不同物理服务器&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;&lt;strong&gt;第八阶段&lt;/strong&gt;&lt;/td&gt;
					&lt;td&gt;&lt;strong&gt;使用 NoSQL 和搜索引擎&lt;/strong&gt;&lt;/td&gt;
					&lt;td&gt;解决海量数据检索&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;&lt;strong&gt;第九阶段&lt;/strong&gt;&lt;/td&gt;
					&lt;td&gt;&lt;strong&gt;业务拆分&lt;/strong&gt;&lt;/td&gt;
					&lt;td&gt;一个网站拆分成多个应用，独立部署&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;&lt;strong&gt;第十阶段&lt;/strong&gt;&lt;/td&gt;
					&lt;td&gt;&lt;strong&gt;分布式服务&lt;/strong&gt;&lt;/td&gt;
					&lt;td&gt;服务化、SOA/微服务&lt;/td&gt;
			&lt;/tr&gt;
	&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;&lt;strong&gt;核心演化逻辑&lt;/strong&gt;：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;解决性能 → 缓存、集群、读写分离&lt;/li&gt;
&lt;li&gt;解决高可用 → 集群、读写分离、CDN&lt;/li&gt;
&lt;li&gt;解决扩展性 → 业务拆分、分布式服务&lt;/li&gt;
&lt;li&gt;解决海量数据 → 分布式文件系统、NoSQL&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="19-软件架构维护"&gt;1.9 软件架构维护
&lt;/h3&gt;&lt;p&gt;&lt;strong&gt;维护过程&lt;/strong&gt;（3 大内容）：&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;软件架构知识管理&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;软件架构修改管理&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;软件架构版本管理&lt;/strong&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;h4 id="软件架构知识管理"&gt;软件架构知识管理
&lt;/h4&gt;&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;架构知识 = 架构设计 + 架构设计决策&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;含义：侧重于软件开发和实现过程所涉及的架构&lt;strong&gt;静态演化&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;在架构文档等信息来源中捕捉架构知识&lt;/li&gt;
&lt;li&gt;提供架构的质量属性及其设计依据进行记录和评价&lt;/li&gt;
&lt;li&gt;需求：防止关键的设计知识&amp;quot;沉没&amp;quot;在软件架构中&lt;/li&gt;
&lt;/ul&gt;
&lt;h4 id="软件架构修改管理"&gt;软件架构修改管理
&lt;/h4&gt;&lt;ul&gt;
&lt;li&gt;主要是建立一个&lt;strong&gt;隔离区域&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;保障该区域中任何修改对其他部分影响&lt;strong&gt;最小&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h4 id="软件架构版本管理"&gt;软件架构版本管理
&lt;/h4&gt;&lt;ul&gt;
&lt;li&gt;为软件架构演化的&lt;strong&gt;版本演化控制、使用和评价&lt;/strong&gt;提供可靠依据&lt;/li&gt;
&lt;/ul&gt;
&lt;h4 id="架构可维护性度量6-指标"&gt;架构可维护性度量（6 指标）
&lt;/h4&gt;&lt;table&gt;
	&lt;thead&gt;
			&lt;tr&gt;
					&lt;th&gt;指标&lt;/th&gt;
					&lt;th&gt;缩写&lt;/th&gt;
			&lt;/tr&gt;
	&lt;/thead&gt;
	&lt;tbody&gt;
			&lt;tr&gt;
					&lt;td&gt;&lt;strong&gt;圈复杂度&lt;/strong&gt;&lt;/td&gt;
					&lt;td&gt;&lt;strong&gt;CNN&lt;/strong&gt;&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;&lt;strong&gt;扇入扇出度&lt;/strong&gt;&lt;/td&gt;
					&lt;td&gt;&lt;strong&gt;FFC&lt;/strong&gt;&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;&lt;strong&gt;模块间耦合度&lt;/strong&gt;&lt;/td&gt;
					&lt;td&gt;&lt;strong&gt;CBO&lt;/strong&gt;&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;&lt;strong&gt;模块的响应&lt;/strong&gt;&lt;/td&gt;
					&lt;td&gt;&lt;strong&gt;RFC&lt;/strong&gt;&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;&lt;strong&gt;紧内聚度&lt;/strong&gt;&lt;/td&gt;
					&lt;td&gt;&lt;strong&gt;TCC&lt;/strong&gt;&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;&lt;strong&gt;松内聚度&lt;/strong&gt;&lt;/td&gt;
					&lt;td&gt;&lt;strong&gt;LCC&lt;/strong&gt;&lt;/td&gt;
			&lt;/tr&gt;
	&lt;/tbody&gt;
&lt;/table&gt;
&lt;h2 id="2-关键概念速查"&gt;2. 关键概念速查
&lt;/h2&gt;&lt;table&gt;
	&lt;thead&gt;
			&lt;tr&gt;
					&lt;th&gt;概念&lt;/th&gt;
					&lt;th&gt;定义/说明&lt;/th&gt;
					&lt;th&gt;常见考点&lt;/th&gt;
			&lt;/tr&gt;
	&lt;/thead&gt;
	&lt;tbody&gt;
			&lt;tr&gt;
					&lt;td&gt;AO/DO&lt;/td&gt;
					&lt;td&gt;对象的添加/删除&lt;/td&gt;
					&lt;td&gt;对象演化&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;AM/DM/SMO/OM/CMM&lt;/td&gt;
					&lt;td&gt;消息的增/删/换序/反转/改模块&lt;/td&gt;
					&lt;td&gt;消息演化 5 种&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;AF/DF/FTC/FCC&lt;/td&gt;
					&lt;td&gt;复合片段的增/删/改类型/改条件&lt;/td&gt;
					&lt;td&gt;复合片段演化&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;AC/DC&lt;/td&gt;
					&lt;td&gt;约束的添加/删除&lt;/td&gt;
					&lt;td&gt;约束演化&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;设计时演化&lt;/td&gt;
					&lt;td&gt;编译之前&lt;/td&gt;
					&lt;td&gt;4 时期最早&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;运行前演化&lt;/td&gt;
					&lt;td&gt;编译之后、执行之前&lt;/td&gt;
					&lt;td&gt;4 时期&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;有限制运行时演化&lt;/td&gt;
					&lt;td&gt;特定约束满足时&lt;/td&gt;
					&lt;td&gt;4 时期&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;运行时演化&lt;/td&gt;
					&lt;td&gt;运行时不能要求时&lt;/td&gt;
					&lt;td&gt;4 时期最晚&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;主体维持&lt;/td&gt;
					&lt;td&gt;平均增量&lt;strong&gt;平稳&lt;/strong&gt;&lt;/td&gt;
					&lt;td&gt;18 原则&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;平滑演化&lt;/td&gt;
					&lt;td&gt;演化&lt;strong&gt;速率趋于稳定&lt;/strong&gt;&lt;/td&gt;
					&lt;td&gt;18 原则&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;目标一致&lt;/td&gt;
					&lt;td&gt;阶段目标和最终目标一致&lt;/td&gt;
					&lt;td&gt;18 原则&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;系统总体结构优化&lt;/td&gt;
					&lt;td&gt;整体结构布局&lt;strong&gt;合理&lt;/strong&gt;&lt;/td&gt;
					&lt;td&gt;18 原则&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;DSA 描述语言&lt;/td&gt;
					&lt;td&gt;π-ADL（行为）/Pilar（反射）/LIME（协调）&lt;/td&gt;
					&lt;td&gt;3 种视角&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;动态重配置 4 模式&lt;/td&gt;
					&lt;td&gt;主从/中央控制/C-S/分布式控制&lt;/td&gt;
					&lt;td&gt;4 种模式&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;大型网站 10 阶段&lt;/td&gt;
					&lt;td&gt;单体→垂直→缓存→集群→读写分离→CDN→分布式→NoSQL→业务拆分→分布式服务&lt;/td&gt;
					&lt;td&gt;演化路径&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;架构维护 3 内容&lt;/td&gt;
					&lt;td&gt;知识/修改/版本管理&lt;/td&gt;
					&lt;td&gt;必考&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;架构可维护性 6 指标&lt;/td&gt;
					&lt;td&gt;CNN/FFC/CBO/RFC/TCC/LCC&lt;/td&gt;
					&lt;td&gt;缩写含义&lt;/td&gt;
			&lt;/tr&gt;
	&lt;/tbody&gt;
&lt;/table&gt;
&lt;h2 id="3-典型例题"&gt;3. 典型例题
&lt;/h2&gt;&lt;h3 id="例题-1演化原则辨析"&gt;例题 1（演化原则辨析）
&lt;/h3&gt;&lt;p&gt;&lt;strong&gt;题目&lt;/strong&gt;：在软件系统的生命周期里，软件的演化速率趋于稳定，如相邻版本的更新率相对稳定。此描述是软件架构演化的（ ）原则。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;A. 主体维持&lt;/li&gt;
&lt;li&gt;B. 系统总体结构优化&lt;/li&gt;
&lt;li&gt;C. 平滑演化&lt;/li&gt;
&lt;li&gt;D. 目标一致&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;答案&lt;/strong&gt;：C&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;解析&lt;/strong&gt;：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;主体维持：平均增量增长平稳&lt;/li&gt;
&lt;li&gt;系统总体结构优化：整体结构布局合理&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;平滑演化：演化速率趋于稳定&lt;/strong&gt; ✓&lt;/li&gt;
&lt;li&gt;目标一致：阶段目标和最终目标一致&lt;/li&gt;
&lt;/ul&gt;
&lt;hr&gt;
&lt;h3 id="例题-2架构维护内容"&gt;例题 2（架构维护内容）
&lt;/h3&gt;&lt;p&gt;&lt;strong&gt;题目&lt;/strong&gt;：软件架构维护过程不包括（ ）。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;A. 架构知识管理&lt;/li&gt;
&lt;li&gt;B. 架构修改管理&lt;/li&gt;
&lt;li&gt;C. 架构版本管理&lt;/li&gt;
&lt;li&gt;D. 架构构件管理&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;答案&lt;/strong&gt;：D&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;解析&lt;/strong&gt;：软件架构维护过程包括&lt;strong&gt;架构知识管理、架构修改管理、架构版本管理&lt;/strong&gt;，&lt;strong&gt;不包括&lt;/strong&gt;架构构件管理。&lt;/p&gt;
&lt;hr&gt;
&lt;h3 id="例题-3演化时期辨析"&gt;例题 3（演化时期辨析）
&lt;/h3&gt;&lt;p&gt;&lt;strong&gt;题目&lt;/strong&gt;：下列软件架构演化时期，（ ）是在系统设计时规定了演化的具体条件，将系统置于&amp;quot;安全&amp;quot;模式下，演化只发生在某些特定约束满足时，可以进行一些规定好的演化操作。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;A. 设计时演化&lt;/li&gt;
&lt;li&gt;B. 运行前演化&lt;/li&gt;
&lt;li&gt;C. 有限制运行时演化&lt;/li&gt;
&lt;li&gt;D. 运行时演化&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;答案&lt;/strong&gt;：C&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;解析&lt;/strong&gt;：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;设计时演化：编译之前&lt;/li&gt;
&lt;li&gt;运行前演化：编译之后、执行之前&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;有限制运行时演化：只发生在某些特定约束满足时&lt;/strong&gt; ✓&lt;/li&gt;
&lt;li&gt;运行时演化：运行时不能满足要求时&lt;/li&gt;
&lt;/ul&gt;
&lt;hr&gt;
&lt;h3 id="例题-4动态演化内容"&gt;例题 4（动态演化内容）
&lt;/h3&gt;&lt;p&gt;&lt;strong&gt;题目&lt;/strong&gt;：根据所修改的内容不同，软件的动态演化不包括（ ）。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;A. 属性改名&lt;/li&gt;
&lt;li&gt;B. 行为变化&lt;/li&gt;
&lt;li&gt;C. 拓扑结构改变&lt;/li&gt;
&lt;li&gt;D. 格式变化&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;答案&lt;/strong&gt;：D&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;解析&lt;/strong&gt;：动态演化的内容包括：&lt;strong&gt;属性改名、行为变化、拓扑结构改变、风格变化&lt;/strong&gt;。&lt;strong&gt;格式变化&lt;/strong&gt;不属于动态演化内容。&lt;/p&gt;
&lt;h2 id="4-高频考点"&gt;4. 高频考点
&lt;/h2&gt;&lt;h3 id="41-必须记住的核心要点"&gt;4.1 必须记住的核心要点
&lt;/h3&gt;&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;架构 3 要素&lt;/strong&gt;：组件、连接件、约束（演化关注这 3 要素的增删改）&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;对象演化 2 种&lt;/strong&gt;：AO、DO&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;消息演化 5 种&lt;/strong&gt;：AM、DM、SMO、OM、CMM&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;复合片段演化 4 种&lt;/strong&gt;：AF、DF、FTC、FCC&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;约束演化 2 种&lt;/strong&gt;：AC、DC&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;演化 4 时期&lt;/strong&gt;（从早到晚）：设计时→运行前→有限制运行时→运行时&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;动态演化 4 内容&lt;/strong&gt;：属性改名、行为变化、拓扑结构改变、风格变化（&lt;strong&gt;不含格式变化&lt;/strong&gt;）&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;DSA 描述语言 3 视角&lt;/strong&gt;：行为（π-ADL）/反射（Pilar）/协调（LIME）&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;动态重配置 4 模式&lt;/strong&gt;：主从/中央控制/C-S/分布式控制&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;PKUAS 4 类型&lt;/strong&gt;：容器系统、公共服务、工具、微内核&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;架构 4 大演化原则对比&lt;/strong&gt;：
&lt;ul&gt;
&lt;li&gt;主体维持：平均增量&lt;strong&gt;平稳&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;平滑演化：演化&lt;strong&gt;速率稳定&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;目标一致：阶段目标和最终目标&lt;strong&gt;一致&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;系统总体结构优化：整体结构&lt;strong&gt;合理&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;大型网站 10 阶段演化路径&lt;/strong&gt;（必考）&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;架构维护 3 内容&lt;/strong&gt;：知识/修改/版本管理（&lt;strong&gt;不含构件管理&lt;/strong&gt;）&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;可维护性 6 指标&lt;/strong&gt;：CNN/FFC/CBO/RFC/TCC/LCC&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;架构知识 = 架构设计 + 架构设计决策&lt;/strong&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id="42-易混淆对比"&gt;4.2 易混淆对比
&lt;/h3&gt;&lt;table&gt;
	&lt;thead&gt;
			&lt;tr&gt;
					&lt;th&gt;对比项&lt;/th&gt;
					&lt;th&gt;区别&lt;/th&gt;
			&lt;/tr&gt;
	&lt;/thead&gt;
	&lt;tbody&gt;
			&lt;tr&gt;
					&lt;td&gt;AO vs AM&lt;/td&gt;
					&lt;td&gt;AO 是&lt;strong&gt;对象&lt;/strong&gt;的添加，AM 是&lt;strong&gt;消息&lt;/strong&gt;的添加&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;AC vs AF&lt;/td&gt;
					&lt;td&gt;AC 是&lt;strong&gt;约束&lt;/strong&gt;的添加，AF 是&lt;strong&gt;复合片段&lt;/strong&gt;的添加&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;主体维持 vs 平滑演化&lt;/td&gt;
					&lt;td&gt;主体维持强调&lt;strong&gt;增量稳定&lt;/strong&gt;，平滑演化强调&lt;strong&gt;速率稳定&lt;/strong&gt;&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;目标一致 vs 系统总体结构优化&lt;/td&gt;
					&lt;td&gt;目标一致是&lt;strong&gt;目标&lt;/strong&gt;，结构优化是&lt;strong&gt;布局&lt;/strong&gt;&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;静态演化 vs 动态演化&lt;/td&gt;
					&lt;td&gt;静态是&lt;strong&gt;预先规划&lt;/strong&gt;的演化，动态是&lt;strong&gt;运行时刻&lt;/strong&gt;的演化&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;设计时 vs 运行前&lt;/td&gt;
					&lt;td&gt;设计时是&lt;strong&gt;编译之前&lt;/strong&gt;，运行前是&lt;strong&gt;编译之后&lt;/strong&gt;&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;双机热备 vs 服务集群&lt;/td&gt;
					&lt;td&gt;热备是&lt;strong&gt;2 台服务器&lt;/strong&gt;，集群是&lt;strong&gt;多节点&lt;/strong&gt;通过 LAN 互连&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;架构知识管理 vs 修改管理&lt;/td&gt;
					&lt;td&gt;知识管理是&lt;strong&gt;捕捉记录&lt;/strong&gt;，修改管理是&lt;strong&gt;隔离变更&lt;/strong&gt;&lt;/td&gt;
			&lt;/tr&gt;
	&lt;/tbody&gt;
&lt;/table&gt;</description></item></channel></rss>