软件架构师的12项修炼阅读笔记2
在架构师的角色中,沟通是要求有效果的必备技能与工具。
架构师通常没有对为其项目工作的他人的直接管理权。他们的项目往往是跨部门
的,也可能会跨好多个行业单位。由于不能直接管理他人,所以架构师指示别人或群体完成特定行动的能力就受到限制。他们唯一真正有效的手段就是其影响力。
2.1.1 先听后说
你听的时候,是不是在找机会纠正对方?即便谈论的话题在往前走,但是你的思路还停留在刚才的某一点上?
这种情况说明,我们并没有在听别人说什么。讲话的人对你很在乎,从其忙碌的工作中抽出时间,为你提供这些宝贵的信息,所以应该认真去听他说什么。
我认为罗马人Epictetus说得好:“我们有两个耳朵,一个嘴巴,所以我们应该多听少说。”
2.1.2 专心致志
人在任何时刻最多只能同时处理7件±2件那么多的事。
列出每天需要关注事情的清单计划。在计划中安排好任务的优先级(当天、本周等),并标识每个任务准备投入的时间。
2.1.3 正面思考
从沟通的观点来看,人们容易注意负面的东西。避免不必要的偏见信息
2.1.4 尽早道歉
向别人诚心道歉并不是好玩或者容易之举,但你可以赢得别人的尊敬,展示你在尽力成长,尝试变得更好的意图。
如果你道歉,对方就有可能重新审视事情,而原谅你带来的任何苦恼伤痛。
如果你不能表达诚意,就不要道歉。
2.1.5 不要在缺陷上招致恼羞成怒
出于通常的礼貌,一旦在特定领域发现了三四个问题,就不要再过高、过深地批评了。如果你需要指出再多的条目,可以将其写下来,让被困扰的人随后能仔细看到这些要点。否则这些事情会招致对方恼羞成怒。由于被评审人成了众矢之的,在效率上会极大地影响评审的后续进展。
评审应针对事物、方法,而不是针对人。
避免用“你”、“你的”这类个人化的评价。
设法表达你要求修改的原因是想达成什么目标:确定修改与市场策略有关,基于一般的架构原则,抑或是公司或部门的目标?
评审应关注改善评审项目的方法,不仅仅因为没有遵循某个编码指导原则,而是修改后为什么有用。评审项目的人不仅需要知道怎样把事情做得更好,还要知道为什么这种改进是有用的。
所有与会者都应明白,目标是创造优秀的工作成果,每个人都要求用同样的标准—这是集体的努力。
确保会上的每个人都参与进来。
2.2 沟通策略
2.2.1 多说“是”,少说“不是”
我们试图说出的答案是“对,我们能构建这个项目,这些是相关的信息”。产生的信息需要包括诸如所考虑的各种替代方案、项目风险(以及可能的规避策略)、基于的假设条件,以及需要指出的突出问题。
我们不是在寻找这样的答案:“不行,这个项目不可行,但我们能构建另一个项目(通过消除原困难项目中的难题,而代之以我们想构建的那些特性)。
作为架构师,我们要寻求说“是”的方法。
2.2.2 在销售过程中建立起信任关系
可用的选择方案;
各选择方案的开销;
各选择方案的好处;
各选择方案能够如何组合;
各选择方案涉及的风险;
每种选择方案已知的问题。
2.2.3 特殊场合才说“不”
说“不”是合适的。通常这种拒绝需要有足够合理的深度来支撑,以应付所有必要的质疑。争论的领域很可能与任何项目都存在的关键限制因素有关,如效果、成本、时间和范围。
2.2.4 抑制想自卫的冲动
你可能想用澄清问题的办法来明确要点,比如“你的意思是我做过某事吗”。如果别人说“是的”,你就以“这并不准确”来明确回应;倘若人家回答“不是”,要感谢他澄清了此事。
2.2.5 倾听建议来改善合作
如果你能避免在谈话中个人化,你听取别人说话的能力就大大提升了。
通过倾听并复述所说过的话,来理清自己的理解。
2.2.6 了解别人和自己的沟通需求
观察关键的时刻,即做出决定的时刻是一个要点,以此识别人们提出的问题和关心的地方,来加强核心概念,帮助你关注会议的方向以及把会议引向一个成功的结论。为了认识这些关键时刻,我们需要吸收所有信息,包括提供给我们的语言或非语言信息。
2.2.7 才思敏捷
作为架构师,你需要对迅速切换语境游刃有余,即记住头脑中每个活跃的事情,将其压入要记忆的栈中,然后集中全部注意力来快速处理面前的语境。
2.3 与执行官(BOSS)沟通
执行官需要信任、忠诚和连贯性。
清晰性甚于完整性。
不要让执行官感到惊讶。
2.3.1 执行官需要信任、忠诚和连贯性
可能简洁且开门见山。
当你会见执行官时,不要嘲笑那些不在场的人。这样的行为只能证明你不值得信任,也不够忠诚。
2.3.2 清晰性甚于完整性
给人提供细节信息的数量应当反比于此人在单位中的级别。
一旦你给出一个答案,就应坚持它,所以要谨慎选择你的答案。
执行官可能借此找出你知识的边界及疏忽在哪里。
要明确表达自己不知道,但声明自己随后会关注被问及的这些信息。
2.3.3 不要让执行官感到惊讶
绝大多数项目的风险是逐渐累积的。
当执行官越早知道存在的风险,他们就越能够成功应付它们,并最大限度地降低负面影响。