要件定義は誰がやるのか|AIに作らせる前に頼む側が確かめる4つの問い

目次

たとえば、こんな要望。 顧客情報の入力が面倒

「入力画面を消して」と AIに頼めば、すぐ形になる

でも、顧客情報の登録は 業務に必要なこと

それなら「面倒」は 課題ではなく愚痴
AIでシステム開発を内製化(自社で開発すること)すると、要望がすぐ形になるため、「そもそも必要か」を考えないまま作ってしまいがちです。入力画面を消すのは大胆な例ですが、要望をそのまま作ってしまうことは、いろいろな形で現れます。
実は、お客様が自社で開発を始めたとき、私たちが不安に感じていたのも、要件定義が疎かになることでした。
要件定義とは?

コードを書くことは システム開発の工程の一部

要件定義は、なぜ作るのか・ 何を解決するのかを決めること
コードは、システムを動かすプログラムのことです。要件定義で決めた課題を「どう解くのか」を決めるのが設計で、この記事では解き方を打ち手と呼びます。
要件定義は誰がやるのか|AIで作るときも頼む側

人が課題を感じ、それを 起点にAIが動く

AIは「それは何のため?」とは あまり聞いてくれない
要件定義と、打ち手を決める設計には、AIがあっても必ず人に残る部分があります。 AIは責任を持てません。何を解決するかを決めるのは人の側だと、私たちは考えています。
作る前に「そもそも何を解決したいのか」を言葉にする習慣が要ります。
AIに作らせる前に確かめる4つの問い

その要望は課題か、愚痴か。 作る前に4つの問いで確かめる
問い①:システムで解決すべき課題か

必要な機能が正しくあるだけ ではないか
問い②:運用でカバーする問題ではないか

仕事の進め方や決まりで 対応できないか
「運用でカバーする」の運用は、仕事の進め方や決まりのことです。
問い③:課題だと感じているのは自分だけではないか

同じ画面を使うほかの人も 困っているか
問い④:今だけ感じる課題ではないか

時期が変わっても 続く困りごとか
AI開発では課題が正しくても打ち手を誤ることがある

たとえば、システム化する前と 違って違和感がある

そこで、以前の業務フローに システムを合わせる?

新人でも誰でも使いやすい シンプルな設計にした 経緯があるなら

適切なのは、いまの システムの操作に慣れること
打ち手を決める前に、いまの設計になった経緯を確かめます。
要件定義を疎かにすると何が起きるか

課題の認識や打ち手を誤ると、 AIがどれだけ優秀でも 開発は間違った方向に進む
動くけれど 筋の悪いものができる
筋の悪いものとは、たとえば画面と手順だけが増えていくシステムや、同じデータが別々の場所に写されてつながらなくなったシステムです。システム開発では、どのような背景でどのような課題を感じ、どう解決するのかという筋道がとても大事です。
独立行政法人の IPA(情報処理推進機構)も、同じことを言っています。
要件定義とは、どのようなシステム、何ができるシステムを作りたいのかを定義することです。それはあくまでも発注者の仕事であり、発注者の責任で行うものです。要件定義があいまいであったり、検討不足のまま、受注者に開発を依頼した場合、その結果として、コスト増、納期遅れ、品質低下を発生させるおそれがあります。その責任を受注者に負わせることはできません。
引用: 「超上流から攻めるIT化の原理原則17ヶ条(第9条)」(IPA-SEC、2006年)

検討不足のまま依頼すると コスト増・納期遅れ 品質低下のおそれ
私たちはいま、頼む人の判断を助ける手順を、依頼のときに必ず通る仕組みにすることが必要だと考えています。
まとめ

作る前に確かめるのは、 課題か、打ち手は合っているか
- 要件定義には、AIがあっても人に残る部分がある。何を解決するかを決めるのは頼む側
- AIに作らせる前に、その要望が課題か愚痴かを4つの問いで確かめる
- 課題が正しくても、打ち手を誤ることがある
- 課題の認識や打ち手を誤ると、AIがどれだけ優秀でも、動くけれど筋の悪いシステムになる。だから、AIに頼む前に確かめる
AIで内製化を進めるときの要件定義で迷っている方は、お気軽にご相談ください。
