ユースケースによるアスペクト指向ソフトウェア開発 読了

ユースケースによるアスペクト指向ソフトウェア開発 (Object Oriented Selectionシリーズ)
読了、AOPってあくまでオブジェクト指向を補完するために味付け程度に使うもんだと思っていたけどAOSDとして紹介されている内容はアスペクト技術が前面に押し出された内容で勉強になった。
分析段階から責務の分離を今まで以上に促進する為にアスペクト(InterTypeとアドバイス)を用いてオブジェクト指向原則に新たなパッケージング方法をプラスするとこが可能になり再利用・保守・拡張性を向上できる。
適当な説明するとInterTypeを使って基本実装クラスに拡張のテンプレート実装クラスを継承することなくmix-in的に組み合わせテンプレートに用意したジョインポイントにアドバイスを与える事で肉付けするって感じ。内容は良いのだけど実プロジェクトでは従来のS2におけるインターセプタみたいな裏方ではなくなるので、プロジェクトメンバーがキチンと理解していないと導入が難しそうだ。
現状.NET環境ではAspectJのようなアスペクトコンパイラやビジュアルにアスペクトの構造を認識できるツールが無いのでコンセプトをそのまま実現するのは難しいがpartialクラスを使ってユースケーススライスを表す事が可能な気がする。
partialクラスは同一アセンブリ内でしか使用不可なのでレイヤー毎にアセンブリを分割した場合はスライスがバラバラになるけどUI層より下位のレイヤーは同一アセンブリに定義しても問題無い気がするので適用可能性を検討したい

SOA大全 読了

SOA大全 サービス指向アーキテクチャ導入・設計・構築の指針
概念的な話ばかりではなくそれなりに実装寄りの内容も入っているので今あるSOAの書籍の中ではお勧めできる。導入ステップとして

  1. 基礎段階のSOA
  2. ネットワーク段階のSOA
  3. プロセス制御段階のSOA

上記の分類が示されておりBPELエンジンやESBミドルウェアの宣伝ばかりが目に付くSOAだが必ずしもミドル製品を導入しなくてよくて、導入にあたっては色んなトレードオフから段階を経ながら進める事が示されたので説明する時には上記分類を使っていこう。
事例に出てくる客と案件の規模は、実際に取引のあるお客さんとは規模が違いすぎるのでその辺を鵜呑みにすると駄目ですねってかSOAとかいう以前の話が多いですorz