フロントエンドエンジニア養成所

AI時代における開発方法

AIにコードを書いてもらうことで、これまでよりも短時間で開発できるようになりました。

しかし、AIに「これを作って」とお願いするだけでは、意図したものが完成するとは限りません。

AIに正しく開発してもらうためには、作りたいものを具体化し、その内容を仕様書として残すことが重要です。

そこで、私は以下のような方法が良いと考えています。

開発フロー

1. 作りたいものを決める

まず、何を作りたいのかを決めます。

例えば、

「ユーザーが商品を検索して購入できるWebサイトを作る」

といった具合です。

この段階では、まず何を作るのかを明確にします。

2. 作りたいものの細部を具体的に決める

次に、作りたいものの詳細を決めます。

例えば、

  • どんな画面が必要なのか
  • どんな機能が必要なのか
  • ユーザーはどう操作するのか
  • 入力項目は何か
  • 入力できる文字数は何文字か
  • エラーが発生した場合はどうするのか
  • どのようなデータを保存するのか
  • 誰がどの情報を見られるのか

などです。

ここを曖昧にすると、AIが独自に判断して実装する部分が増えます。

その結果、自分が意図していない仕様になる可能性があります。

3. Markdown形式の仕様書を作る

1と2で決めた内容を、Markdownファイルにまとめます。

Markdownファイルにまとめるのは、AIに決めた内容を伝えて、「Markdownファイルにまとめて」と依頼すればいいでしょう。

このMarkdownファイルを、以降の開発における仕様書として使います。

例えば、

# 商品検索サイト

## 概要

ユーザーが商品を検索し、購入できるWebサイト。

## 機能

- 商品検索
- 商品詳細表示
- カート
- 購入

## 商品検索

- 商品名で検索できる
- 検索結果を一覧表示する
- 該当する商品がない場合は「商品が見つかりません」と表示する

といった形です。

重要なのは、このMarkdownファイルを常に最新の仕様にしておくことです。

4. MarkdownファイルをAIに渡して開発を依頼する

仕様書ができたら、AIにMarkdownファイルを渡して開発を依頼します。

例えば、

「このMarkdownファイルの仕様に従って開発してください」

と依頼します。

AIは仕様書の内容をもとに、コードや必要なファイルを生成します。

5. 成果物を確認して、修正点を仕様書に反映する

AIが作ったものを実際に確認します。

ここで、

  • 仕様と違う
  • 意図した動作になっていない
  • 足りない機能がある
  • 想定していない動作がある

などの問題があれば、修正点をMarkdownファイルに反映します。

例えば、

「送信ボタンを青色にして」

という修正をした場合、

## 送信ボタン

- 青色にする

のように仕様書を更新します。

修正点があれば、まずは最終的な正しい仕様をMarkdownファイルに残します。

6. 更新したMarkdownファイルをAIに渡して再度開発を依頼する

仕様書を更新したら、再びAIに渡します。

例えば、

「この仕様書を最新版として、前回の成果物との差分を修正してください」

と依頼します。

AIは更新された仕様書をもとに、前回の成果物を修正します。

7. 完全な成果物になるまで繰り返す

あとは、

確認 → 修正点を仕様書に反映 → 仕様書をAIに渡して修正依頼

を繰り返します。

最終的に、意図した仕様とMarkdownの仕様書と成果物の内容が一致すれば完成です。


Markdownを「開発の中心」にする

この方法で重要なのは、Markdownファイルを単なるメモとして扱わないことです。

Markdownファイルを「現在の正しい仕様」として扱います。

AIとの会話だけで開発すると、

「前に何を決めたっけ?」

「この修正はどこまで反映したっけ?」

といった問題が起こりやすくなります。

仕様を忘れてしまうこともあるでしょう。

一方、仕様をMarkdownにまとめておけば、

「このファイルに書かれている内容が現在の仕様」

と決められます。

レビュワーが仕様確認またはレビューする際に、 そのMarkdownファイルを使ってAIと会話すれば、 効率良く確認、レビューを進められます。

作業の引き継ぎも容易になり、 Markdownを他の作業者と共有しておけば、 誰が開発しても同じ成果物を作成することができます。

AIに修正を依頼するときも、このファイルを渡せば現在の仕様を共有できます。


AI時代の開発は「AIに任せる」だけではない

AIによって、実装そのものは簡単になっていきます。

だからこそ、人間がやるべきことは、

何を作るのかを決めること

細部の仕様を決めること

AIが作ったものを確認すること

問題があれば仕様を更新すること

です。

AIにすべてを丸投げするのではなく、

人間が仕様を決め、AIが実装し、人間が確認する。

そして、修正内容を仕様書に反映して、またAIに渡す。

このサイクルを繰り返すことで、AIを活用しながら意図したものに近づけていく。

これが、AI時代の開発方法の一つになるのではないでしょうか。

このサイトを運営している人

運営者の写真

はじめまして。このサイトを運営しているsidsydです。

エンジニアをしたり、日本酒サイト「酒道」を運営したりしております。

▶ 運営者情報ページへ