软件架构师如何工作


  通过阅读构架漫谈,软件架构师工作需要了解一下几个方面:
  

  首先要理解什么是架构,为什么需要架构
  架构是规划、设计和建造建筑物和其他物理结构的过程和产物。
  人们完成一项任务,因为每个人的能力不同,所擅长的方向不同,所以如果自己去完成一项任务一般要花费很长的时间,效率很低,但是人们对目标有更高的要求,所以需要提高效率,所以需要将任务进行分割,然后将每一部分交给擅长的人去做,并且并行进行工作,然后再将每一部分进行合并,形成一个整体,可以大大减少完成任务所需要的时间,并且可以将任务完成地很好,所以需要架构,架构可以提高工作的效率。
架构就是根据要解决问题,对目标系统的边界进行界定;对目标系统按某个原则进行切分,使每一部分都让擅长的人来完成,并行或串行开展工作,最后将每一部分联系起来,合并组装成一个整体。
  

  其次要认识概念,认识概念是理解架构的基础。
  要做好架构首先必须具备的能力,就是能够正确的认识概念,能够发现概念背后所代表的问题,进而才能够认识目标领域所需要解决的问题,这样才能够为做好架构打好基础。所以理解架构必须先要认识概念,只有认识的概念,才能知道具体需要解决的问题,才能更好地做好架构。如果不了解目标系统的概念,不明白要做什么东西也就不知道从何处入手,也就不能够快速地解决问题。了解了概念,然后再进行抽象,将不同的概念的相似的部分合并在一起,形成一个新的概念。
  

  需要识别出需要解决的问题
  做好架构首先需要识别出需要解决的问题,识别出需要解决的问题,那么目标就不难进行实现了,要识别出问题首先需要找出这是谁的问题,找出问题的主体,知道了这是谁的问题,就可以确定问题的边界,然后就可以进行访谈,了解其真正所要实现的目标是什么,然后才可能真正的认识问题是什么,然后再实现目标。发现问题永远都比解决问题来的更加重要,只有发现了问题,才能更好地解决问题,发现问题首先要找出这是谁的问题,架构师的能力大部分体现在找出这是谁的问题上。
  

  需要做好架构切分
  之所以需要架构是因为一个人完成目标系统效率会很低,所以需要将目标系统进行切分,然后将每一部分分给擅长的人去完成,每一部分要进行沟通,然后再进行合并整合,最终形成一个整体,完成这个目标。所以软件架构师需要做好架构切分,切分需要遵循一些原则,首先切分的部分必须是在连续时间内发生的一个活动,即这一个活动不能再切分了;切分出来的部分的负责人对这个部分的权利和义务必须是对等的,如果不对等将会损害一些人的利益,同时也损害整体的利益;切分出来的部分不应该超出一个自然人的负载;切分是内部活动,内部无论怎么切,对整个系统的外部应该是透明的。同时切分出的小的部分形成了新的概念,切分应该最终形成一个树状结构,因为每一个部分需要进行联系沟通,所以分层要越少越好,尽可能编程一棵平衡树,这样相互之间的联系沟通效率就会高,整个系统的效率也将最大化。
  

  需要清楚什么是软件
  软件架构师是为软件建立架构,所以首先要了解什么是软件,软件是将人们生活中的一些东西模拟化,然后通过计算机来实现,软件实现了将人们现实中的工作转化到计算机中,利用计算机的高效处理计算的能力减轻人们的工作。所以需要写高效的软件,所以就需要软件架构来写出优秀的软件。
  在软件行业这么火热的时代,软件架构师的工作非常关键,如果没有软件架构师那么写软件将无章可循,没有规则,没有架构,那么人们之间将不会分工合作,人们自己将很难创作出很优秀的软件,那么软件也就不能很好地帮助人们解决问题,所以软件架构师非常关键。做好软件架构师的工作需要软件架构师理解什么是架构,要澄清一些必要的概念,要识别出目标系统需要解决的问题,其中识别要解决的问题需要首先知道是谁的问题,这样才能更好地确定系统的边界,从而识别出真正需要解决的问题,架构离不开切分,需要将目标系统整体进行切分,遵循一定的原则对目标系统进行合理的切分,构建合理有效的沟通,完成每一部分,最后再合并整合到一起,从而很好地完成目标系统。

原文地址:https://www.cnblogs.com/liuxining/p/8530412.html