恰如其分的软件架构
2021-09-11 10:29:39 0 举报
AI智能生成
恰如其分的软件架构
作者其他创作
大纲/内容
分治、知识与抽象
软件架构的三个案例
反思
视角转换
架构师构建架构
风险驱动的软件架构
敏捷开发者的架构
1. 概述
何为软件架构?
软件架构为何重要?
架构何时重要?
推定架构
如何运用软件架构?
架构无关的设计
专注架构的设计
提升架构的设计
大型组织中的架构
2. 软件架构
风险驱动模型是什么?
你现在采用风险驱动了吗?
风险
技术
选择技术的指导原则
何时停止
计划式设计与演进式设计
软件开发工程
理解过程变化
风险驱动模型与软件开发过程
应用于敏捷过程
风险与架构重构
风险驱动模型的替代方案
3. 风险驱动模型
团队沟通
COTS 组件的集成
元数据一致性
4. 实例:家庭媒体播放器
专注于风险
理解你的架构
传播架构技能
作出合理的架构决策
避免预先大量设计
避免自动向下设计
余下的挑战
特性的风险:一个故事
5. 建模建议
规模与复杂度需要抽象
抽象提供洞察力和解决手段
分析系统质量
模型忽略细节
模型能够增强推理
提问在前,建模在后
6. 工程师使用模型
规范化模型结构
领域模型、设计模型和代码模型
指定与细化关系
主模型的视图
组织模型的其他方式
业务模型
UML 的用法
7. 软件架构的概念模型
领域与架构的关系
信息模型
导航和不变量
快照
功能场景
8. 领域模型
设计模型
边界模型
内部模型
质量属性
Yinzer 系统的设计之旅
视图类型
动态架构模型
架构描述语言
9. 设计模型
模型-代码差异
一致性管理
架构明显的编码风格
在代码中表达设计意图
模型嵌入代码原理
表达什么
在代码中表达设计意图的模式
电子邮件处理系统预演
10. 代码模型
多层级故事
层级和分割
分解策略
有效封装
创建封装接口
11. 封装和分割
和部署相关的元素
组件
组件装配
连接器
设计决策
不变量(约束)
模块
端口
质量属性场景
职责
权衡
12. 模型元素
投影(视图)关系
分割关系
组合关系
分类关系
泛化关系
指定关系
细化关系
绑定关系
依赖关系
使用关系
13. 模型关系
优势
柏拉图式风格对体验式风格
约束和以架构为中心的设计
模式对风格
风格目录
分层风格
大泥球风格
管道-过滤器风格
批量顺序处理风格
以模型为中心的风格
分发-订阅风格
客户端-服务器风格和分层
对等风格
map-reduce 风格
镜像、支架和农场风格
14. 架构风格
理想的模型特性
和视图一起工作
改善视图质量
提高图的质量
测试和证明
分析架构模型
架构不匹配
选择你的抽象级别
规划用户界面
指定性模型对描述性模型
对现有系统进行建模
15. 使用架构模型
挑战
聚焦质量属性
解决问题,而不是仅仅对它们建模
使用导轨一样的约束
使用标准架构抽象
16. 结论
恰如其分的软件架构
0 条评论
下一页