CodeIQ Blog

自分の実力を知りたいITエンジニア向けの、実務スキル評価サービス「CodeIQ(コードアイキュー)」の公式ブログです。

Agile Samurai Base Campの西村さんよりアジャイル開発問題解説記事 #agilesamurai

CodeIQ中の人、millionsmileです。

書籍『アジャイルサムライ』の 監訳者である西村直人さんからアジャイル開発の問題が出題されました!今回はその解説記事と、お得な特典付き問題のお知らせです~。

f:id:codeiq:20131121164244j:plain

◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇
はじめまして、Agile Samurai Base Campの西村直人です。
今回、12/8に開催される本セミナーと CodeIQ 様とのコラボということで、書籍『アジャイルサムライ』に関する問題を出題させてもらいました。
おかげさまで多数の応募があったので、問題の解説をさせていただきます。

問1.

書籍『アジャイルサムライ』において、「問答無用で実践すべき」と紹介されているアジャイルなソフトウェアエンジニアリングのプラクティスを以下のなかから4つ選んでください。

a) ユニットテスト
b) リファクタリング
c) ペアプログラミング
d) 継続的インテグレーション
e) デイリースタンドアップ
f) 見積りポーカー
g) ストーリーボード
h) テスト駆動開発(TDD)
i) チケット駆動開発
j) ドメイン駆動設計

問1の解説

正解は、a) ユニットテスト b) リファクタリング d) 継続的インテグレーション h) テスト駆動開発(TDD) になります。

アジャイル開発では有名な 「テスト駆動開発」「継続的インテグレーション」ですが、アジャイルサムライの中ではそこにいたるまでのステップとして「まずはテストコードを書く」「テストがある状態でコードを良くする(リファクタリング)」が重要と分けて伝えています。

その2つができて始めて、テスト駆動開発と継続的インテグレーションができるというわけで、この4つを問答無用でコードに責任を持つ人はやるべきとしています。

問2.

書籍『アジャイルサムライ』において、本来アジャイルプロジェクトでは、開発チームの役割分担は曖昧になっており、誰もがいろんな役割をすべきとされています。
また、最初はきちんと役割を説明した方がよいとして5つの役割を紹介しています。
その中から3つの役割を「アジャイルな◯◯◯」という形式で書いてください。

問2の解説

正解は、アジャイルサムライでは以下の5つを紹介しています。

  • アジャイルなアナリスト
  • アジャイルなプログラマ
  • アジャイルなテスター
  • アジャイルなプロジェクトマネージャ
  • アジャイルなUXデザイナ

アジャイル開発では、開発チームの中に明示的な役割を持たないことが推奨されていますが、アジャイルサムライでは初めてアジャイル開発に取組む人は何に取り組めばよいのか混乱することも多いので、最初の切っ掛けとして必要な役割を紹介しています。もちろん、それぞれの役割の仕事だけをするのではないことも大切だと前提を忘れてはいけないとも伝えています。

今回の回答の中では「アジャイルな顧客」と書かれていた方が何名がいらっしゃったのですが、「アジャイルな顧客」はチーム(顧客も含めたプロジェクト体制)の中での大切な役割として紹介されています。
この問題では、最初にとまどわないために紹介されている開発チーム(実現したいことを形にしていく人たち)の中の役割のため、不正解とさせていただきました。

問3.

書籍『アジャイルサムライ』において、インセプションデッキというプラクティスが日本で初めて紹介されています。
このプラクティスはプロジェクトを始める前に必要なことを合意するために、10枚のスライドをプロジェクトの関係者で対話しながら作るものです。
そのスライド一枚一枚にはそれぞれ名前がついていますが、その名前を5つ書いてください。

問3の解説

アジャイルサムライで紹介されているスライドは以下になります。

  • 我われはなぜここにいるのか?
  • エレベーターピッチ
  • パッケージデザイン
  • やらないことリスト
  • ご近所さんを探せ(プロジェクトコミュニティ)
  • 技術的な解決案の概要
  • 夜も眠れなくなるような問題
  • 期間を見極める
  • トレードオフ・スライダー
  • 初回のリリースに必要なもの
  • 俺たちのAチーム

実はアジャイルサムライでも10枚のスライドと言いつつ、11枚紹介されています。この中のどれかを書いていただければ正解にしました。
インセプションデッキはプロジェクトを進めていく中で「あ、あのときに確認しとけばよかった」と後悔しそうなこと(例えば、プロジェクトの本来のゴールや開発チームのスキルや経験では無理しないとプロジェクトを進められないなど)を、なるべく早い段階で全員の共通認識として明らかにするための活動です。それをなるべく手軽に行なうために、スライドに書かれた問いに答えていくということをします。
実はアジャイルサムライでも10枚のスライドと言いつつ、11枚紹介されています。この中のどれかを書いていただければ正解にしました。

インセプションデッキは本書で初めて紹介されたプラクティスにも関わらず、37名中26名の方が正解されていました。そのなかでもプロジェクトで必ず達成すべきことを考える「なぜ我々はここにいるのか?」を挙げられている方が多かったです。
もしかすると、みなさんが普段プロジェクトを始める際に合意したいと考えているものを挙げられていたのかもしれません。

総括

今回の正解率は以下になりました。

正解者 正解率
問1 26 70%
問2 14 38%
問3 26 70%

CodeIQはエンジニアの方の挑戦が多いためか、エンジニアがやるべきことというテーマの問1の正解率は高かったです。書籍を読まれていない方の中でも正解されている方が何名もいらっしゃいました。

問2は少し引っ掛けの要素があったので正解率が低かったですが、問3の正解率が問1と同じだけあるのは出題者としては実は予想外でした。インセプションデッキは先に書いたとおり本書で初めて紹介されたプラクティスなので、知らない方も多いのではと思っていたのですが、こちらも書籍を読まれていないでも正解されている方が何名かいました。みなさんが独自で調べていたりと、こういった知識が広まってきているのだなーと実感させられました。

今回の問題に挑戦していただいた方へのプレゼントは本書『アジャイルサムライ』なのですが、ぜひ周りにまだ読んでいなくて興味のありそうな人へ渡してください。そうしたことでさらに周りにみなさんの知識を広めるきっかけになれば幸いです。

また、もう少し詳しくアジャイルサムライの内容について知りたい方は、12/8開催の Agile Samurai Base Camp にもご参加してください!

◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇

いかがでしたか?なかなか本を読んだだけじゃ、きちんと理解しているか怪しいのですが、こうやって問題を解くと、理解がよりしっかり確実になるのでいいですね。

さて、西村さんの解説記事で案内があったように、12/8にAgile Samurai Base Campが開催されます。参加チケットが5000円なのですが、なんとなんと、CodeIQの問題を解くと、その参加チケット5000円分が20名様にプレゼントされます!!!!!

Agile Samurai Base Campの参加チケット5000円分があたる問題はこちら↓↓↓
(受付締め切り:11月23日(土)AM10:00)

https://codeiq.jp/ace/nishimura_naoto/q538

5000円はでかい!チケットがほしい人は急げダッシュ!-=≡ヘ(*・ω・)ノ

エンジニアのための新しい転職活動!CodeIQのウチに来ない?の特集ページを見る