跳转到主要内容

概览

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

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

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

Devin 在软件开发生命周期中的角色

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

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

SDLC 集成环节

理解代码与规划

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

开发

Devin 以异步方式处理开发任务,使工程师可以将部分工作交给 Devin 处理,同时专注于更高价值的活动:
将定义清晰的任务异步委派给 Devin。Devin 会在其独立环境中准备代码变更,并提交 PR(pull request,拉取请求)供评审。对于可以在多个 Devin 会话中并行处理的重复性任务,这种方式尤为高效。
Devin 在大规模现代化项目中表现出色。例如,客户使用 Devin 将数百万行代码的 ETL 单体系统迁移为模块化组件,实现了 8 倍的人力时间节省。Devin 能够在数百个代码仓库间执行端到端迁移,包括 COBOL 等遗留技术栈。
Devin 会按照你团队的约定来准备并提交 PR。如果你的代码仓库中存在 devin_pr_template.md 文件,Devin 将使用它来统一 PR 描述的格式。

测试

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

代码评审

Devin 可以对拉取请求(Pull Request,PR)提供自动化的初步评审:
通过 API 配置 Devin,在人工评审之前先自动评审 PR。每个 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 集成,以实现自动化的安全修复和测试