Amazon Web Services ブログ
Kiro によるマルチモーダル開発:設計から完成まで
本記事は 2025 年 10 月 21 日に公開された Kandyce Bohannon による “Multimodal Development with Kiro: From Design to Done” を翻訳したものです。
ソフトウェアアーキテクチャとエンジニアリングは、アートでありサイエンスでもあります。私たちは複雑な問題を解決するエレガントな設計を作り上げますが、初期設計から最終デプロイまでのどこかで、そのビジョンが失われてしまうことがあります。多くの開発者やアーキテクトの方なら、これを身をもって経験したことがあるでしょう。システム図を何時間もかけて完璧に仕上げても、実装がその設計からどんどん逸れていってしまうのです。要件が変わり、開発者があなたの書いた図を異なって解釈し、気がつくと美しいアーキテクチャは、デプロイされる前から時代遅れになった妥協の寄せ集めになってしまいます。
従来のシステム開発は破綻しています。図と実際にデプロイされるコードの間のギャップは時間を無駄にし、技術的負債を生み出し、的外れなシステムを提供します。しかし、そうである必要はありません。
私は最近、Kiro を使って金融取引システムを構築する際に、この課題に正面から取り組みました。これは、アーキテクチャの失敗が実際の金銭的損失やコンプライアンス上の悪夢につながるようなプロジェクトです。従来なら ER 図(エンティティ・リレーションシップ図)をデータベーススキーマに落とし込み、UML(統一モデリング言語)図をサービスインターフェースに変換するのに数週間かかるところを、Kiro のマルチモーダルなエージェントチャットを使うことで、ホワイトボードに描いたスケッチが数日で本番コードに変わりました。
Kiro がどのように視覚的な図とコード、ドキュメントを同時に処理することで、私の開発プロセスを根本から変えたのか。そして、あなたのプロセスもどう変えられるのかをご紹介します。
ホワイトボードの写真から TypeScript モデルへ
私はほとんどのプロジェクトと同様に、ホワイトボードと数本のマーカーから始めました。私がスケッチした ER 図 は、金融取引システムの中核となるエンティティを示していました。口座に接続されたユーザーがポジションを保持し、注文を実行して取引が行われます。そして、それらすべてがリアルタイムの市場データによって支えられています。
ここで Kiro のマルチモーダル機能が真価を発揮します。私は図を手動で変換する代わりに、ホワイトボードの写真を直接 Kiro にアップロードし、構築したいものについて会話を始めました。
Kiro は単に画像を見るだけでなく、手描きの図で表現されたエンティティ、関係、ビジネスロジックを理解しました。数分以内に、視覚的な入力を分析し、私が描いたものだけでなく、実際の金融取引システムに必要な暗黙の要件を捉えた包括的な仕様を作成しました。
視覚的な図は Kiro に構造的なコンテキストを提供してくれました。そして、チャットでの会話を通じて、どの図でも捉えることのできないビジネスのニュアンスを追加できました。私たちはコンプライアンスと規制要件、レイテンシに対する期待値、セキュリティの考慮事項について議論しました。やり取りのたびに、Kiro は私の元の視覚的設計と完璧な整合性を保ちながら仕様を更新してくれました。
ここで Kiro のマルチモーダルアプローチがその価値を証明します。Kiro は私の ER 図を受け取り、ホワイトボードのスケッチに対応する実際の TypeScript モデルを生成しました。生成されたコードは構文的に正しいだけでなく、元の図で暗示されていたビジネスロジック、関係、制約も含んでいました。User、Account、Order、Trade、Position などのエンティティは、適切な検証、関係、メソッドを持つ完全に形成された TypeScript クラスになりました。
途中で Kiro に作成するように頼んで生成されたクラスとデータベーススキーマを見ると、ホワイトボードに描いた単純な ER 図がプロダクション対応のシステムにどう進化したかがわかりました。最初は考えていなかった追加のオブジェクトタイプとの関係まで発見されました。たとえば、監査証跡、ユーザー権限、ポートフォリオ階層、実際の金融取引システムに不可欠な規制コンプライアンスフィールドなどです。
アーキテクチャの議論からインフラストラクチャ図へ
金融取引システムのスケーラビリティ、セキュリティ、デプロイ要件についての会話に基づいて、Kiro は包括的なクラウドに依存しない Kubernetes アーキテクチャを作成しました。この計画とともに、Kiro はシステムアーキテクチャを視覚化する Mermaid 図を含むドキュメントを作成しました。図は有益でしたが、読みやすさを向上させ、さまざまな表示プラットフォームでより良いスケーリングを可能にするために、SVG 形式に変換するよう Kiro に依頼しました。
Kiro のアーキテクチャ設計は、金融取引システム特有のパフォーマンスとコンプライアンス制約に対処しました。低レイテンシ取引サービスは、CPU ピニングと最適化されたネットワーク構成を特徴とする専用ノードプールにデプロイされました。データ層は、複数のアベイラビリティゾーンに分散された StatefulSets で実行される PostgreSQL と TimescaleDB を通じて高可用性を実現しました。イベント駆動メッセージングは、注文処理とリアルタイム市場データストリーミングに Kafka を使用し、包括的なセキュリティはネットワークポリシー、ポッドセキュリティ標準、シークレット管理のための HashiCorp Vault を実装しました。システムは、改変不能なの監査ログ、データレジデンシー制御、自動コンプライアンス監視を通じて規制コンプライアンスを念頭に置いて設計されました。
Kiro は、金融取引システムがデプロイ環境間での移植性を必要とすることを理解していました。設計されたアーキテクチャは、Amazon EKS (AWS)、Google Kubernetes Engine (Google Cloud)、Azure Kubernetes Service (Azure)、またはオンプレミス Kubernetes クラスターで変更なしに実行され、クラウドに依存しないままコンテナ化されたアプリケーションの業界ベストプラクティスを組み込んでいます。
このアーキテクチャ図は次のフェーズのインプットになりました。視覚的な Kubernetes アーキテクチャと議論のコンテキストの両方を使用して、Kiro はアーキテクチャの決定を実装する完全な Kubernetes マニフェストを生成しました。生成された Infrastructure as Code(IaC)には、コンプライアンスと環境管理のための適切なラベリングを持つ名前空間の組織、各コンポーネントに最適化されたアンチアフィニティルールとリソース制限を持つサービスデプロイメント、永続ボリューム要求を持つデータベースの StatefulSet 構成が含まれていました。ネットワークポリシーはサービス間のマイクロセグメンテーションを実装し、金融ワークロード向けにカスタムメトリクスを使用したHorizontal Pod Autoscalerが設定されました。Horizontal Pod Autoscaler がありました。これらすべてが Kubernetes のベストプラクティスに従ってセキュリティを確保していました。
生成された Kubernetes リソースには、本番環境対応の構成が含まれていました。たとえば、Pod Disruption Budget、リソースクォータ、モニタリング用のアノテーションなどです。Kiro は、私たちの上流のアーキテクチャ設計に関する会話を、クラウドネイティブのベストプラクティスに則りながら、特定の要件にも対応したデプロイ可能なインフラストラクチャへと変換してくれました。
マルチモーダルの利点と結果
このアプローチが非常に強力だった理由は、Kiro が画像を処理できるという点だけではありません。Kiro は視覚的な図を理解し、会話のコンテキストを維持し、生成されたコードファイルを参照しながら、これらすべての異なる入力タイプにわたって一貫性を保つことができたのです。そして同時に、実装の細部を超えて考えるよう私に問いかけてくれました。
従来の AI 開発ツールでは、各フェーズで別々の操作が必要でした。たとえば、図を解釈するツール、仕様書を生成する別のツール、コード生成のための 3 番目のツール、インフラストラクチャ計画のためのさらに別のツールなどです。そして、それぞれのツールを使う度に、引き継ぎによりコンテキストが失われ、不整合が生じ、手動での調整が必要になっていました。結果として、数週間の追加開発時間と、各ツールの出力が元の設計意図から逸脱することによる大幅な変更が発生していました。
Kiro のエージェントベースのアプローチは、開発プロセス全体を通じてトレーサビリティを維持できるようになります。3 日間、およそ約 15 時間の開発時間の後、私は最初に描いたビジュアル設計に一致する、ほぼ完成状態の金融取引システムが出来上がっていました。生成されたコードは、私がスケッチしたエンティティと関係を直接反映しており、会話を通じて明らかになったすべての複雑な追加の情報を取り込んでいました。各フェーズは次のフェーズに情報を引き継ぎつつ、元のホワイトボードのスケッチへのトレーサビリティを維持していました。Kiro はコンプライアンスやパフォーマンス、スケーラビリティといった複雑な技術的課題に対しても、私と一緒に取り組み、安心して解決へ導いてくれました。
最も重要なのは、Kiro のエージェントは単にコードを生成するだけではなかったという点です。設計上の判断に対して意見を述べたり、規制対応のための改善を提案したり、当初は想定していなかったパフォーマンスのボトルネックを特定したりしてくれました。このような共同作業のアプローチによって、さまざまなツールやセッションに分断されることなく、最初に描いた設計ビジョンを一貫して維持することができました。
これからはマルチモーダル
この経験は、「AI エージェントが複数のタイプの入力を同時に理解し処理できるときに、どれほどの可能性があるか」を示しています。ホワイトボードの写真から生成されたコード、アーキテクチャ図からインフラストラクチャ構成まで、各ステップは設計の整合性を維持しながら前のステップの上に構築されます。
もし、せっかくの美しい設計とは切り離された実装になるのを見るのにうんざりしているなら、マルチモーダル開発をぜひ試してください。手描きの図から始めて、Kiro にアップロードし、視覚的な設計を理解させ、プロダクションまで一貫してその整合性を維持するのを手伝ってもらいましょう。これからの開発は「ビジュアル設計」と「コード生成」のどちらかを選ぶのではありません。両方をシームレス扱える AI を活用し、最初に描いたビジョンを損なうことなく、そのままプロダクションまで無傷で届けられる未来が始まっています。
図からデプロイまでの道のりをスムーズにする準備はできていますか?Kiro を無料で始めて、マルチモーダル開発をぜひ自分で体験してみてください!自分の図をアップロードするだけで、視覚的な設計から動作するコードへのシームレスな移行を体験できます。
X や LinkedIn であなたの体験をぜひシェアしてください。Discord コミュニティ に参加して、マルチモーダル開発を使って作業の流れを変革している他の開発者とつながりましょう。
設計と実装の間のギャップはもう存在する必要がありません。マルチモーダル AI を使えば、あなたの図はそのままコードになり、あなたのビジョンはこれまでよりも速く、より正確に現実のものになります。
翻訳は App Dev Consultant 宇賀神が担当しました。



