見出し画像

スクラムとアジャイル開発の本を12冊一気に読んでみた!その中から初心者、中級者、上級者向けのおすすめを紹介

こんにちは電通デジタル開発部エンジニアのリチャードです。弊社で開発している社内プロダクトEASIではスクラム開発を採用しており、開発部内には認定スクラムマスターも在籍しています。一方で私個人はこれまでスクラム開発を経験してはいたものの、断片的な知識と経験で乗り切っていた部分が強く、改めてスクラムやアジャイル開発の基本を学び直そうと思い立ち、12冊の本を一気読みしました。ちょうど数ヶ月前に電通デジタルへと転職したばかりだったので、よい機会だったと思います。

今回読んだ本の一覧はこちらです!過去に読んで改めて今回読み直した本もあるため、冊数は多くなっています。

初心者向け
1. いちばんやさしいアジャイル開発の教本
2. SCRUM BOOT CAMP THE BOOK

中級者向け
3. みんなでアジャイル
4. プロダクトマネジメント
5. カイゼン・ジャーニー たった1人から初めて、「越境」するチームを作るまで
6. Clean Agile 基本に立ち戻れ
7. SCRUM MASTER THE BOOK
8. アジャイルな見積りと計画づくり

上級者向け
9.  エッセンシャル スクラム
10. アジャイルイントロダクション Agile開発の光と影
11. エクストリームプログラミング
12. 正しいものを正しく作る

古い本から新しい本まで読んだので、出版年順に並べるとこうなります。

画像1

この記事ではたとえ出版年月が古くても、今も変わらず役に立つ本を紹介していますが、出版当時の時代背景を念頭に置くとすんなりと頭に入ってきやすくなります。

それではここから本の感想の紹介です。

初心者向け書籍

初心者向けに分類した書籍は、アジャイル開発に詳しくなくても気軽に読み始められます。これからスクラムやアジャイル開発をはじめたい人だけでなく、隣の部署や上長に自分たちの開発手法を理解してもらいたいときにおすすめするとよいでしょう。

1. いちばんやさしいアジャイル開発の教本

市谷聡啓 著、新井剛 著、小田中育生 著、インプレス

『絶対に挫折しない』を掲げる人気シリーズだけあって、とにかくわかりやすい本です。理屈のジャンプがなく、必要な前提知識のハードルも低く、冒頭からアジャイル開発の歴史や位置づけ、続いてアジャイル開発導入の動機付けとスムーズに話が進んでいきます。ウォーターフォールとアジャイルの違いを丁寧に解説しているので、ウォーターフォール開発の経験が長い人には両者を比較しながら理解が深められます。図解が豊富なのでサラッと読み流すのも吉です。

わかりやすいだけでなく、実践での勘所を外さないトピックの選び方、例えば「質とスピードは両立する」「なぜアジャイル開発はなぜ誤解を生みやすいのか?」を入れてくるあたり、アジャイル開発の第一人者である著者たちの経験に裏打ちされていると言えます。

ただし初心者向けなだけあって、挫折や泥臭い現実の話はありません。もがき苦しむ人々の生き様、どうにもならないこの世の苦悩、そういう話が好きな人は、著者の一人である市谷聡啓さんの別著「正しいものを正しく作る」を読みましょう。本記事の上級者編で紹介しています。

2. SCRUM BOOT CAMP THE BOOK 

西村 直人 著、永瀬 美穂 著、吉羽 龍太郎 著、翔泳社

マンガ形式で営業支援システム開発の物語を追いながらスクラム開発を学べる本です。物語なので読者もスクラム開発を体験したような臨場感を持てますね。そしてこの臨場感があなどれなくて、入門者向けマンガなのにシビアなシーンが出てきます。例えば冒頭から「まずは要件がまとまったら教えてください」という開発者がいたり、営業部長が「要は期間と予算が知りたいんだよ!」と言ってきたり、スプリントレビューで「準備大丈夫です」といった直後のデモで「こっちのPCで動きません」という事態が発生します。似た経験をした人は記憶に心をえぐられて胃が痛くなりそうですね。初心者向け漫画なので、それらの失敗が深刻な事態を引き起こすことはありませんが、現実では未然に防ぎましょう。さもないと初心者では抜け出せない状況に陥ってしまいます。

初心者向け書籍、どちらを読むべきか?

初心者向けの本は、時間とお金に余裕のある人はどちらも読んでみることをおすすめしますが、どちらか一方を選ぶとしたら、アジャイルの理論や全体像を掴みたい場合は1を、アジャイルの進め方や雰囲気をざっと掴みたい場合は2を選ぶとよいでしょう。

中級者向け書籍

中級者向けの書籍は、すでにアジャイル開発をはじめていて、より実践的なヒントを探している人に読んでもらいたです。

3. みんなでアジャイル

Matt LeMay 著、吉羽 龍太郎 訳、永瀬 美穂 訳、原田 騎郎 訳、有野 雅士 訳、オライリー・ジャパン

この本のハイライトは以下の「組織重力3法則」です。

- 第1法則: 組織の個人は日々の責任やインセンティブと整合性がなければ、顧客と向き合う仕事を避ける
- 第2法則: 組織における個人は自分のチームやサイロの心地よさの中で一番簡単に完了できる作業を優先する
- 第3法則: 進行中のプロジェクトは、それを承認したいちばん上の人が止めない限り、止まることがない

たとえ開発者ではなかったとしても、これらの法則の意味するところには心当たりがあるのではないでしょうか?心当たりがあるどころか、今この瞬間も目の前で起こっている残念な状況を言い当てられた気分になるかもしれません。

もちろん解決策はアジャイルの原理を理解し、プラクティスを実践していくことだというのがこの本の趣旨ですが、アジャイルで全部解決!のような楽観的な話ではなく、そもそも組織というものはこれらの重力が働くものなのだ、という前提を置いていることが本書の特徴です。気を抜けばすぐ引きずられてしまうこともあって、重力というネーミングはいい得て妙です。著者が「確かな手法とドロドロした価値観は切っても切れないし切るべきではない」と言っているあたり、3つの重力との絶え間ない戦いをやりぬく覚悟を感じます。

4. プロダクトマネジメント

Melissa Perri 著、吉羽 龍太郎 訳、オライリー・ジャパン

こちらの書籍は以前DD Tech Blogの別の記事でも紹介しています。

本書は架空の企業マーケットリーのストーリーを交えて話が展開されます。

次のリリースでは10個ほどの新機能が顧客に提供されることになりました。…「これこそが良いプロダクトマネジメントだ」CTOはレビュー会議で心からみんなを褒めました。…数週間後、受講者向け機能の利用状況を確認しました。誰も何も使っていませんでした。機能を全部作っても、マーケットリーの状況に変化はなかったのです。成長率はますます低下し、会社は焦りを感じ始めました。

似たような話を経験したことはないでしょうか?これは本書でいうビルドトラップと呼ばれる問題で、組織がリリースする機能の数などのアウトプットに集中してしまい、本当に顧客に価値を届けるアウトカムを忘れてしまう現象です。本書の中心的なテーマはこのビルドトラップに警鐘をならし、それを避ける方法を議論することです。実際、原著のタイトルはEscaping the Build Trapとなっています。

途中で出てくるマーケットリーのCTOが「いや、私たちには戦略が必要だ」といいながら、実際には戦略ではなく機能一覧と実現方法を求めてくるなど、著者の体験を反映したであろうリアルな展開の数々は、現実の世界でどのようにしてビルドトラップが起こるのか教えてくれます。

「プロダクトマネージャーのキャリアパス」などプロダクトマネージャーを目指す人向けの情報もありますが、ビルドトラップにはまって自分たちの仕事がアウトプット重視になっていると感じている人々に広くおすすめできる内容です。

5. カイゼン・ジャーニー たった1人から初めて、「越境」するチームを作るまで

市谷 聡啓 著、新井 剛 著、翔泳社

アジャイル開発に取り組む主人公とそのチームの軌跡を追いつつ、初めてのアジャイル開発にはどんな困難が待ち受けているのか、困難に立ち向かう心構えとは何か教えてくれる一冊です。往年の「ザ・ゴール」などのビジネス小説を彷彿とさせる起伏にとんだ展開は、本記事で紹介している他のストーリー形式の書籍と比べても際立っています。

著者である市谷さんは多数のアジャイル開発関連書籍を執筆していて、本書の内容は上級者向け書籍としてこの後紹介する「正しいものを正しく作る」と繋がるものがあります。どちらかが心に響いた人は、もう一方も読んでみるといいでしょう。

6. Clean Agile 基本に立ち戻れ

Robert C. Martin 著、角 征典 訳、角谷 信太郎 訳、アスキー・ドワンゴ

Cleanシリーズの著書で有名なボブ・マーティン氏の本です。アジャイル開発を歴史をムーブメントの中心にいたうちの1人の視点から学べる興味深い本です。著者があえて主観を盛り込んで書いた本なので、バイアスがかかっていそうな記述があるものの、ボブ・マーティン氏の文章スタイルが好きな人には楽しみながら読めるでしょう。

アジャイル開発を体系的に学ぶ本ではなく、どちらかというと読み物といえる書籍です。例えるなら、数学を勉強するのに数学自体ではなく、数学者の半生や人となりを知ると親しみが湧いて勉強しやすくなるようなものでしょうか。

エクストリーム プログラミングの実践者でもあるボブ・マーティン氏がどのような考え方のもと開発に取り組んでいるかがわかる本なので、後ほど上級者向け書籍として紹介している「エクストリーム プログラミング」と合わせて読むとより理解が深まる一冊です。

7. SCRUM MASTER THE BOOK

Zuzana Sochova 著 、大友 聡之 訳、川口 恭伸 訳、細澤 あゆみ 訳、松元 健 訳、山田 悦朗 訳、梶原 成親 訳、秋元 利春 訳、稲野 和秀 訳、中村 知成 訳、翔泳社

スクラムマスターとして初めて指名された人におすすめです。スクラムマスターとして期待される役割が簡潔にまとめてあるので、慣れるまではポケットリファレンス的に頻繁に読み直して「今この場面で期待されている役割はこれなのか」と思い出すのに役立ちます。

短くて読みやすい分、詳細については書いてありません。「自己組織化が重要です」「ファシリテーションをしましょう」などと言われても、やり方に関しては入門的な内容が書いてあるだけなので、詳しい方法論を知りたい人は上級者向け書籍で紹介している「エッセンシャル スクラム」などを読むと
効果的です。

8. アジャイルな見積りと計画づくり

Mike Cohn 著、安井 力 訳、角谷信太郎 訳、マイナビ出版

アジャイル開発手法の中でも見積もりに特化しためずらしい書籍で、よく言われる「アジャイル開発では計画より計画『づくり』が重要」と言われる部分について深く掘り下げています。本書では「スケジュールの遅れは先へと伝わる」「見積もりがコミットメントになっている」といった、見積もりにありがちな問題点から出発し、それらの問題に対抗するため、短期的にはユーザーストーリーを中心とした方法論を、長期的には計画づくりをいかにビジネスの価値に結びつけるかを解説しています。開発の現場で短いイテレーションを繰り返していると長期的な計画を見失いがちで、それを防ぐために事前に綿密な計画を立てると、今度はそれがコミットメントになってしまうという別の問題が起きます。短期と長期、両者をうまくつなげる手法や考え方を求めているひとにはピッタリの一冊です。

上級者向け書籍

こちらに分類した書籍はアジャイル開発経験の豊富な人、特にアジャイル開発で1度や2度挫折した経験を経て取り組みを続けている人が読むと深く共感できそうなものを選びました。

9. エッセンシャル スクラム

Kenneth S. Rubin 著、和智 右桂 訳、髙木 正弘 訳、岡澤 裕二 訳、角 征典 訳、翔泳社

「アジャイル開発に関わる全ての人のための完全攻略ガイド」というだけあって、448ページと分厚く各ページの文字もびっしりと書き込まれています。スクラムのプラクティスに関して詳細を知りたい場合、欲しい情報が初心者向けや中級者向けの本には載っていなければ、この本を見るとよいでしょう。

最初から最後まで読み通すと非常に長い時間がかかるので、必要な時に必要な部分だけを掘り下げて読むのをおすすめします。情報量は多いものの、各章のはじめに章内で書かれた項目を整理した部分があり、図解も豊富にあるのでじっくり読めば読みやすいです。

カバーしている内容が多岐にわたるため、本書で扱う情報量のほとんどがプラクティスの詳細な説明です。そこにとらわれて原則を見失わないために、本書の第3章「アジャイルの原則」を何度か振り返りながら、あるいは中級者向けで紹介した「みんなでアジャイル」などとあわせて読むとよいでしょう。

10. アジャイルイントロダクション Agile開発の光と影

バートランド・メイヤー 著、土肥拓生 訳、前澤悠太 訳、末永俊一郎 訳、近代科学社

バートランド・メイヤー博士、アジャイル開発を切る!

オブジェクト指向開発のバイブル的書籍「オブジェクト指向入門」で有名なメイヤー博士が、アジャイル開発ムーブメントを冷静ながらも鋭く批評します。イントロダクションという書籍名とは裏腹に、アジャイル開発の挫折も含め経験した熟練者にお勧めしたい内容です。

本書で展開される批判の例をあげると、

-「新しくもよくもない」ユーザーストーリーでの要求定義は、アジャイル開発がもたらした新しい手法ではないし、ユーザーストーリーから外れた利用例が考慮からもれるので、よい方法ではない
-「新しいがよくない」ペアプログラミングはエクストリーム プログラミングがもたらした新しい手法だが、必ずそれを行うべきというのはよい主張ではない、コードレビューなどの古典的な手法より勝るとは限らない研究成果がある
-「逸話による証明」ホテルをメールで予約しようとした顧客が「すでにホテルは予約されています」という文章を誤解し、自分たちの予約が正しく処理されたと思った。しかし実際は、他の顧客が同じ日程で同じ部屋を先に予約していた。これをもって、電話で確認していればこんな誤解は起きなかった、話し言葉の方が書き言葉の方が優れている、というのはただの逸話であり何も証明していない

といったものがあります。これらの説明に煙に巻かれたように思っていた人々にとって、違和感を言語化されたような気持ちになるはずです。

とはいえ、メイヤー博士はアジャイル開発全体を非常に好意的に捉えていることは、あとがきの中でも紹介されています。アジャイル開発ムーブメントのよいところと悪いところ両方の理解を深められる一冊なので、両方の視点から理解を深めたい人に読んでいただきたいです。

11. エクストリーム プログラミング

Kent Beck 著、Cynthia Andres 著、角 征典 訳、オーム社

内容は中級者向けな本ですが、あえて上級者向けに分類しています。その理由は、上級者が本書の歴史的背景、つまり1999年に出版された第1版が、アジャイル開発を広める大きなきっかけになった、ということを踏まえて読み直すことで、別の学びがあるためです。

現在出回っているのは第2版なのですが、第1版の序文は

 エクストリームプログラミングはコーディングをソフトウェアプロジェクトの中心的な活動としている。こんなものがうまくいくはずがない!

という、周囲の声を代弁するような書き出しから始まります。当時はまだ継続的インテグレーション、インクリメンタル開発などのプラクティスは一般に広まっておらず、それらを勢いよく開発者コミュニティに広げるため、わざと過激な表現を用いて耳目を集めたと伝え聞きます。著者であるケント・ベックは「他人の行動をコントロールできるはずもないのだが、恥ずかしながらそれが(第1版出版)当時の私の狙いだった」と第2版の序文に記しています。現在手に入る第2版では当時の表現を知りえないのがもったいなく感じます。

本書で紹介されるプラクティスの説明はやや根拠に欠けるものもあるように見えます。これは先陣を切って新しいプラクティスを世間一般に紹介した本であるため、その後の業界全体における知見の集積が十分に取り込まれていないことが原因だと思います。それを踏まえたうえで「当時と今では何が違うのか?」、「このプラクティスはどこまで効果が証明されたか?」、「各プラクティスの落とし穴は?」と考えながら読むと、より学びが深くなる一冊だと思います。

12. 正しいものを正しく作る

市谷聡啓 著、ビーエヌエヌ出版

アジャイル開発プロジェクトの2つや3つで挫折した人なら、読みながら身につまされる思いをするはずです。

プロダクトオーナーと開発チームの間、また開発メンバーの間でもプロダクトの完成のイメージはずれていく。…全体の完成度が高まってくるにつれてようやくプロダクトのイメージが見えてきた結果、コレジャナイ感、あるいはかなり調整を入れないとリリースできない、という判断が下されることになる

引用された上記の文章を見て、自分のチームのことだと思った方もいることでしょう。そして他の本のように「アジャイル開発が解決策です!導入してみませんか?」というスタンスではなく、

そもそも「形にしてから考える」という作戦が...本当に妥当な選択肢なのかを当然検討しなくてはならない。コードを書いて動くソフトウェアを作り、検証するというのは、コスト的に高くつく行為だ。もし1~2時間のコミュニケーションで作るものの認識を合わせ整理できるならば、「一度間違ったものを作ってから必要なものを理解する」より、予算的にも時間的にもはるかに少なくて済む

と、読者の「もっとうまくアジャイル開発をやって仮説検証を繰り返せば成功できるはずだ」という期待に冷や水を浴びせてきます。簡単に成功する魔法などなく「アジャイル開発は2度失敗する」ことを覚悟して取り組めという著者の手厳しいメッセージです。

教科書通りのアジャイル開発を経た先で「こんなはずではなかった」と行き場を失った私たちに、自分たちの立ち位置を教えてくれる、そしてその先の道も険しいことを教えてくれる本です。

最後に

たくさんの本を紹介してきましたが、ご自身の経験値とペースに合わせて、いろいろな本からアジャイル開発やスクラムの知識を吸収すれば、毎日の開発がより進めやすくなると思います。本記事が読者の開発を助けてくれる一冊を探す手助けになれば幸いです。

みんなにも読んでほしいですか?

オススメした記事はフォロワーのタイムラインに表示されます!