AI智能总结
探索生成式人工智能在软件工程中的集成以增强编码和团队协作 生成式人工智能是软件工程最新、最伟大的演变。 0405将明天的软件工程范式带到眼前:增强软件团队 07 如何前进:一套经过验证的软件工程转型方法07 评估组织的成熟度,制定具有明确目标的路线图。 运行真实世界实验并衡量影响生成式人工智能的08 在软件工程中规模化部署生成式人工智能 08 卡普吉尼在衡量方面的经验生成式AI影响 09 测量协议和现实世界实验:旨在获得可操作且可靠的结果 目录 1112前提条件与成功因素经验教训 13 14软件工程新时代的曙光我们可以与你一起推动软件工程转型 免责声明:本文基于当前生成式AI的格局,提出了前瞻性的展望。它反映了我们对生成式AI技术理解和经验的快速进步。它借鉴了外部研究、技术领袖以及我们团队和客户的实验成果。一如既往,未来仍然不可预测,但我们可以建立和想象可能的发展轨迹和前景。 软件在现代商业中扮演着至关重要的角色,无论是集成到商业应用或产品中。尽管软件无处不在,但对于软件工程组织来说,最终挑战始终是足够快速地发布优质软件,以跟上不断加速的需求。 生命周期自动化、开源生态系统、云原生和可组合软件架构、DevOps连续体以及低代码/无代码开发都已被引入。并且每一项都建立在以往迭代进步的基础之上。 但是对更快的价值实现时间和更好的成本效率的需求仍在加速。这使得软件组织在控制技术债务和成本的同时,难以按照预期速度和预期质量交付。 多年来,通过采用新方法和新技术,生产效率和产品质量标准得到了逐步提高。敏捷和以产品为中心的持续方法,软件 生成式人工智能是软件工程最新最伟大的进化。 生成式人工智能如今在许多应用领域引发了惊奇和兴奋,软件工程领域也不例外。比尔·盖茨称其最新进展为40多年来最革命性的技术成就,1具有极大地改进组织应对业务和it挑战的方式的潜力。 800家组织,67%的高管认为生成式AI在IT职能中最具潜力,以推动创新和创造价值3此外,根据福雷斯特研究,“现成和定制AI软件支出将从2021年的330亿美元增长到2025年的640亿美元,并将比整体软件市场增长快50%,年增长率为18%。”4 推向市场的时间。但如果组织和他们的员工承诺加入,并牢记早期采用者将在该领域占据领先地位。 此外,生成式人工智能不仅提供了变革的机会,也提供了标准化和增强软件交付的机会。在软件工程中使用生成式人工智能带来的好处可以扩展到业务的其它领域,以创造更多价值,降低IT成本并最小化技术债务。 商业与技术交汇将处于生成式AI影响的核心。一方的发展影响另一方。例如,高质量的软件工程可以缩短上市时间,从而更早地提供商业价值,使领先组织在软件和商业导向方面都具有优势。 在遗留软件现代化和新型软件开发场景中,生成式人工智能为软件开发人员节省了时间。他们可以解放出来专注于业务需求、软件质量、安全性以及新型软件所需的高级功能。 使用生成式AI的组织已看到7%–18%的生产力提升6在软件工程功能方面,与他们的初始估计相比。创建文献和文档,以及编写代码和脚本显示出最大的时间节省,分别达到35%的最大值和10%的平均值,以及34%的最大值和9%的平均值。7生成式人工智能也对软件专业人士的工作满意度产生了积极影响。69%的高级软件专业人士和55%的初级软件专业人士报告在使用生成式人工智能进行软件开发时,感到高度满意。78%的软件专业人士对生成式人工智能增强商业和技术团队之间协作的潜力持乐观态度。8 生成式人工智能对软件开发者的工作满意度也有积极影响。69%的高级软件开发者和55%的初级软件开发者报告说,使用生成式人工智能进行软件开发使他们感到高度满意。78%的软件开发者对生成式人工智能增强业务和技术团队之间协作的潜力持乐观态度。5 我们的德勤研究院报告显示,61%的组织认为促进更具创新性的工作(例如开发新的软件功能和服2 生成式人工智能将补充带宽——使用相同的能力——以实现更高的生产力和效率,以及更快的 根据另一项Capgemini Research Institute的调研 将明天的软件工程范式带到眼前:增强软件团队 我们相信生成式人工智能将逐渐改变软件开发的方式。大型语言模型(LLMs)的出现为向更加强调人工智能辅助(增强)的软件开发团队转变引入了有力的理由。将生成式人工智能集成到软件工程中承诺将显著提高生产力和增强质量。敏捷和DevOps的基础原则和方法得到保留,包括协作、适应性、价值交付时间、以产品为中心以及持续反馈循环。 根据Capgemini研究机构,在基础必要条件方面最大的差距通常是平台和工具的获取,包括IDE、自动化和测试工具以及协作工具。只有27%的组织声称这些工具的可用性高于平均水平。在测试领域的专业人士中,有24%说他们可以获取这些工具,而项目和管理专业人士中有19%,这进一步突出了软件工程职能内部的差距。9 使软件团队能够专注于更复杂和创造性的方面,从而提高整体生产力。 配对编程的现代化演进:通过重组和新的工作方式,增强型软件团队可以有效受益并优化生成式AI的使用,并遵循以下原则: • 增强型结对编程:增强软件团队的基本单位是一个或多 个软件工程师,他们相互间或单独与AI助手间歇性协作。 通过与 LLM 驱动的 AI 助手合作,增强型软件团队可以自动化繁琐的任务,并促进更精细、数据驱动的决策制定。这优化了软件生命周期,并有助于在过程中实现更多里程碑。 • 人工智能与人类协作:团队成员与AI助手单独合作以自动化重复性任务,理解和解决问题,或进行头脑风暴,利用LLM的速度和知识,同时确保人类的创造力。 我们将这种方法称为对话式软件工程。这就是软件团队提示人工智能助手的地方,让它生成代码片段、排除故障,甚至帮助设计和架构软件。其想法是通过在开发环境中与人工智能助手进行持续的对话,使软件开发工作流程更加动态和互动。这是一种简化任务和更高效解决问题的方式。 • 人与人协作:在与人工智能助手交谈后,人类审查 生成的输出并提高其质量。 • 高级协调:一位高级主管负责监督增强团队,协调工作并解决冲突,同时确保控制与验证,以促进顺畅的工作流程和健康的团队动态。 将这项技术应用于软件工程将显著帮助软件团队完成他们在传统软件开发生命周期(SDLC)中所执行的大量任务。 例如,软件工程师在将待办事项列表故事转换为软件时,通过设计和编码活动使用生成式人工智能。可以通过生成式人工智能来创建用户界面原型、实体模型和应用程序编程接口(API)。由于设计输出始终由软件工程师或技术负责人进行审核、更新和验证,因此这带来了生产力的显著提高,同时并未牺牲质量。 尽管将生成式AI应用于软件工程仍处于早期阶段,但功能。预计生成式AI将在为软件工作者提供更好的体验、工具和平台以及治理方面发挥关键作用,到2026年将协助完成超过25%的软件设计、开发和测试工作。10 生成式人工智能也即将通过将重点从编码转向提示工程和代码校对来重新定义传统编程实践,正如 OpenAI 计算机科学家 Andrej Karpathy 所证实的那样,他最近表示:“最热门的新编程语言是英语。”11例如,使用平实语言,软件工程师可以描述软件功能模块的预期功能,然后评审、更新和验证生成的输出。还有很多其他例子,例如代码自动补全、为单元测试生成代码、(回顾)文档以及将代码从一种语言迁移到另一种语言。 生成式人工智能的一个非常重要价值是它在编码过程中就能支持开发者。它可以直接建议整洁的代码,或者在发现问题时评估现有代码以提升软件质量。 如何前进:一种经过验证的软件工程转型方法 要通过生成式人工智能开始这段旅程,组织将从与经验丰富且值得信赖的顾问合作中获益匪浅。除了具备相当丰富的AI专业知识外,这位合作伙伴还应该准备好监督实验,并组建协作项目团队,这些团队最终将发展成联合软件公司。 进展速度不同,模型也不同。因此,在生成式人工智能成为日常操作的一部分之前,每个都将有独特的需求和需要考虑的挑战。 重要的是要关注三个领域: • 评估组织的成熟度并制定路线图。 各种因素,例如公司规模、人员金字塔、特定行业目标,这意味着每个组织单元 ••运行实验衡量影响。大规模部署。 评估该组织的成熟度,并制定具有明确目标的道路图。 在一个公司中,通常有多个SDLC变体。通常,每个程序/项目/产品都有自己的SDLC版本。对IT领域的SDLC进行细致的评估和深入理解,将揭示其软件工程流程的当前成熟度,以及它们是否与行业最佳实践一致。评估还将识别 为了衡量未来转型的成果并尽早让利益相关者参与进来以培养协作环境。 改进,特别是在瓶颈或不效率发生的地方。 基于此评估,可通过选择最有潜力的转型赋能因素,以及确定其相关的风险和挑战来定义目标。有些赋能因素将由生成式人工智能驱动,而对于另一些,则更多是应用软件工程的最佳实践。定义关键指标很重要 最终,综合价值、可访问性和风险评估将作为制定变革路线图的基础。所有选项将被权衡和优先排序,以便就资源分配做出明智的决策,同时为每个选项定义不同的领域、团队和角色。 运行实际实验并衡量其影响生成式人工智能 优先级确定后,是时候选择最佳生成式AI工具来实现它们了。同时要设立护栏来管理任何法律和网络安全风险,同时控制成本。衡量和持续改进至关重要。随着生成式AI被更多SDLC流程所应用,组织需要评估其影响。这意味着要衡量关键方面,例如生产力提升、软件质量、上市时间和开发者体验。应建立反馈循环,以便根据低效问题调整部署的步伐和范围。或者应对不断变化的需求和具体目标。关键在于 为了说明这一点,生成式人工智能在软件工程中的采用仍处于早期阶段,仍有十分之九的组织尚未进行规模化应用。27%的组织正在运行生成式人工智能试点项目,11%的组织实施了在软件功能中利用生成式人工智能。 实验和测量应与组织的业务环境和行业环境相关。 但要想真正具有竞争力,组织需要的不只是内部衡量。在凯捷,我们开发了一套工业化的价值衡量协议,用于评估生成式AI在整个组织的多个软件开发生命周期(SDLC)中的客观影响。它被用于衡量和比较组织的指标与我们基准的对比,该基准考虑了我们所有相关的内部和外部生成式AI项目。这为组织提供了一个清晰的视角,让他们了解自己在同行中的地位。 四分之三(75%)的大型组织(年收入超过200亿美元)已采用(试点/扩展)生成式人工智能,而其规模较小的对应组织的比例仅为23%(年收入在10亿至50亿美元之间)。12 部署生成式人工智能用于规模化软件工程 由于各种角色可能需要改变,引入一项生成式人工智能技能提升计划非常重要,这将有助于塑造新的软件工程金字塔,并解决与所需技能相关的工作方式。这将为一项战略计划奠定基础,该计划将逐步将生成式人工智能集成到软件生命周期中。进一步的一步 在通过实际世界试点和全面交付对生成式人工智能进行了实验之后,许多组织将希望扩大其应用范围,并可能涉及数百甚至数千名开发者。对于此类大规模部署,必须仔细考虑其组织人事影响。 可能提供指导和帮助,以引导员工准备与大量新的生成式AI工具一起工作。 最后,应组建一个专门团队来确定业务案例、衡量进展,并确保成果符合预期。这是必要的,因为每个部署的速度和范围都将不可避免地需要调整。 卡普吉尼在衡量方面的经验生成式人工智能影响 我们与各行业客户合作的经验告诉我们,生成式人工智能驱动的软件工程是否以及何时、多快以及多大程度上颠覆并重塑一个组织,而不是一个是否的问题。我们从客户那里听到的最多有两个问题。首先是,基于生成式人工智能的协助将如何影响软件生产力和质量。其次,由于它,软件团队的 组织和工作方式将如何改变? 2023年初,凯捷启动了一项大规模的全球项目,通过实验来测试用例,以测量生成式AI的影响,实验既在内部进行,也联合客户进行。目的是查看生成式AI可以在哪些方面以及如何增强软件开发团队通常执行的任务。我们部署了一个可靠且一致的测量