HTML/CSS
投稿日:

AIを使ったほうがバグが減った、という予想外の結果になった話

おはようございます!株式会社ファストコーディングの働くおかんです。

子どもの宿題の丸つけって、自分でやらせるとダメなんですよね。「合ってるはず」って思い込んで、間違いをスルーしちゃう。でも私が見ると「ここ、引き算じゃなくて足し算だよ」ってすぐ気づく。本人は一生懸命やってるんですけど、自分で作ったものを自分でチェックするのって、やっぱり限界があるんだなと思います。

今回は、仕事でもまったく同じだなと感じた話です。

「AIが書いたコード、大丈夫なの?」

AIコーディングの話をすると、社内でもお客様からも「品質は大丈夫なの?」と聞かれます。

正直、私も最初は不安でした。人間が1行ずつ書いたコードならまだ安心できるけど、AIが一気にバーッと書いたコードって、どこに問題が隠れているかわからない。しかも大量のページを一度に作るわけです。不安にならないほうがおかしいですよね。

でも、実際にやってみたら、結果は予想と真逆でした。

バグ指摘がゼロだった

直近の大規模案件で、お客様からのバグ指摘がゼロだったんです。

数万点の商品があるECサイトのフロントエンド構築で、ページ数もかなりの量。納品後にバグのご指摘が1件もなかった。

これ、人間だけでコーディングしていたときには正直なかったことです。どんなに気をつけても、納品後に「ここのレイアウトが崩れてます」「このボタンがスマホで押せません」みたいな指摘は出ていました。ゼロってことはなかった。

AIを使ったのに、バグが減った。直感的にはおかしい気がしますよね。でも、理由を考えてみると、ちゃんと納得できるものでした。

「あうんの呼吸」をなくしたから

一番大きかったのは、「作る人」と「チェックする人」を完全に分けたことだと思います。

以前は、コーディングした人が自分でチェックすることも多かったんですよね。もちろんQCはありましたが、「自分で作って、ざっと確認して、QCに回す」という流れだと、本人が気づかないバグはQCに行く前にすり抜けてしまう。

今回は、コーディングを担当するチームとチェックを担当するチームを最初から完全に分けて、同時に動かしました。コーディングチームが作ったものを、まったく別のチームが何の先入観もなくチェックする。子どもの宿題を親が丸つけするのと同じです。作った人とは別の目で見るから、見落としが減る。

もう一つ大きかったのが、曖昧な引き継ぎをなくしたことです。

今まで「なんとなくこうだよね」で済ませていた部分──次の工程に渡すタイミング、チェックの基準、修正の優先順位──を全部、明確に決めました。「阿吽の呼吸」を一切なくしたんです。

最初は「そこまでやらなくても……」と思いましたが、これが効いた。曖昧さがないから、判断に迷う時間がない。迷う時間がないから、変なミスも起きない。

速さと品質は両立する

「速くなったけど品質は下がった」ではなく、「速くなったし品質も上がった」。これが正直な実感です。

工数は従来の半分ぐらいになっています。でも品質は下がるどころか上がった。

矛盾しているようですが、仕組みで考えると当然なんですよね。

  • 仕組みが明確だから迷いがない → 速い
  • 作る人とチェックする人が分かれている → 見落としが減る
  • チェックのタイミングが決まっている → 問題が大きくなる前に見つかる

速さと品質を両立させているのは、AIの性能ではなくて「仕組み」の力なんだと思います。

なぜこういう仕組みが品質を担保するのか、技術的な視点での解説はうちの黒田が別の記事で書いています。この記事では「やってみてこうだった」という現場の話だけ伝えましたが、「なぜそうなるのか」が気になる方はそちらもぜひ。

まとめ

AIを使ったほうがバグが減る。最初は信じられませんでしたが、実際にそうなりました。

ポイントは3つだったと思います。

  • 作る人とチェックする人を完全に分けた
  • 「なんとなく」で済ませていた引き継ぎや判断基準を、全部明確にした
  • 人間がチェックするタイミングを事前に決めて、問題を早期に見つけた

AIの精度が高いから品質が出るのではなく、仕組みがちゃんとしているから品質が出る。子どもの宿題と同じで、チェックする仕組みを変えるだけで、結果は大きく変わるんだなと実感しました。

AIを使ったコーディングの品質に不安がある方や、大規模サイトの制作を検討されている方は、株式会社ファストコーディングのお問い合わせフォームからお気軽にご相談ください。