前回、「AI駆動開発やってみた。」という記事を書きましたが。
今回は、色々試していて、色々ノウハウも出ている中、あくまで自分が自分の実務で進めるにあたり、現時点でのベストプラクティスをまとめてみようと思います。ほとんど何も参考にしていないので、我流であることをご了承ください。
設計だけ完璧に進めればいいっていうものでもない
ぶっちゃけこれが一番言いたいことですね。AIと自分の2人だけならこれでもいいですが、この方針には落とし穴があります。
設計変更に弱い。AIのコードも散らかるし、AIの脳内も散らかる。とくにAIが混乱すると使用量がすぐ増えるので、効率は下がります。
そして現実の案件ではAIや開発のことに精通していないお客様というファクターがおりますので、設計変更が全くないとはなりません。
まずはHTMLコーディングでFWを構築しつつ設計には幅をもたせるのが個人的にはおすすめです。
なので、まずはHTMLコーディングでFW作成←裏では矛盾のない設計の基礎を固める、です。
意外とウォーターフォールが向いている
AIでのアジャイル開発は、使用量を気にしないならアリですが、私の感覚ではAIは混乱しており効率は悪いです。
アジャイルは矛盾を含んでもとりあえずやる、とりあえず出す、おかしいところが見つかったら逐次対応っていう思想があり、矛盾を嫌うAIには向いていないと思いました。
アジャイルは人間向き。AIはウォーターフォール向きです。というのも製造は爆速だし、設計に矛盾がないかを整理するのは得意なので、ウォーターフォールを進めるのは簡単になります。
私は、AI駆動開発には、ウォーターフォール開発を推します。
AIを2つ以上使い役割や目的を分ける
製造AIとテストAIを分けるといいと思いました。それぞれは目的が違います。
セキュアでバグのない設計や検証を担当するAIと、設計や製造を担当するAIを1つでやると混乱します。
「あなたはデザイン担当です。」として少ないコンテキスト上でAIを使ったほうが効率いい印象です。
その担当は、担当外のことは考えなくて良くなりスムーズになります。この辺は人間も一緒ですね。
まとめ
AIは面白い。