关于架构师职责的最完美解答

简介: 关于架构师职责的最完美解答

前言


不想到将军的士兵不是好士兵,同样不想当架构师的程序员不是好程序员。每一个程序员都怀有一个成为架构师的梦想,对架构师满怀憧憬和敬意。但是架构师的职责是什么?


解决技术难题?进行技术选型?搭建项目架构?做方案设计,画架构图?


乍一听,确实好像确实是架构师应该要做的一些事,但是都非常片面。今天分享下人月大佬对架构师职责的总结,

也是我目前心中最完美的解答。


软件架构要做三个方面的工作:


一、业务架构设计


针对软件需求中的业务场景和流程,功能性需求进行功能性架构设计


其中包括了核心的功能架构设计,子系统和模块的划分,接口和集成模式的设计,数据架构和数据模型的设计等。即通过概念模型,类图或数据库设计等静态模型+用例,序列图等动态模型共同来抽象表达出完整的业务需求。

82.png



二、技术架构设计


通过软件需求中的非功能性需求,来考虑整个系统的技术架构设计

81.png

技术架构本身又包括了类似消息,缓存,安全,日志,分布式等关键技术的实现,也包括了IT基础设施和部署架构的设计,同时还包括了类似高可用,高可靠,高性能,高扩展等非功能性需求满足的架构设计。


三、开发规划设计


对于软件生命周期和软件工程域标准内容的设计

80.png


其中包括了开发框架,技术选型,软件生命周期,持续集成模式,架构标准规范,开发规范,测试规范,以及各种架构规约和约束等方面的内容设计。同时还需要基于上面内容进行相应的架构原型搭建和验证工作,确保架构设计内容能够真正落地。


要能够做好上面三方面的内容,一个真正架构师必须既懂技术又懂业务,而对于当前很多互联网应用,由于本身工作相对细分,可以看到很多架构师往往仅仅只需要专研深核心技术领域的技术和某一垂直业务场景即可。在这点上企业内部信息化架构师和互联网本身还是存在区别,即。


企业内部架构师更加强调业务+技术综合能力


架构设计的核心目的是全面的理解业务需求后给出整体的技术方案,避免后续在开发实现中遗漏。架构设计内容不仅仅是指导后续的详细设计和开发,同时更加重要的是通过组件和划分和接口的设计,让后续的开发工作真正能够并行起来,最终再进行集成,以降低软件研发的复杂度,同时又缩短软件开发周期提升效率。


能够把一个复杂的大系统真正想清楚和透彻,同时还能够把大系统拆散为松耦合的多个模块,最终又在各个模块独立并行完成开发后,能够通过预先定义的接口将这些模块又组装和集成起来,这就是一个真正架构师应该做的事情。


技术最终是解决业务问题和为业务目标服务,也正是整个原因,一个好的架构师不应该陷入到技术驱动,而是业务驱动;不是选择最新,最热的技术或框架,而是应该选择当前最合适的技术和框架。架构师应该避免过度设计和技术狂热,而是真正做好业务和技术的适配,成本和收益的分析工作。


对于架构和架构设计,本质上是解决从业务现实到技术实现之间的抽象问题。


总结


本文主要从三个方面介绍了架构师的职责,简单来说,就是深入理解业务进行业务架构设计,并根据非功能性需求设计技术架构,并制定相关的开发流程和规范,确保架构设计正确落地。

一直死磕技术,思维不能提升,始终难以打破架构师壁垒。

目录
相关文章
|
26天前
|
NoSQL Redis UED
业务架构问题之在流程建模中,“定职责”的重要性是什么,流程建模中的交互设计原则是什么
业务架构问题之在流程建模中,“定职责”的重要性是什么,流程建模中的交互设计原则是什么
|
13天前
|
监控 架构师 项目管理
项目管理架构师的角色与职责:构建高效项目交付框架
【8月更文第7天】在当今快速变化的商业环境中,组织需要灵活高效的项目交付机制来应对不断出现的新挑战。项目管理架构师(Project Management Architect, PMA)作为一种新兴的角色,在确保项目成功交付方面扮演着至关重要的角色。本文将探讨PMA的核心职责,以及他们如何通过设计和实施项目管理流程来提高项目的可扩展性和适应性,并通过有效的项目治理来提升团队的整体表现。
31 0
|
3月前
|
运维 架构师 安全
架构师养成手册:架构师职责
小米是一名热情的技术爱好者和架构师,他探讨了架构师的角色和职责。主要涉及六个方面:顶层设计,需与企业战略目标对齐,制定架构原则;规划可适应未来变化的企业架构,分析需求并关注技术趋势;全局视角制定可落地的架构方案,兼顾全局与局部优化;技术选型与难题解决,选择合适技术并解决实际问题;关注方案与代码的广度与深度,确保宏观设计与微观实现的统一;同时,架构师还需具备管理能力,包括团队协作、资源调配和风险管理。
104 11
|
敏捷开发 人工智能 架构师
【企业架构】企业架构角色和职责
【企业架构】企业架构角色和职责
架构整洁之道-04 设计原则-单一职责SRP
架构设计原则主要作用是让我们明确如何在类中安排我们的程序和数据结构,以及这些类之间的关系应该如何建立。SOLID原则的目标是创建中层软件架构,满足:容忍改变、易于理解、基础组件可以用在多个软件系统中。
92 0
|
架构师 项目管理
艾伟也谈项目管理,软件架构师之职责范围
  由于国内外软件土壤差别巨大,适合国外的一些理论在国内不一定行的通,而国内的一些资料往往都是根据国外的资料直接搬过来用的,这也直接导致国外的软件架构师在国内变得水土不服。今天本篇随笔的内容则是在一些培训资料的基础上,加上自己的思考,总结出来的适合国情的软件架构师职责范围。
1192 0