システム開発の効率化と上流工程の重要性

ITエンジニアは「生産性の高い開発」や「効率的な開発」というワードを聞くとすぐに新言語、新しいフレームワーク、新しい開発手法といった要素を思い浮かべがちです。

しかしIT投資におけるそもそもの目的地(=期待する効果)をきちんと踏まえていないと、どんなに新しい技術を利用しても、最終的なお客様の問題解決にはつながりません。

これは航海に乗り出す際に、優秀な船員をそろえ、最新のエンジンを積んだ船で出発したとしても、目的地の島が間違っていると航海そのものが失敗に終わってしまうことと似ています。

さまざまなフレームワークや開発方法論を適用することで、確かにプログラミング・テストといった工程は効率的になるのですが、そもそもの目的地が間違っていれば、効率化で浮いた工数や費用は無駄になってしまいます。
(生産的どころか何も生産していない。低い生産性というよりは生産性=0という最悪の結果を招いてしまいます)

目的地を間違えたままプロジェクトを進めてしまうと現場のエンジニアが、努力を重ねて納期通りにシステムを納品してもまったく意味が無い。
これは工夫すべき部分、労力を投入すべき部分をを間違えているから、ということになります。

逆に工夫したり、労力を投入すべき部分を間違えなければシステム開発を劇的に効率化させることもできるはずです。

ではシステム開発プロジェクトにおいて、どの部分に労力を投入すべきなのでしょうか。

BtoBの業務システム、コンシューマー向けのWEBサービスやアプリを問わず、開発プロジェクトにおいて最も重要な部分は目的地設定=上流工程です。

ソリューションウェアでは様々な受託開発を請け負っており、プロジェクトの途中から参画してほしいとのご相談をいただくこともあります。
そういったケースで、要件定義段階までプロジェクトが完了していても、そのまま進めてもお客様に最終的なメリットが出ないと予測される場合、システム化企画・要件定義工程のやり直しを含めてご提案させていただくことがあります。
これはそのまま設計・開発以降の工程をソリューションウェアが担当しても、お客様にメリットが出ない可能性が高いためです。

システムやソフトウェアは目に見えないものである為、上流工程の誤りは致命傷になりえます。

たとえば、以下のような実例は枚挙にいとまがありません。

  • 要件定義で要件の洗い出しが十分でなかったため、プロジェクトの進行と共に後出しの要件が膨らんでいき、予算・納期をオーバーしてしまう
  • 基本設計でのユーザー・ベンダー間のUI(ユーザインタフェース)イメージのすりあわせができておらず、実際に出来あがったシステムがユーザーにとって使いづらく、旧システムを使い続けてしまい、期待していた業務工数の削減効果が得られない。
  • 機能のMUST、WANTによる切り分け、機能間の優先順位設定が曖昧なままプロジェクトが進められ、想定よりも進捗が遅れた際にリカバリが効かず、期日になってもシステムを稼働できない。
    (あらかじめ適切な優先順位が設定できていれば、機能の実装順位を見直して稼働できたケース)

ソリューションウェアではこのようなシステム開発プロジェクトの失敗を防ぐために、上流工程をサービスとして提供するITコンサルティングをメニュー化しています。

業務とITの双方に通じたITコンサルタントを養成し、お客様のプロジェクトの成功確率向上に貢献させていただきます。

pm

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

five × four =