Java架构II_C1 软件架构设计导论_2 软件架构的意义

 田超凡

原创博文,严禁复制转载,仿冒必究,部分素材转载自慕课网

 

2.1 架构是项目干系人进行交流的手段

Java架构II_C1 软件架构设计导论_2 软件架构的意义

Java架构II_C1 软件架构设计导论_2 软件架构的意义

Java架构II_C1 软件架构设计导论_2 软件架构的意义

 

沟通的艺术:

Java架构II_C1 软件架构设计导论_2 软件架构的意义

 

交流的问题出在哪里/p>

(1) 语境不同

Java架构II_C1 软件架构设计导论_2 软件架构的意义

 

(2) 立场不同

Java架构II_C1 软件架构设计导论_2 软件架构的意义

(3) 沟通渠道失真

Java架构II_C1 软件架构设计导论_2 软件架构的意义

 

2.2 架构有助于循序渐进的原型设计

业务落地的保障:

业务: 跟随业务发展、扫清技术债务

架构: 架构向前演进、向后兼容

技术: 技术成熟度、复杂度、买还是建

 

架构演进的模式:

拆迁者模式、修缮者模式、绞杀者模式

 

Java架构II_C1 软件架构设计导论_2 软件架构的意义

Java架构II_C1 软件架构设计导论_2 软件架构的意义

 

Java架构II_C1 软件架构设计导论_2 软件架构的意义

Java架构II_C1 软件架构设计导论_2 软件架构的意义

 

Java架构II_C1 软件架构设计导论_2 软件架构的意义

Java架构II_C1 软件架构设计导论_2 软件架构的意义

Java架构II_C1 软件架构设计导论_2 软件架构的意义

Java架构II_C1 软件架构设计导论_2 软件架构的意义

Java架构II_C1 软件架构设计导论_2 软件架构的意义

Java架构II_C1 软件架构设计导论_2 软件架构的意义

Java架构II_C1 软件架构设计导论_2 软件架构的意义

Java架构II_C1 软件架构设计导论_2 软件架构的意义

 

适应度函数:

原子 vs 整体适应度函数

触发式 vs 持续式适应度函数

静态 vs 动态适应度函数

自动 vs 手动适应度函数

临时 vs 预设适应度函数

 

2.3 架构是设计决策的体现

SWOT分析法四要素:优点、缺点、机会、威胁

(1) Mesos SWOT分析法

Java架构II_C1 软件架构设计导论_2 软件架构的意义

 

(2) Kubernetes SWOT分析法

Java架构II_C1 软件架构设计导论_2 软件架构的意义

 

(3) RASCI决策矩阵

Java架构II_C1 软件架构设计导论_2 软件架构的意义

 

2.4 架构明确系统设计约束条件

(1) ADMEMS矩阵

Java架构II_C1 软件架构设计导论_2 软件架构的意义

 

(2) RAID矩阵

Java架构II_C1 软件架构设计导论_2 软件架构的意义

 

架构制约系统质量属性:

Java架构II_C1 软件架构设计导论_2 软件架构的意义

 

架构规定了开发和维护组织的结构:

(1) 康威定律

Java架构II_C1 软件架构设计导论_2 软件架构的意义

 

 

(2) 贝佐斯“两个披萨”原则

Java架构II_C1 软件架构设计导论_2 软件架构的意义

 

2.5 架构与组织结构-DevOps凤凰传奇

Java架构II_C1 软件架构设计导论_2 软件架构的意义

架构师的思考:

如何解决环境问题: 开发、QA和生产的不匹配

如何解决耦合问题: 凤凰项目和传统系统耦合

如何决绝资源共用问题: 关键人员疲于在多项目中切换

如何满足峰值需求: 突发性业务需求、性能测试需求

如何解决安全问题: 最小代价完成安全合规审计

 

2.6 架构是可传递可复用的模型-OpenGroup架构认证

架构复用:

方法论复用( ABSD、DSSA、AT、EA、TOGAF )

模型复用(UML、SOA、CBM )

工件复用(素材、图片、表格、图标、文件)

剪裁(三七原则,保留30%还是70% )

架构资产更新(内部资产库、外部架构社区)

 

架构师三大认证类型:

TOGAF企业架构(广度、知识点、案例分析、笔试)

Master Architect主架构师认证(应用架构、数据架构、

集成架构、技术架构)

软考高级-系统架构设计师(综合知识、案例分析、论文写作)

 

2.7 知识小结&面试题

题目:作为架构师,遇到部门 ]冲突如何解决/p>

题眼:决策派,语境、立场、沟通渠道处理,架构决策

加分项:方法论完整(通用语言、RASCI决策、 SWOT分析)

 

题目:作为架构师,平时的设计重点关注那些因素/p>

题眼:质量(扩展性、性能、可用性、安全性、耦合度)

加分项:多角度分析、实际案例侧重点清晰

 

题目:作为架构师,如何处理新架构和老架构之间的冲突

题眼:解决技术债,架构演进策略

加分项:多模式使用(拆迁、修缮、绞杀)、冲突预防

 

附预习笔记:

Java架构II_C1 软件架构设计导论_2 软件架构的意义

Java架构II_C1 软件架构设计导论_2 软件架构的意义

Java架构II_C1 软件架构设计导论_2 软件架构的意义

Java架构II_C1 软件架构设计导论_2 软件架构的意义

Java架构II_C1 软件架构设计导论_2 软件架构的意义

Java架构II_C1 软件架构设计导论_2 软件架构的意义

Java架构II_C1 软件架构设计导论_2 软件架构的意义

 

Java架构II_C1 软件架构设计导论_2 软件架构的意义

Java架构II_C1 软件架构设计导论_2 软件架构的意义

 

文章知识点与官方知识档案匹配,可进一步学习相关知识Java技能树首页概览92329 人正在系统学习中

来源:田超凡

声明:本站部分文章及图片转载于互联网,内容版权归原作者所有,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2021年5月12日
下一篇 2021年5月12日

相关推荐