要件定義のアプローチ

要件定義の基本

すべてをシステムで解決してしまおうとする要件定義には注意が必要である。システムの成功の可否は要件定義にかかっていると言っても過言ではない。しかし、十分に要件定義の時間を使ったにも関わらず、ITプロジェクトが失敗することがある。

規模別の要件定義

システム構築の規模によって、要件定義の粒度が変わる。小さなITプロジェクトの場合は要件定義をせずにプロトタイプを作りながらシステム構築を進めるといった方法がある。これをアジャイル開発、プロトタイプ開発と呼ぶ。

要件定義の本質

要件定義の粒度は時間を掛ければ細かくなるわけではない。ユーザー側でも要件定義を進めるにつれて、想定している機能の矛盾点が出てくることがある。この矛盾点を解消していくこと自体を要件定義としてはならない。要件定義はあくまで本質的なコアとなる部分から膨らませることが重要である。

対話型要件定義

要件定義フェーズで失敗するパターンは、ユーザー側との対話ではなく、システム会社側がヒアリングに徹する場合である。ユーザー側はITを利用してどのようなことができるかを知らない可能性が高いため、システム専門家がそれを鵜呑みにした仕様で要件を固めてしまうと、製造工程で無駄な工数が発生し予算をオーバーしてしまうことがある。

まとめ

本質的な要件をコミュニケーションによって、はっきりさせていく作業こそが要件定義と言えるのである。さまざまな視点から何度も繰り返し要件をなぞることで粒度が落ちていき、適切な要件定義書となる。何でもかんでもシステム化せず、オペレーションとの関係性を見合わせながら進めることが望ましい。

関連記事

運用の昇華

開発現場の想定外

基幹システムの開発現場では、最初に想定した仕様とは異なる業務フローが後から発覚することが多い。

マネジメントの試金石

後から発覚した業務フローは、すでに構築が進んでいるシステムに組み込むことが難しいため、どのように対応するかがプロジェクトマネージャーの腕の見せ所である。

プロジェクトの舵取り

プロジェクトマネージャーとは何かと問われたときに、一言で言い表すならば、不測の事態にどのように対応できるか、ということではないかと考える。プロジェクトが何の問題もなく、完遂できることは少ない。したがって、イレギュラーケースが発生した時にどのような手立てを打てるか、迅速に行動できるかがプロジェクトマネージャーのレベルとなる。

パートナーシップの重要性

プロジェクトマネージャーがシステムの完成しか考えていなければ、途中から発覚した仕様は「運用でカバーせよ」とユーザー側に責任を押し付けてしまうことがある。しかし、より良いシステムを目指す、パートナーとしてであればこの回答は好ましくない。

まとめ

どのような事象がきっかけで、途中で使用漏れが発覚したのか、プロジェクトの進行状況を見ながら、ひも解くことが重要である。運用でカバーというユーザー側だけにだけ負担をさせるのではなく、運用をカバーするようなシステムを構築できるのが理想である。

続きを見る >

AIチャットボットの現実

チャットボット幻想と現実

人手不足や生産性向上が叫ばれる中、多くの企業で「問い合わせ業務の多くはAIチャットボットで代替できるのではないか」という期待が高まっている。確かに、人間と自然に会話できるAIの実現は、多くの技術者が長年抱き続けた夢でもあった。しかし、過去には言語理解や文脈の把握に技術的な限界があり、実用化には程遠いというのが現実だった。こうした期待と現実のギャップが、AIチャットボット導入の失敗要因となってきた。

チャットボットの進化

2000年代には、ルールベースやシナリオ型のチャットボットが登場し、定型的なカスタマーサポートなどで徐々に実用化され始めた。とはいえ、自然な対話というより「決められた会話」に近く、限定的な使い方にとどまっていた。ところが2020年代に入り、ディープラーニングの飛躍とともに自然言語処理の精度が格段に向上し、Google、Facebook、OpenAIといった技術企業が次々に大規模言語モデル(LLM)を発表したことで、チャットボットは“おしゃべりマシン”から会話パートナーへと進化した。

ChatGPTの衝撃

ChatGPTのような生成AIが登場し、誰でも使えるようになったことで、AIチャットボットの活用は一気に加速した。従来のようなFAQへの対応だけでなく、長文の文書作成や要約、翻訳、さらにはプログラミング支援など、より複雑で創造的な作業もこなせるようになっている。人間の知的作業領域に深く入り込み、単なる効率化ツールにとどまらない存在となった。もはや「使えるかどうか」ではなく「どう使うか」が問われるフェーズに突入している。

業界全体への波及

AIチャットボットの導入は、ビジネスだけでなく教育、医療、自治体など、多様な分野に広がっている。学生の学習サポートから医療問診の補助、行政窓口での自動対応まで、AIは生活の一部に組み込まれつつある。この変化は、かつてITインフラを支えてきた旧世代のエンジニア像を超える大転換だ。業務が高度化し、かつ柔軟性が求められる現代において、AIと協働する力が企業と個人の双方に求められている。

まとめ

AIチャットボットは、単なる業務効率化ではなく、人間の知的作業を補助する“共創”のパートナーである。ただし誤情報、倫理、プライバシーといった課題も存在する。こうした課題を踏まえ、社会全体でのルール整備と、使い方の成熟が必要だ。AI導入を成功させるには、「AIも使い様」という視点が欠かせない。ITの導入に乗り遅れてきた企業ほど、AI活用でも二の舞になりかねない。アタラキシアDXは、AI黎明期からの導入支援経験をもとに、技術とビジネスの橋渡しを支援している。

続きを見る >

開発の遅延「技術的にはできます」の罠

素人仕様と開発遅延

なぜ、システム開発の進捗が悪いのか?
それは、ずばり素人が考えた仕様を開発者に伝えてしまうからである。
すべての原因ではないが、もしシステムのユーザー側の現場担当者や営業担当者がシステム仕様を決めている場合は、ほとんどの場合で満足のいくスピード感はだせていない。

潜む技術的負債

システム仕様さえ伝えていれば、きちんと動くものを作ってくれるので、あとはスピードを上げるだけ。と考えているようであれば、技術的負債が溜まっていることに気付けていない。非エンジニアが決して理解できない技術的負債の怖さは、開発スピードが遅いということだけではない。開発者側から見てシステムが複雑になっていて、メンテナンス性も低い状態になっている。

「できます」の罠

非エンジニアには技術的負債は見えないし説明もわからないことと思う。しかし、技術力でカバーしてくれているから、きちんと動いているのだと思っているなら、それは実は技術力ではない。
「技術的にはできます」このような言葉を聞いたことはないか?
システムエンジニアは「できない」と言えない。「できないことはない」ということが価値なので、素人が考えたシステム仕様でも、言われた通りに作ってしまう。

持続可能な開発へ

システムエンジニアから「技術的にはできます」を聞いたときは、いったん立ち止まるべきである。
エンジニアには、様々な影響範囲や未来のメンテナンス性への懸念などが見えている。これを必要以上のコストだと考えるのか、必要コストと考えるのかで、技術的負債は変わる。

まとめ

自分の理解の範囲でしか人間は発想しないので、システムのことを知らない非エンジニアは、システム仕様を考えるべきではないと言える。また逆に、システムにおいてはシステムエンジニアの方が発想の幅は広いが、業務に関する知識は乏しい。
システムをよく知り業務のこともわかるシステムエンジニアがシステム仕様を考えるべきだが、そんな万能な人は多くはない。だから、その間を取り持つ人間が重要なのである。

続きを見る >