Patterns & Practicesの新しいデザインガイド

.NETにおけるアーキテクチャを整理する試みがCodePlexで始まっています。

このプロジェクトは、5年ほど前に刊行された以下の書籍の最新版(リベンジとも表現)でもあり、今テクノロジに応じた形でのデザインガイドとなる予定です。

.NETのアプリケーションアーキテクチャ (Patterns & practices)

.NETのアプリケーションアーキテクチャ (Patterns & practices)

既に多くのガイドが公開されつつあり、来年1月にPDFとして公開される予定です。

  • アーキテクチャスタイル(Arch Styles)
  • アプリケーションタイプ(App Types:Archetypes)
    • モバイル
    • リッチインターネットアプリケーション(RIA)
    • リッチクライアント
    • サービス
    • Webアプリケーション
  • レイヤ、コンポーネント、階層
    • プレゼンテーション層、ビジネス層、データ層
    • 2層、3層、N層
    • レイヤコンポーネントの組み合わせ方
  • 構成要素(Arch Frame)
    • 認証、権限
    • キャッシュ、状態管理
    • 通信
    • コンポジション
    • トランザクションと並列性制御
    • コンフィグレーション管理
    • 凝集度と結合度
    • データアクセス
    • 例外管理
    • ロギング、計測
    • ユーザエクスペリエンス(UX)
    • 妥当性(バリデーション)
    • ワークフロー
  • 品質(Quality Attributes)
    • 可用性(availablity)
    • コンセプト統一性(conceptual integrity)
    • 柔軟性(flexibility)
    • インターオペラビリティ
    • 保守容易性(maintainability)
    • 管理容易性(manageability)
    • パフォーマンス
    • 信頼性(reliability)
    • 再利用性(reusability)
    • スケーラビリティ
    • セキュリティ
    • 保守性/トラブルシューティング(supportability)
    • テスタビリティ
    • ユーザエクスペリエンス/ユーザビリティ
  • 配置パターン(Deployment Patterns)

おおむね、上記のような内容に加え、動的言語関数型言語マッシュアップBPM(ビジネスプロセスマネージメント)、モデルドリブン、クラウド、GreenIT(環境に配慮したIT)、仮想化、マルチコアCPU、並列化、アプリケーションライフサイクル管理、分散チーム、リーン、スクラム、XP、ユーザ主導といったキーワードもトレンドとして押さえていくようです。