项目管理 之 系统架构师

来源:互联网 发布:c输入不定长度的数组 编辑:程序博客网 时间:2024/05/20 18:44

【定义】

系统架构师(System Architecture )又称企业架构师或者系统设计师,他着眼于技术实现,是根据需求分析确定下来的技术,对要开发的系统作好规划,运用成套、完整的工具,在规划的步骤下去完成任务的技术导领者和技术负责人。

 

 

【工作职责】

系统架构师职责就是设计一个系统的基础架构,并提供怎样建立和维护系统的指导方针。

 

 

概括的讲,系统架构师职责主要有以下几点:

1、最终确认和评估系统需求;

2、给出开发规范;

3、搭建系统的核心构架;

4、澄清技术细节;

5、扫清主要技术难点;

6、对开发和实施团队进行技术陪训。

 

 

具体来讲,系统架师职责主要体现在以下几点:

1、 负责公司系统的架构设计、研发工作;

2、承担从业务向技术转换的桥梁作用;

3、协助项目经理制定项目计划和控制项目进度;

4、负责辅助并指导系统分析师(SA)开展设计工作;

5、负责组织技术研究和攻关工作;

6、负责组织和管理公司内部的技术培训工作;

7、理解系统的业务需求,制定系统的整体框架;

8、管理技术支撑团队,并给产品开发和实施团队提供技术保障,解决开发运行中出现的各种技术问题。

9、对系统的开发人员进行业务培训,指导开发人员开发;

10、对系统的重用、扩展、安全、性能、伸缩性、简结等做统统的把握。

 

 

【能力要求】

概括的讲,系统架构师应该具备以下三方面的能力:

1、系统架构相关的知识和经验;
2、很强的自学能力、分析能力、解决问题的能力;
3、写作、沟通表达、培训。

 

 

具体来讲,系统架构师应该拥有以下几方面的能力:

1、具备几年以上软件行业工作经验;

2、具备几年以上的代码编写工作经验;

3、具备几年以上 C/S 或 B/S 体系结构软件产品开发及架构和设计经验;

4、具备丰富的大中型开发项目的总体规划、方案设计及技术队伍管理经验;

5、对相关的技术标准有深刻的认识,对软件工程标准规范有良好的把握;

6、对.Net/JAVA技术及整个解决方案有深刻的理解及熟练的应用,并且精通WebService/J2EE 架构和设计模式,并在此基础上设计产品框架;

7、具有面向对象分析、设计、开发能力(OOA、OOD、OOP),精通 UML 和 ROSE,熟练使用 Rational Rose、PowerDesigner 等工具进行设计开发;

8、精通大型数据库如 Oracle、Sql Server 等的开发;

9、对计算机系统、网络和安全、应用系统架构等有全面的认识,熟悉项目管理理论,并有实践基础;

10、在应用系统开发平台和项目管理上有深厚的基础,有大中型应用系统开发和实施的成功案例;

11、良好的团队意识和协作精神,有较强的内外沟通能力。

 

 

【系统构架师与其他角色的区别】

 

系统构架师与产品经理的关系及区别

 

   产品经理通常是指负责产品设计的“专人”。一个优秀的理想的产品经理,应同时具备较高的商业素质和较强的技术背景。产品经理要有深厚的领域经验,也就是说,对该软件系统要应用到的业务领域非常之熟悉。比如,开发房地产销售软件的产品经理,应该对房地产公司的标准销售流程了如指掌,甚至比大多数销售人员还要清楚。如果开发的是通用产品,他/她还具备对市场、潜在客户需求的深刻洞察力。
  那么,系统架构师与产品经理有什么不同呢?
  我们不应该把二者混为一谈,这是不少论述和实践常犯的错误。我看来,如果把开发软件比作摄制电影,产品经理之于系统架构师,就正像编剧之于导演。产品经理虽然要有一定技术背景,但仍应属于“商业人士(business people)”,而系统架构师则肯定是一个技术专家。二者看待问题的立场、角度和出发点完全不同。

 

 

系统构架师与项目经理的关系及区别

  软件项目经理是指对项目控制/管理,关注项目本身的进度、质量,分配、调动、协调、管理好人、财、物等资源的负责人。对于软件项目经理来讲,包括项目计划、进度跟踪/监控、质量保证、配置/发布/版本/变更管理、人员绩效评估等方面。优秀的项目经理需要的素质,并不仅在于会使用几种软件或是了解若干抽象的方法论原则,更重要的在于从大量项目实践中获得的宝贵经验,以及交流、协调、激励的能力,甚至还应具备某种个性魅力或领袖气质(Charisma)。
  由此可见,项目经理和系统架构师在职责上有很大差异。混同这两个角色,往往也会导致低效、无序的开发。特别是,从性格因素上讲,单纯的技术人员倾向于忽视“人”的因素,而这正是管理活动的一个主要方面。另外,就像战争中的空军掩护(Air Cover)一样,专职的项目经理能够应付开发过程中大量的偶发事件和杂务,对于一个规模稍大的项目,这些杂务本身就能占用一个全职工作者的几乎全部时间。在一个项目中,推动项目发展的是系统构架师,而不是项目经理。项目经理的职责只是配合系统构架师,提供各个方面的支持。主要职责是与内外部沟通和管理资源(包括人)。系统构架师提出系统的总体构架,给出开发指导。一个项目中,项目经理的角色什么?如果他即使管理人员又是设计人员,则必须比别人强,能够有让别人服的东西。如果他只是项目管理人员,系统构架师有专门人员,就可以不用精通或者说了解 it 各个方面的知识,如果了解更好。另外,如果在一个项目没有人在技术构架上和开发指导上负全部责任,而是每个人都负责一快的架构、分析、设计、代码和实施等,最后肯定会失去管理。

 

 

系统构架师与系统分析员的关系及区别

 

 系统分析员(System analyst)是指对系统开发中进行分析、设计和领导实施的人。一般意思上讲,系统分析员的水平将影响系统开发的质量,甚至成败。但在一个完善的系统开发队伍中,还需要有业务专家,技术专家和其他辅助人员。所以,系统分析员只是其中的角色之一。但我国许多的 IT 公司,一般只有系统分析员而没有技术专家。系统分析员固然是对特定系统进行分析、设计。所以他的任务、目标是明确的。他只是去执行任务,完成系统的最终设计。

  系统架构师应该和系统分析员分开,但架构师必须具备系统分析员的所有能力,同时还应该具备设计员所没有的很多能力。 系统架构师是指导、检督系统分析员的工作,要求系统分析员按什么标准,什么工具,什么模式,什么技术去设计系统的。同时,系统架构师应该对系统分析员所提出的问题,碰到的难题及时地提出解决的方法。并检查、评审系统分析员的工作。

 

原创粉丝点击