CodeOps:使用LLM和模块化编码来加速开发
导语:我们如何利用生成性人工智能、通用应用程序结构和系统代码重用来推动更快、更创新的数字产品开发。
2009年,DevOps成为希望充分发挥快速发展的敏捷软件开发方法潜力的团队的运营模式。它使这些团队能够尽可能快地部署,为快速、迭代开发建立了新的范式。
随之而来的是软件生产的全球爆炸,随之而来的是DevSecOps、MLOps、AIOps、DataOps、CloudOps、GitOps等相关框架。对于任何工程功能或核心开发技术,都有一个运营框架和市场类别来优化它。
那么,在有这么多可用的解决方案的情况下,企业仍然很难将这些丰富的“-ops”战略转化为令人满意的速度和创新成果呢?随着组织继续容纳不同的代码源(专有、开源、LLM生成等),他们如何调整这些模型以适应即将到来的内容?
输入CodeOps,这是一种使用全资和可重用代码快速构建软件产品的新兴方法。它利用生成性人工智能和模块化编码概念来加快开发过程,增强创新,并最终推动更快的数字产品开发。
CodeOps的工作原理
与Agile一样,CodeOps的目标是启用和加速企业内部的软件开发。然而,它不是优化敏捷性,而是优化重用——重复使用规格、设计、架构、数据模型、集成,当然还有代码本身。
长期以来,重复使用现有代码一直是工程师的自然做法。当应用程序在规划层面看起来相似时,您可以立即识别可用的架构,并通过自动组装其核心部分来快速启动代码库。优秀的开发人员知道这一点,并将机会性地重复使用他们自己开发或在开源存储库中找到的代码组件。
然而,开发人员级重用的影响完全取决于团队的复杂性,通常没有流程或工具来确保其高效扩展,以在整个组织中提供利益。这种潜力只能通过系统重用来实现,其中认证模块可以集中提供和发现,供参与应用程序开发的团队使用。
因此,希望利用CodeOps概念的组织应该为范式转变做好准备。系统代码重用是开发过程中的变革性一步。它涉及创建一个集中存储库,以容纳经过必要审查和广泛测试的认证模块,以确保功能和安全性。目标是创建广泛的模块,这些模块可以无缝部署在不同的项目和团队中。
通过生成性人工智能实现投资回报率最大化
CodeOps也很容易适应人机混合开发的新趋势。如今,大多数团队都了解生成性人工智能作为机会主义集成副驾驶的潜力。然而,他们不确定如何预测、跟踪和最大化其对业务成果的影响。
通过重新定义团队构建软件的方式,CodeOps为理解生成性人工智能的投资回报率提供了一个框架。它优先考虑LLM的使用,如下所示:
根据项目规范组成现有模块
创建与战略模块路线图一致的新模块
为非模块化用例生成自定义代码
在模块组成方面,LLM已经匹配或超过人类性能,这是将存储的模块目录与自定义产品描述或详细规范进行模式匹配的任务。这种方法可以大幅减少传统软件开发生命周期的“规划和调整”阶段,这种减少可以为非技术利益相关者节省时间,缩短整体开发时间表。
法学硕士也非常适合根据自定义参数创建新模块。有足够的及时清晰度(或组织现有代码的培训集),他们能够将团队的现有代码标准推广到生产新的、可重用的规范和代码模块。因此,采用系统代码重用的组织可以根据其内部代码标准快速填充其模块目录,在比手动模块创建更短的时间内推动复合生产力收益。
最后,CodeOps很容易集成了个人开发人员的“Copilot”风格的AI代码生成。然而,在CodeOps学科中,这种用法被有效地限制在初始模块组成无法涵盖的自定义开发的最后一英里。这减少了团队今天面临的ROI模糊性:一些开发人员经常使用人工智能,一些很少使用人工智能,但使用CodeOps,您可以确定代码库中人工智能应该为您的团队提供生产力提升的部分,然后进行相应优化。
实践中的CodeOps
当涉及到重复使用代码模块时,有两个主要参数需要考虑:覆盖范围和可重用性。覆盖范围是指一个典型应用程序中有多少由特定模块类型组成,而可重用性是指某个模块类型在不同项目中可用的可能性。
以下是一些了解覆盖范围和可重用性的一般规则:
需要注意的是,应用程序的最大部分并不总是最可重复使用的。这种区别可以帮助团队了解如何在投资模块开发时做出正确的权衡。在CodeOps方法中,模块生产应首先根据可重用性而不是覆盖范围进行优先排序,以确保最大实现价值。
为了了解CodeOps如何影响给定的项目,让我们考虑一个有和没有CodeOps的个人财务应用程序开发时间表示例:
值得注意的是CodeOps的整个周期影响。它提高了流程中多个团队的生产力,而不需要这些团队大幅修改其工作流程。
系统代码重用的好处
实施系统代码重用创造了几个独特的业务优势,包括:
增强的灵活性:通过允许开发团队使用组织的代码访问预先认证的模块存储库,他们可以对其进行自定义并创建完全符合其独特业务需求的应用程序。
保证一致性:系统代码重用确保了跨应用程序的一致性。多个团队使用相同的认证模块可以最大限度地减少不一致,并降低遇到错误、安全漏洞或兼容性问题的风险。
加速教育:随着系统代码重用到位,开发人员可以从团队成员和同事的工作中学习并在此基础上再接再厉。这创造了一个组织知识库,加快了新团队成员的学习曲线,并在组织内培养了一种协作和创新文化。
风险缓解:经过严格测试和认证的代码模块经过验证且可靠,降低了在开发、测试或发布后出现关键安全或合规性问题的可能性。
对创新的承诺:通过将开发团队从不断执行重复性任务中解放出来,系统代码重用鼓励他们将努力引导到令人兴奋的创新的新水平。他们可以分配更多的时间和资源来创造具有更可预测结果的独特和有价值的功能,同时减少上市时间,以产生新的收入或成本节约。
更好的构建方式
最终,接受系统代码可重用性的CodeOps方法通过将交付速度提高一倍,提高生产力,并在竞争激烈的技术环境中促进创新和协作,从而改变了自定义应用程序的开发。创造和创新新产品是技术的乐趣部分,这意味着使用CodeOps的组织不仅比竞争对手创造优势,还能提高内部团队的生产力和士气。
Anand Kulkarni是Crowdbotics的首席执行官。