従来型のソフトウェア開発の問題を解決するアジャイル開発

従来型のソフトウェア開発の問題を解決するアジャイル開発

現在、世界のトップエンジニアが採用する開発技法として、知名度の高いアジャイル開発は、さまざまな問題を解決してきました。今回は、アジャイル開発がIT業界のどのような問題を解消し、なぜ世界のトップエンジニアから優れた開発技法と評価されているのか、問題の所在や解決できることをご紹介します。



アジャイル開発がソフトウェア開発の問題を解決

プロダクトマネージャーから「手戻りが少なくて、費用対効果も抜群!アジャイル開発で進めるのが1番です!」といわれても、少し納得がいかないと思います。なぜなら、アジャイル開発以外にも、もっと優れた開発技法があるように思えるからです。

おそらくそのように感じるのは、ソフトウェア開発で生じやすい問題についてご存知ないからだと思います。ここでは、従来からエンジニアの頭を悩ませてきたソフトウェア開発の問題について確認してきます。エンジニアにシステム開発を依頼したいのなら、問題の所在について把握しておきましょう。

ソフトウェア開発の問題は、リリース直前に発生する

SFAなどのソフトウェアは、顧客の要望やエンジニアのスキルが複雑に組み合わさることで、顧客へリリースできます。
システムエンジニアは、使用するプログラミング言語やチーム構成から完成日(納品日)を決定します。しかし、綿密な計画を立てたとしても、リリース直前になると、予想以上に、大きなトラブルが発生して、間に合いそうにないということが起きてしまいます。

なぜ、当初実現できると考えられた計画が、リリース直前になって実現できないとなってしまうのでしょうか。ここだけ見れば、正確な計画を立てることができれば、トラブルを解決できるようにも思えます。本当に、そうでしょうか。

正確な計画が存在しても、実現できるかは別問題

目の前に、緻密なまでに計算された計画が存在したとします。おそらく多くの方は、必ず計画通りに進むはずだと考えます。しかし、高い確率で想定通りに仕事を遂行することは難しいです。

そもそも、緻密なまでに計算された計画が100%実現可能なものか評価する手段がないため、どんなエンジニアでも予測ができません。これは、エンジニアのスキルの高さや低さに関係なく、IT業界が抱える大きな課題となっています。

物事が計画通りに進まない最大の原因とは?

なぜ、優れたスキルを持つエンジニアが集結しても、予定通りにシステムを作ることが難しいのでしょうか?それは、顧客の会社の事情によって、毎回、完成品が異なるからです。

自社では、SFAの開発依頼を受け付けていますが、すべての完成品が毎回異なる特徴を持っています。ソフトウェア開発の流れは、すべて同じです。アジャイル開発が採用される以前から下記のようなフローでプロジェクトが進められてきました。

・顧客へのヒアリング
・ヒアリング内容の分析
・分析結果から設計
・開発
・テスト

このフローに、一切変化はありません。しかし、そこに関わる顧客の意識やエンジニアのスキル、要望量、打ち合わせ回数は、すべて異なります。あらゆる要素が予測できない以上、完成時期を100%予測することはできません。

そのため、従来の開発技法では、完成間近になって手戻りが膨大に発生し、コストが想像以上に膨れ上がる事態が発生していました。そういった事態を解決するために考案されたのが、アジャイル開発です。

アジャイル開発だから、既存の問題を簡単に解決できた

ソフトウェア開発における問題は、完成時期が予測できないことです。この点については、どの会社に依頼しても同じです。アジャイル開発を採用すれば、顧客がどのような状況でも、素早く最適化された体制を整えられます。

なぜなら、細かくヒアリングをしながら、少し開発するたびに、顧客とエンジニアの足並みを打ち合わせによって整えるからです。従来のソフトウェアの開発は、ヒアリング不足によりトラブルが起きがちでしたが、アジャイル開発では、必ずヒアリング後に作業に着手します。

顧客の中には、「アジャイル開発は、思うようになかなか進まないですね。」とおっしゃられる方がいます。しかし、ヒアリングを重視するのは、手戻りをなくし、完成度の高いシステムを設計するためです。ヒアリング情報をベースに、手戻りの少ない効率の良い作業を実現するためにも、ぜひ協力してください。

SFAの教科書@二階堂
株式会社ベンチャーネットにてコンサルティング問い合わせ窓口を担当している二階堂です。皆様のセールスフォースの導入などのコンサルティングをさせて頂いてます。導入された後の悩みなども受け付けておりますので是非無料ご活用下さい。

*
*
* (公開されません)