• 就软件架构师如何工作的看法


      今天我们上了第一节课,软件架构是什么呢,通过三个问题和对架构漫谈的阅读我有如下感受:

      通过对“架构漫谈”九篇的阅读,我对“架构”有了自己的认识,如果我们有一个任务需要完成,首先架构是针对人完成任务而谈,如果个人完成的话,我们受时间,精力,地点的约束,但是我们把一整个任务分配给擅长的个体,个体高效地完成这项任务。而个体之间也会有信息的交流使得彼此之间能有联系体现出一个整体的概念,就像是一个大型机器里的无数个齿轮一样,共同运转,负责各自的任务,在一起便实现了一个大机器的任务。”我对架构产生的原因也有了认识——“沿用我上面说到的整体和个体完成任务的关系。组成这个整体的每个个体所能完成的任务以及完成某些任务的效率是不一样的,因此我们需要对整体需要的大任务进行划分,并且将每块小任务分配给适合完成此项任务的个体,这样会提高总任务完成的效率。也即是,当我们对质量和效率有了更高的要求时,架构便会如上所述的产生了。”同时要能明确“架构解决的是谁的问题”,一个架构要解决的问题一定都是人的问题。

      因此,作为一个架构师要可以明确“要解决的问题是谁的问题”进而明确“有问题的主体都有哪些问题”。若可以明确“问题的主体”,我们已经可以很自然地解决大部分的问题了,因为很多时候问题是因为沟通不畅而产生的,这部分的问题当我们弄明白“主体”后,自然而然地就解决了。出去上述类型地问题,还有一些真实存在的问题需要架构师去解决。通过阅读我了解到,这一部分的调整称之为“架构的切分”

      在了解了软件架构师的工作职能之后,我们还应该明白作为一名软件架构师的工作流程。首先,作为软件架构师要给予商务支持,提供系统解决方案和架构咨询。然后在需求阶段,软件架构师需要和需求分析师一起,参与需求的沟通,协助完成技术/业务咨询和需求模型。我们刚刚在上述分析软件架构师的职责的时候所描述的一样,软件架构师要负责软件项目的实施。在做了需求分析之后,就进入了架构阶段,软件架构师需要进行系统分析和设计,进行系统抽象,设计系统模型,进行技术原型,开发架构原型等,然后在进行了设计之后,他还需要指导设计人员完成详细设计。之后在开发阶段,软件架构师需要指导开发人员按设计实现,解决技术难题。在测试阶段,他还需要指导测试人员测试工作,特别是非功能需求的测试,这一点也就是上述所说的软件架构师需要负责软件系统技术支持。然后在发布的阶段,软件架构师需要指导部署人员按照部署架构进行部署,及时解答或反馈试运行期间的架构问题。

      对于我们当下刚接触的大学生来说,书籍使我们开拓视野的不二选择,我在本学期将会对软件架构更加深入的了解,着手一些小项目的架构初步理解,我们只有不断的实践与知识相结合才能在程序员的道路上有所为,才能更进一步!

  • 相关阅读:
    散列
    Studio 3T破解方式
    springboot整合elasticsearch时的版本问题:
    ElasticSearch6.4.1 【Rejecting mapping update to [posts] as the final mapping would have more than 1 type】
    IP地址查询API
    拉姆达表达式 追加 条件判断 Expression<Func<T, bool>>
    类 映射 遍历大全
    jquery load(URL,FUNCTION(){}) 异步加载页面
    LINQ to Entities 不识别方法的解决方案
    当实体类属性超多时候 映射给实体类属性赋值(拉姆达+实体类映射)
  • 原文地址:https://www.cnblogs.com/1329197745a/p/15924616.html
Copyright © 2020-2023  润新知