架构师主要职责

1、确认需求
在项目开发过程中,架构师是在需求规格说明书完成后介入的,需求规格说明书必须得
到架构师的认可。架构师需要和分析人员反复交流,以保证自己完整并准确地理解用户需求。
2、系统分解
依据用户需求,架构师将系统整体分解为更小的子系统和组件,从而形成不同的逻辑层
或服务。随后,架构师会确定各层的接口,层与层相互之间的关系。架构师不仅要对整个系
统分层,进行“纵向”分解,还要对同一逻辑层分块,进行“横向”分解。
软件架构师的功力基本体现于此,这是一项相对复杂的工作。
3、技术选型
架构师通过对系统的一系列的分解,最终形成了软件的整体架构。技术选择主要取决于
软件架构。
Web Server 运行在Windows上还是Linux 上?数据库采用MSSql、Oracle还是Mysql?
需要不需要采用MVC 或者Spring 等轻量级的框架?前端采用富客户端还是瘦客户端方
式?类似的工作,都需要在这个阶段提出,并进行评估。
架构师对产品和技术的选型仅仅限于评估,没有决定权,最终的决定权归项目经理。架构师
提出的技术方案为项目经理提供了重要的参考信息,项目经理会从项目预算、人力资源、时
间进度等实际情况进行权衡,最终进行确认。
4、制定技术规格说明
架构师在项目开发过程中,是技术权威。他需要协调所有的开发人员,与开发人员一直
保持沟通,始终保证开发者依照它的架构意图去实现各项功能。
架构师与开发者沟通的最重要的形式是技术规格说明书,它可以是UML视图、Word文
档,Visio文件等各种表现形式。通过架构师提供的技术规格说明书,保证开发者可以从不
同角度去观察、理解各自承担的子系统或者模块。
架构师不仅要保持与开发者的沟通,也需要与项目经理、需求分析员,甚至与最终用户保持
沟通。所以,对于架构师来讲,不仅有技术方面的要求,还有人际交流方面的要求。
原文地址:https://www.cnblogs.com/yeahcheung/p/2021856.html