
[编辑]
软件架构师是软件行业中的新兴职业,软件项目的总体设计师,以及软件组织中新产品的开发和集成以及新技术系统的构建者. 对于某些大型软件产品或项目的开发,此角色至关重要. 由于缺乏优秀的软件架构师,导致项目失败的例子很多. 没有经验和能力的软件架构师也会导致软件项目失败. 加快速度因此,马丁·福勒(Martin Fowler)指出,建筑师是对所有重要事物做出决定的人.
[编辑]
软件架构师在整个软件开发过程中扮演着重要角色,随着开发过程的进行,他们的职责或关注点不断变化. 在需求阶段,软件架构师主要负责理解和管理非功能性系统需求,例如软件的可维护性,性能,可重用性,可靠性,有效性和可测试性. 此外,架构师必须定期审查客户和营销人员提出的要求,并确认开发团队提出的设计;在需求变得越来越明确之后,架构师的重点开始转移到组织开发团队成员和开发流程的定义. 在软件设计阶段,架构师负责整个软件架构,关键组件和组件的设计. 接口. 在编码阶段,架构师成为程序员的顾问,并经常举办一些技术研讨会,技术培训课程等. 随着软件开始测试,集成和交付,集成和测试支持将成为软件架构师的工作重点: 在软件维护开始时,软件架构师将开始决定是否为下一个应用程序添加新的功能模块. 产品的版本.
因此,软件架构师是软件项目的总体设计师,新产品开发和软件组织集成的构建者,新技术系统,从宏观角度控制大型系统的战略家,就是所有在结构上做出决定的人都是战略制定者,组织和协调大师,称职的顾问和.

[编辑]
一个好的软件架构师不仅是受人尊敬的高级技术人员,而且还是策略制定和组织协调的大师软件架构师,称职的顾问和负责人. 这是因为软件体系结构规划和设计主要从宏观角度切入系统体系结构,而所谓的设计通常从微观角度切入. 软件工程师和程序员考虑单个组件的功能,软件架构师必须从全局的角度了解软件项目的业务目的和预期结果,并可以定义如何将不同的组件组装在一起. 软件设计师计划系统的观点主要是从上至下的方法,而软件设计师则主要是从下至上的方法. 从宏观/微观角度看,这种划分在其他学科中也很常见,例如宏观经济学和微观经济学. 这种宏观观点的本质是软件架构师和其他软件开发人员的领域之间最根本的区别.
从宏观的角度来看,建筑设计和决策,规划建筑审查时间表,解决所有与建筑有关的问题,批准所有主要技术决策以及维护建筑规格是建筑设计的主要任务. 通常在项目开始时,诸如需求和初始分析之类的工作流将产生计划的业务流程以及系统期望完成的功能. 利用这些信息,软件架构师可以草拟初始的高级架构蓝图,并列出影响架构的可能因素. 此外,软件架构师还负责估算项目成本,评估项目计划对系统的现有基础结构和体系结构的影响以及计算可能的成本和收益.
除上述任务外,架构师还重要的职责是检查初始架构规划设计,影响因素和成本,并保持与组织架构决策的一致性. 这通常会找出确定项目的体系结构决策和优先级的标准,定义问题域,确定可能解决方案的约束条件,确认有关可能解决方案的假设,并确定模块重用的可能性. 软件架构师还必须负责确保满足要求,以及在系统级别上在硬件,软件,基础结构,性能,安全性,容量,可用性和系统操作等相关技术之间进行协调和平衡,管理和维护. 在某些关键时刻,软件架构师还必须对系统与体系结构之间的协调与平衡做出决策,这必须是决定性的,但难以判断.
软件架构师必须设法减少可能的技术风险对系统的影响. 在规划的早期阶段,技术风险通常对于普通人而言是不可知的,不可验证的和不可预测的. 风险主要与系统级需求有关,有时还与组织需求有关. 无论任何类型的风险,经验丰富的建筑师都可以在项目的建设阶段提前列出这些可能的风险,然后在随后的开发期间与开发商合作适当地处理和解决这些风险. 此外,架构师还必须领导开发团队,与其他成员保持良好的互动,并确保开发人员根据体系结构蓝图构建系统.
简而言之,软件架构师的主要任务是计划与系统体系结构级别相关的事务,评估可能的风险和成本,并有效地使用有限的人力和物力来满足系统级别的需求. 优秀的软件架构师是保证软件系统强大生命力的核心人员. 架构师可以帮助组织全面研究现有架构和设计模式,评估系统设计的优缺点和可能的风险,并通过一系列主题指南和特定案例来帮助组织掌握高级和成熟的设计模式,以简化复杂的业务逻辑和要求为系统确定最佳解决方案. 如有必要,它还可以为开发人员提供特定领域或主题的自定义指南.

[编辑]
在较大的软件组织中,通常有不同的职位,例如项目经理,软件架构师,系统分析师,软件设计师,测试工程师,工程师,程序员,流程改进,质量保证等. 在这些职位上,系统分析师和软件架构师很容易使人感到困惑. 关于系统分析师在行业中的角色,有两种观点. 一种是将系统分析师视为了解技术和管理的全能冠军,另一种是将系统分析师视为需求分析师,而架构师则是灵魂. 那么,系统分析师和软件架构师的角色有什么区别?
当软件的规模较小时,系统分析师要做的工作是确定实际的业务需求(此需求不是指客户简单地说的功能,而是需要加以利用的功能,对于系统而言可能是潜在的,但却是必需的,具有清晰的法规和清晰的逻辑的业务功能,并且要求不仅来自于业务,系统所依赖的操作环境也会产生一些要求),以计算机可以理解,可实现,和可计算的模型但是,由于当前系统的规模和复杂性的增加,以及应用领域的不断增加,一个人很难完成这项艰巨的任务.
在特定的软件设计过程中,现在分解为系统分析师和软件架构师,以共同完成此任务. 其中,系统分析师专注于前一部分的工作,而软件架构师则专注于后一部分的工作. 系统分析师的主要任务包括业务需求分析,系统需求分析,可行性分析和建模. 它的特点是与行业专家和用户进行更多的交流,并与项目经理(项目经理)和软件体系结构及时沟通. 部门和老板讨论,分析项目的特征,成本,风险等,并考虑实现的模型. 系统分析人员经常面临许多不确定事件,需要对这些不确定事件进行分析和总结,以得出相对可靠的确定性结论或实施计划模型.
软件架构师的主要工作是在系统需求相对清晰的情况下设计系统的总体架构. 当然,它也可能涵盖某些系统分析师和软件设计师的工作,但是其特征是确定的. 将会有更多的事情,并努力为系统找到或构建最佳模型. 尽管可能有许多创新要素,但更重要的是如何充分利用现有的模型,结构,方案并根据项目进行. 该项目的特点,可以从彼此的长处和短处中汲取经验,找到最佳的平衡和结合点,使其成为当前项目的最合适解决方案. 因此,软件架构师实际上对系统进行了完善和完善,以保证更好的可靠性.
就实际职责而言,软件架构师比系统分析师具有更高的视野. 在大型软件系统中,系统分析师可能会分析和设计系统的子系统,并且软件架构师应负责整个系统的结构.

[编辑]
软件架构师通常具有计算机科学或软件工程知识,从程序员开始,然后逐渐发展为架构师. 在中国,许多大学尚未开设软件架构学位课程. 尽管IT业界对设计和体系结构的兴趣日益增加,但学校仍无法在课程中添加相应的内容来反映这种趋势. 在这方面,学校教育远远落后于工业发展. 因此,推广和开发软件架构课程的任务将落在当前的软件架构师身上. 当前的软件设计师应帮助大型大学建立相关的课程体系. 一旦建立了教育课程,知识体系不仅将通过新毕业生的工作得到扩展,还将通过适合软件体系结构的教育研究和出版物得到扩展. 扩. 尽管大学希望加强软件架构课程的建设,但是软件架构师的成长应该有一个实践的教育过程,而不仅仅是对学校的理论学习或大型软件公司对Wang的认可可以成为合格的软件架构师. . 除了学校全面的信息系统知识外,软件架构师的大部分知识和经验都来自实际的开发工作. 一般而言,合格的软件架构师的成长应具有8年以上的软件项目开发实践经验. 通常需要经过程序员,软件设计师等各个阶段,然后发展为软件架构师.
当然,并不是每个程序员都能在8年后成为一名软件架构师. 在软件工程师完全掌握了软件架构师的工作所必需的基本理论和技能软件架构师,如何获得和使用机会,如何利用他掌握的技能来实现应用程序系统的合理体系结构,如何不断抽象和总结自己的架构模式,如何深入该行业并成为具有分析和结构能力的精英人才,是机遇,个人努力和才能的问题.
目前,培训家庭软件架构师的主要方法有两种,一种是大学(软件学校)的教育,另一种是个人的自我修养,然后进行相应的培训和认证. 但是,这两种方法都有其缺点.
软件学院的培训方法可以系统地将必要的知识体系传授给软件架构师. 但是,不能通过简单的理论研究来培养软件架构师. 软件学院的学生可能缺乏必要的设计,开发经验和相关领域的知识. 尽管软件学院也强调给学生实践的机会,但是毕竟这种机会是有限的. 一些软件学校尚未真正执行有关“三分之一的教师来自企业”的规定,并且仍然向学生传授一些纯理论知识.
自我培养方法的主要目标是具有一定年限的软件开发人员和设计人员,例如Microsoft,IBM,Sun和其他公司的软件架构师认证. 没有具体要求,只要您支付了规定的费用,然后进行了几天的集中培训,您将在通过考试后获得证书,甚至无需考试就直接颁发证书. 这些开发人员可能无法在自我培养的过程中系统地学习软件设计师的理论知识. 他们只有一定的开发和设计经验. 仅经过几天的培训,就不可能培训合格的软件架构师. 的. 此外,作为制造商的培训和认证,其最终目标是培育自己的市场并培养一批忠实的用户,而不是训练中国的软件架构师. 因此,也存在很大的问题和缺陷.

[编辑]
来自“ https://wiki.mbalib.com/wiki/%E8%BD%AF%E4%BB%B6%E6%9E%B6%E6%9E%84%E5%B8%88”
该条目对我有帮助4
奖励
MBA智囊团APP

扫描并下载MBA智囊团APP
本文来自电脑杂谈,转载请注明本文网址:
https://www.pc-fly.com/a/jisuanjixue/article-193693-1.html