パターンを使うもう一つの動機~パターン言語の構築よりも設計・実装・運用のノウハウをカタログ化する
パターンを使う動機が2種類あり、最近は別の動機があるという記事を見つけたのでメモ。
【元ネタ】
Ajaxデザインパターン|Ouobpo
【参考】
(引用開始)
以前も書いたが、この書籍で見られるのも、知識を体系化するための技法としてのパターン言語だ。本書から引用すれば、次の通りだ。
Since the Ajax Patterns began to be published, the focus has always been on the "Ajax" and not the "Patterns."
(このAjaxパターンを公開し始めてから、常に「パターン」ではなく「Ajax」に力点を置いてきた。)
発見されるべきものとしてのパターンではなく、知識をまとめるツールとしてのパターンの動きは、今後ますます充実していきそうだ。
(引用終了)
(引用開始)
つまり、ここで挙げた2つの書籍はどちらも、パターンを書くために書いたものではなく、著者が言いたいことを上手く伝えるための手段として、書籍の形式としてのパターンが選ばれただけなのだ。
結果的にできあがる書籍は同じようなパターン書籍であったにしても、この両者の執筆スタンスの違いは大きな違いを生み出すと考えられる。
パターンを書籍の一形式として扱う場合、パターンを書く、という行為に対する自制はほとんど効かなくなる。
「古典的な」パターンコミュニティにおいては、パターンとは時間の試練によって鍛えられたものであって、決して斬新な発明であってはならないという認識がある。パターンの著者たちは、「実際に三回以上出会ってからでないと、それをパターンとして記述してはならない」というルールをもっている。
しかし、パターンを単にコミュニケーションを円滑にするための形式だと捉えてしまうと、こうした厳格な自制は働かなくなっていくだろう。
コミュニケーションの手段というエクスキューズによって、よりカジュアルにパターンをでっち上げられるようになる。
(HohpeやEvansが軽い気持ちでパターンを書いたと思っている訳ではない。
彼らは長年の経験から、何度も使ってきたノウハウを文書化したはずである。
私が指摘したいのは、今後パターンがたんに書籍の一形式になりうる可能性である)
(引用終了)
古典的なパターンの考え方は、長年の経験から、繰り返し出現する問題やその問題解決を抽出し、カタログ化し、パターン言語としてまとめるためのものだった。
しかし、最近の特徴として、「エリック・エヴァンスのドメイン駆動設計」「Ajaxデザインパターン
」では、知識を体系化するための一技法としてパターンが使われているらしい。
この考え方にはとても共感する。
XPでは、プロセスのパターンを故意に「プラクティス」と呼んで、実践的な運用ルールとして提示し、その過激さの裏でその重要性を示した。
更に1歩進めると、現場で得られた経験知、実践知は、パターンという形式でまとめることで、そのノウハウを再利用できるだけでなく、コミュニケーションを促進することもできる。
何らかの事象に「パターン名」という名前をネーミングすることで、その言葉に新たな価値を注入し、よりたくさんの現場で実践されて、検証されて、人々の中で確かな知識や概念として定着していく。
以前の下記のTwitterを思い出しながらすごく共感している。
Twitter / quicy: チケット駆動開発は、ミニマムなライトウェイト手法に一通りの体系化とカッコいい名前を与えてくれたことが、ものすごく大きな功績だと思います。
Twitter / sakaba37: 新しい言葉がはやる時、その言葉は新しい意味・新しい価値を持っている。チケット駆動開発という言葉がはやるのも、多くの人がその価値を感じているからだろう。
| 固定リンク
「ソフトウェア工学」カテゴリの記事
- リプレースとアーキテクチャモダナイゼーシヨンの違いの本質は何なのか?(2026.04.08)
- アーキテクチャモダナイゼーションにおけるAMETチームの役割と責任範囲は何か(2026.03.23)
- アーキテクチャモダナイゼーションとはそもそも何なのか?(2026.03.22)
- 自動車業界におけるA-SPICE・機能安全・サイバーセキュリティの規格に対応したプロセス改善とは何か?(2026.02.15)
- Jiraの機能はTracに似ている気がする #redmine(2025.06.01)
「チケット駆動開発」カテゴリの記事
- 第29回東京Redmine勉強会の感想~今話題のテーマはJTC運用とAIによるプロマネ作業支援 #redminet(2025.11.09)
- RedmineJapan vol.4の感想part1~Redmine AI HeplerプラグインはRedmineのナレッジ活用を強化してくれる #RedmineJapan(2025.07.31)
- Jiraの機能はTracに似ている気がする #redmine(2025.06.01)
- Redmineは組織のナレッジ基盤として実現可能なのか~島津製作所の事例を読み解く #redmineT(2024.12.29)
- 第26回redmine.tokyo勉強会の感想~多様性はコミュニティが成功する重要な要因の一つ #redmineT(2024.06.15)
「Agile」カテゴリの記事
- DX戦略はDX成熟度を考慮して戦略策定すべき(2026.03.20)
- PMPとCSM取得者数推移(日本 vs 中国)から読み取れる指針は何か?(2026.02.23)
- SAFeはScrumと全く異なるアジャイル開発プロセスだ(2026.02.01)
- 第29回東京Redmine勉強会の感想~今話題のテーマはJTC運用とAIによるプロマネ作業支援 #redminet(2025.11.09)
- RedmineJapan vol.4の感想part1~Redmine AI HeplerプラグインはRedmineのナレッジ活用を強化してくれる #RedmineJapan(2025.07.31)
「パターン言語」カテゴリの記事
- データモデリングとドメイン駆動設計の違いは何か(2025.08.24)
- アーキテクチャ設計はベストプラクティスを参照するプロセスに過ぎないのか?~Software Processes are Software, Too(ソフトウェアプロセスもまたソフトウェアである)(2024.09.22)
- パターンカタログよりもモンスターカタログの方が面白いね #jasstkansai(2023.06.24)
- XPエクストリームプログラミングは偉大だ~時代がその設計思想に追いついた(2022.11.16)
- 「大人の学びパターン・ランゲージ」の感想~知識と経験を行ったり来たりするタイミングを大切にする(2022.06.05)


コメント