前回の記事はこちらです。
前回はINCEPTION PHASE(構想フェーズ)を決めていくまでの記事でした。
この構想フェーズでは、開発するアプリケーションがどのような目的、作成するアプリケーションの要件、ユーザーストーリー、実際にどのようなコーディングを進めていくかを決めていくフェーズでした。
ここからは、実際にコーディングまで進めていく
CONSTRUCTION PHASE(構築フェーズ)に入っていきます。
CONSTRUCTION PHASE(構築フェーズ)
Functional Design(機能設計)
ここからは機能設計を決めていく段階に入ります。
Unit-1: Authentication - Functional Design 開始
とのことで、
まずはユニット1(Authentication)の詳細設計を行います。
これは、今回の社員管理システムでの、認証機能(ログイン/ログアウト)を実装するユニットについての機能のようです。
様々な質問がありましたがその回答を進めて、詳細な機能設計ドキュメントが作成されました。

次のステージ「NFR Requirements(非機能要件の詳細化)」を開始します。

ここで、
Unit-1(Authentication)、つまり今回作成している社員管理システムの認証機能(ログイン/ログアウト)の非機能要件が決まったみたいなので、承認をしてみます。
承認をすると、Unit-1(Authentication)の非機能要件をどのように実装するかを質問してきます。
こちらの回答を進めてみます。
回答を進める中でいくつか追加の質問もありましたが、そちらも同様に回答を進め、Unit-1: Authentication(認証機能)の設計が決まりました。
最後に、これで良いか承認を求められるので承認してみます。
次のステップに入りました。
どうやら、今まで作成した内容を踏まえてインフラ設計を進めていきます。

コード生成プランが提示されてきたので、提示されたプランで承認してみます。

この実装で、READMEファイルや、テストコードの実装まで進めてくれます。

様々な実装コードや、テストコード、ドキュメントを作成して今回作っている社員管理システムの認証機能(ログイン/ログアウト)の機能が実装できました。
続いてUnit-2: MasterDataの設計に進んでいきます。
ここで、CRUD操作、参照整合性チェック、およびUnit-3(社員管理)との連携を設計するのですが、基本的には、Unit-1(Authentication)のログイン機能の実装の進み方と変わらないです。
質問に回答して要件や、内容を整理して、実装に進むという流れになりますので
ここでは割愛をしようと思います。
今回の構築フェーズでは、Unit-1の認証機能、Unit-2のテーブルのデータ管理辺り、Unit-3の社員管理についての3つのユニットに分けられましたが、
作成するものによっては、この辺りは増えるケースもありそうです。
Unit-2, Unit-3についてもUnit-1と同様に進めた結果、全ての設計・実装が完了しました。
Unit-2, Unit-3 では、
基本的な流れ自体は Unit-1 と同じでした。
ただし、Unit-1 で認証や基盤部分がほぼ出来上がっていたため、後続ユニットでは既存コードとの整合性確認や、追加API・テーブル定義の調整が中心になっていました。
特に、「既存実装との矛盾がないか」を AI が確認しながら進めていたのが印象的でした。
Build and Test(最終統合テスト)
CONSTRUCTION PHASE(構築フェーズ)の最後になります。
全Unitの統合確認と最終検証を進めていきます。
CONSTRUCTION PHASE(構築フェーズ)は完了となりました。
実際に触ってみると、
CONSTRUCTION PHASE は単なるコード生成ではなく、「設計内容をもとに実装・テストまで進める工程」という印象でした。
特に、
- 非機能要件
- インフラ設計
- Unit単位での実装
- テストコード生成
を段階的に整理していく流れは、従来のAIコード補完よりも
「設計内容との整合性」が重要になると感じました。
また、
README やテストコードまで含めて生成されるため、単純なコード生成とはかなり違う開発体験でした。
記事が長くなってきたので、次の記事では Build and Test(最終統合テスト)の続きや、実際に生成された成果物についてまとめます。
次記事はこちら(執筆中)
個人的に思ったこと
個人的にここまで進めてきて思ったこととしては、
AIが「実装前の設計」をかなり重視しているなと思いました。
単純にコードを書くというよりも、設計内容や非機能要件との整合性を確認しながら、段階的に実装を進めていく印象でした。
また、Unit単位で責務を分けながら進めることで、既存実装との矛盾点も整理しながら開発が進んでいくのが印象的でした。
この辺りは、普段のAIコード補完とはかなり違う体験だと感じました。













