• 软件架构设计01


    《架构师的角色》

    一个软件架构师比“仅仅是”一个设计师意味着更多的东西。这个可以由单人或多人承担的角色有一个冗长的职责、技能和知识的列表。

    一个成功的软件架构师必须满足这些条件。这些先决条件包括以下几点:

    a)   领导力:工作指导、团队建设、建立愿景、组织培训。

    b)   沟通:技术和非技术的沟通、鼓励合作。

    c)   谈判:处理内部和外部的利益相关者和他们之间相互冲突的需求和期望。

    d)   技术技能:生命周期技能、专业技术知识、持续学习、编码能力。

    e)   项目技能:预算、人员、进度管理、风险管理。

    f)   分析能力:软件架构分析、项目管理和测量的常规分析思维成功的设计不是一个“贴在墙上”的静态文档。

    也就是说,软件架构师不仅要做好设计,而且必须密切参与项目的每一个方面,从概念和业务论证到设计与建立,直到运营、维护,最终到项目结束为止。

    架构师考虑的问题必须全面,必须了解的要广,具体的细节可以不关注,因为细节变化很快。很多具体技术人员出身的架构师,只关注于具体的细节,某些方面做的很好,整体的性能很差。

    架构师必须了解软件流程,否则无法驱动整个团队前进,如果一个架构师不熟悉开发流程,无法协调产品线相关人员进行高效工作,也无法指导团队成员完成自己的工作。所以来说架构师一般不是空降兵,因为空降兵一般不会熟悉新公司的开发流程,即使是同一个行业的,各个公司的差别还是很大。所以说 听说某某去某某公司做首席架构师或者首席科学家,一般是高风险的事情,即使他对这个行业很了解。

  • 相关阅读:
    Go知识点大纲
    Golang GC(垃圾回收机制)
    ubuntu20.04安装EasyConnect兼容性问题解决
    ES常用操作
    Golang使用validator进行数据校验及自定义翻译器
    ubuntu下安装navicat破解版
    GORM基本使用
    Golang之指针
    drf的核心:序列化模块之Serializer和ModelSerializer(重点)模块
    Django中 media资源配置
  • 原文地址:https://www.cnblogs.com/zmh-980509/p/13099859.html
Copyright © 2020-2023  润新知