日本企業のWEBアプリケーション開発手法~海外比較~

近年、日本企業ではWEBアプリケーションを開発する際、スクラム開発を含むアジャイル開発が多く見受けられるようになりました。

外国人ITエンジニアの転職エージェントでもあるGTalentにおいても、クライアント企業から依頼がある求人にスクラム開発経験者の要件が増えてきております。

今回の記事では、実際に「どのくらいアジャイル型開発が日本で普及されているのか?」、「海外と比べてどの手法が主に使われているのか?」など、海外と比較した日本のアジャイル開発の普及状況を説明したいと思います。

ITエンジニアで転職をお考えの方で日本企業の開発手法のトレンドを確認したい方やスクラム開発の日本における使用状況などを知りたい方、ぜひご参考にしてみて下さい。

WEBアプリケーション開発手法

まずは、現在日本のシステム開発現場で主に使用されている開発手法に関してご説明したいと思います。

ウォータフォール型開発

ウォーターフォール型開発は、エンジニアの間で一番古くから用いられている開発手法の一つです。アプリケーションに追加される機能全てを以下のような流れで段階1つずつ確認しながら次の工程に進む手法であります。

企画 ⇒ 設計 ⇒ 実装 ⇒ テスト ⇒ 納品

このようにシステムを1つ作る時に工程で全て分けられているため、修正などが必要な場合には後戻りができないのが最大な特徴であると言えます。この特徴により、スピードよりも、最初からクオリティーが求められるような場合に用いられることが多いです。

例えば、業務システムや大規模サービスなど大掛かりなシステム開発で仕様が完璧に決められており、途中で変更する可能性が低いプロダクトや、予算や納期などが定まっていて変更できないプロジェクトなどに使われるケースが多いです。

アジャイル型開発

ウォーターフォール型とは違い、アジャイル型開発は柔軟な開発方法です。この方法では、プロダクトをできるだけはやくリリースし、そこからどんどん改修を行なっていくことを目的にしています。

参照画像:VES(株式会社ヴェス)コラム「アジャイル型開発の重要性とは」

アジャイル型では、仕様をある程度決定したら、その後の要件変更や改修を見越して、ビジネスのニーズに合わせて、上記のプロセスを数回繰り返すことによって商品を完成させていくことが最大の特徴であります。

スクラム型開発

スクラム型開発はアジャイル開発の中でも一番有名な開発手法であり、スクラム開発=アジャイル開発となっているのが日本の企業では一般的です。スクラム型開発はアプリケーション開発で「無駄」をなくすために提案されたアジャイル型開発の一つのフレームワークになります。

スクラム型開発の要素

スクラム型開発の主な流れを以下に簡潔にまとめてみました。

  1. プロダクトの優先順位を決めその順番に従って開発を進める
  2. 固定の期間(1~4週間、「スプリント」と呼ばれる)で開発を区切り、プランニングを行う
  3. デイリーで開発メンバーでタスク管理を行い、スプリント単位でステークスホルダーへレビューを行う
  4. ①~③を繰り返し、その都度ステークスホルダーに確認・修正点を明確化する
  5. 納品

先ほど述べたように、アプリケーション開発の「無駄」をなくすために用いられている開発方法ですので、プロダクトの終了期間が読みにくいことが特徴であります。

日本と海外の開発手法の状況

IT関連のシステム開発では全世界で同じ手段が使われていると思っている方が多いかもしれません。日本で使われている開発手法が海外では異なったり、もちろん海外の手法が日本より遅れているケースも少なくありません。

これからは、日本と海外におけるアプリケーション開発の手法で何が主流になっているかを述べていきたいと思っています。

日本の開発手法

ガートナージャパンが行った調査では、日本企業の43%はアプリケーション開発でウォーターフォール型の開発手法を用いられています。

この理由としては、日本企業が結果だけにフォーカスするだけではなくて、過程も重視するため、アジャイル型よりウォーターフォール型の方が期間や予算を把握しやすいため選ばれていると思います。ただし、多い人数のエンジニアを確保して作業を行うため、現在ITエンジニアが不足している日本においては、ウォーターフォール型の開発手法を見直す大企業も増えてきています。

参照:ガートナー / アプリケーション開発に関する調査

海外の開発手法

ビジネス向けのカスタムソフトウェア開発を行っているLvivityによると、海外では日本と異なって主流となっているのはビジネスサイドの要望に柔軟に対応できるアジャイル型開発となっています。

アジャイル型の中で最も使われいるフレームワークは、顧客や社内のビジネスサイドとチームを組んで定期的なフィードバックを頂くスクラム型開発であります。米国などでは自社内で開発を行っているケースが多いためソフトウエアの変更がしやすい方法が選ばれていると思われます。

参照:Lvivity / Software Development Methodologies
写真:情報処理推進機構 / 非ウォーターフォール型開発の普及要因の調査

まとめ

現在、日本と海外で主な開発方法は違いますが、日本でアジャイル型を用いられている企業が年々増加しています。その傾向を考えると、エンジニアとしてキャリアを構築するためには、スクラム型の開発手法を経験しておくことが重要になると考えられます。

日本でアプリケーションエンジニアやIT関係への就職・転職を検討される外国人の方がいらっしゃいましたら、外国人ITエンジニア専門の人材紹介会G Talent (ジータレント)にご登録ください。プロのコンサルタントが無料で就職活動をサポートいたします。