文章图片标题

从开发人员到架构师

分类:架构设计 作者:阳光倾城 评论:0 点击: 247 次 日期:2017-06-04

软件架构师一般都具备计算机科学或软件工程的知识,由程序员做起,然后再慢慢成长为架构师。国内教育体系还没有设立软件架构的学位课程,学校课程中增加的相关内容已不能满足产业发展的需要。软件架构师的成长还需要一个实践的过程,并不是简单地通过学校的理论学习或者通过某软件公式的认证就能成为合格的软件架构师。一名合格的软件架构师的成长应该经历8年以上的实际软件项目开发工作。一般需要经历程序员、软件设计师等阶段,然后再逐步成长为软件架构师。

并不是每一位程序员经过8年后都可以成长为软件架构师。一个软件架构师在充分掌握了软件架构师工作所必须的基本理论和技能后,如何得到和利用机会、如何利用所掌握的技能进行系统的合理架构、如何不断的抽象和总结自己的架构模式、如何深入行业总结规律,成为能够胜任分析、架构为一体的精英人才,这是机遇、努力和天赋的综合结果。

国内软件架构师的培养途径主要有两种方式:大学(软件学院)教育方式,个人自我培养然后进行相应的培训和认证。都有其不足之处。

软件学院的培养方式能系统地学习软件架构师所必需的知识体系,但是软件架构师不是简单的通过理论学习就能够培养出来的,软件学院的学生可能缺乏必要的设计、开发经验和相关的领域知识。尽管软件学院也强调给予学生实践的机会,单毕竟这种机会是有限的。即使有充分的机会,也没有足够的时间在实践中获得广泛的检验和验证。也包含一些管理因素,如有关”三分之一师资来自企业“的规定,在部分软件学院中也没有真正得到落实,导致传授给学生的还是一些纯理论知识。

自我培养方式的主要对象是具有一定年限的软件开发和设计人员,如Microsoft、IBM、Sun等公司的软件架构师认证对学员的基础并没有具体的要求,只要缴纳规定的费用,然后进行几天的培训,通过考试就发给学员证书,甚至不需要考试就直接发放证书。这些开发人员在自我培养的过程中不一定能够系统地学习软件架构师的理论知识,他们只有一定的开发和设计经验,仅仅经过几天的培训,是不太可能培养出合格的软件架构师的。作为某个厂商的培训和认证,其最终目的是培养自己的市场,培养出一批忠诚的用户和产品的代言人,而不是为中国培养软件架构师。

在国外,软件架构师的培养与认证具有严格的过程,明确规定了教育目标、认证的要求和学习课程等方面的内容。

1.UC Irvine

在UC Irvine的软件架构师认证计划中,为了拿到软件架构师C级认证,学员必须完成11个单元的必修课程和至少4个单元的选秀课程。

必修课程:软件系统建模和分析概论(2个单元)、系统分析基础(3个单元)、用户需求的分析和文档化(3个单元)、软件架构项目(3个单元)。

选修课程:信息系统项目管理(2个单元)、系统性能建模(2.5个单元)、管理业务改进项目(2.5个单元)。

UC Irvine的软件架构师认证要求学员具有业务系统建模,决定用户需求,评价业务过程的能力,掌握项目管理技术,能涉及完善的、具有最佳可适应和扩展性的架构。该认证程序以一门实践课程结束,在实践课程中,学员从头开始,设计一个大规模软件解决方案的架构。

2.CMU/SEI

SEI在软件架构师的认证包括三个职位,分别是软件架构师、ATAM评估师和ATAM主任评估师。这些认证需要学习两年的课程。其中软件架构师需要学习的课程有:软件架构原理与实践,软件架构文档化、软件架构设计与分析和软件产品线。

3.ICMG

iCMG对软件架构师的认证强调学习7个层次的课程:

软件架构师作为软件的总设计师,其水平和能力直接决定了软件系统的总体性能,对软件架构师的认证是十分重要和紧迫的。全国计算机技术与软件专业技术资格(水平)考试设立系统架构设计师级别的认证考试,是解决软件架构师认问题的重要途径。




声明: 除非注明,本文属( 阳光倾城 )原创,转载请保留链接: http://www.tomrrow.com/archives-9105.html