|
Pattern-oriented Software Architecture: v. 5: On Patterns and Pattern Languages (Pattern-Oriented Software Architecture)
Software patterns have revolutionized the way developers think about how software is designed, built, and documented, and this unique book offers an in-depth look of what patterns are, what they are not, and how to use them successfully. The only book to attempt to develop a comprehensive language that integrates patterns from key literature, it also
serves as a reference manual for all pattern-oriented software architecture (POSA) patterns. It addresses the question of what a pattern language is and compares various pattern paradigms. Developers and programmers operating in an object-oriented environment will find this book to be an invaluable resource.
Contents:
Foreword by Richard P
Gabriel
Foreword by Wayne Cool
About the Authors
About this Book
Guide to the Reader
Beyond the Hype
Beginnings'
A Story of Success with Some Exceptions
Pattern Definitions and their Interpretations
Toward a Deeper Understanding of Patterns
PART I: INSIDE PATTERNS
1
A solution to a Problem and More
1.1 A Solution to a Problem
1.2 A Process and a Thing
1.3 Best of Breed
1.4 Forces: the Heart of Every Pattern
1.5 The Context: Part of a Pattern or Not? 1.6 Genericity
1.7 A Diagram Says More than a Thousand Words? or Less
1.8 Evocative Names Help Pattern Recollection
1.9 Patterns are Works in Progress
1.10 A Pattern Tells a Story and Initiates a Dialog
1.11 A Pattern Celebrates Human Intelligence
1.12 From a Problem Solution Statement to a Pattern
2
A Million Different Implementations
2.1 Does One Size Fit All? 2.2 Patterns and Frameworks
2.3 Patterns and Formalisms
2.4 A Million and One? and then Some
3
Notes on Pattern Form
3.1 Style and Substance
3.2 The Function of Form
3.3 Elements of Form
3.4 Details, Details
3.5 Aerial View
3.6 Different Pattern Forms
3.7 Style and Substance (Redux)
PART II: BETWEEN PATTERNS
4
Pattern Islands? 4.1 Patterns Connect
4.2 A Design Experiment: Patterns as Islands
4.3 A Second Design Experiment: Interwoven Patterns
4.4 Pattern Density
5
Pattern Complements
5.1 More than One Solution to a Problem
5.2 Patterns in Competition
5.3 Patterns in Cooperation
5.4 Patterns in Combination
5.5 Complementary: Competing, Completing, Combining
6
Pattern Compounds
6.1 Recurring Pattern Arrangements
6.2 From Elements to Compounds
6.3 From Complements to Compounds
6.4 Element or Compound? 6.5 Compound Analysis and Synthesis
7
Pattern Sequences
7.1 Patterns Tell Software Engineering Success Stories
7.2 Pattern Stories
7.3 From Stories to Sequences
7.4 Sequences of Patterns
7.5 Pattern Compounds and Complements Revisited
7.6 Returning to the Question of Context
7.7 Pattern Connections
8
Pattern Collections
8.1 Toward a Handbook
8.2 Organizing Pattern Collections
8.3 Ad Hoc Organization
8.4 Organization by Level
8.5 Organization by Domain
8.6 Organization by Partition
8.7 Organization by Intent
8.8 Organizing Pattern Collections (Reprise)
8.9 Problem Frames
8.10 Pattern Semiotics
8.11 Pattern Collections and Style
8.12 Toward Pattern Languages
Part III Into Pattern Languages
9
Elements of Language
9.1 Designing with Patterns
9.2 From Pattern Stories and Sequences to Pattern Languages
10
A Network of Patterns and More
10.1 A Network of Patterns
10.2 A Process and a Thing
10.3 Best of Breed
10.4 Forces: the Heart of Every Pattern Language
10.5 Pattern Contexts Define Topology and Architectural Style
10.6 Patterns Form Vocabulary, Sequences Illustrate Grammar
10.7 Genericity
10.8 A Whole Language Says More than a Thousand Diagrams
10.9 Domain Oriented Names Help to Recall Pattern Languages
10.10 A Pattern Language Initiates Dialog and Tells Many Stories
10.11 Work in Progress
10.12 Pattern Languages Reward Creative Human Intelligence
10.13 From a Pattern Network to a Pattern Language
11
A Billion Different Implementations
11.1 One Size Does Not Fit All
11.2 Piecemeal Growth
11.3 Refactoring Not Excluded
11.4 One Pattern at a Time
11.5 Role Based Pattern Integration
11.6 Pattern Languages and Reference Architectures
11.7 Pattern Languages and Product Line Architectures
11.8 A Billion and One? and then Some
12
Notes on Pattern Language Form
12.1 Style and Substance
12.2 The Function of Form
12.3 The Elements of Form
12.4 Details, Details, Details
12.5 Style and Substance (Redux)
13
On Patterns versus Pattern Languages
13.1 Patterns and Pattern Languages: Similarities
13.2 Patterns and Pattern Languages: Differences
13.3 Patterns versus Pattern Languages? 14
From Patterns To People
14.1 Patterns are for People
14.2 In Support of Software Developers
14.3 In Support of Software Users
14.4 In Support of Pattern Authors
14.5 Technology for Humans
15
The Past, Presence, And Future of Patterns
15.1 The Past Three Years at a Glance
15.2 Where Patterns Are Now
15.3 Where Will Patterns Go Tomorrow? 15.4 A Brief Note about the Future of Patterns
16
All Good Things? Afterword
Pattern Concept Summary
Referenced Patterns
References
Index of Patterns
Index of Names
Index.
Brief Description:
Software patterns have revolutionized the way developers think about how software is designed, built, and documented. This book offers a look of what patterns are, what they are not, and how to use them successfully. It attempts to develop a comprehensive language that integrates patterns from key literature. It is for developers and programmers.
|