架构师所架构的系统,不单纯的是软件和硬件。架构不仅仅是没有生命的目标软件/硬件系统,在一个公司组织内部,它也承载着公司的长期的价值,承载这为客户解决问题的职责。因此,在架构一个系统时,首要的要做的事是收集需求和分析需求,而不是闭门造车。在分析一个新的需求对现有系统的影响时,需要清晰的知道,该需求到底解决什么样的客户的痛点和问题。明白客户的痛点,明白后续是否有相关的持续性的新的需求,明白当前的架构方案是否能够能够解决客户的痛点和问题,才能更有针对性地在众多架构方案中进行权衡和选择。
架构不是单纯脱离用户痛点的软件或目标系统的架构设计问题,不单纯的是技术问题。
无论是设计架构,还是架构设计时内部方案的争论和选择,还是不同优先级功能的实现的顺序,或者判断需要是否是伪需求、真正的需求,一个最重要的决策依据之一就是对客户价值的大小。
架构师的业务意识、价值意识也充分体现了目标导向、价值导向的思维模式。
你架构的系统或新增加的功能到底为谁服务?!
到底解决什么样的业务问题?!
关于架构师的思维模式,参考:
[架构之路-6]:架构师 - 架构师应该具备的架构思维_文火冰糖的硅基工坊的博客-CSDN博客
关于参与需求收集和需求分析的方法,参考:
https://blog.csdn.net/hiwangwenbing/category_11994217.html
当然,关于需求和需求分析,架构师与产品经理的侧重点是不同的。
产品经理关注的是如何赚钱以及赚钱的模式、赚钱的方式。
架构师关注的是如何用企业内部的技术方案来解决客户的问题,如何在现有的软硬件系统上进行改进,以满足客户新的需求。
关于架构师如何进行收集需求和需求分析,后续再探讨,不过主要体现在“需求管理"专栏中。
另外,不同的业务系统,如5G和银行管理系统的业务需求就是完全不同的,因此,架构师所需要的业务能力和业务知识也是不同的。
如3GPP的标准就是移动通信系统的业务需求,架构师除了熟悉软件架构的方法,也需要熟悉3GPP的协议规范。
而在一些非标的行业,架构师就需要深入了解不同行业、不同客户个性化的需求。
“需求”是架构的根本源头,为了体现目标系统的“需求”对于架构的重要性,在具体探讨目标系统软硬件架构之前,故用一片简短的文章阐述一下,占个坑位,占个席位。