• 软件架构师如何进行工作


    软件架构师如何进行工作

    软件架构师是指在软件项目开发过程中,根据客户的需求以及行业市场等需求将所开发的软件,根据客户的需求以及行业市场的需求将软件所要实现的需求功能转换为规范的软件开发计划及文本,将将软件开发过程中所涉及的流传的流程与架构进行设计和管理,制定项目的总体架构并指导整个开发团队实施的专业人员。是主导系统全局分析设计和实施、负责软件构架和关键技术决策的人员。

    软件工程师需要技术全面,经验丰富,具备战略性、前瞻性思维能力,善于把握全局。主要工作包括:

    1. 彻底的理解项目需求,开展分析设计之类软件工程活动,抓住问题的主要矛盾,及时解决问题,具有很强的洞察力;

    2. 可以领导各个小组工作,在各小组之间推进技术工作,并在项目压力下做出牢靠的关键决策;

    3. 可以进行有效沟通,对组员进行说服,鼓励指导等活动,并赢得项目成员的信任;

    4. 以目标导向和主动的方式来不带感情色彩的关注项目结果,是项目背后的技术推动力,而非梦想家;

    5. 需要精通架构设计理论,实践和工具,掌握多种参考架构;

    6. 具备系统的设计员的所有技能,涉及面更广,抽象级别更高,能够应用计算机综合知识,系统配置和方法,典型系统应用,系统开发安全性可靠性技术,标准化,信息化基础,数学和英语;

    7. 有多方位的思考能力,能够在遇到问题的时候,进行多方位的思考并且制定可行的解决方案。

    在软件工程中,架构师的作用在于三方面:

    1、行业应用架构,行业架构师往往是行业专家,了解行业应用需求,其架构行为主要是将需求进行合理分析布局到应用模型中去,偏向于应用功能布局;

    2、应用系统技术体系架构,技术架构师往往是技术高手中的高手,掌握各类技术体系结构、掌握应用设计模式,其架构行为考虑软件系统的高效性、复用性、安全性、可维护性、灵活性、跨平台性等;

    3、规范架构师是通过多年磨砺或常年苦思顿悟后把某一类架构抽象成一套架构规范,当然也有专门研究规范而培养的规范架构师。他们的产物往往也分为应用规范和技术规范两类。

    与建筑学类似,如果软件系统没有一个好的架构是不可能成为成功的软件系统的。没有图纸的建筑工地、没有设计的造桥工程都是不可以想象的混乱世界。建筑工程如是,软件工程中亦然!

    由于国内合格、胜任的软件架构师极为少见,直接导致了我国民族软件产业水平的落后。在未来以信息产业为主导的社会,信息产业水平的低下将直接影响国家核心竞争力。究其原因,无企业非急功近利、个人缺乏引导。

    企业的急功近利是有无法克服的原因的,那就是社会发展总体水平。“生存是第一位的,赚钱是第一位的”,多年来许多客户抱怨国内的软件公司无法信任、系统项目累做累败、公司越换越差,但因国外不可能给中国做应用系统项目还不得不找国内软件公司做。由于人月费用低、公司开发成本高,软件企业对于应用只能草草了事,拿钱走人(很多公司拿不到后期尾款)。这样的环境下,企业几乎无法投入更多资源培养自己的架构师,加上眼花缭乱的跳槽风气企业更是不愿投入……

    架构师的主要任务不是从事具体的软件程序的编写,而是从事更高层次的开发构架工作。他必须对开发技术非常了解,并且需要有良好的组织管理能力。可以这样说,一个架构师工作的好坏决定了整个软件开发项目的成败。

    ⒈领导与协调整个项目中的技术活动(分析、设计和实施等)

    ⒉推动主要的技术决策,并最终表达为软件构架

    ⒊确定和文档化系统的相对构架而言意义重大的方面,包括系统的需求、设计、实施和部署等"视图"

    ⒋确定设计元素的分组以及这些主要分组之间的接口

    ⒌为技术决策提供规则,平衡各类涉众的不同关注点,化解技术风险,并保证相关决定被有效的传达和贯彻

    ⒍理解、评价并接收系统需求

    ⒎评价和确认软件架构的实现 专业技能

  • 相关阅读:
    Cryptography I 学习笔记 --- 使用分组密码
    Cryptography I 学习笔记 --- 分组密码
    jQuery动画之自定义动画
    jQuery事件之一次性事件
    jQuery事件之自定义事件
    jQuery事件之解绑事件
    jQuery事件之绑定事件
    jQuery动画之停止动画
    JQuery动画之淡入淡出动画
    jQuery属性操作之值操作
  • 原文地址:https://www.cnblogs.com/xiaosongbiog/p/6437388.html
Copyright © 2020-2023  润新知