周金根 捷创成IT帮 今天
BangEA
企业架构系列
没有一夜而成的架构师,这是一个演化的过程,你将会逐步得到担当这个职责所需的经验和信心。
在 TOGAF学习课程 中说到了实践公开课,这也是IT帮今年推出的第一轮对外部的实践课程,课程全部内容以往只会在咨询企业中进行讲解。
在公开课中我都会讲一个架构师大体分类的模型
虽然企业架构师、解决方案架构师和技术架构师有很大差异,但是他们也有很多共性,今天我就说说他们的共性,也就是架构师的职责和软技能。
架构师的职责主要有两个,一个是架构设计,另一个是架构交付。
架构设计
拥有全局的视角:为了把一个架构成功地实现,我们需要具有全局的视角,在整个架构项目中展开和完善架构愿景,并对成功发布负责。
管理非功能性需求:我们经常问用户要什么功能,但很少问他们要什么非功能性需求。他们也许会告诉你“这个系统必须很快”,但这太主观,需要明确度量及可测试。大多数非功能性需求本质上对架构有很大的影响,所以理解非功能性要求是架构师职责非常重要的一个部分。
架构定义:每个系统都有一个架构,但并不是每个系统都有一个定义好的架构。架构定义过程让你想清楚打算怎么在兼顾需求和限制的情况下把问题解决好,它将结构和演化原则引入软件项目的技术层面。
技术选型:技术选型是彻头彻尾的风险管理;复杂性或不确定性太高的时候要减轻风险,当有机会或利益的时候要引入风险。你需要综合考虑成本、许可、供应商关系、技术策略、兼容性、协作性、支持、部署、升级的政策以及最终用户环境等各方面。这些技术是否能真正有用?技术决策需要考虑多种因素,而且所有的技术决策需要被检查和评估。
架构协作:架构需要很多人理解它,包括从需求理解和切入架构的直接开发团队到其他有兴趣的利益相关者。要想让一个软件项目成功,你需要和所有利益相关者紧密协作来保证架构和所在的环境很好的集成。
质量保证:即使是世界上最好的架构和领导,很糟糕的交付也足以让一个具备其他成功条件的项目失败。质量保证在架构师职责中占很大一部分,这可能包括标准、原则等。
软技能
领导力 :创造共有的愿景,并带领人们向着共同目标前行的能力。
沟通 :有效地把想法和愿传达给其他人,要使用适合受众的语言和细节水平。
影响力 :每个人都有自己的想法和计划,你在影响他们时还得让他们都不反感,并主动地去追求你需要的结果。
信心 :信心很重要,是有效的领导力、影响力和沟通的基础。
合作 :架构角色不应该被孤立,与其他人合作想出更好的方案是一项值得实践的技能。
指导 :不是每个人都对你正尝试做的事情有经验,你需要对他们进行角色、技术等方面的指导。
辅导 :辅导是对人进行学习方面的指引,而非告诉他们怎么做一件事。作为领导,你可能会被要求去辅导团队中的其他人。
动力 :这说的是保持团队愉快、开朗和积极。团队要有积极性,才会跟随你这个软件架构师所创建的任何愿景。
政治 :每个组织都少不了政治。离政治越远越好,但你至少应该明白周围发生了什么,这样才能做出更可靠的决策。
责任感 :你不能因为失败就责备软件开发团队中的其他人,如果软件架构不能满足业务目标,无法交付非功能性需求或技术品质很差,那都是你的问题。
授权 :你应该学会在适当的时候授权,但授权的不是责任。
如果你希望成为一名架构师,欢迎关注IT帮。