写点什么

更快速度更高质量!开发代办事项 API ,看 Amazon Q 加速软件开发!

  • 2024-09-27
    北京
  • 本文字数:3287 字

    阅读完需:约 11 分钟

大小:1.55M时长:09:02
更快速度更高质量!开发代办事项 API ,看 Amazon Q 加速软件开发!

软件开发团队一直在寻求加速软件开发生命周期(SDLC)的方法,以更快地发布高质量软件。作为一款由生成式 AI 驱动的助手,Amazon Q 可以帮助软件开发团队在 SDLC 的各个阶段中实现更高效的产出。

软件开发团队在分析需求、构建、测试和运维应用程序时,往往会在一些非核心任务上花费大量时间。基于亚马逊云科技 17 年相关专业知识进行训练的 Amazon Q ,可以革新您在亚马逊云科技上构建、部署和运维应用程序的方式。通过自动化常规任务,Amazon Q 让开发团队能够把更多时间投入到创新和研发当中。Amazon Q 可以加速新手入门,减少上下文切换,以及加速亚马逊云科技上应用程序的开发。


image.png


本文将以开发一个待办事项的 API 接口项目为示例,讲解如何使用 Amazon Q 来加速 SDLC 的各个阶段。我们将利用 Amazon Q Business 以及 Amazon Q Developer 来帮助实现该项目。我们将介绍 Amazon Q Business 在规划和研究阶段的常见用法,以及 Amazon Q Developer 在研究、设计、开发、测试和维护阶段的应用。

计划

作为产品负责人,需要花费大量时间进行需求分析和创建用户故事,同时还需要研究内部文档,如功能规格说明书和业务需求,以了解所需的功能和目标。手动筛选文档是一项耗时的工作,而现在可以利用 Amazon Q Business 快速从内部文档或 Wiki (如 Confluence)中提取相关信息。


image.png


Amazon Q Business 可以快速地和您的业务数据、业务信息和业务系统进行连接,让您可以进行定制对话、解决问题、生成内容并采取与业务相关的行动。Amazon Q Business 提供超过 40 个内置连接器,可连接流行的企业应用程序和文档存储库,包括 Amazon S3、Confluence、Salesforce 等,让您只需少量的配置即可创建生成式 AI 的解决方案。Amazon Q Business 还提供了与第三方应用程序交互的插件。这些插件支持读写操作,可帮助提高终端用户的生产力。

因此,您不需要深入研究内部文档,只需使用自然语言向 Amazon Q Business 询问需求,它就会立即为您提供相关信息,并帮助简化任务和加速问题解决。

以我们的待办事项 API 接口项目为例,假设业务需求记录在 Confluence 中,而 Jira 用于任务管理。您可以分别通过 Confluence 连接器和 Jira 插件,使 Amazon Q Business 与 Confluence 和 Jira 连接。为了了解需求,您可以询问 Amazon Q Business 关于用例概述、业务驱动因素、非功能性需求等相关问题。Amazon Q Business 会从 Confluence 文档中提取相关细节,并以清晰简洁的方式呈现给您。这样可以节省收集需求的时间,让您更专注于用户故事的开发。


image.png


在充分理解需求之后,您可以要求 Amazon Q Business 为您撰写用户故事,甚至直接在 Jira 中为您创建相应的任务。对于本文的 API 接口项目,Amazon Q Business 会根据需求量身定制生成用户故事,并在 Jira 中为您创建对应的待办事项,为您的团队节省时间,确保项目工作流程高效运转。


image.png


研究和设计

假设上述用户故事被分配给您,您需要根据 Confluence 页面中描述的技术栈来实现它。

首先,您可以询问 Amazon Q Business,了解组织开发指南中技术栈的相关信息。Amazon Q Business 会立即从托管在 Confluence 上的内部开发指南文档中为您搜索相关详细信息,并附带参考资料和引用。

作为开发人员,您可以在集成开发环境(IDE)中使用 Amazon Q Developer 协助软件开发,包括代码解释、代码生成以及代码改进(如调试和优化)。Amazon Q Developer 可以提供诸如分析需求、评估不同方法、创建实施计划和示例代码等协助。它还可以研究技术选型、权衡利弊、推荐最佳实践,甚至与您进行头脑风暴来优化设计。

让我们看看 Amazon Q Developer 是如何帮助分析用户故事、设计,并制定实施计划。


image.png


让我们在设计中进一步完善非功能性需求,如安全性和性能。


image.png


开发和测试

Amazon Q Developer 可以根据您指定的业务和技术需求生成代码片段。您可以审查自动生成的代码,手动复制并粘贴到编辑器中,或使用选项“插入到光标处”直接将其合并到源代码中。这有助于您快速原型化和迭代应用程序的新功能。Amazon Q Developer 使用对话的上下文来指导后续的响应,这使得您可以专注于构建应用程序,无需离开 IDE 即可获得答复和基于特定上下文的编码指导。


Amazon Q Developer 对于回答以下领域的问题特别有用:

  • 在亚马逊云科技上构建的相关问题,包括亚马逊云科技服务的选择、限制和最佳实践。

  • 通用的软件开发概念,包括编程语言语法和应用程序开发。

  • 编写代码,包括解释代码、调试代码和编写单元测试。

  • 使用用于代码转换的 Amazon Q Developer Agent 升级和现代化现有的应用程序代码。

在 Amazon Q Developer 生成的用户故事设计的基础上,您可以要求 Amazon Q Developer 实现 API 接口,并根据其他要求和参数进行完善。让我们与 Amazon Q Developer 合作,将设计变成实现。您可以利用 Amazon Q Developer 的专业知识进行构思、评估选项,并得出最佳解决方案。Amazon Q Developer 可以基于需求进行智能讨论,集思广益,创造新的测试用例。然后,它可以帮助构建实施计划,并高效地添加健壮、全面、以及对边缘例子覆盖度高的测试用例。

让我们要求 Amazon Q Developer 根据设计生成代码。


image.png


现在,让我们要求 Amazon Q Developer 实现 Amazon Lambda 函数。


image.png


Amazon Q Developer 可以提供代码示例和代码片段,展示如何实现设计。您可以审核生成的代码,获得 Amazon Q Developer 的反馈,并无缝地将其集成到项目中。与 Amazon Q Developer 的协作可以让您利用其知识快速迭代和丰富应用程序的功能,从而提高生产力。

Amazon Q Developer 还可以审查代码,并根据性能和其他参数找到改进和优化的空间。让我们要求 Amazon Q Developer 为我们的示例项目找出需要改进的地方。


image.png


调试和故障排查

Amazon Q Developer 可以在故障排查和调试方面为您提供协助。对于不熟悉的错误代码或异常类型,您可以要求 Amazon Q Developer 研究其含义以及常见的解决方案。Amazon Q Developer 还可以通过分析应用程序的调试日志,标出任何异常、错误或警告,从而提示潜在的问题。

Amazon Q Developer 可以对由错误配置导致的网络连接问题进行排查,提供简明的问题分析和解决建议。它还可以研究亚马逊云科技最佳实践,识别哪些地方与最佳实践不一致。对于代码问题,它可以在支持的 IDE 中回答问题和进行代码调试。利用其对亚马逊云科技服务及其交互的了解,Amazon Q Developer 可以提供特定亚马逊云科技服务的指导。在亚马逊云科技控制台中,Amazon Q Developer 可以对您在使用亚马逊云科技服务时所收到的错误(如权限不足、配置不正确、超出服务限制)进行故障排查。

让我们使用命令行工具 cURL 通过访问 Amazon API Gateway 的端点对我们的待办事项 API 进行测试。


image.png


由于 Amazon API Gateway 端点在调用 Amazon Lambda 函数在 Amazon DynamoDB 表插入记录时抛出了内部服务器错误,让我们转到 Amazon Lambda 控制台进一步排查问题,并通过为 POST 方法创建测试事件直接测试该函数。在亚马逊云科技控制台中,您可以利用 Amazon Q Developer 对不同的控制台错误进行故障排查。对于上述错误,Amazon Q 会分析其问题并帮助找到解决方案。Amazon Q 将直接在控制台上解释如何通过添加 Amazon DynamoDB 表名的环境变量来修复此错误。


image.png


现在,让我们在 IDE 中要求 Amazon Q Developer 生成代码来修复这个错误。Amazon Q Developer 随后会生成一个代码片段,用于在 Amazon CDK 中为 Amazon Lambda 函数设置所需的环境变量。


image.png


总结

相信通过本文的介绍,您能够了解到如何利用 Amazon Q Business 和 Amazon Q Developer 来简化软件开发生命周期,从而加快产品发布速度。凭借对代码和亚马逊云科技资源的深入理解,Amazon Q Developer 使开发团队能够在研究、设计、开发、测试和审查等阶段高效工作。通过自动化常规任务、提供专家指导、生成代码片段、优化实现代码和故障排查,Amazon Q Developer 让开发人员可以将注意力重新集中在推动创新的高质量的工作中。此外,通过 Amazon Q Business,团队可以借助生成式 AI 的力量,加快需求规划和研究阶段的进度。

2024-09-27 15:058789

评论

发布
暂无评论
发现更多内容
更快速度更高质量!开发代办事项 API ,看 Amazon Q 加速软件开发!_亚马逊云科技_亚马逊云科技 (Amazon Web Services)_InfoQ精选文章