書評「アジャイルサムライ -達人開発者への道-」

書評「アジャイルサムライ -達人開発者への道-」

Jonathan Rasmusson (著) 西村 直人, 角谷 信太郎 (監訳), 近藤 修平, 角掛 拓未 (翻訳) オーム社

カテゴリ:設計・開発

概要

限られたリソースと変化する要求の中で、顧客を満足させる「動くソフトウェア」を届けるにはどうすればよいか。本書では、アジャイル開発の実践的な考え方とプラクティスを、親しみやすい対話形式の語り口と豊富なイラストで、わかりやすく解説しています。アジャイルチームの集め方、見積もりと計画の立て方、プロジェクトの運営の仕方、プログラミングのテクニックまで、著者の経験から導かれた、現場で使えるアジャイル開発のエッセンスが詰まった一冊です。プログラマ、開発者はもとより、テスト担当者、管理者に至るまで、またウォーターフォール開発に従事する開発エンジニアにも、多くの気付きを与えてくれることでしょう。

本書の使い方

第I部:アジャイル開発とは何か。どのようなメリットをもたらすのか。著者の問題意識をわかりやすく知ることが出来る。すべての読者に一読を薦める。
第II部~第IV部:アジャイル開発を可能にする、チーム編成、計画の立案、プロジェクト運営を学ぶことが出来る。SE、マネージャは多くのヒントを得ることが出来る。
第V部:アジャイルプログラミングの考え方を学ぶことが出来る。プログラマ、SEは多くのヒントを得ることが出来る。

何を学べるか

第I部 「アジャイル」入門
アジャイル開発の全体像と、それを支えるアジャイルチームとはどのようなものかを解説する。
「大切なのは動くソフトウェアを定期的に顧客に届ける」ことだと、著者は説く。あいまいで変化する要求と、限られた不十分なリソースの中で、顧客が望むソフトウェアをリリースする、アジャイルなソフトウェア開発とはどのような考え方なのかを説明する。またアジャイルな開発チームにおける、各メンバーが自分の特性を活かしつつ柔軟にさまざまな役割を果たす様子や、アジャイルなチームメンバーを探すコツなどを解説する。

第II部 アジャイルな方向づけ
プロジェクトが失敗する原因の一つはメンバーの認識がそろっていないまま、プロジェクトをスタートすることにある。このパートでは、チームメンバー全員の意識を揃え、プロジェクトの背景、ゴール、ビジョン、ステークホルダーの期待といった、10個からなる質問をメンバー全員で討議し、認識を一致させプロジェクトの全体像を共有するためのツール、「インセプションデッキ」について解説する。

第III部 アジャイルな計画づくり
アジャイルプロジェクトで計画を立案するための方法やツールについて解説する。ユーザーの要求をまとまるユーザーストーリーリストの作り方、効果的で現実的な見積り手法、固定された計画ではなく現実に合わせて柔軟に変更できるプロジェクト計画の立て方、などを説明する。

第IV部 アジャイルなプロジェクト運営
アジャイル開発におけるプロジェクト運営について解説する。立てた計画を、実際に顧客が使えるソフトウェアとして具現化するためにはどうすればよいか。短い作業単位であるイテレーションの回し方、マネジメントのための仕掛けや、うまく運営するための秘訣、必要最小限の分析と設計を行うこと、開発とテストを同時に行うこと、などを説明する。またアジャイルチームにおける意思疎通と連携の方法、経営陣や顧客に対してプロジェクトの状況をありのままに、しかも信頼を損なわずに伝える方法も説明する。

第V部 アジャイルなプログラミング
実際にアジャイル開発でソフトウェアを作り上げるための、ソフトウェアエンジニアリングのコアとなる手法を解説する。ユニットテストのやり方、リファクタリング、テスト駆動開発、継続的インテグレーションなど、ソフトウェアの品質を上げ、開発期間を短縮し、長期的な保守コストを下げる、エンジニアリング手法について説明する。

第VI部 付録
付録A アジャイルソフトウェア開発の原則
付録B オンラインリソース
付録C 参考資料