【要約】AIにコードは書いてもらえるが、仕様は自分で決めるしかなかった話 [Zenn_Python] | Summary by TechDistill
> Source: Zenn_Python
Execute Primary Source
// Problem
未経験者がAIを用いてツールを開発する際、実装よりも仕様策定に大きな困難が生じる。AIは指示通りにコードを書くが、ユーザーの意図を理解することはできない。
- ・「一般的なルール」を適用すると、会話文や段落の区切りで意図しない挙動が発生する。
- ・一つのルール追加が、既存の正常な挙動を破壊する副作用を引き起こす。
- ・AIには、ユーザーが日常的に用いる文章の癖といったドメイン知識が欠落している。
// Approach
実データを用いた反復的なテストと、ドメイン知識に基づく例外ルールの段階的な追加を採用した。まず汎用的なルールでプロトタイプを作成し、実物を用いて仕様のズレを特定した。
- ・「「」などの特定の記号をトリガーとした、会話開始判定ルールの追加。
- ・全角スペースによる段落の開始を検知する、改行維持ルールの実装。
- ・「実装しないこと」を明確に定義し、入力データの不備や不要な機能の追加を回避。
// Result
4回の仕様変更を経て、Wordへの貼り付け前処理に特化した整形ツールを完成させた。開発プロセスを通じて、AI時代の開発における新たな勘所を習得した。
- ・実装時間は数分に短縮されたが、仕様検討と検証に大半の時間を費やした。
- ・「バグ」と「仕様の不備」を明確に区別する視点を得た。
- ・ドメイン知識に基づき、機能を「足さない」判断の重要性を認識した。
Senior Engineer Insight
> AI活用は実装コストを劇的に下げるが、設計と検証のコストを相対的に高める。開発者の役割は「コードを書くこと」から「仕様を定義し、境界条件を検証すること」へシフトする。特に、ドメイン知識に基づく例外設計と、副作用を考慮したスコープ管理が品質を決定する。プロトタイピングでは、実データによる反復的な改善を行う手法が極めて実戦的である。