写点什么

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

评论

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

前几年写的自己团队管理内容,如果你想做研发管理,可以看一下

安宇|Way

管理 考核 团队 文化 价值观

CloudQuery 使用教程之 No.3 数据查询(中)

BinTools图尔兹

云计算 dba 开发运维 数据库管控工具 国产数据控

提升中台化体系产研效能的ParisFlow方法与实践

downgoon

Java的多线程和高并发详解

北游学Java

Java 多线程

网络攻防学习笔记 Day60

穿过生命散发芬芳

网络攻防 6月日更

聊聊知乎订单系统迁移

知一

监控 软件开发 系统架构 重构 订单系统

推荐系统之数据与特征工程(二十三)

Databri_AI

数据 推荐系统 技术特征

2021,云原生避坑经验分享|CIC 阵容官宣

青云技术社区

容器 云原生

智能运维(AIOps)系列之一:个人对智能运维的理解

micklongen

AIOPS 智能运维

开源商业化:满足各方底层需求

茶陵後

开源 开源社区 开源文化

中国大学MOOC Android 客户端开发提效之页面信息

有道技术团队

android 服务端 客户端

《面试补习》- Java集合知识梳理

九灵

Java 面试 集合

vue keep-alive(1):vue router如何保证页面回退页面不刷新?

zhoulujun

Vue vue-router keep-alive 页面缓存

华为云原生媒体网络,升级传统,赋能未来

华为云开发者联盟

云原生 直播 TechWave 媒体网络 云视频

【LeetCode】传递信息Java题解

Albert

算法 LeetCode 7月日更

革故鼎新:企业数字化转型繁荣互联网生态建设,驱动ICT设施升级

科技热闻

智能技术与生物技术共同绘就生命“藏宝图”,对你我意味着什么?

脑极体

漏洞都有哪些分类

网络安全学海

网络安全 信息安全 渗透测试 漏洞 漏洞分析

中层管理者的工作五步法

石云升

读书笔记 职场经验 管理经验 6月日更

在线图片转base64工具

入门小站

工具

【源码系列】Spring 过滤器和拦截器

Alex🐒

spring 源码 Spring Framework

SQL 居然还能在 Apache ShardingSphere 上实现这些功能?

SphereEx

构筑高质量的数据中心基础设施,华为助力创造互联网全新体验

科技热闻

双碳打开新机遇 华为互联网数据中心基础设施筑起“绿色基石”

科技热闻

5分钟速读之Rust权威指南(三十三)Send&Sync

wzx

rust

卢卡开专栏了

卢卡多多

数据库 MySQL 高可用 6月日更

我们常说的算法时间复杂度和空间复杂度到底是什么?

编程三昧

编程 算法复杂度

vue keep-alive(2):剖析keep-alive的实现原理—学习笔记整理

zhoulujun

Vue vue源码解读 keep-alive实现原理

Linux之head命令

入门小站

Linux

Rust从0到1-函数式编程-性能比较

rust 函数式编程 Performance 性能比较

【Flutter 专题】129 图解 ToggleButtons 按钮切换容器组

阿策小和尚

Flutter 小菜 0 基础学习 Flutter Android 小菜鸟 7月日更

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