2022 年 7 大软件开发趋势:DevSecOps、可观测在列
点击下方卡片,关注“新机器视觉”公众号
重磅干货,第一时间送达
尽管流行着一种说法:“每家公司都是软件公司。”但是扩展和交付高质量软件并不是一件容易的事情。随着技术栈的不断变化和新服务趋势的出现,软件开发的复杂性也阻碍着其自身的发展速度。此外,市场上也缺少足够的软件开发人员:IDC 的数据显示,2021 年全职工程师的稀缺程度为 140 万,而在未来 4 年内,这一数字将增加到 400 万。
与此同时,混合工作模式的兴起和数字化的加速发展势头,使很多企业的开发团队业务需求激增。最后这两个因素的出现可能是最后一根稻草,逼迫着软件传统开发理念的改进优化。
这一现实状况,要求软件工程管理者们必须审慎评估他们的 2022 年规划,并提出改进工程团队、实践理论及开发工具的建议,以应对软件工程面临的四个核心挑战:
开发者体验: 旨在引导降低技术复杂性,以便开发者能够快速创新。 开发工作流程自动化: 从软件开发生命周期的不同阶段消除所有平台和工具间的不协调阻碍,使其集成为一个整体。 安全性和合规性: 开发过程中,开发者创建、修改、删除的任何操作都可以被追溯,并能够恰当的纠正发现的错误,让开发人员更轻松的编写安全代码。 部署和运营: 专注用户体验,提高软件服务的可靠性和性能。
基于以上挑战诉求,我们剖析了 2022 年软件发展的七个趋势,这些趋势将是 2022 年的关键,软件工程管理者应该评估改进开发团队、实践理论和开发工具,以实现公司目标:
DevSecOps API 主导的集成 适用专业人士的低代码平台 云原生平台 DesignOps 通用可观测性 PWA-first 方法
安全防护将继续作为 IT 管理人员和软件工程团队首要关注的话题。由于勒索软件攻击的持续增加,组织数据缺乏明确的限制边界,以及民用软件风险的增加,数据隐私和监管要求比以往任何时候都更有必要。这导致了对 DevSecOps 的需求增加,其中安全性和合规性要求在软件开发生命周期的每一步都需要验证。
想要维持持续的改进氛围,以达到免受软件链路安全威胁和强化软件交付通道的目标,是非常困难的。我们看到 CISO 和 CIO 们在选择开发新的 web 和移动应用程序时,会倾向于选择能够管理每个新应用程序开发和交付全阶段的平台,而不再依赖于有着不同实践经验的开发人员非系统性的改进。
我们的最终目标是让开发团队能够在平台上轻松构建安全代码,使用零信任安全模型,而不是依赖于安全测试方法。市场上有不少 数字服务提供商 可以帮助你在现有系统中集成 DevOps。
根据《2021 年 SaaS 发展状况》(The State of SaaS Sprawl),公司平均拥有 254 个 SaaS 应用程序,但平均而言,只有 45% 的企业的 SaaS 应用是有用户在用的。此外,56% 的应用程序都是由 IT 部门开发的,或者是由 IT 部门管理和使用。这里让人不可思议的是,这部分已经超出了公司核心业务软件的数量。
目前,业务用户热衷于在缺乏 API 的旧设备上部署 RPA,这是对旧系统改造的简单方案,但对于一直在进行迭代的数字业务公司来说并不方便。因此,敏捷公司使用的是低代码开发平台的即时应用修改,其中最突出的就是包含了这些能力。
最重要的是,我们现在正处于这样一个阶段:组织比以往任何时候都更需要跨多个数据源实时连接其数据管理、治理和可审计性,这需要在混合集成中使用更多工具。
优秀的软件开发平台或专用工具,可以将来自不同 SaaS 平台或原有旧系统的数据集成到多个系统和应用程序使用的数据结构中,这对于帮助公司管理人员做出数据驱动型决策至关重要。
2021 年,经过市场验证的替代方案便是低代码平台,优秀的平台供应商已经帮助企业解决了具有挑战性的问题。事实上,根据企业低码应用平台的魔力象限:“到 2025 年,企业开发的新应用程序中有 70% 将使用低代码或无代码技术。”
低代码并不意味着开发人员将被业务用户取代。低代码平台提供了一种抽象,可以减少开发者在创建应用或网络时通常面临的复杂性。而想要做到更好则依赖于软件设计者进行全栈监督,以实现细粒度控制。
这样做的目的是,让那些重复和日常的任务,如依赖关系管理,代码验证和自动构建,由平台完成,以便开发人员可以专注于开发有差异的额外流程,而不用花大量时间做重复劳动。
SaaS 方面,云服务请求的爆发正在改变“自建 vs 购买”的经济性和时间安排。这是因为 SaaS 发展不仅使原始预算暴增,而且还演变成了另一种形式的技术债务:在十几个系统网络之间切换是一种糟糕的体验,会带来比较差的业务后果。
大型供应商的 Web 服务从五年前的约 30 个,增加到如今由单个 IaaS 提供商提供多达 250 个,这对于创建云原生应用程序的业务开发人员来说是一个巨大的挑战。
为了克服这些挑战,云原生开发平台必须能够使开发团队继续专注于其数字产品的价值流管理,而不是仅仅在基础设施监管上耗尽其工程技能。
科技巨头在争夺稀缺专业工程师的竞赛中具有巨大的优势,所以那些获得不到技术精英的组织便需要采用新的方法来保持创新和团队竞争力。
这意味着,需要找到能够帮助他们抽象或消除技术复杂性的技术,并能够让他们的开发团队专注于业务成果和创新,就像云原生低代码平台一样。
DesignOps 是一种高效的设计运作团队理念,用户研究团队和前端设计团队(包括共享存储库,工具,资产交换)之间的密切合作会促进组织内不同产品团队之间的协作,并确保产品体验从交付开始的一致性。
在 2022 年,IT 和应用程序开发预算已经评估包含混合工作的需求,因为员工和合作伙伴的体验已经变得与客户体验一样重要——追求极致的使用体验。另外,广泛和频繁的使用这些应用程序有助于提高公司技术水平。
这种情况下,公司在满足用户体验的同时,还要推出更多数字化产品,进行大规模的设计管理,同时最大限度降低专业性和用户体验的不足,在这样的业务压力下,DesignOps 实践也便被推到了舞台的中心。
工程管理者还应该重视软件的可观测性,可以与 DesignOps 同步推进,以实现多用户群支撑。可观测性受益于开放标准,可用于日志和指标的设计,如用于跟踪的开放遥测技术。为了跟上这一趋势,更多的数字开发团队将致力于实现用户使用指标改善,这在过去是很难实现的。
渐进式 web 应用 PWA 结合了原生应用程序的功能和网站可访问性,但不需要发布到应用程序商店。与原生应用一样,PWA 可以脱机工作、发送推送通知,以及访问设备硬件(如相机或 GPS)。用户体验类似于移动和桌面设备上的原生应用程序,无需下载且没有更新冲突,这有一个巨大的优势——它们在连接性差的情况下运行良好。渐进式的 web 应用程序开发 仍然是全球的发展趋势。
因为它们的连接弹性设计和用户阻力(不断在其设备中安装本机应用程序),PWA 将在 2022 年继续发展。开发人员和软件领导者已经有很好的技术论据来支持 PWA 优先的技术思维,巨大的数字需求也加快了这种变化,因为:
从最终用户的角度来看,PWA 很容易在移动设备上使用 (没有应用程序商店),并且轻量级。
从开发者的角度来看,与原生应用相比,PWA 修改速度要快得多,并且更易于维护。
与原生应用不同的是,它们对所有设备使用同一个代码库,搜索引擎可以搜索到它们,并且它们很轻量。
以上便是我们在 2022 年探索的主要软件工程趋势,这些趋势已经在重塑软件开发过程中发挥着主导作用。无论是新时代的 DevOps 还是 headless 和 PWA 解决方案,你都需要与时俱进。如果你计划为公司开发软件,你可以联系市场上的各种软件开发公司。不过要确保你选择了一家能满足你独特需求的。
原文链接:
https://www.orangemantra.com/blog/top-software-development-trends/
本文仅做学术分享,如有侵权,请联系删文。