`
dingjob
  • 浏览: 185426 次
  • 性别: Icon_minigender_1
  • 来自: 武汉
社区版块
存档分类
最新评论

《架构师应该知道的97件事》阅读体会之一

阅读更多

虽然离架构师还很远,但是团队购买了这本书,这里也大概领会了下,这些言简意赅的原则不仅对于架构师,对于开发人员、项目经理、决策者都是有用的

 

1. 客户需求重于个人简历

不要为了追求技术而技术,为了时髦而时髦,这样做无异于舍本求末、缘木求鱼。忽略了客户最根本的需求,往往让自己境地也很难堪,当我们有能力满足客户的基本需求时,再来谈时髦的技术,因为我们做项目无异于向我们的储钱罐里存钱,只有踏踏实实的完成了,才能作为光鲜的一笔记入简历,积累好我们的信誉。

 

2.简化根本复杂性,消除偶发复杂性。

 

3.关于沟通:

不要把对话当成对抗

不要带着情绪沟通

尝试通过沟通设定共同目标

起立发言:两人以上沟通要起立,不容易被打断。

和上层沟通时要权衡利弊,在最满足基本需求的情况下节省开支,注重谈判技巧。

多方沟通的平衡能力。当被要求增加需求和加快速度时,要坚决拒绝,因为这会造成bug数量增加,增加测试中可能出现的问题,最终引发产品质量问题,解决质量问题的代价会更高。

 

 

4.学会分析客户需求背后的意义

 

有时候需求人员拿出来的需求非常的抽象,感觉没有落到实处,架构师要学会挖掘这背后的意义,定位真正的意义,把最有价值的需求放在第一位。

 

5. 不存在放之四海而皆准的方案,不要在一棵树上吊死

架构师需要情境意识(常识),给定情境下对合理性的把握,胡猜乱想和矫枉过正都是要不得的。

 

世界是复杂的,业务也是复杂的,想找一个一劳永逸的方案,无异于水中捞月,参考ETL实现对数据进行抽取、转换、装载,导入数据是自由的,展现数据也是多样的,能够满足不同的需求,在子系统的设计上,要充分利用非功能性参数的差异性,实现对不同表现形式的管理。

 

6. 先确保方案简单可用,在考虑通用性和复用性

这条我在刚刚做过的设计里深有体会,刚开始就将各个入口统一起来,既满足触发调用,又满足任务调用,结果后来不得不进行特殊的限定,在任务处理时不做哪些操作,在触发时不做哪些操作。

 

在存在多个方案可供选择时,一定要坚持“先简单后通用”的规则,修改简单方案往往比修改通用方案容易很多。

过早脱离具体情况可能导致陷入无限可能的迷宫里

 

7. 对于技术难点等,架构师要亲力亲为,保持和团队紧密合作,不是在象牙塔里发号施令,同时也应该和同行保持紧密的联系。

 

8. 取舍的艺术

没有十全十美的设计,既有高性能,又有高可用性,既安全,又高度抽象(一半来说隔离性好的安全性高,而这又导致你抽象不够,复用性不好)。瑞典国王建造的Vasa号战舰的故事,可以很好的说明这一点,一个没有相关经验的架构师设计出来的意图两用-既能攻击又能运人的东西,可能的结果就是鸣了礼炮以后,直接就沉入水底了。

在设计时,可以通过架构权衡分析方法和成本收益分析方法作出判断。

 

 

 

精益软件开发?

 

 

分享到:
评论

相关推荐

    架构师之地图

    在《架构师之地图》中,博主可能会分享一些关于如何从程序员晋升为架构师的心得体会。这可能包括但不限于以下几个方面: 1. 技术深度:掌握核心技术栈,如分布式系统、微服务架构、数据库设计等,深入理解这些领域...

    系统架构师考试 论文真题 范文 论软件架构风格的选择

    在现代信息技术领域,软件架构的选择是系统开发过程中的核心问题之一。架构风格作为软件开发中一种重要的概念,不仅影响着系统的设计与实现,也是决定...而这一点,正是系统架构师考试所要考察和培养的重要能力之一。

    基于Java架构师的Java编程学习心得与设计源码分享

    在当今的软件开发领域中,Java语言作为一门主流的编程语言,一直占据着重要的地位。...通过这些设计源码的分享,学习者可以更好地理解Java编程的深层次知识,提高编程技能,为成为一名合格的Java架构师打下坚实的基础。

    架构设计之美迷你版本

    架构师不仅要理解技术,更需要有远见卓识,能够预见系统未来的成长和挑战,作出明智的架构决策。而架构与系统的性能、可维护性及扩展性之间的紧密联系,决定了架构设计的成功与否直接关系到项目的成败。 在"两个...

    系统架构设计师(高级)复习精华[绝对精品].doc

    系统架构设计师是软件开发行业中一个关键的职业角色,对于许多开发人员来说,成为架构设计师是职业发展道路之一。但是,架构设计师究竟需要具备什么基本能力?如何才能成为一个优秀的架构设计师?今天,我们就来探索...

    一次通过国家软考信息系统项目管理师的心得体会

    - **继续深造:** 作者计划进一步考取“系统架构师”这一高级资格,强调了系统架构在软件工程中的重要性。 - **终身学习:** 考试的目的不仅仅是获得一个证书,更重要的是促进个人学习和发展,将所学知识应用于实践...

    (邹鹏宇)心得体会1

    邹鹏宇在实践中学会根据不同项目需求灵活选择和应用这些架构模式,这正是软件架构师必须具备的核心能力之一。 在软件质量属性方面,邹鹏宇认识到了性能、安全性、可用性、可扩展性以及可测试性等指标的重要性。他...

    QCon 2009 beijing全球企业开发大会ppt:4.高焕堂-10个提高架构质量的观点

    本次演讲由资深架构师高焕堂先生分享,旨在通过介绍十个核心观点来帮助听众理解如何有效地提高软件架构的质量。这十个观点不仅涵盖了技术创新和个人素养的提升,还涉及到了组织文化和团队协作的重要性。以下是对每个...

    Spring技术内幕

    内容简介:, 本书是Spring领域的问鼎之作,由业界拥有10余年开发经验的资深Java...本书对Spring的各个功能模块的架构原理和设计思想进行了深入剖析,值得所有架构师用心体会和研究,必将受益匪浅。..., ——架构师中国

    会计师事务所实习心得体会(20220104230040).pdf

    【会计师事务所实习心得体会】 实习在会计师事务所是一种宝贵的学习经验,它能让实习生深入理解会计行业的运作机制,从理论走向实践。在这个过程中,实习生不仅能够接触到会计师事务所的基本构成、人员职责,还能...

    FPGA的设计经验,是个人的心得体会

    系统结构设计侧重于模块的组织与布局,需考虑功能模块的划分、总线结构的选择、存储架构和处理器架构的搭配,以达到性能优化和资源分配的平衡。而仿真验证,则是对设计正确性的全面检验,其难度在于建立能充分反映...

    (郭柏良)心得体会1

    首先,安全(security)作为质量属性之一,其场景的挖掘是一个挑战性任务。这涉及到对潜在威胁、攻击模式以及系统可能的弱点的识别。设计师需要具备丰富的经验和广泛的领域知识,以便能够预测和防止可能出现的安全...

    网页设计实习心得体会.pdf

    此外,学习主流网页设计软件,如Photoshop,也是实习生必须掌握的技能之一,它可以帮助实习生编辑和优化网页图片,维持图像质量的同时,提升网页的视觉效果。 在实习期间,实习生还会接触到网站开发的其他技术性...

    人月神话 高清完整版 文字版可复制

    《人月神话》仍然是计算机书籍中被引用次数最多的经典著作,而且即便本书最初出版于20世纪,其内容至今仍未过时。在阅读的时候,每隔几页不说一句“对极了...——Briall Kenlighan,名著《C程序设计语言》的合著者之一

    海量运维、运营规划之道

    《海量运维、运营规划之道》作者具有腾讯、百度等中国一线互联网公司...《海量运维、运营规划之道》全面介绍大型互联网公司运维工作所涉及的各个方面,是每个互联网运维工程师、架构师、管理人员不可或缺的宝贵参考书。

    软件设计师-中级-学习笔记

    学习笔记是中级软件设计师在职业发展过程中不可或缺的一部分,它不仅记录了个人在学习过程中的重点、难点和心得体会,也是复习和回顾的重要资料。 在学习笔记中,中级软件设计师需要关注的领域包括但不限于以下几个...

    07系统分析师论文20篇

    敏捷过程的三分之一.pdf 汽车零部件行业信息化需求分析与实施要点.pdf 浅谈中小企业Intranet建设.pdf 浅谈软件需求分析过程.pdf 煤炭企业业务事例型网络架构.pdf 用例建模技术在需求获取中的应用研究.pdf 设计模式...

    【大数据成神之路学习路径+面经+简历】.zip

    在招聘软件上,大数据岗位现在平均薪资约为25K左右,相比之下开发岗位大约高了百分之40左右,如果是中高阶梯的大数据架构师甚至可以达到百万薪资。但是对于同学来说还有距离的薪资待遇,但只要我们知道这个距离具体...

Global site tag (gtag.js) - Google Analytics