13.1软件架构概述-构件技术

张开发
2026/4/14 23:51:06 15 分钟阅读

分享文章

13.1软件架构概述-构件技术
一、系统架构设计 00:001. 构件、中间件 00:141章节重要性与考情 00:15分值占比每年考察20分左右选择题占考试总分近1/3考察形式选择题必考含教材外内容案例题每年1-2道固定为架构评估架构风格组合论文题必考趋势变化构件、中间件等老版教材内容已删除真题中可能逐渐减少考察2教材内容与结构 01:32对应章节第二版教材第7章架构基础、风格、DSSA、ABSD和第8章质量属性、架构评估新增内容第十章系统架构演化完全新增考察较少下篇特点新增实战内容可能涉及案例题考察方式尚不明确3补充内容构件与中间件 02:05补充原因老版教材有独立章节构件开发、中间件技术新版已删除但真题仍有涉及核心概念构件由多个类/对象组成的独立功能单元连接件构件间的交互接口和消息传递机制学习建议遇到相关真题不必过度纠结重点掌握架构核心概念2. 软件架构概述 05:081软件架构的定义与位置 05:11生命周期位置需求分析与设计阶段之间的过渡过程核心作用弥合业务需求与技术实现的鸿沟如银行系统2000页需求文档的模块化分解典型场景大型系统开发必备角色中小型项目可省略2软件架构的作用 09:02技术价值防止系统坍塌性错误支持设计变更的早期决策协作价值促进技术人员与非技术人员的沟通作为项目干系人的交流手段管理价值决定开发维护的组织结构制约系统质量属性3软件架构的组成 11:50四大要素构件描述功能模块的抽象定义连接件构件间的交互机制如CS架构中的客户端-服务器协议集成模式构件组合的指导规则模式约束架构设计的限制条件抽象维度结构模块关系、行为功能、属性非功能特性的高级抽象4软件架构的目的 14:18根本目标解决软件复用、质量维护问题复用层级架构级复用高于设计模式级别的复用质量预测通过架构设计预判系统质量属性如性能、安全性等5软件架构设计活动 14:51三阶段迭代提出架构模型如选择CS/BS架构产生架构设计模块划分与接口定义设计评审验证架构合理性6软件架构的视图与描述 15:26描述重点组件结构、属性、交互作用多视图方法通过不同视角如逻辑视图、物理视图全面描述系统7软件架构的交流与约束 16:08约束作用明确系统实现限制条件影响开发团队组织结构案例说明银行系统中架构设计决定开发团队分为前端组、核心业务组等8软件架构的复用与质量 16:32复用形式可传递、可复用的模型如微服务架构方案的跨项目复用质量关联架构设计直接影响性能、可维护性等质量属性后续架构评估章节详解3. 软件架构设计与生命周期 17:02现代定位第二版教材将软件架构设计扩展为贯穿软件开发全生命周期的支撑技术而不仅限于填补需求与设计间的鸿沟核心组成始终围绕构件Component和连接件Connector这两个基本概念展开1需求分析阶段 18:14空间转换从问题空间需求分析向解空间架构设计的转换关键问题模型构建如何根据需求模型创建架构模型追踪机制确保需求与架构元素间的可追踪性如需求变更时能定位受影响架构部件典型场景当需求变更时通过追踪机制快速定位需要调整的架构模块2设计阶段 19:38研究重点最早且最深入的阶段常被视为系统设计的先导环节三大研究方向模型描述包含三个递进层次基础层构件与连接件定义语言层ADL体系结构描述语言视图层多视角图形化表达设计方法架构模型的创建与分析方法论经验复用成功架构设计模式的总结与应用考试注意ADL在新版教材中仅作概念性了解要求3实现阶段 21:13核心挑战将高层次架构设计转化为具体实现实施路径过程支持建立适配架构开发的特殊管理机制如矩阵型项目组织过渡技术提前引入编程语言元素模型映射技术中间件平台复用验证手段架构级测试技术不同于单元/集成测试抽象程度架构设计比传统概要设计模块结构图更宏观粒度更粗4构件组装阶段 22:44架构作用作为系统蓝图指导构件组装提升开发效率关键技术连接实现支持可复用构件的标准化互联失配处理解决三类兼容性问题构件接口不匹配如协议版本差异连接件规范冲突如数据格式不一致全局假设矛盾如线程安全假设冲突典型案例使用适配器模式解决接口不匹配问题5部署阶段 25:01架构价值部署建模提供软硬件配置的高层抽象视图方案优选通过架构评估验证部署方案的质量属性如可用性、性能实践应用在云原生架构中通过部署视图确定微服务的最佳节点分配方案6后开发阶段 25:39研究范畴涵盖维护、演化和复用三个维度前沿方向动态架构运行时变化类型内部驱动如负载均衡触发的架构调整外部请求如CS架构向BS模式的动态扩展支持体系设计期变更预案运行时基础设施架构重建适用场景历史系统缺乏架构设计的补救措施四类方法纯手工重建工具辅助重建查询语言自动聚合数据挖掘技术演化案例电商系统从单体架构逐步演化为微服务架构的过程4. 构件 28:391构件的特性 33:35功能单元: 构件是独立可交付的功能单元外界通过接口访问其提供的服务类似于封装了多个功能的函数。组成结构: 由一组需要同时部署的原子构件组成原子构件包含模块和资源是部署、版本控制和替换的最小单位。部署特点: 原子构件通常成组部署构成构件家族但技术上支持单独部署实际很少单独使用。模块定义: 模块是不带单独资源的原子构件由一组类和可能的非面向对象结构体如过程/函数组成。三大特性:独立部署单元: 可被单独调用和修改第三方组装单元: 支持即插即用的复用方式无外部状态: 构件本身不携带可见状态与对象不同类元素关系:一个构件可包含多个类元素一个类元素只能属于一个构件避免耦合导致部署冲突2对象的特性 35:59实例单元: 具有唯一标识如对象名是模块的具体实例状态可见: 具有外部可见状态如创建/运行/销毁状态行为封装: 封装自身状态和行为与构件对比:构件无状态对象有状态构件粒度大于对象构件包含多个类/对象类部署无意义拆分类应整体属于构件3构件接口 36:26接口标准化:关注消息格式/模式/协议的标准化非参数化操作集合强调网络互连时的标准通信规范面向构件编程(COP):需要四大支持多态性可替代性模块封装性高层次信息隐藏后期绑定装载部署独立性类型和模块安全性4构件技术 38:13EJB规范:由Sun公司制定三种类型会话Bean管理会话含状态/无状态如邮件发送场景实体Bean持久化存储的实体类消息驱动Bean异步分布式通信不等待响应COM系列:微软技术体系COM/DCOM/COMDCOM扩展支持位置独立性和语言无关性CORBA标准:三层架构ORB层分布式对象通信的软总线公共服务层提供并发/事务/安全等服务公共设施层业务对象协作框架概念层级:对象 → 模块 → 构件 → 服务粒度递增服务可能包含多个构件SOA架构二、知识小结知识点核心内容考试重点/易混淆点难度系数系统架构设计重要性系统架构设计师考试最核心章节选择题占比20-25分1/3案例题必考1-2道且固定为第一题架构评估架构风格组合论文必考选择题分值区间20-25分、案例题固定题型质量属性架构风格★★★★教材章节对应关系新版教材对应第7-8章 - 第7章软件架构概述/风格/复用/DSSA/ABSD; - 第8章质量属性/架构评估; 补充内容构建技术/中间件原老版教材独立章节版本差异构建/中间件内容在新版已删除但真题仍可能涉及★★★软件架构生命周期作用全生命周期参与 1. 需求阶段问题空间→解空间转换; 2. 设计阶段架构模型描述构建连接件/ADL语言/图形化; 3. 实现阶段架构测试技术; 4. 部署阶段质量属性分析动态架构运行时结构变化支持与架构恢复无架构系统重建★★★★构建技术- 构建定义独立可交付功能单元含多个原子构件; - 三大标准 EJB会话/实体/消息驱动病; COM微软标准; CORBA三层结构ORB/公共服务/公共设施EJB类型区别 - 会话病有/无状态; - 实体病持久存储; - 消息驱动病异步通信★★★★架构评估核心质量属性效用树分析性能/可维护性/安全性等案例题高频考点质量属性冲突如高性能vs高安全性★★★★★架构风格与复用架构级别复用的实现方式 - DSSA特定领域架构; - ABSD基于架构的软件开发架构风格固定组合案例题高频模式★★★★

更多文章