0


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

** 田超凡**

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

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

http://img.mukewang.com/climg/60c8200a09716d2512890791.jpg

http://img.mukewang.com/climg/60c8201309ab652d15200745.jpg

http://img.mukewang.com/climg/60c8201f09b6eb1914690818.jpg

沟通的艺术:

http://img.mukewang.com/climg/60c820ab09a7bf2215120480.jpg

交流的问题出在哪里?

(1) 语境不同

http://img.mukewang.com/climg/60c820db09a1807a14080790.jpg

(2) 立场不同

http://img.mukewang.com/climg/60c820f10970a9d510140732.jpg

(3) 沟通渠道失真

http://img.mukewang.com/climg/60c820fb0962828b12110822.jpg

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

业务落地的保障:

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

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

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

架构演进的模式:

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

http://img.mukewang.com/climg/60c823930920296e10220778.jpg

http://img.mukewang.com/climg/60c8239a0986780e10800753.jpg

http://img.mukewang.com/climg/60c823a809f5f87d10780796.jpg

http://img.mukewang.com/climg/60c823af0952f0ce11420775.jpg

http://img.mukewang.com/climg/60c823b6098fda8411450780.jpg

http://img.mukewang.com/climg/60c823c009e757e510470781.jpg

http://img.mukewang.com/climg/60c823c609cdf34610830784.jpg

http://img.mukewang.com/climg/60c823d609bdc4de09250773.jpg

http://img.mukewang.com/climg/60c823dd092e654509700805.jpg

http://img.mukewang.com/climg/60c823e50994c90c09500761.jpg

http://img.mukewang.com/climg/60c82400093bf4ef09450761.jpg

http://img.mukewang.com/climg/60c8240a09c63c4d09660724.jpg

适应度函数:

原子 vs 整体适应度函数

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

静态 vs 动态适应度函数

自动 vs 手动适应度函数

临时 vs 预设适应度函数

2.3 架构是设计决策的体现

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

(1) Mesos SWOT分析法

http://img.mukewang.com/climg/60c8213b09a5e28508450715.jpg

(2) Kubernetes SWOT分析法

http://img.mukewang.com/climg/60c8214d09f626c608720690.jpg

(3) RASCI决策矩阵

http://img.mukewang.com/climg/60c8217d09b923d010170737.jpg

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

(1) ADMEMS矩阵

http://img.mukewang.com/climg/60c821c909eb229213210789.jpg

(2) RAID矩阵

http://img.mukewang.com/climg/60c821d5093cc7b213300707.jpg

架构制约系统质量属性:

http://img.mukewang.com/climg/60c82205096d5f8313970776.jpg

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

(1) 康威定律

http://img.mukewang.com/climg/60c822ec09dfa9f414610780.jpg

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

http://img.mukewang.com/climg/60c8230309127ba200000000.jpg

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

http://img.mukewang.com/climg/60c8232109c1029511490730.jpg

架构师的思考:

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

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

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

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

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

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

架构复用:

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

模型复用(UML、SOA、CBM )

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

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

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

架构师三大认证类型:

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

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

集成架构、技术架构)

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

2.7 知识小结&面试题

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

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

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

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

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

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

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

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

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

附预习笔记:


本文转载自: https://blog.csdn.net/qq_30056341/article/details/117914806
版权归原作者 田超凡 所有, 如有侵权,请联系我们删除。

“Java架构II_C1 软件架构设计导论_2 软件架构的意义”的评论:

还没有评论