为什么许多项目的技术方案高、大、上,具体实现却种种问题,代码惨不忍睹? 

 

一、架构师欠缺深入编程的一线工作经历,容易泛泛而谈

许多架构师自身并没有长时间的深入编程工作的经历,在技术上的沉淀不足,导致对于软件工程的理解、目标没有清晰的认识。在做架构设计时,非常容易泛泛而谈,并且给出的方案,太过高屋建瓴,缺乏对具体实现的理解和把握。许多架构设计方案,仅仅停留在PPT上,具体的落实完全依靠一线开发人员。

 

二、技术选型阶段:技术选型不是出于项目需要,而是个人喜好

在技术选型阶段,较好的团队第一件要做的事情,通常并不是局限在技术本身,而是深入的理解业务,搞清楚自己要做的到底是什么,并且明确的给出期望的技术指标。

在此基础之上,团队会开展多次头脑风暴,共同探讨业务流程中可能会涉及的技术细节,以及可选的方案并制定客户认可的技术指标,这一点相当重要,在项目中不能单纯的追求高技术指标,而是权衡时间成本,人力成本,以及项目经费,制定合理的技术指标。

在这一阶段,许多架构师在技术的选型上,往往更倾向使用自己并不熟悉的,甚至完全没有用过的技术,借此机会提高自己,充实自己的简历。他们可能会选择更新,更激进的方案,不管项目是不是真的需要;也不太懂得权衡技术与成本,不愿意选择看上去好像落后一些但更稳定,更可靠,综合成本更低的技术,片面追求高大上,到了实施阶段,就非常容易出现种种不可控的技术因素影响项目的进度及品质。

 

三、实施阶段:缺乏对开发团队强有力的管理,存在技术断层

这一点几乎在所有的项目中都存在,架构师在设计好方案或搭建好开发框架之后,团队的开发工作与进度管控

网友评论