《架构与未来》摘要(一)

一、

    根据我们的经验,与扩展性有关的事故也遵循着同一规律。首席技术官(CTO)或者负责系统平台扩展性的高管也许把扩展性当成一个纯技术性的计划。这种理解纯粹是人为的失败,也是错误链上的第一个失败点。因为CTO过于聚焦技术,所以他没能清楚地定义必要的流程,以确定扩展性的瓶颈,这事第二个失败点。因为没有人在架构上寻找和定位瓶颈点与堵塞处,所以当用户数或者交易笔数超过某个限额的时候,整个系统就会出现故障,这是第三个失败点。当团队集合起来想要解决问题时,由于从来没有在事故排查以及问题定位的流程上进行投入,以致团队错误地把问题定位成“数据库调优”,这是第四个失败点。恶性循环一直在持续,由于各种聚焦在不同的技术方面,大家互相指责,从防火墙到应用,再到应用相关的会话保持层。团队的交互退化成为叫喊比赛和指责大会,而服务却依然缓慢和迟钝,结果是客户流失、团队沮丧、股东撤资。

    尽管危机源于系统无法迅速扩展来满足最终用户的需求,但是问题的根源几乎从来不只是单纯的技术问题。以我们作为高管和客户顾问的经验,扩展性问题始于组织和人员,然后扩散到过程和技术。在系统实施的过程中,如果人收到了错误的信息或者做了错误的选择,有时会进一步显现为失败点,进而影响到系统和平台的可扩展性。人们忽略了制定可以帮助他们从以往的错误中吸取教训的过程,有时候却制定和发布一些拖后腿的过程,其结果不是迫使组织作出错误的决策,就是决策做的太迟而效果不彰。缺乏对制订和支持技术决策的过程和人员的关注,往往会导致不良技术决策的恶性循环。

二、

    所有扩展性最成功的产品,最核心的部分是有一群人,他们做出了很多正确的决策,当然偶尔也出些昏招。在扩展性方面,忽略人的因素的作用,是一个非常大的错误,我们经常发现忽略人的因素是产品无法满足用户需求的根本原因所在。

    合适的人指的是此人具有合适的知识、技术和能力。把一个人在合适的时间放在一个合适的岗位上,确保其能成功地位股东创造出最大的价值,同时这也符合其职业发展方向。合适的行为指的是此人能够与其他的员工融洽相处,并认同公司的文化和价值观。不良的行文如同缺乏技能一样,也是团队淘汰人的有力理由,因为不良的行为对任何团队来说都会产生恶性循环、降低士气和生产率。

    如果没有关键性的性能指标来帮助我们度量达成期望的结果,那么我们就不应该去管理这个机构。管理意味着度量,度量失败即管理失败。如果组织很难度量每个人的表现,那么你就无法度量产出。如果你无法度量组织的产出和工作的质量,你就无法应对突然发生和快速发展带来的问题。

    如果团队成员对是否拥有目标和足够的授权去完成任务理解得很清晰,那么就可以靠团队的能力去拥有目标,并达成目标,相反,则只能依赖其他的团队才能达成目标。拥有足够授权的团队,通常比授权不足的团队有更高的士气、较低的跳槽率和较快的市场响应速度。授权的基础是为达成目标,有可以独立作出必要决策的能力。

    情感型冲突是以角色或控制为基础的冲突,经常发生在团队之间。认知型冲突常常是关于“谁”做,或者“怎么”做。情感型冲突很少能提升产品的价值,相反,几乎总是延迟产品的发布和增加成本。更进一步,如果不妥善处理,就会降低员工的士气,增加员工的跳槽率,降低公司内部的创新水平。认知型冲突,如果处理得当,常被称为“好的冲突”。最常见的认知型冲突是关于“为什么”某件事一定发生,或者公司需要“什么”来达成期望的结果。认知型冲突扩大了策略的可能性范围,通过结合不同的知识、技能和经验来覆盖那些相互交叉的部分,从而增加了正确决策的概率。

三、

    可扩展性和可用性失败的共同原因是责任不清。有时,角色和责任不清意味着有些事情没人去做。“无人问责”问题的另一个极端是有多个组织或者个人被赋予了同样的目标。多人负责的问题是情感型冲突的核心问题所在。

    任何的组织结构决策都有利有弊,重要的是在组织的设计中要包含全部的责任,不仅要清楚地定义谁是决策者,还要搞清楚谁负责为决策者提供信息,决策和行动方案都应该通知谁,谁来负责执行决策。做出最佳决策最为关键的要素是有一个最佳的决策过程,来确保合适的人收集合适的信息,并把它提供给最终的决策者。

    当定义一个组织的角色和责任的时候,你其实就是在设计一副权利下方的蓝图。广义来说,权利下方就是授权别人做你该做的事情。这里有一点非常重要,那就是你可以下放任何权利,但是必须对其结果承担所有的责任。接受你权利下方的个人或者团队最多承担连带的责任,虽然你可以解雇、提升、奖励或者惩罚团队,但是必须清楚自己要对最终的结果负全责。好的领导本能的明白这个道理,他们总是把赞扬留给团队,承认失败并公开地承担责任。相反,差的领导在失败时找替罪羊,在成功时抢功。

    架构师的责任就是确保系统的设计和架构可以随着业务的发展而扩展。这里我们清楚的指出设计和实施之间有差别的。架构师需要在业务需要发生之前就想好,远在业务部门的预测超过平台的容量之前,就已经对如何扩展系统深思熟虑。架构师负责设计系统并确保其设计能够解决任何的扩展问题。架构师也可以负责信息技术的管制、标准和过程,有一些大的公司可能会组织流程--工程联合团队,负责对流程的定义和标准的执行。

    首先是软件架构师,主要关注如何设计和架构软件。这些架构师聚焦在不同的领域,例如,面向服务的架构框架或者代码模板为研发人员提供指导。其次是系统架构师,主要负责解决软件在硬件配置和支持方面的问题。这些架构师聚焦在去除单一的失败点,发现出错点和做好容量规划方面。

    你的组织现实的解决方案或许和这些结构相比差别很大,角色的定义要和公司的文化和需要一致。当你加强角色清晰度的时候,要注意避免责任的重叠,这会造成无效的努力和价值损毁的冲突。

四、

    可以通过标准化来提高组织的效率,一个不注重代码、文档、规范和配置标准的制定、发布和应用的组织,研发效率和质量必然低下,生产中出现严重问题的风险很大。

    团队规模的下限为6人,上限为15人。下限意味着团队不少于6个工程师,因为如果少于6人,就没有必要把他们分入一个单独的团队。上限值的是一个团队不要超过15人,15人的规模开始阻碍经理的管理能力,团队成员之间的沟通能力也开始出现问题。

    职能型组织面对的另外一个挑战是团队之间的冲突。如果这些团队被赋予交付和支持产品或服务的任务,而这些任务又需要跨部门的合作才能完成,团队之间的冲突就不可避免。我们见证过由认为相互不同的个人组成的团队之间的冲突,这种冲突在最极端的情况下甚至发展为歧视。

    冲突分为认知型冲突和情感型冲突;认知型冲突被认为是好的冲突,有助于团队扩大行动的可能范围。不同的见解和经验凑在一起有机会从多角度出发解决问题。(头脑风暴会议)坏的或者情感型冲突会带来物理和组织的创伤。在物理上,它会耗尽我们的精力,随着时间的推移,不断的情感冲突让我们感到疲惫。在组织上,研究表明冲突会造成组织分裂,结果会在战术和战略上限制选择。争斗关闭了我们思维的选择空间,意味着结果可能不是最佳的。通过营造开放、关爱、尊重的文化氛围,把认知型冲突最大化,情感型冲突最小化。通过设置明确的角色和责任,限制情感型冲突的根源。通过吸纳各类人才在技能和视野上互补,最小化集体思维的机会,最大化策略的选择范围,鼓励机构快速成长。

    职能型结构的优势是管理的同质性、责任简单清晰、容易分配任务和很好的遵循标准。(比如,产品、研发、测试,这种横向组织结构)。

    矩阵型组织的优势是项目的负责人明确,跨部门的沟通有所改善。(与职能型组织结构相似,只是把每个职能团队的部分人员构成虚拟的新的团队,并根据项目制定负责人)

    敏捷性组织,特别是按照服务和架构组织的,会提高团队的创新力,这可以通过市场响应速度、高质量的新功能和高可用的服务开衡量。(敏捷性组织中,每个团队都包括完整的职能人员,比如研发、测试、运维、产品等,每个团队针对特定的业务项目。)

五、

    “影响一个组织或者个人达成某个特定目标的行为的力量”即为领导力。顺着“引导活动”这条线去理解领导力或许是最容易的。制定愿景激励一个组织、并引导组织向着目标前进。设定特定的、可度量的、可达成的、现实的、适时的目标,沿着通往愿景的路,设置可以帮助组织在道路上纠正偏差的里程碑。

    领导不仅仅指个人或者组织的直接报告人,领导是关于你做什么和如何影响你周围其他人或好或坏的行为。

    我们经常过高的估计自己的能力,而且他们注意到,在缺乏经验或者存在高度无知的情况下,这种高估最严重。在讨论领导力模型以及需要注意的优点和缺点,现在来看看曾经与我们愉快地共事过的一些最好的领导人所共同拥有的几个特性。这包括以身作则、不刚愎自用、努力完成使命,同时留意和同情组织的需要、及时决策,给团队授权、和股东的利益保持一致。

    我们推崇一个信条,“你想让大家做什么,那么就教导什么,你教导什么,你的标准就是什么”。

    赋予团队权力,比任何领导力活动或行为对组织扩展能力的影响都大。授权是分配行为、责任和所有权,可能包括把部分或全部领导权和管理权交给个人或组织。以领导力而言,授权是提升个人、团队、领导和经理对其负责事项的骄傲感。总体而言,相信自己被赋予权力的个人,比那些相信自己仅仅执行命令的个人,在做决策和管理过程中的效率更高。简而言之,真正的授权管理相当于加倍组织的产出,因为其本身不再成为所有活动的瓶颈。

    愿景就是目的地,它帮助公司激励人心,吸引外部人才,留住最好的人才,帮助大家理解当经理不在背后盯着的时候自己应该做什么。在理想情况下,愿景会激励团队,也可以单独作为一个指引,在没有管理或领导的情况下,指引团队向什么方向发展和知道应该做什么事情。愿景应该是可以度量和验证的。也就是说,要有简单的方法和确定是否已经达到预定目标。它也应该包含一部分对组织的存在更优意义的信仰。

    展现愿景最简单的方法或许是从如何给一个人发出指令的角度来看。当指令发出时,你会同时说明如何确定目标是否达成。

    一个愿景应该符合下面这些标准:

    1)对理想未来的生动描述

    2)为股东创造价值很重要

    3)可度量

    4)激动人心

    5)结合信仰的因素

    6)大致不变,但可根据需要修改

    7)容易记忆

    如果愿景是对理想未来或者旅途终点的生动描绘,那么使命就是我们达到目的地总路线行动计划。对使命的描述更聚焦于公司的现状,因为现状对到达理想状态或公司的愿景极为重要。使命应该包括一些目的,一些今天要做的事情和如何达成愿景的方向。对使命描述的验证应该包括是否有决心。如果适当地执行,使命描述将有助于激发主动性,促使促织或者公司达成愿景。使命描述应符合如下条件:

    1)对当前状态和行动的描述

    2)有目的地

    3)可度量

    4)一个大方向或一条通往愿景的道路。

    如果愿景是描述你要去哪里,而使命是一个指引你怎么到那里的大方向,那么目标就是旅行中确保我们走在正确道路上的路标或里程碑。根据SMART来制定目标:

    1)具体(S)

    2)可度量(M)

    3)可达成(但是有挑战性)(A)

    4)现实性(R)

    5)时限性(T)

    领导力是对组织或个人完成具体目标的影响力。关于领导力,我们的思维模式是一个由个人特性、技能、经验和行为组成的函数。要成为一个更好的领导,要开始了解自己在领导力函数里缺点在哪里以及优点在哪里。领导力可以在许多方面影响团队和公司的扩展性。差的领导限制了公司与团队的成长和产出。相比之下,好的领导可以作为增长的加速器,使组织在总的规模上增长,在个体产出上提高。通过成为一个更好的领导,可以增强组织和公司的能力。

《架构与未来》(前四章)

猜你喜欢

转载自shift-alt-ctrl.iteye.com/blog/2342948
今日推荐