達人プログラマー ― システム開発の職人から名匠への道

そもそもなぜテストをしなければならないのか? どんな姿勢でテストに臨むべきなのか?――そんな根本的な疑問に答えてくれるのが『達人プログラマー ― システム開発の職人から名匠への道』である。

岡氏が「自分のITアーキテクトとしてのキャリアの出発点とも言える1冊」と評価する同書。内容は、まともなシステムを作り上げるために必要な心構えを並べたものになっており、その一部として、「テストは自動化ツールなども使って繰り返し実行できるようにしておく」など、テストについても多く触れられている。

初版が出版されたのは2000年。9年前の書籍になるが、「今読んでも決して古くない」(岡氏)という。これからアーキテクトを目指そうというエンジニアにとっては必読書と言えそうだ。

ソフトウェアテスト293の鉄則

上記の『達人プログラマー』は、システム開発全般に通じるノウハウの中でテストについても触れているかたちだが、テストにターゲット絞って深堀りしたものが『ソフトウェアテスト293の鉄則』だ。

この書籍では、テストの現場で起こりがちな293の事例を示し、その解決策を提示している。「テストに携わったことのあるエンジニアなら、いろいろと思うところがあるはず」(岡氏)という興味深い1冊だ。

「初級者にとってはテストの落とし穴を事前に知れるという効果があり、ベテランのテスト屋には共感できる内輪ネタ集として話の種にもなる」(岡氏)という。「テストツールに使われるな」など、示唆に飛んだ指摘が多数あり、「目次を見て気になったところを読むだけでも面白い」(岡氏)。気楽に読めるので、作業が行き詰ったときの気分転換にも有効だろう。

テスト駆動開発入門

テスト駆動開発入門 (発行: ピアソンエデュケーション)

『テスト駆動開発入門』は、プログラミングレベルのテストという観点から岡氏が選んだ書籍だ。

テスト駆動開発入門では、アジャイル開発方法論「XP」の核となる「テストファースト」と「リファクタリング」について解説している。実践しているプロジェクトはまだ少ないプラクティスだが、「そのままの適用は難しいかもしれないが、知っていて損はない」(岡氏)という。オブジェクト指向言語で開発するプログラマーには参考になるはずだ。

実践に至らないとしても、「テストファーストという概念を知らなかった人にとっては発想の転換になり、新しい世界が見えてくる」(岡氏)という同書。忘れていたシステム開発の面白さに改めて気づく契機を与える書籍という側面もあるのかもしれない。

実践ユーザビリティテスティング ― 「利用品質」を忘れていませんか

通常のプロジェクトで見落とされがちな重要項目。それを補うのが『実践ユーザビリティテスティング ― 「利用品質」を忘れていませんか』である。

同書は、社内で使用するシステムでは考慮されることが少ない、ユーザビリティやユーザーエクスペリエンスといった部分に焦点を当てた解説書。その重要さを強調するだけでなく、どのフェーズでどういう作業を実施すべきか、といった方法論や手法に関わる部分まで説明されている。

「利用品質は作業効率に直接つながる部分なので、社内システムにおいてこそ本来重要になるはず。RIAが当たり前になっている現在では、その重要性は増してきている。配置や文字色、文字の大きさなど、それほどコストをかけずに改善できる部分もあるので、これを機会にぜひ取り組んでみてほしい」(岡氏)

人間工学的な考え方にも触れられている同書。使われないシステムを作らないためにもぜひ一読しておきたい。