一般设计师通常是下意识地创造出具有完整性的作品,在遇到问题时,他会以同样的方式做出一些决定。由于保持了一致性,那么它不只让人喜爱,也易于学习和使用,更便于维护。
但在团队设计的时候,遇到问题很难用同样的方式做出决定,结果创造出产品缺乏一致性,人们会认为这个作品有瑕疵,不是最好的。
首席系统架构师解决一致性问题首先通过管理助力,要求首席架构师个人对整个设计的全局把握,并且能够在所有设计领域里进行折衷考虑。
他需要反复将他的设计团队请出自己的空间进行沟通,但仍然鼓励孤独的思考,没有思考仅仅靠沟通更容易不一致。
项目应该把概念一致性问题授权给首席架构师。要求他必须在相关的技术领域具有能力,必须对要设计这类系统拥有经验。
最重要的是,他必须对系统的特点和目的具有清晰的愿景,必须真正关心系统的概念一致性。在整个设计过程中,这位架构师是用户和所有其他利益相关人的代理、审批者和辩护人。
从技术要求方面来说,系统架构的重点是不光要定义好接口就结束了。事实证明,不断问答和解释定义的语义是必需的。必须进行变更、控制变更和充分沟通。
首席架构师要设计一种预先确定机制,以解决观点或品味的差异。权威是不可替代的。
干净的接口让设计中的错误率大为减少。因为模糊或粗心的接口而产生的错误常常很晚才发现,即在系统集成的时候。它们更难发现,修复的成本更大,影响了整个系统的进度计划。
而且,干净的接口增加了工作的乐趣。让设计变得有趣的:解决同事间的误解通常不是有趣的。在设计中解决接口误解时,人们感到时间在拖延。
干净的接口让设计师感到拥有快乐,一些小的组件聚在一起,形成可辨识的更大的子系统。
为了使团队设计得到成功,非常重要的问题是:架构师不是一个人在战斗,而是要带动团队共同设计,让知识流动起来,从而让设计达到一个新高度。
一个架构师必须是个好的领导者,除了技术能力以外,架构师还需要有领导力。
领导力是一种影响别人的能力,尤其是激励别人达到那些极具挑战性的目标。