要件定義の問題点

はじめに

会社の雰囲気や要件定義の内容をみれば、おおよそそのプロジェクトが成功するか否かがわかる。うまくいかない場合のユーザー側とシステム会社側の原因の一例である。

・要件定義をシステム会社に任せてしまう
・元請けシステム会社が無理な要件でも受注する
・準委任契約の人材紹介会社がリスクなく利鞘を稼げる
・末端エンジニアの作業遂行以外の責任
・ユーザー側、発注側の担当者が保身する

今回はその背景を説明したい。

要件定義の丸投げ

要件定義をシステム会社に任せてしまう。
要件定義はシステム会社がユーザー企業をヒアリングして作るものではなく、ユーザーとシステム会社が議論を重ねることで答えを出していくものにしなくてはならない。ユーザーが目指すべき姿と、システム会社が実現すべき姿のすり合わせが重要である。

無理な受注

元請けシステム会社が無理な要件でも受注する。
無理な要件でも受注できるのは、発注側にもシステムの知識がないため、ゴールが曖昧なまま元請けシステム会社が請け負ってしまうからである。もし、発注側にITリテラシーがなければ、パワハラなども発生する可能性が高い。したがって、元請けシステム会社に精神的な課題を回避するため、要件定義を作る人でさえも二次受けシステム会社から集めてくることがある。

人材紹介会社の利益構造

準委任契約の人材紹介会社がリスクなく利鞘を稼げる。
システムの完成責任は負わず、作業だけ請け負うことになるため、人さえ集めてくれば、そこでリスクなく利鞘が稼げる。発注側のユーザー企業からすれば、契約は元請けシステム会社であるため、3次請け、4次請けを使おうが、完成さえすればいいと考えていることが多い。

エンジニアの責任範囲

末端エンジニアの作業遂行以外の責任。
末端のエンジニアには、クライアントとの調整や導入、一定品質や納期の遵守など、責任感や危機感がないこともある。プロジェクトの全貌が見えないことも原因である。また、言われたことをやるだけで報酬がそこそこあるのが、システムエンジニアの業界だったりするので、作業をした時間分だけ報酬を支払ってほしい、という話にもなる。

発注側の保身

ユーザー側、発注側の担当者が保身する。
システム開発がうまくいかなかったときに、発注側の担当者がシステム会社に責任を押し付けるといったことがある。これは信頼関係によるもので、共同でプロジェクトを成功させようという目標が作れなかった場合に発生する。システム会社を業者扱いして要件定義を丸投げしてしまわないようにしなければならない。

関連記事

日本の技術人材不足とオフショア開発

セクション1: 日本のソフトウェア開発人材不足の背景

日本のソフトウェア開発業界は50年以上の歴史を持ち、多くの経験豊富なエンジニアが存在します。しかし、現在の日本では開発人材の不足が深刻な問題となっています。この人材不足は、企業が即戦力となるエンジニアを安価で求めるという要望に由来しています。そのため、日本の人材不足はしばしば「即戦力を安く求める欲求」として揶揄されることもありますが、この言い方には一面の真実も含まれています。企業が効率的な開発を行うためには、即戦力のエンジニアが必要なのは当然のことです。

また、この人材不足の問題は、単に日本だけに限ったものではありません。他の海外でも同様の人材不足が起きています。したがって、オフショア開発を検討する際には、都合の良い人材を海外で見つけることができるという考え方は一部正解であり、一部誤解とも言えます。

セクション2: 日本とベトナムのエンジニアの特徴

日本のエンジニアは、特にWeb関連のエンジニアにおいては、1990年代からのキャリアを持つベテランが多く存在します。そのため、文字コードやバイナリ、組み込み技術など、古いOSや低レベルの知識を必要とする開発においては、日本の技術者は強みを持っています。一方、新しいフレームワークや概念の習得には、国民性よりも年齢が影響を与える傾向があります。そのため、ベトナムのエンジニアは若さを活かして新しい技術を素早く学ぶことが得意と言えます。

また、コンピューター業界においては、上流と下流、低レベルと高レベルといった言葉が中立的に使われますが、この意味において日本は低レベル開発に向いており、ベトナムは高レベル開発に向いていると言えます。そのため、バランスの取れたオフショア開発を行うためには、日本のエンジニアのジェネラリスト的な能力とベトナムのエンジニアのスペシャリスト的な能力を組み合わせることが重要です。

セクション3: 日本とベトナムの開発手法の違い

日本のソフトウェア開発では、納期を守るためにウォーターフォール型の開発手法が主流です。アジャイル開発が概念的には取り入れられつつありますが、完全にアジャイルな開発プロセスを採用しているケースはまだまれです。一方、ベトナムのソフトウェア開発は、日本の開発手法と大きく異なるわけではありません。基本的には納期を守るためのウォーターフォール型の手法が一般的ですが、OSSの影響を受けて開発手法が変化しつつあります。

日本の開発現場と比較して、ベトナムの開発手法の利点は、新しいフレームワークや技術の習得において素早い反応性を持つことです。ベトナムのエンジニアは若く、学習意欲が高いため、最新の技術に対する理解が早く、柔軟に対応できるという特徴があります。ただし、ベトナムの開発現場においては、アジャイル開発の完全な導入はまだ一般的ではないことに注意が必要です。

セクション4: 言語の壁以外の考慮すべきポイント

ベトナムのエンジニアを活用する際に言語の壁を乗り越えるためには、円滑なコミュニケーションを図ることが重要です。英語がビジネスコミュニケーションの共通語となっているため、日本の企業がベトナムのエンジニアとのコミュニケーションを円滑に行うためには、英語教育の強化や翻訳ツールの活用などが有効です。また、文化やコミュニケーションスタイルの違いも考慮すべきポイントです。異なる文化背景を持つエンジニア同士が協力する場合、相手の文化に対する理解や尊重が求められます。

セクション5: 成功へのカギはバランスと柔軟性

ベトナムでのソフトウェア開発のオフショアを成功させるためには、日本とベトナムのエンジニアの特長を組み合わせることが重要です。日本のエンジニアはジェネラリストとして幅広い知識と経験を持っており、プロジェクト全体の管理や技術的な統括を担当することが得意です。一方、ベトナムのエンジニアはスペシャリストとして特定の技術に精通しており、新しい技術の習得にも素早く対応できます。

オフショア開発においては、開発現場のバランスと柔軟性が求められます。例えば、日本のエンジニアがジェネラリストとしてプロジェクトを牽引し、ベトナムのエンジニアがスペシャリストとして特定の技術領域を担当する役割分担が効果的です。また、現代的な開発手法を用いることも重要です。ウォーターフォール型の手法に加えてアジャイル開発の一部を取り入れるなど、柔軟に適切な手法を選択することが目的達成(コストダウン実現)へのカギとなります。

続きを見る >

生成AI失敗の3要因

期待と現実の乖離

生成AIを導入したものの、思うような成果が出ずに悩む企業が増えている。「話題だから」「競合が使っているから」という理由で導入したケースでは、現場から「結局使えない」という声が上がることも珍しくない。実は、生成AIで成果が出ない原因の多くは、ツール自体の問題ではなく、導入プロセスや運用体制に潜んでいる。本記事では、成果が出ない3つの主要因を解説する。

曖昧なゴール設定

成果が出ない最大の原因は、導入目的が不明確なことである。「業務効率化」という漠然とした目標では、具体的に何を効率化するのか、どの程度の改善を目指すのかが見えない。結果として、現場は何にAIを使えばいいかわからず、試しに使ってみても効果を実感できないまま放置される。成功している企業は「議事録作成時間を50%削減」「問い合わせ対応の一次回答を自動化」など、測定可能な目標を設定している。目的が明確であれば、適切なツール選定も、効果測定も、改善サイクルも回しやすくなる。

教育不足の弊害

二つ目の原因は、従業員への教育不足である。生成AIは万能ではなく、適切なプロンプト設計や出力結果の検証スキルが求められる。しかし多くの企業では「ツールを入れれば自然と使われる」と考え、十分な研修を実施していない。その結果、一度試して期待外れの回答が返ってきた社員は「使えない」と判断し、二度と触らなくなる。三つ目の原因は、業務との不適合である。定型的な作業や創造的な文章生成には強みを発揮するが、高度な専門判断や最新情報が必要な業務には向かない。自社の業務特性を分析せずに導入すると、AIの強みを活かせない領域で無理に使おうとして失敗する。

成功の3条件

生成AIで成果を出すためには、三つのポイントを押さえる必要がある。第一に、具体的で測定可能な導入目的を設定すること。第二に、継続的な教育プログラムを通じて社員のAIリテラシーを高めること。第三に、自社業務を棚卸しし、AIが得意な領域と苦手な領域を見極めたうえで適用範囲を決めることである。これらは当たり前のように聞こえるが、実際に徹底できている企業は少数派だ。逆に言えば、この基本を押さえるだけで、競合との差別化が可能になる。生成AIは正しく活用すれば強力な武器となるが、準備なき導入は失敗の元である。

まとめ

生成AIで成果が出ない原因は、目的の不明確さ、教育不足、業務との不適合の三点に集約される。これらはいずれもツール導入前の準備段階で解決できる課題だ。成功の鍵は、明確な目標設定、継続的な人材育成、そして業務特性に応じた適切な活用領域の選定にある。基本を徹底することが、AI活用の成否を分けるのである。

続きを見る >

Power Apps入門:アプリ開発は難しくない

アプリ開発は難しくない

「業務アプリを作りたいけど、プログラミングの知識がない」――そう考えて一歩を踏み出せない方は多いだろう。MicrosoftのPower Appsは、コードをほとんど書かずに業務アプリを作れるローコードツールである。特別なIT知識がなくても、Excel操作ができる人であれば十分に始められる。まずは「何ができるか」を知ることから始めよう。

Excelからアプリへ

Power Appsでアプリを作る手順は、大きく3つのステップに分かれる。まず、現在Excelで管理しているデータをそのまま使い、Power Appsに取り込む。次に、画面のレイアウトをドラッグ&ドロップで組み立てる。テンプレートも用意されているので、ゼロから設計する必要はない。最後に、入力や表示のルールを設定して完成である。複雑な関数を書く場面はほとんどなく、Excelの関数に近い感覚で操作できる。

ローコードが注目される理由

ローコード開発が注目されている背景には、中小企業特有の事情がある。IT人材の採用が難しく、外注すれば費用がかさむ。かといってExcelのまま運用を続ければ、属人化やミスのリスクが増えていく。Power Appsであれば、現場の担当者が自分で業務に合ったアプリを作れるため、外注コストを抑えながらスピーディに改善を進められる。また、仕様変更が必要になった場合も自社内で対応できるため、柔軟性が高いのも大きなメリットである。「作って終わり」ではなく、業務の変化に合わせて育てていけるのがローコードの強みだ。

小さく始めよう

Power Appsを始めるなら、最初は小さな業務から取り組むのがおすすめである。たとえば日報の入力、備品の申請、簡単な計算ツールなど、日常的に使う業務をアプリ化すると、効果を実感しやすくなる。最初から完璧なアプリを目指す必要はない。まず動くものを作り、使いながら改善していくのが成功のコツだ。「自分にもできた」という体験が、現場全体のDX推進につながっていく。迷ったら、今Excelで一番手間がかかっている業務を選んでみてほしい。そこがPower Appsの最初の活用ポイントになるはずだ。

まとめ

Power Appsは、IT知識がなくてもExcel操作の延長で業務アプリを作れるツールである。まずは日報や申請書など身近な業務から小さく始め、使いながら改善していくのが成功の近道だ。最初の一歩を踏み出すことが、DX推進の起点になる。

続きを見る >