人工智能已经能够加速软件开发中的重要任务,例如代码生成、测试创建、文档编写和错误排查。生产力的提升是实实在在的,但同时也给工程团队带来了新的挑战:如何在不牺牲架构、质量和可维护性的前提下提高开发速度。
当人工智能辅助开发仅仅依赖于孤立的提示时,一些重要的决策可能仍然隐含在代码中。代码虽然能够运行,但我们并不总是清楚为什么会选择特定的方法,考虑了哪些需求,以及这种实现方式应该如何演进。
这种情况会增加返工和技术债务,尤其是在大型项目中。AWS创建的基于代理的开发环境Amazon Kiro提出了一种更结构化的方法,它将 AI 代理与规范、持久上下文以及集成到工程工作流程中的自动化相结合。
问题不在于如何快速生成代码,而在于如何保持上下文和意图。
人工智能工具可以根据自然语言描述生成代码。对于特定任务,这可以显著加快工作速度。但当不同的功能、业务规则和架构决策开始累积时,挑战就出现了。
如果没有清晰的结构,最初的意图很容易在项目过程中出现的各种提示、对话和变更中迷失方向。这会阻碍修订、新人员的入职培训以及未来的维护工作,因为部分知识会集中在与人工智能交互的语境中,而不是项目本身。
Amazon Kiro旨在通过规范驱动开发来缓解这个问题。规范调用并非直接从提示编写代码,而是将请求组织成需求、技术设计和实现任务。团队可以在代理执行之前和执行期间审查这些步骤。
这种方法能够更清晰地展现需求、架构和实施之间的联系。人工智能持续加速工作,但这一切都是在一个可以跟踪和验证重要决策的流程中进行的。
规范、测试和代理为人工智能开发增添了更多结构。
规范模型对于更复杂的功能尤为重要。Amazon Kiro从高层需求出发,可以构建需求结构,提出设计方案,并将实现过程分解为一系列顺序任务,从而使整个过程更易于追溯。
代理还可以编写代码、运行测试,并验证实现是否符合定义。亚马逊 Kiro 的方案包含确定性工具,例如基于属性的测试,以帮助验证软件的行为是否与最初意图相符。
另一个重要特性是规范文件。规范文件允许您记录项目约定、采用的框架、内部标准和开发规则。这意味着团队无需在每次交互时重复这些信息,代理程序可以基于持久的环境上下文进行工作。
在实践中,这有助于减少人工智能辅助开发中常见的问题:技术上有效的答案与公司标准或现有架构不符。
自动化并不一定意味着失去控制。
Kiro 还使用钩子来自动化与开发周期相关的操作。诸如文件更改、任务执行或代理自身所做的更改等事件都可以触发预定义的工作流程。
例如,团队可以配置自动化流程,以便在相关变更发生后运行测试、更新文档或验证特定技术标准。这既减少了重复性的手动任务,又不会免除工程团队对最终结果的责任。
控制还体现在权限和机制中,这些机制限制了代理可以访问哪些资源。Amazon Kiro提供多种设置,可以根据项目上下文来指导行为、创建专用代理以及限制对文件、工具和资源的访问。
这一点在企业环境中尤为重要。赋予代理人的自主权越大,就越需要明确权限、职责、变更审查以及行动可追溯性等方面的规定。
Kiro 的采用需要与现有工程技术保持同步。
采用 Kiro 并不意味着要取代现有的开发流程。版本控制、代码审查、持续集成/持续交付 (CI/CD)、自动化测试、安全性和可观测性仍然至关重要。人工智能应该与这些实践相融合,并帮助更高效地执行它们。
Flexa Cloud对 Kiro的定位也遵循这一逻辑。其采用过程包括将该工具集成到 AWS 环境中,使其使用与现有工程工作流程保持一致,并定义安全性、版本控制和治理标准。
这种谨慎至关重要,因为每个团队的成熟度、架构和合规性要求各不相同。在某些情况下,第一步可能是使用规范和指导来规范开发。而在其他情况下,则可能需要转向钩子、专用代理以及与内部工具的集成。
真正的收益不仅仅在于每小时生成更多代码,而在于利用人工智能使工程流程更加结构化、可预测和可追溯,从而在提高速度的同时保持质量。
Flexa Cloud 为希望采用Amazon Kiro 的团队提供支持,使其能够与 AWS 生态系统以及现有的开发、安全和治理流程相集成。
联系 Flexa Cloud,了解如何在您的工程运营中以更高的安全性、技术控制和成熟度采用 Kiro。
FLEXA


