何为系统架构师、项目经理、系统分析师、产品经理

【转】在我国,可能很少有程序员能说清楚“系统架构师、项目经理、系统分析师、产品经理”这些职位的区别(职责、工作内容及性质等),对这些概念混淆不清,自身也很难有

清晰的职业规划。也难怪,毕竟土壤不好。中国的软件行业还处于发展初期,刚刚起步,很多小公司都是三五人的程序员团队,甚至还有“单兵作战”的。条件有限,不可能分得这么细。规划的那般理想化。就连我所接触到的金蝶软件(CMM4的软件公司),也对这些职位规划的也是含糊不清的,何况小公司的团队呢。

中国的程序员,大多是“身兼多职”的,很多都是全能人才,可薪资待遇却低得可怜。好了,不抱怨了,说正经的。

何谓系统架构师?

    架构师的主要责任是提供开发人员和项目经理之间的共用沟通媒体。他们负责让业务规则及需求与工程实践及限制相适应,以确保成功系统架构师负责设计系统整体架构,从需求到设计的每个细节都要考虑到,把握整个项目,使设计的项目尽量效率高,开发容易,维护方便,升级简单这两个解释,加起来基本说明了系统架构师的定义。
    
    系统架构师关注的是软件的骨架,就像设计大楼的设计师一样,把大楼的框架设计好,至于里面的分隔、装修等不是他的关注点,所以系统架构师往往能够从系统需求(规格)书中很快的抽象出今后系统将会成为怎么样的一个系统的轮廓,然后将部件、部件与部件之间的交互用类似UML这样的建模语言表达出来,供详细设计人员参照。
    系统架构师必须拥有相当的工作经验,并善于从以往的项目中总结出各种设计模式并加以引用到新的系统中来。
    一方面要划分出系统的部件,然后建立部件与部件之间的交互,另外还有一点大家最不知道去做的就是作为一个产品,架构师需要去考虑软件的版本问题、版权问题、今后如何维护升级问题等等,都要在系统架构中体现出来。

    系统分析师关注软件要实现的业务逻辑,应该首先很精通业务,系统分析师起码也要能够做客户的一个业务科长或营业主任,就是指这方面。当然国内企业规模小,多数情况下把系统分析和设计放在一个或几个相同的人身上完成了。重点关注客户的业务,将客户的需求转化成类似用例图这样的表示,从而架起客户与系统设计人员之间的桥梁,所以系统分析师要朝着客户业务专家的方向发展,比如专注电信行业、电力行业、金融行业等。

所谓经理,就是项目的老板,所以不是来进行功能需求分析和设计的,而是为了确保项目的成功去申请各类所需的资源,如经费、人力资源,在资源到位的情况下,对任务进行分解和分配,强调进度控制,确保项目按时保质完成。

项目经理一般是指软件开发项目经理,其关注点是开发计划的编制、计划的执行、计划的检查等,以按时保质开发出软件为终极目标,但涉及面却非常广,既要有良好的技术背景,又要有与人沟通的能力(一般技术人员出身的人最欠缺的),要讲究一定的方法论,但更要掌握管理方方面面的最佳实践。


   

 近几年,随着互联网和移动应用的“大爆炸”,这个时代,开始涌现出越来越多的“产品经理”。一般来说,产品经理是负责并保证高质量的软件产品按时完成和发布的专职管理人员。他的任务包括倾听用户需求;负责产品功能的定义、规划和设计;做各种复杂决策,保证开发队伍顺利开展工作及跟踪程序错误等,总之,产品经理全权负责产品的最终完成。另外,产品经理还要认真搜集用户的新需求、竞争产品的资料以及研究产品的发展趋势等。