|
什么是软件技术架构设计前言 任何一家现代公司都离不开IT软件的构建,尤其对于那些基于软件开展业务工作的公司更是如此。为了能够真正让业务持续健康开展下去,软件的健康度就是一个组织持续健康发展的关键指标,而其中软件架构的稳固合理更是软件构建过程中的重中之重。 很多组织对软件架构持近乎“漠视”的态度,因为软件架构不能直接创造价值,在急功近利的短视战略的驱使下,组织更多关注能直接体现价值的业务软件部分的开发。然而,此种情况下,在不断实现软件需求的同时,架构风险在不断积蓄,在被员工离职、安全入侵等事件触发后最终爆发并释放其毁灭的能量,最终让组织陷入困境之中。 为什么要做技术架构 技术架构是业务发展的保障和基础,如果没有一个合理的技术架构,随着业务软件的发展,本身的复杂度会越来越高,随着业务的累积,风险也在随之提升。 在初期阶段,通过人力的方式可以对软件的问题和漏洞进行处理,到后期后问题堆积越来越多,随着人员的流失,业务复杂度上升后,业务软件的维护和开发将成为噩梦,软件的更新和修改会越来越困难,最终进入停滞阶段。届时,对架构的忽视所导致的架构问题将反噬利益相关者,最终导致软件研发陷入泥淖之中。 技术架构应该关注什么 架构需要关注哪些方面呢? 技术架构需要关注如何更有效率地对业务开发进行支持。技术架构关注的是技术底层能力的构建,而底层能力的构建就是为了更好地支持业务软件的开发。 技术架构不仅仅关注当前业务的支撑,还要考虑的是在后续的业务支撑中需要的能力,我们怎么样去支持,所以技术架构的构建具有一定的前瞻性。 总结起来讲,技术架构关注目前的架构是什么样子,还关注架构往哪个方向发展,技术架构提供方向、思路、步骤、目标。 技术架构的构建需要有重点、有节奏推进 技术架构需要关注当前的的技术重点,技术架构涉及的面非常多,如果不加选择全部推进,就可能与业务软件自身的开发发生冲突,最终难以推进技术架构的构建,为了能够在业务软件开发和技术架构之间获得平衡,我们需要有重点、有节奏推进。 识别技术架构中的重点,即识别现阶段最需要建设的部分,按照目前的节奏去推进建设,最终在业务构建的同时逐步推进完成技术架构的构建。在业务开发、技术架构建设两者之间找到平衡和双赢的点。 一般来说是通过季度的节奏进行技术规划,按照迭代的粒度进行实施进程的过程化控制,按照周的时间窗口进行状态的更新。 技术架构建设的“干系人”有哪些 干系人广泛的事情必定需要分清主次,要明白技术架构的服务对象是谁,技术架构建设的最终目的是什么。 首先是我们要做技术架构的最终目的是为组织的长期发展而做出的规划,因此我们在技术架构设计中追求架构能够释放的长期价值, 其次我们的技术架构的服务对象是整个组织,其中的利益矛盾也是显而易见的,对整个团队有利的事情对个人来说不一定是最佳的选择,这其中就需要包含大量的沟通和目标同步的工作。 技术架构的最终目的是为了业务软件的长期发展、不同干系人角色之间的多赢局面的形成,不能因为KPI的考核目标和个人绩效考核的某些阶段性目标而对整体架构目标产生干扰从而偏离架构的整体目标、规划的主航道。 技术架构的干系人包括研发经理、项目经理、技术骨干、业务开发人员、测试人员、相关领域人员(交互设计人员,产品经理等)等相关角色人员。 结语 技术架构的构建是一件系统性工程,其中包含着大量的目标对齐、头脑风暴、重点识别、跨部门协调的沟通成本,也需要计划周密的项目推进步骤,整个方向上的把控还需要有全局视角、系统思考能力。 架构师不仅仅要有技术能力,也要有对业务的理解力,推动事情落地的实干能力,有对研发整个过程的全盘把控的大局观。 技术架构是一件非常锻炼人的事情,需要架构师有过硬的技术基础、完整的技术栈、研发过程的全局视角,更需要各相关角色之间的密切沟通、通力协作。 |
数字化管理是指利用计算机、通信、网络等技术,通过统计技术量化管理对象与管理行为,实现研发、计划、组织、生产、协调、销售、服务、创新等职能的管理活动和方法。
数字生成规范化--数据管理资产化--数据服务应用化--数据治理生态化