最近入手した本の第一印象

About Face 2.0: The Essentials of Interaction Design

About Face 2.0: The Essentials of Interaction Design

オブジェクト指向開発におけるUI設計というと、Software for Use: A Practical Guide to the Models and Methods of Usage-Centered Design (ACM Press)といったところが定番で、ユースケース技術からの連続性がポイントとなる。つまり、ユーザ・ゴールとシナリオという切り口で要求仕様からUI設計に繋げて行きたいのである。
最近そういったオブジェクト業界とは別系統のところから"ペルソナ"というキーワードを聞くことが多く、そのリファレンスを追っていくと本書に行き着くようなので買ってみた。
Goal-Directed Design、personaといったところがキーワード。

ユースケースとは別系統の技術でありながら、共通点は多そうである。
ユースケース技術体系に組み込んで利用できないか、調べてみるつもり。

Ship it!: A Practical Guide to Successful Software Projects (Pragmatic Programmers)

Ship it!: A Practical Guide to Successful Software Projects (Pragmatic Programmers)

「The Pragmatic Programmers」は、最近旬の出版社。現場のSE視点での編集を旨としているらしく、現場に配属になった新人に最初に読んでもらうクック・ブックという切り口であり、とても参考になる。
本書はプロジェクト管理について200ページ足らずのボリュームに手際よくまとめている。Figure 1.1(P.5)が本書のすべてを物語っており、この図をベースに各自のプロジェクトでのプロジェクト管理について"振り返り"を行うだけでも大きな効果が得られるだろう。

Refactoring Databases: Evolutionary Database Design (Addison-Wesley Signature Series (Fowler))

Refactoring Databases: Evolutionary Database Design (Addison-Wesley Signature Series (Fowler))

データベース設計には色々な切り口があるけれどOOA/D分野で有名な本として同じAmblerによるAgile Database Techniques: Effective Strategies for the Agile Software Developerがある。本書はこの本の事実上の続編といえる内容である。ただし、「A Martin Fowler Signature Book」シリーズということで、Refeactoringパターンカタログという編集になっている。Refactoring: Improving the Design of Existing Code (Addison-Wesley Object Technology Series)の場合も同様だけれど、すでにあるものを改良するためのパターンとしての活用と同じぐらい、最初に設計する際の注意点としても非常に有益である。

プログラムの品質を高める技法としてはテストとレビューが基本になるのだけれど、モデルの静的検証ツールというものの比重が今後高くなってきそうである。モデルの静的検証の対象としては、Javaプログラムに対する検証ツールの実用性が高く、その有力な選択肢がFindBugsである。
本書はこのFindBugsの解説書。こういった本を日本語で読めるのはありがたい。


IT失敗学の研究

IT失敗学の研究

以前、日経コンピュータ誌の名物企画に「動かないコンピュータ」というのがあったと記憶しているけれど、本書はその系統の一冊。「失敗学」というキャッチはもちろん失敗学のすすめ (講談社文庫)などによるものであろう。失敗学と言うには失敗メカニズムの抽象モデル化を積極的に行っている気配はなく、要は「動かないコンピュータ」的切り口なのであるけれど、もちろんとても面白いのである。

Eclipse Rich Client Platform: Designing, Coding, and Packaging Java™ Applications (Eclipse Series)

Eclipse Rich Client Platform: Designing, Coding, and Packaging Java™ Applications (Eclipse Series)

リッチ・クライアントのバトルはまだ端緒についたばかりだけれど、その有力技術の一つがeclipse Rich Client Platformである。ということで、資料的な意味もあって買ってみた。eclipseの場合、SWTが軸になるのだけれど、Java技術全体としては無理筋感もあり、下手をするとSwingと共倒れということにもなりかねない。Java6 MustangでのJavaDesktopの動向も併せて、興味深い分野である。