スクラム開発とは?
『スクラム開発の失敗 事例から失敗しない方法を伝授』や『スクラムマスターの資格 それって必要? 本音で答えます』などの過去記事でもご紹介しましたが、まずはスクラム開発について確認しましょう。
スクラム開発とは日本を起源とするアジャイル開発の手法です。ウォーターフォール型の開発は、上流から下流工程へ、それぞれの担当から担当へとバトンを渡しながら作業を進めていくのに対して、ラグビーのように担当者同士で適宜ボールを回しながらプロジェクトを進めていく姿から、スクラム開発という名前が付けられました。
具体的な進め方も確認しておきましょう。
スクラム開発は一般的に10人程度で実施されます。メンバーはスクラムマスター、プロダクトオーナー、チームいずれかのポジションに所属します。メンバーはその名前の通り、開発メンバーとして、実際に開発していく要員のことです。
プロダクトオーナーとスクラムマスターは、いわゆる管理者です。プロダクトオーナーは開発過程で生まれた成果物の責任者です。対して、スクラムオーナーはスクラム開発体制そのものの責任者です。直接、成果物について指導することはありません。しかし、プロダクトオーナーよりも上位の存在として、スクラム開発メンバーの能力不足を補うために教育プログラムの実施、あるいは、関係者との折衝など、スクラム開発がスムーズに進むように施策を行うことがスクラムオーナーのミッションとなります。
スクラム開発の最初のステップは計画ミーティングを開いてプロジェクトバックログ、スプリントバックログを作成します。バックログとはタスク表のことです。プロジェクト全体で行うことを一覧化したのが、プロジェクトバックログ、スプリント(各開発タームのこと)で行うタスクを抜き出したものをスプリントバックログと呼びます。
計画ミーティングで重要なのは、プロダクトオーナーが作成したバックログをメンバーに説明するだけでなく、メンバーが納得、合意することです。プロダクトオーナーの工数見積もりが適切かどうか、メンバー側でも見積もりし、スプリントバックログにどういったタスクを入れるかはメンバー主導で行うよう推奨している教本も多いです。
さて、スプリントバックログという形で、スプリント期間中にやるべきタスクが決まったら、実際に開発していきます。なお、スプリント期間中は、スクラムオーナーを含めたメンバー全員で、毎日スクラム会議を行うことが推奨されています。この中で進捗や課題管理をしていきますが、一般的には15分以内で終わらせるべきだと言われています。
なお、スプリントの際に重要なのは、一回のスプリントの期間は2週間~1か月ですが、例え開発が遅れてしまっていても、最初に決めたスプリント期間を延長してはなりません。一度でも延長してしまうと秩序を失い案件自体の失敗を招くことになります。
そして、スプリント期間が終わると行われるのが、スプリントレビューと振り返りです。スプリントレビューとは、そのスプリント中の成果物を、顧客を含めた関係者に確認してもらう外部的なミーティングです。一方で、振り返りは課題や問題の整理、対策の検討など内部で確認するミーティングになります。
なお、スプリントレビューで顧客と開発完了で合意するとクロージャ、つまり開発プロジェクト終了となります。逆にいえば、クロージャまたは開発の中止が決まらない限り、次のスプリントへと続いていきます。
スクラム開発 オススメのツール
スクラム開発とウォーターフォール開発では開発手法が異なるため、タスク管理や進捗管理についても異なるアプローチが必要です。そこで、スクラム開発にオススメな管理ツールをご紹介いたします。
①エクセル(表計算ソフト)
「エクセルかよ!」と思った方も多いと思いますが、追加コスト不良です。さらに、関数やマクロなどの仕掛けについてはともかく、基本的にはエクセルの使い方をメンバーに指導する必要はないでしょう。
これら導入負荷の観点から見て、エクセル以上に優れたツールはありません。
特にアジャイル開発に不慣れな要員中心で行う際は、出来合いのアジャイル管理ツールを使うよりも、フレキシブルに項目や管理観点を加工できるエクセルの方が、結果的に管理が楽になることが多いように思います。
実際、「これからはスクラム開発だ!」と上層部が張り切って、高額な管理ソフトを導入したものの、設定方法や利用方法が難しかったのか現場に受け入れられず、社内であまり広がらなかった、という話を耳にしたこともあります。
また、出来合いの管理ツールを使うよりも、自分たちで管理項目や管理粒度を模索しながら管理ツールを作り上げていく方が、教育、ナレッジの観点から見て、有意義なこともあります。
これらの理由から、特にアジャイル開発、スクラム開発初心者にエクセルをお勧めします。ある程度、アジャイル開発やスクラム開発のことが分かってきて「やっぱりエクセルだけだと厳しいよね」という感覚を掴んでから、自分たちに相応しい本格ツールに移行するのがベターではないでしょうか。
②JIRA
オーストラリアのアトラシアンという会社が作った管理ツールです。海外発のソフトだと、日本語化されていないものも多いですが、JIRAは日本語化されています。
JIRAの画期的なところは、「商用顧客は、すべてのソースコードを開発者ソースライセンスのもとに使用することができる」点にあります。つまり、購入者がJIRAのソースコードに手を加えて自由にカスタマイズすることができるのです。なお、JIRA自身はJavaでコーディングされています。
しかも安価で、オンプレミス版は買い切りで、10ユーザまでたったの10ドルです。ちなみにクラウド版だと10ユーザまで10ドル/月になります。
このような特徴が評価され、世界でもっとも利用されているアジャイル開発の管理ツールと言われています。
ちなみに、アトラシアンのオフィスは日本にもあり、JIRAという名前はゴジラ(GOJIRA)に因んでいるそうです。
③Zube.io
GitHubで開発を進めている場合、二重管理にならないようにGitHubのissueと連動したタスク管理を行いたい、というニーズが高く、様々なサービスがあります。その中で、スクラム開発向きで特に評価が高い管理ツールがZube.ioです。
Zube.ioはWebサービスのため、クローズな環境では使えないという弱点があるものの、UX/UIが優れていて、使い慣れていない方や非ITエンジニアのアジャイルマスター、プロダクトオーナーの方でも、あまり苦労せずに使い始めることができます。
また、4人までの利用であれば、無料となっているため、手軽に試してみることができるのもZube.ioの売りの一つです。
④ホワイトボード(大きな紙や壁でも可)と付箋(ポストイット)
IT業界の巨人Google。社内はほとんどシステム化されていますが、それでもホワイトボードとボールペン、ポストイットは備品として残されているそうです。この三つ、実はスクラム開発の管理ツールとしても使えます。
具体的には、プロジェクトバックログのタスクを付箋に書いていきます。そして、スプリントで対応することが決まったもの(スプリントバックログになったもの)をホワイトボードの左側に貼り付けます。
スプリントが始まると、メンバーは自分が仕掛中のバックログが掛かれた付箋を右上に移動させます。そして、対応が終わったバックログが掛かれた付箋を右下に移します。このように、付箋を動かすことで、視覚的に、各バックログ(=各タスク)のステータスが一目瞭然となります。
さらに課題も付箋に書いてホワイトボードに貼り付けておけば、どういう問題が持ち上がっているのかも一目瞭然となります。
プロジェクトマネジメントに詳しい方ならば、ご存知かと思いますが、このようなタスク管理を「カンバン方式」と呼びます。JIRAやZube.ioもカンバンボードなどの名前で、電子的に同じことができます。
まとめ:目的に合わせたツールを使おう
進捗を管理するためのツールは絶対に必要なものです。今回、ご紹介した四つ以外にも、いくつものツールが開発され提供されています。目的やメンバーのレベル感に合わせて、最適なスクラム開発管理ツールを使うようにしましょう。