(转)软件架构师之职责范围

上一篇<软件架构师之基本素质>讲述了做为一名合格的架构师应该具备哪些基本条件。当我们具备了这些条件的时候就可以选择成为架构师了。这时候我们就应该知道软件架构师应该做些什么,不应该做些什么,也就是软件架构师的职责范围。

  由于国内外软件土壤差别巨大,适合国外的一些理论在国内不一定行的通,而国内的一些资料往往都是根据国外的资料直接搬过来用的,这也直接导致国外的软件架构师在国内变得水土不服。今天本篇随笔的内容则是在一些培训资料的基础上,加上自己的思考,总结出来的适合国情的软件架构师职责范围。

  1,需求整理分析
  有人认为架构师是在需求规格说明书完成后介入的,但我认为架构师要从项目最开始的阶段就参与进来。理由有很多:首先,第一手的信息损失最少,架构师能够更好的把握需求;其次,分析人员在与客户交流时,往往不会深入挖掘需求,因为有很多隐藏的需求客户自己都不见得意识的到,而架构师则可以依靠敏感的软件嗅觉发现这些需求,减少以后的变数;第三,分析人员往往脱离开发团队,盲目接受客户需求,而架构师能够清楚把握现有的研发团队能做什么,不能做什么,提前预知风险,降低项目失败的机率。

  2,系统分解
  在收集完信息后,架构师需要将用户需求转化为软件需求,同时要补充非业务需求,如健壮性,扩展性等等。如何区分和化解用户需求与软件需求,如何有效把握用户需求与软件需求的区别,是系统分解的核心。这是最考验架构师的地方,也是只有架构师参与的工作。

  3,技术选型
  这一步要根据对软件需求决定项目该使用何种架构,开发模型,及依赖选项。如使用多层架构还是分布式架构,是瀑布模型还是RUP,是使用MySQL还是SQLServer,是否需要使用企业库,是否需要使用ORM。但是,架构师对项目的技术选型要提供多种不同的方案,并为每种不同方案提供详细说明文档,用来阐述每种方案的优势,劣势,可行性等内容。这些文档供项目经理或领导决策最终的技术选型。

  4,系统设计
  依据软件需求和技术选型,架构师需要和软件工程师一起将软件需求落实到软件详细设计说明书中。架构师负责将软件需求分解,重组织为子项目,子系统,组件和模块,以及它们之间的逻辑关系,从而形成不同的逻辑组成部分,最后还需要确定各个子系统及组件间的接口。这些都是作为进一步的团队分工的依据。同系统分解一样,系统设计是考验架构师能力的重要职责。

  5,培训与指导
  在软件详细设计说明书完成后,为保证项目的顺利进行,架构师需要对整个团队进行技术培训,让团队中的每个人明白自己的职责范围,该做什么,不该做什么。在项目实施过程中,架构师需要参与到具体开发过程中,给与每个开发人员有效指导,以避免团队成员对系统设计的误解而造成项目的延误。在我看来,这点对于新手比较多的团队尤为重要。因为国内新手的一个通病是眼高手低,刚学会了一点点就认为自己什么都会;当他们拿到真正的设计时又往往不知所措,畏首畏尾。

  6,保持沟通
  沟通是保证项目顺利开展的有效保障。架构师要从多方面跟踪项目进度,及时与项目经理或直属领导汇报项目进展,与技术开发人员沟通遇到的问题,如果是迭代开发,还需要与用户沟通需求变更。

  以上是一个项目开发过程中架构师需要承担的主要职责,相比一些培训指导,我认为,架构师需要更深入地参与到项目中。

时间: 2024-10-09 19:57:28

(转)软件架构师之职责范围的相关文章

软件架构师之职责范围

上一篇<软件架构师之基本素质>讲述了做为一名合格的架构师应该具备哪些基本条件.当我们具备了这些条件的时候就可以选择成为架构师了.这时候我们就应该知道软件架构师应该做些什么,不应该做些什么,也就是软件架构师的职责范围. 由于国内外软件土壤差别巨大,适合国外的一些理论在国内不一定行的通,而国内的一些资料往往都是根据国外的资料直接搬过来用的,这也直接导致国外的软件架构师在国内变得水土不服.今天本篇随笔的内容则是在一些培训资料的基础上,加上自己的思考,总结出来的适合国情的软件架构师职责范围. 1,需求

软件架构师的职责

架构师分为以下几大类:业务架构师.主题领域架构师.技术架构师.项目架构师(J2EE架构师..NET架构师等).系统架构师. 1.架构师的职责主要体现 架构师的职责就是设计一个公司系统的基础架构,并提供关于怎样建立和维护系统的指导方针.具体来讲,架构师的职责主要体现在以下几方面: 1).负责公司系统的架构设计.研发工作. 2).承担从业务向技术转换的桥梁作用. 3).协助项目经理制定项目计划和控制项目进度. 4).负责辅助并指导系统分析开展设计工作. 5).负责组织技术研究和攻关工作. 6).负责

浅谈软件架构师的素质与职责

原文:http://www.nowamagic.net/internet/internet_DutyOfSoftwareArchitect.php 最近开始学习如何成为一名合格的架构师.首先参照别人的观点,在结合自己的实际经验,写出自己对如何成为一名架构师的理解,希望大家热心于与援手,能够指点一二. 沟通能力和自我表达 我认为沟通能力是基本中的基本,最为重要,最为普遍的素质.技术人员好像容易忽略,想成为架构师就不能忽略.因为架构师要做的第一件事就是与团队成员.项目经理.客户认同沟通,获得认同.我

软件架构师是如何工作的

软件体系结构的第一节课,是要让我们了解如果要做一名软件架构师,我们应该做什么和怎么做.在课堂上,老师通过<梦想改造家>中王平仲对特殊房型的改造来让我们从一名建筑师去了解什么是软件架构师. 所谓软件架构师,是软件行业中一种新兴行业,工作职责是在一个软件项目开发过程中,将客户的需求转换为规范的开发计划及文本,并制定这个项目的总体架构,指导整个开发团队完成这个计划,是主导系统全局分析设计和实施.负责软件构架和关键技术决策的人员. 软件架构师其实相当于是软件项目管理的主管,他负责设计与构筑公司的系统架

[转]你是个软件架构师吗?

编者按: 本文作者 Simon Brown ,在三月的QCon London上发表了同样主题的演讲<Software Architecture for Developers>. 开发和架构的界限难以捉摸.有些人告诉你它根本不存在,架构只是开发者们所做的设计过程的简单扩展. 另外一些人认为这是一个鸿沟,它只能由那些做到高度抽象,而且不会陷入实现细节的开发者才能跨越.通常,在这两个极端的观点中间某处有个可操作的平衡点:不论如何,怎么从开发转换为架构师都是个有趣的问题. 经常被用来区分软件架构和软件

读架构漫谈有感

读文章伊始感觉文章并没有像其他文章一样引用了大量的专业术语,文章的例子都非常浅显易懂所以以我的水平也可以看懂.对于软件架构虽然早就听过但是还是这学期准确是这周才开始学习架构的概念,在有一点点理解的基础上读了这篇文章,文章开始引出了架构的概念然后步步深入其实刚开始都的时候我并不是很懂甚至有一些疑惑.作者提到当一个群体产生的时候由于不同的人擅长不同导致了分工的不同.我在想当时的人类就有这种明确的分工合作的意识么而且人类并不一定只做一件事他们肯定还要做其他的事情,后来我继续读的时候才发现,所谓的分工合

漫谈架构读书笔记

漫谈架构阅读笔记 阅读了漫谈架构这本书后,感受颇深.在此书中,文章书写简单易读,并没有过多的专业词汇,其中还不乏举出了许多生动有趣的例子给人以印象深刻,我认为,此书写的确实不错,值得阅读. 首先关于什么是架构?结合文章和最近所学我认为架构就是软件的框架,软件在设计好的框架中生产运行发展与维护,联系文章世间万物皆有框架,从最早的木头到桌子椅子,做成这一事物所依赖的标准原则便是架构.人的出行时做火车还是汽车还是飞机取决于要去的地方与所需的其他要求,每个交通工具有自己的特点,其相互运行却互不打扰,是架

软件架构学习小结

软件架构设计系统总体架构,从需求到设计的每一个细节都要考虑到,把握整个项目,使设计的项目尽量效率高,开发easy,维护方便,升级简单.本文从架构师职责.软件架构定义.设计架构.评估架构.架构管理等方面来描写叙述了解软件架构的含义和如何设计软件架构. 一.软件架构师的职责 架构师分为下面几大类:业务架构师.主题领域架构师.技术架构师.项目架构师(J2EE架构师..NET架构师等).系统架构师. 1.架构师的职责主要体现 架构师的职责就是设计一个公司系统的基础架构,并提供关于如何建立和维护系统的指导

130242014070-张宇-实验一

实验报告 课程    软件体系结构   实验名称  实验一.软件设计的网络支持环境     第      页 专业____   软件工程_____  班级_  2班__ 学号_  130242014070_   姓名    张宇 实验日期:   2017 年 9  月  14 日   报告退发 (订正 . 重做) 一.实验目的 (1)复习软件工程的重要概念,熟悉软件体系结构与软件设计技术的基本概念与内容. (2)通过因特网搜索与浏览,了解网络环境中主流的软件体系结构与设计技术网站,掌握通过专业网