自动审查和改进图表
AI 可以提取现有的软件图表(例如组件图、序列图或部署图),并检查其清晰度、最佳实践和一致性。它可以识别缺失的部分(例如,缺少数据库图标或不清晰的通信路径),并根据 UML 或 C4 等广为接受的准则提出改进建议。此功能提供近乎即时的反馈,有助于保持一致的样式和结构,并加快审核流程,从而减少手动检查的时间。
改进架构决策记录(ADR)
架构决策记录会存储您做出的关键设计选择,以及考虑的背景和替代方案。AI 工具可以通过建议更精准的措辞、突出被忽略的细节以及构建每个决策的利弊来改进这些记录。这确保了任何人日后再次访问 ADR时都能快速理解做出特定决策的原因、方式以及其中涉及的潜在权衡,所有这些都以清晰的记录形式呈现。
假设您的团队正在为新的外卖项目选择数据库。他们列出了三个选项,最终决定使用 MongoDB。
人们会觉得这是一个不错的选择,但为什么偏偏只有三个呢?
MongoDB 背后的商业逻辑又是什么呢?
您可以将您的需求提交给 LLM,并提交您的 ADR,然后会收到类似这样的回复:
决策:基于初步研究,我们将考虑三个主要的数据库选项:MySQL、PostgreSQL 和 MongoDB (NoSQL)。在权衡了各自的利弊之后,我们决定使用PostgreSQL作为我们的主要数据库。虽然它可能不是最先进的选择,但它的稳健性、可扩展性和社区支持使其成为该项目的理想选择。
创建征求意见稿 (RFC) 模板
当团队提出新功能或重大系统变更时,他们通常会发布正式的 RFC。RFC 是一种征求意见稿 (RFC) 格式:团队会创建一份文档,涵盖功能性和非功能性需求、图表、架构决策、成本分析、计算、可靠性策略等等。这类文档撰写起来比较困难。
AI 可以生成强大的模板,提示作者包含所有重要信息——目标、设计概述、数据流、测试策略和风险评估。通过确保预先涵盖所有重要主题,团队成员可以更轻松地评估提案、贡献实用见解并得出明智的结论。
优缺点分析
选择技术或决定如何构建系统可能涉及许多相互竞争的因素。人工智能助手可以处理各种输入信息(例如系统规模、预期工作负载、性能标准和预算),从而对每个选项的优缺点进行简明的分析。这有助于减少对熟悉工具或技术的偏见,并为潜在解决方案提供更广阔、更客观的视角,最终帮助您做出更符合项目特定需求的选择。
诚然,LLM 倾向于认同用户的观点,倾向于提供精准的信息,但了解其弊端也可能对你有利。不妨请 LLM 担任独立技术顾问,为你提供一份详尽的清单,列出每种方案的利弊。
自动化代码和架构原型
AI 的功能远不止文档编制或文本分析,它还能帮助构建切实可行的原型。这些工具可以生成初始代码框架、概述模块结构、草拟数据模型,甚至估算性能需求。通过为架构师和开发人员提供功能性起点,AI 可以腾出更多时间进行更深入的创新和定制,而无需花费数小时手动设置新项目或猜测最佳云配置。
Bolt.new、Loveable.dev、Replit AI 等工具肯定可以快速为您构建解决方案原型,并进行初步测试,以获得进一步的反馈和学习。您可以放弃这个 PoC,构建更强大的解决方案。
最后的想法
随着人工智能的快速发展,这些应用程序将变得更加强大,提供更快的反馈、更好的一致性和更丰富的洞察。人工智能并非取代人类架构师,而是作为重要的合作伙伴,确保设计流程高效、记录完善,并与技术需求和业务目标紧密结合。