ソフトウェアパターンの記事
ソフトウェアパターンの記事があったので、リンクをメモ。
【参考】
先人の知恵を集めた「ソフトウエア・パターン」 - 第1回 適用範囲が拡大する「ソフトウエア・パターン」:ITpro
先人の知恵を集めた「ソフトウエア・パターン」 - 第2回 アクティビティ配置のひな型「ワークフロー・パターン」:ITpro
先人の知恵を集めた「ソフトウエア・パターン」 - 第3回 成果物や組織の管理方法「マネジメント・パターン」:ITpro
(引用開始)
パターンの目的はソフトウエア開発で直面する様々な問題とその解決策を明快に示すことだ。先人の経験に裏打ちされていることから,パターンは先人の知恵とみなすことができる。パターンで示されている問題に実際に直面したとき,そこに書かれている解決策は大いに参考になる。
例えば,最も知名度の高いパターンにGoF(Gang of Fourの略)の「デザイン・パターン(Design Pattern)」がある。このパターンは,主に詳細設計で直面しがちな問題を23種類のパターンとして示している。その中のオブザーバー(Observer)パターンでは「あるオブジェクトの変化を他のオブジェクトに伝えたいが,通知したいオブジェクトを静的に決定できない」という問題を提起。その上で「通知するオブジェクトに対して共通のインタフェースを実装し,それらを変化するオブジェクトに登録する」という解決策を示している。
これまでソフトウエア・パターンと言えば,ソフトウエア開発の分析,設計,実装の各フェーズを対象にしたものが中心だった。具体的には,クラス/データモデルの分析フェーズでは「アナリシス・パターン」や「データモデル・パターン」,基本設計フェーズでは「アーキテクチャ・パターン」や「エンタープライズ・インテグレーション・パターン」,詳細設計では「デザイン・パターン」,実装フェーズでは「イディオム」――といった具合である。
ところが,ここに来てパターンの適用範囲が急速に拡大している(図1)。背景にあるのは何か。パターンに詳しいサイクスの宗雅彦社長は「分析/設計/実装といったエンジニリング・プロセスの知識だけでは,高品質なソフトウエアを素早くかつ確実に作れなくなったこと」と見る。言うまでもなく,開発すべきシステムは大規模化・複雑化し,短納期や高品質への要求も高まるばかり。そうした中では,ソフトウエア開発の「問題」も分析,設計,実装にとどまらない。これを受けて,適用範囲が広がりを見せているのだ。
(引用修了)
紹介されているパターンは以下の通り。
・デザイン・パターン
→GoFの本「オブジェクト指向における再利用のためのデザインパターン」
・アナリシス・パターン
→ファウラーの本「アナリシスパターン―再利用可能なオブジェクトモデル (Object Technology Series)」
・データモデル・パターン
→「Data Model Patterns: Conventions of Thought (Dorset House eBooks)」
・アーキテクチャ・パターン
・エンタープライズ・インテグレーション・パターン
・ワークフロー・パターン
→「詳説 ビジネスプロセスモデリング ―SOAベストプラクティス (THEORY/IN/PRACTICE)」
・構成管理(Software Configuration Management)パターン
→「パターンによるソフトウェア構成管理 (IT Architects’ Archive―ソフトウェア開発の課題)」
・導入パターン
→「Fearless Change アジャイルに効く アイデアを組織に広めるための48のパターン」
データモデルパターン以外は邦訳もある。
データモデルパターンとワークフローパターンだけは読み切れていないので、読んでみたい。
| 固定リンク
「パターン言語」カテゴリの記事
- パターンカタログよりもモンスターカタログの方が面白いね #jasstkansai(2023.06.24)
- XPエクストリームプログラミングは偉大だ~時代がその設計思想に追いついた(2022.11.16)
- 「大人の学びパターン・ランゲージ」の感想~知識と経験を行ったり来たりするタイミングを大切にする(2022.06.05)
- 知識は経験よりも大切か、経験は知識よりも勝るのか、SECIモデルは相互作用を語る(2022.04.26)
- 「ハリウッドリライティングバイブル」のマインドマップ(2022.01.23)
コメント