写点什么

更快速度更高质量!开发代办事项 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:058860

评论

发布
暂无评论
发现更多内容

模式与重构

满山李子

Week 03 学习总结 代码重构

Z冰红茶

架构师训练营 -week3 命题作业

J.Smile

极客大学架构师训练营

架构师训练营第三周作业

张锐

架构师面试题(2)

满山李子

「架构师训练营」第 3 周作业

邓江川。

设计模式-单例&组合

Z冰红茶

第三周作业

Geek_5d0795

极客大学架构师训练营

设计模式学习总结

qihuajun

Spring 源码学习 - @Async注解实现原理

Geek_k6ry2n

Spring Boot aop

区块链中的“链上”和“链下”

CECBC

区块链技术 分布式身份标识 难以篡改

邮件领域还有创新吗?

池建强

创业 软件 创新 邮件

week3 命题作业

任小龙

week3 作业

雪涛公子

每周学习总结

Conn

极客大学架构师训练营

Week01 作业

Conn

Raft探索历程--Part1

老胡爱分享

分布式协同 raft

单例及组合模式实践

WulalaOlala

设计模式 极客大学架构师训练营

易纲:上海可以在人民币自由兑换等方面先行先试

CECBC

数字货币 区块链技术 金融科技中心

第二周学习总结

任小龙

第三章总结

数字政府升级下的数据产品探索

数据司令

大数据 政务信息化 数字政务

创业公司技术体系建设

星际行者

Kubernetes DevOps APM 基础设施

架构师训练营 第3周作业

Lingjun

极客大学架构师训练营

如何搭建一个本地服务器集群

Rayjun

分布式

重学设计模式之单例模式

设计模式 单例模式 Singleton

架构师训练营第 3 周 _ 课后作业

方舟勇士

课程作业

架构师训练营 第3周总结

Lingjun

极客大学架构师训练营

week3 总结

雪涛公子

Feign Client 原理和使用

Geek_k6ry2n

Spring Boot HTTP

第三周总结

Geek_5d0795

极客大学架构师训练营

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