欢迎来到天天文库
浏览记录
ID:19791249
大小:1.53 MB
页数:13页
时间:2018-10-06
《《一线架构师实践指南》》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、第一章绪论1.架构设计能力,因掌握起来困难而显得珍贵。2.六个经典困惑: 将系统划分模块,如何更合理? 大系统架构设计,如何起步? 总觉需求很糟糕,影响了架构设计! 非功能需求重要,但如何设计? 架构新手:缺乏指导 ,架构设计不知所措! 架构老手:缺乏总结 ,仍“怕”下个项目!3.本书介绍的方法体系为ADMEMS,是“ArchiteturalDesignMethodhasbeenExtendedtoMethodSystem(架构设计方法已经扩展到方法体系)”由多个各具特点的方法组成的方法体系。4.架构是需求驱动的,不是模型驱动
2、的。5.质疑意识 ,是架构师最宝贵的意识之一。 第二章Pre-architecture的故事1.错的一半是“金”,败的一半是"贝",错中求金,败中求贝。2.关注约束,要趁早 ,必须把虚存管理裁剪掉,直接访问物理内存。3.软件架构师应在需求分类,需求折中和需求变更的研究方向方面的专家。 第三章Pre-architecture的总论1.面对需求的四步法: 需求结构化 分析约束影响 确定关键质量 确定关键功能2.大局观,关键需求决定架构,其余需求验证架构3.架构失败的主要原因 遗漏至关重要的架构影响因素 50% 不能驯服频繁
3、变化的需求 40% 不能覆盖架构各个方面 30% 不能验证架构并作出调整 40%4.让架构师参与需求分析工作 第五章确定关键质量和关键功能1.人之所以痛苦,数追求错误的东西2.举例:亚马逊运行期质量: 可伸缩性:几乎没有上限 性能:强调速度,又强调吞吐量 易用性:最便捷的选择方式 安全性:数据安全 持续可用性:不停机 互操作性:公司中各系统的互操作3.举例:亚马逊开发期质量:可扩展性 第六章概念架构的故事1.胜兵先胜而求战,败兵先战而求胜——孙子兵法2.人
4、们常常使用战术,而忽略战略,战略要求从大局上把握整个架构与设计,架构错误的代价非常高——stephaneFaroult3.和客户,不是讲纯技术,而是抓住客户关心的价值和担心的问题,并在一个小时之内清晰地勾画出产品的相应策略4.当要设计的软件系统非常复杂时,直接设计实际架构往往有困难,要先进行概念架构的设计,把最关键的设计要素和交互机制确定下来。 第七章ConceptualArchitecture总论1.概念架构设计分为3个步骤 初步设计,基于关键功能 高层分割,对系统这个黑盒子进行高层切分子系统 考虑非功能需求 第八章初步设计1.初步设计
5、只有在设计复杂性时才需要。2.初步设计不应该关注细节 第九章高层分割1.复杂性是层次化的——《人月神话》2.高层分割很重要,不是概念架构的全部,除了切分决策之外,概念架构还包括技术选择,权衡策略等种类的决策。 第十章考虑非功能需求1.非功能需求一般很笼统,但考虑非功能目标要趁早。 第十一章细化架构的故事第十二章RefinedArchitecture总论第十三章逻辑架构1.架构最重要的一点,就是它能吧难以处理的大问题分解成便于管理的小问题。2.一流意味着寻找恰当的抽象 ,意味着通过新的途径合理利用有限的资源 。3.就划分子系统策略,可归纳为3种:(看不
6、懂) 分层的细化 分区的引入 机制的提取4.划分子系统的4个重要原则: 职责不同的单元划归不同子系统 通用性不同的单元划归不同子系统 需要不同开发技能的单元划归不同子系统 坚固工作量的相对均衡,进一步切分太大的子系统5.协作决定接口,"分"是手段,"合"是目的,不能合在一起支持更高层次功能的模块,有何用?6.设计模式是基础,要站在各个角度看软件架构。 第十四章物理架构、运行架构、开发架构1.我认识一些架构师,他们的生活是失控的,因为架构天性范围宽广,涉及的人和工作量都非常多,一些架构师整天的和“项目干系人”开会,然后周末做
7、实际的架构工作。2.有能力的架构师,再加上聪明的管理策略就更好,让程序员参与到架构实践的工作中去。3.重用测试是关键 第十五章数据架构的难点:数据分布1.铃声下载门户将热门铃声复制到所有服务器上,将冷门的铃声分开存放。 专题:非功能目标的方法论1.架构师不能做四拍型决策者 决策时拍脑袋——就这么定了 指挥时拍胸脯——保证没问题 失误时拍大腿——我怎么没想到 追查时拍屁股——老子不干了2.将过于笼统的目标实际场景化 1、进行模块分解测试2、进行测试时,不要先进行大模块的测试,这样会打击自己的信心。3、进行小模块的测试,当你的小模块都没有
8、问题,你的大模块离启动也就不远啦。当个设备过于的昂贵或者复杂时,我们会使用一个简单的,容易实现的模拟对象进行
此文档下载收益归作者所有