跳转到主要内容

概览

Devin 集成到整个软件开发生命周期的各个阶段:从理解现有代码、规划变更,到测试、代码审查和部署更新。

工程师的时间都花在了哪里

研究表明,工程师花在编写代码上的时间不到 20% (1, 2) 。大部分时间用于理解代码库、规划变更、审查工作成果以及测试。Devin 能加速上述各个阶段的推进,同时让人类工程师始终保持掌控权。
Devin Across the SDLC

在现有工程流程中协同工作

Devin 通过创建包含其建议代码修改的 Pull Request (拉取请求) 为现有代码库做出贡献。Devin 与任何人类工程师一样,同样受分支保护和 SDLC 相关策略的约束。人类工程师会在决定是否合并这些代码更改之前审查 Devin 创建的 PR。

SDLC 集成环节

理解代码与规划

在编写任何代码之前,工程师需要理解现有系统并制定实施方案。Devin 能显著加速这一阶段:
使用 DeepWiki 结合自动生成的文档来浏览架构和代码。DeepWiki 为你的代码库提供对话式文档,使你更快速地理解复杂系统和依赖关系。
使用 Ask Devin 直接查询你的代码库。Ask Devin 可以回答关于代码结构和依赖关系的问题,并在实现之前帮助你界定任务范围并制定计划。凭借先进的代码搜索能力,Ask Devin 能生成详尽、准确且引用信息完整的答案,从而减少在逆向分析和追踪依赖上花费的时间。
Devin 可以通过将需求与代码库进行比对分析来界定任务范围并制定计划。当与 JiraLinear 集成时,Devin 会自动分析工单并提供置信度评分,帮助你为工作设定优先级。
Devin 可以对告警和待办事项进行分诊,归类问题并提出处理方案。这有助于工程团队更高效地确定优先级,并减少在前期排查上花费的时间。

开发

Devin 以异步方式处理开发任务,使工程师能够委派工作,同时专注于更高价值的活动:
将定义明确的任务异步委派给 Devin。Devin 会在自己的环境中工作,准备代码修改并提交 PR 供审查。对于可以在多个 Devin 会话之间并行化的重复性任务,这种方式尤其有效。
Devin 在大规模现代化项目中表现出色。例如,客户曾使用 Devin 将数百万行代码的 ETL 单体系统迁移为模块化组件,实现了 8 倍的人力时间节省。Devin 可以跨数百个代码仓库执行端到端迁移,包括 COBOL 等遗留技术栈。
Devin 会遵循你团队的规范来准备并提交 PR。Devin 会自动发现你代码仓库中的 PR templates——包括 Devin 专用模板 (DEVIN_PR_TEMPLATE.md) 和标准 GitHub/GitLab 模板。你可以自定义 Devin 使用的模板,而无需更改面向人工协作者的默认模板。

测试

Devin 会在自己的环境中运行自驱动测试循环,从而提升测试覆盖率,并尽早发现问题:
Devin 会根据人工提供的运行手册编写测试用例,遵循你团队的测试模式和规范。当 Devin 生成测试时,覆盖率通常会提升 1.5–2 倍,往往可以达到 90% 以上的覆盖率。
Devin 会在自己的环境中运行测试,并对代码反复迭代直至所有测试通过。这包括在提交 PR 之前运行你现有的测试套件、代码风格检查 (linting) 和类型检查。

代码审查

Devin 可以对 pull request 提供自动化的初步审查:
Devin Review 可对 pull request 提供自动化的初步审查,检查正确性以及是否符合组织的最佳实践。你可以在组织设置中为所有 PR 启用该功能,也可以仅为 Devin 创建的 PR 启用。
启用 Auto-Fix 后,Devin 会自动响应代码审查评论、修复已标记的 bug,并针对 CI 失败进行迭代——形成闭环,让 PR 无需你介入即可不断迭代,直至达到可合并的质量。
Devin 会根据你的编码标准、风格指南和安全要求检查 PR,并标记潜在问题,供人工审查者处理。

安全性与合规性

Devin 集成到 CI/CD 流水线中,以自动处理安全问题:
将 Devin 集成到你的 CI/CD 流水线中,以响应来自 SonarQube、Fortify 或 Veracode 等静态分析工具的扫描结果。当这些工具标记出问题时,Devin 可以自动审查并修复。客户反馈显示,大约 70% 的漏洞可以自动修复——既能清理历史积压问题,又能降低安全风险。
Devin 可以在你的整个代码库中执行与合规相关的变更。比如,当新法规要求在数十万文件中进行更新时,Devin 可以在所有受影响的代码仓库中系统化地实施这些变更。

入门

要将 Devin 集成到你的 SDLC 中:
  1. 通过 GitHubGitHub Enterprise ServerGitLabBitbucketAzure DevOps 连接你的代码库
  2. 配置分支保护,以确保 Devin 创建的 PR 会经过你的标准代码审查流程
  3. 设置集成,将 JiraLinear 用于工单驱动的工作流,并通过 SlackMicrosoft Teams 与 Devin 聊天和协作
  4. 创建 playbooksKnowledge,将你团队的模式和标准固化为规范,供 Devin 遵循
  5. 连接 MCP,通过 自定义工具和集成 扩展 Devin 的能力
  6. 配置 CI/CD 集成,以实现自动化的安全修复和测试