Introduction

 

What is a pattern?  

"Each pattern describes a problem which occurs over and over again in our environment, and then describes the core of the solution to that problem, in such a way that you can use this solution a million times over, without ever doing it the same way twice"

Christopher Alexander

According to Alexander, pattern is a solution to the problem in certain context.
There are many descriptions and definition of patters, but all of them are basically derived form the Alexander's definition. 

The definition of pattern was refined and expanded through the work of James Coplien. The next slide gives a more detailed description of the pattern definition outlined by James Coplien.