人材育成アジャイル開発の導入を成功に導く!アジャイル人材育成のポイント

2021/09/20
アジャイル開発の導入を成功に導く!アジャイル人材育成のポイント

「上司、もしくはお客様から、アジャイル型の開発を要望された」「社内でアジャイルという言葉をよく聞くようになった」ということはないでしょうか。アジャイル開発は、現代の変化の激しいビジネス環境に適応すべく生まれたもので、一時の流行ではなく今後も必要とされるものです。しかし一方で、アジャイル型の開発は少しずつ浸透してきたものの、推進できる人材は多くありません。ここでは、アジャイル人材をどう育成すればよいかを解説します。

AIちゃん

たしかに社内で、最近「アジャイル」って言葉を1日3回は聞くようになったわ・・!私もそろそろアジャイル人材を目指したほうがいいのかしら・・・

有村先生

1日3回も聞くんですね(笑)でも確かにどの企業もアジャイル人材は求められています。今から目指すのはとっても良いと思います。

目次

アジャイル開発はビジネスの変化に追従すべく生まれた

agile-development-introduction

アジャイル開発はなぜ必要なのでしょうか。アジャイル開発を推進するにあたり、この問いの答えを常に念頭に置いていなければ、例えエンジニアとしてノウハウを知っていたとしてもうまく社内で浸透させたり、活用することはできないでしょう。

問いの答えを一言で言うと、「ビジネスの変化に追従するため」です。


ウォーターフォール型開発の問題点とアジャイル開発誕生の経緯

アジャイル開発と対極にある「ウォーターフォール 型開発」では、要件定義からリリースまでそれなりの期間を要します。ソフトウェアとして動作する形になるまで最低でも数ヶ月、長いと数年に渡って開発を続けます。

そうしたときに発生するのが、要件の陳腐化です。
ソフトウェアに求められる要件をビジネス環境、企業の状況に合わせて洗い出していても、リリース時には数年が経ってしまっていたとしたらどうなるでしょうか。世の中のビジネス環境も企業の状況も変化してしまい、開発したソフトウェアが使い物にならない状況がになりかねないのです。

数十年前のようにソフトウェアが普及していなかった時代は、待望のソフトウェアを作り上げるために数年かけて開発しても問題はなかったでしょうが、現在ソフトウェアに求められることは「スピード」と「高品質」の両軸になってきています。

例えば、昔は文字や画像が表示できればよかったWebブラウザも、今ではユーザーが望む機能を各種プラグイン(拡張機能)として提供し、どんどん使いやすいものに変えていく時代です。ただ使えればいいだけでなく、市場と企業の実態に合わせたソフトウェアが必要とされてきているのです。

そういった市場の要望を満たすために生まれたのが、「アジャイル開発」です。
アジャイル開発では、 ソフトウェアを1、2週間ほどの短い期間で次々とアップデートしていきます。そうすることで、ユーザーからフィードバックを受け、方向修正しながら、理想のソフトウェアに近付けていきます。

このような背景を知ると、アジャイル開発が現代のビジネスにおいて必要なものだとご理解いただけるでしょう。

アジャイルの広がりと人材採用の難しさ

agile-development-introduction

第13回STATE OF AGILE REPORT によると、世界でアジャイル開発を実践していると回答した組織は97%に達しています。
日本でもアジャイル開発が広がってきていますが、PMIの「2019年 アジャイル プロジェクト マネジメント 意識調査結果と提言 」によると、国内で現在もアジャイル開発を継続していると回答したのはわずか31%でした。
日本のソフトウェア業界は世界から数年遅れていると言われていますが、それが数字として表れています。

参考

State of Agile | State of Agile Survey 一般社団法人PMI日本支部アジャイルプロジェクトマネジメント協会|2019年アジャイルプロジェクトマネジメント 意識調査結果と提言

世界に追いつこうと国内のIT企業では数千人規模の大幅な増員を計画しており、優秀なIT人材は不足しがちな状況にあります。外部からアジャイル開発のスキルがある人材を採用するのも1つの手ではあるのですが、いい人材に巡り合える保証はありません。
そこで、有効なのが社内でアジャイル人材を育成することです。
もちろん育成も簡単なことではありませんが、本記事のポイントを押さえることでアジャイル人材育成の一歩を踏み出すことができるでしょう。
良い人材が応募してくるのを待つよりも確実にアジャイル人材を獲得できます。

アジャイル(スクラム)開発を支える推進体制

agile-development-introduction

アジャイル開発を推進するにあたって、チームメンバーとしては主に3つの役割の人材が必要です。
なお、ここではアジャイルの主流な開発手法である「スクラム開発(チームのコミュニケーションを重視する開発手法)」を例にご紹介しますが、他の開発手法でも名前の違いはあれど、役割、体制に大きな差はありません。

プロダクトオーナー

プロダクトであるソフトウェアに対する投資対効果(ROI)を最大化することに責任をもつ存在です。プロダクトオーナーは、プロダクトへの要求機能を常に最新化し、優先度を付ける「プロダクトバックログ」と呼ばれる作業を行います。プロダクトに対する情熱を語り、開発メンバーと議論を重ね、プロダクトの価値を最大化するよう取り組みます。受託開発の場合、ユーザー企業の責任者、もしくはユーザーを熟知した社内メンバーがこのポジションとなることが多いです。

開発メンバー

実際に手を動かしてプロダクトを開発し、プロダクトの価値を高めていくことに責任をもちます。基本的に開発メンバー内での役割分担は細かく行わず、1人が複数のタスクを担います。各開発メンバーが強みをもち寄り自律的に行動することで、互いに貢献し合います。開発スキルに加えて、コミュニケーション力、改善スキルが求められます。

スクラムマスター

名前の通りスクラムのマスターとなり、スクラム成功に向けて全体を支援し、スクラムをうまく進めることに責任をもちます。開発メンバーのスクラムへの理解を深め、実践できているかを常にチェックします。コントロール型の管理ではなく、メンバーを支援するファシリテーターのような役割です。開発ルールなどの決定権は開発メンバーに委譲し、自分たちで考え、決められるチームを作ることが求められます。

アジャイルを社内に導入するにあたって、最も重要なポジションはスクラムマスターです。なぜなら、どのポジションよりもアジャイル、スクラムに対する理解、経験が必要となるからです。
他のポジションもアジャイルの経験者がいれば言うことなしですが、まずはスクラムマスターがアジャイルの火種をつけ、広げていくことを目標としても良いでしょう。 スクラム以外の開発手法でも同様に、まずはアジャイル開発のプロジェクトに最低1人、アジャイルを推進できる知識と経験がある人材を配置しましょう。

アジャイルを推進する人材に求められる3つの知識とスキル

実は、ウォーターフォール 型の開発経験が豊富なエンジニアであったとしても、アジャイル型の開発となると簡単には切り替えることが出来ないのが実情です。その理由は、それぞれの開発手法で必要なスキルが異なるからです。
アジャイルを推進する人材にはどのような知識・スキルが求められるのでしょうか。

ソフトウェア開発における基本スキル(要件定義、方式設計、プログラミング、テストなど)はもちろん必要ですが、ここではアジャイル開発で特に重要とされる3つのポイントについて解説します。

アジャイルの原理、原則の理解

agile-development-introduction

アジャイルを推進するにあたって、アジャイルの原理、原則の理解が必須です。
たとえ「バーンダウンチャート」、「タスクかんばん」といった手法が使えても、あるいはテスト駆動開発やリファクタリングができても、アジャイルの原理、原則に即さず進める開発はアジャイル にはなり得ません。

アジャイルの原理、原則を理解するうえで最も参考になるのが「アジャイルソフトウェア開発宣言」です。
アジャイルソフトウェア開発宣言は、ウォーターフォール など従来型の開発と異なる手法を提言していた開発者が集まって議論し、2001年に公開されたものです。
具体的な方法論ではなく、下記のように4つの原理原則が記されています。

プロセスやツールよりも個人と対話を、
包括的なドキュメントよりも動くソフトウェアを、
契約交渉よりも顧客との協調を、
計画に従うことよりも変化への対応を、
価値とする。すなわち、左記の事柄に価値があることを
認めながらも、私たちは右記のことがらにより価値をおく。

アジャイルソフトウェア開発宣言 - Agile Manifesto

文中にある左記とは、「プロセスやツール」「包括的なドキュメント」「契約交渉」「計画に従うこと」を指し、一方で右記は「個人と対話」「動くソフトウェア」「顧客との協調」「変化への対応」を指します。

いずれも左記の事柄を否定しているわけでなく、左記を重要としつつも、右記の事柄をより重要と考えましょうということです。この他にも12の原則も記載されており、今日のアジャイル開発の礎となっています。

技術スキル

開発メンバーにはソフトウェア開発の基本スキルと合わせて、以下の技術スキルが求められます。プロジェクトによっては採用しない場合もありますが、アジャイルを進めるうえで基本的なものなので、どのような内容か理解し、実践できるようになっておきましょう。

  1. ペアプログラミング
  2. テスト駆動開発
  3. テスト自動化
  4. 継続的インテグレーション

チーム運営スキル

agile-development-introduction

ファシリテーションなどのチーム運営スキルは、スクラムマスターに必携のスキルです。
アジャイルは常に改善を続けながら開発する手法のため、その主役は開発メンバーと言えますが、その開発メンバーが活きるかどうかはスクラムマスターの手腕にかかっています。 スクラムマスターがメンバーの悩みを聞き、アイディアを引き出し、メンバーが輝く環境を作るために下記のようなチーム運営のノウハウは押さえておくべきです。

  1. スプリント計画、推進
  2. 日次ミーティング
  3. タスクかんばん
  4. バーンダウンチャート
  5. 振り返り

ヒューマンスキル

最後にヒューマンスキルです。
これらは学んだからといって簡単にできるようなものではありません。アジャイルを通して、自ら悩んで失敗していくなかで習得できるものと言えるでしょう。具体例として次のようなものが挙げられます。

  1. 継続的改善
  2. コーチング
  3. ファシリテーション
  4. サーバントリーダーシップ

どのスキルも、ハウツー本を読むなどといったインプットだけで身につくものではありません。実際のプロジェクトで体験することが、最短の習得方法と言えます。

アジャイル人材育成の手順

では、具体的にどのような手順でアジャイル人材を育成していけばよいのでしょうか

人材の選定

agile-development-introduction

まずは、社内で育成する人材を選定しましょう。
最低でも下記2点を満たす人材が望ましいです。

  1. アジャイルへの興味、関心があること
  2. 先述の「ヒューマンスキル」を持ち合わせていること

興味、関心があることはもちろん、すぐに伸ばすことができないヒューマンスキルを持ち合わせた人材が良いでしょう。
1名でも構いませんが、2名以上選ぶと、実際のプロジェクトに入ったときに他メンバーのアジャイルへの理解度が深まりやすくなります。

研修でアジャイルを体感

次に、選定した人材に研修を受けてもらいます。
本やネットの情報でどれだけインプットしても、実際に体感しないとわからないことが多くありますので、研修は必須と言えます。研修には講座型と実習型があり、実習型はぜひ受講すべきです。研修の中でアジャイルを体感し、自らノウハウを見出すことが何よりスキルアップにつながります。

プロジェクトで実践

agile-development-introduction.jpg

研修を受けたら実際のプロジェクトで実践しましょう。とはいえ、いきなり失敗が許されない大きなプロジェクトでアジャイルを導入するのは危険です。
まずは、小さなプロジェクト、もしくは大きなプロジェクトの一部から、そして失敗のリスクを許容できるプロジェクトを対象に導入しましょう。アジャイル開発の実践演習が研修に組み込まれていたり、外部のアジャイルコーチに入ってもらうことも大変有効です。研修を受けたメンバーを中心に、アジャイル開発を実践し、各メンバーのアジャイルスキルを高めていきます。

社内にアジャイルを拡大

そして、実際のプロジェクトで経験を積んだメンバーを分散させ、OJTを通して複数のプロジェクトにアジャイル開発を広げていきます。
勉強会を開いたり、専門の部署を立ち上げたりして裾野を広げていくのもいいでしょう。

有村先生

アジャイル人材を育成することは難しいですが、型を学んで複製することが大切です。

おわりに

アジャイル人材を育成するのは簡単ではありません。しかし、時代に適さないソフトウェア開発は、ビジネス環境への対応の遅れにつながる恐れがあります。アジャイル開発が広がりつつある今が乗り遅れないチャンスです。本記事を活用してアジャイル人材を育成し、社内にアジャイル開発を広めていきましょう。

即戦力人材を育成するIT研修機関のインターネット・アカデミーでは、アジャイル開発の手法を正しく学ぶ「開発系プロジェクトマネジメント」講座 をご用意しています。また、インターネット・アカデミーの魅力は、研修カリキュラムを各企業担当者様のご要望やターゲットに合わせて「フルカスタマイズ」できる点にあります。
新入社員などの知識ゼロからのエンジニアを育成することはもちろん、ウォーターフォール開発に慣れた中堅社員向けに、必要な内容をピックアップして無駄を削ぎ、カリキュラムを最適化することができるのです。また、ご要望次第では、研修後に開発演習として実際にチームを組んでアジャイル開発演習を行うこともできるので、外部講師にチェックを受けながら研修内で実践力を確実につけていくことが可能です。

ご興味があるご担当者の方は、ぜひお気軽にご相談下さい。

IT研修のお問い合わせ・ご相談

参考

アジャイルとは? 大手企業のアジャイル人材の増員 アジャイル人材に必要なスキルセット アジャイル開発が今後拡大していく アジャイルソフトウェア開発宣言 日本のアジャイル導入状況 世界のアジャイル導入状況

デジタル人材育成のお役立ち資料をダウンロード

IT研修についての電話お問合せ窓口
03-3341-3781
受付時間(平日・土日) 10時-21時

デジタル人材育成のお役立ち資料や、IT研修の講座ラインナップ資料などをまとめてダウンロードしていただけます。ぜひ一度ご覧ください。コンサルタントへの無料相談をご希望の方はこちらからお問い合わせください。

ダウンロード資料の内容
  • DX人材育成のための解説資料
  • インターネット・アカデミーのサービス案内
  • 講座ラインナップ表
会社名必須
部署名必須
お名前必須

電話番号必須
メールアドレス必須
個人情報の取扱い

個人情報の利用目的についてご同意いただいた場合のみ、「同意して進む」を押してください。
・プライバシー保護のため暗号化通信を使用しています。