Title: Introducing Patterns or any new idea into Organizations
1Introducing Patterns (or any new idea) into
Organizations
- http//www.cs.unca.edu/manns/intropatterns.html
- Linda Rising Mary Lynn Manns Alan
OCallaghan - risingl_at_acm.org manns_at_unca.edu ajocallaghan_at_c
s.com - We dont do lectures instead, we engage people
in interactive experiences that transform rather
than simply inform. - - paraphrased from Industrial Logic
2Patterns the beginning
- Tutorial at OOPSLA 1994
- GoF Book
- Still selling well
- The first of many patterns books
3What is a pattern?
- Each pattern describes a problem
- that 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. - Alexander, A Pattern Language, 1977
4The Quality Without a Name
- There is a central quality which is the root
criterion of life and spirit in all things.
This quality is objective and precise, but it
cannot be named. The search which we make for
this quality, in our own lives, is the central
search of any person. It is the search for those
moments and situations when we are most alive. - Alexander, A Timeless Way of Building, 1979
- http//www.math.utsa.edu/sphere/salingar/Chris.tex
t.html - http//www.sunlighthomes.com/t.patlang.html
5Patterns - some definitions
- A solution to a recurring problem in a context.
- Patterns are not theoretical constructs but based
on experience. They capture what experts do and
enable these solutions to be shared with
everyone. - Distilled reusable knowledge. (Don Firesmith)
- Patterns dont give you code you can drop into
your application, they give you experience you
can drop into your head. (Patrick Logan)
6Why are patterns important?
- Patterns provide an incredibly dense means of
efficient and effective communication between
those who know the language. (N. Kirby) - Human communication is the bottleneck in software
development. If patterns can help developers
communicate with their clients, their customers,
and each other, then patterns help fill a
crucial need in our industry. (J. Coplien) - Patterns capture important practices of
existing methods and practices not codified by
conventional methods (J. Coplien) - Patterns offer both a form for capturing
knowledge and a process for using that knowledge
to create quality software.
7Different kinds of patterns
- Architectural patterns
- Design patterns
- Organization and Process patterns
- System Test patterns
- Customer Interaction patterns
- Training patterns
8Organizational patterns
- Jim Coplien has documented a pattern language for
organizational and process problems. - His goal was to identify characteristics of
hyper-productive teams. - Successful teams share an amazing number of
patterns. - Important patterns are missing from unsuccessful
teams.
9Patterns for introducing patterns
- Linda Rising wrote initial patterns with David
DeLano - OOPSLA Workshop 1996
- Shepherded and workshopped at PLoP 97
- Mary Lynn Manns used these patterns at U S West
and created an extension of the pattern language - Shepherded and workshopped at PLoP 99
- Rising and Manns met at ChiliPLoP 2000
- OOPSLA Workshop 2000
- Simulations at OT 2001
- OOPSLA Tutorial 2001
10Pattern languages
- A pattern solves a recurring problem in a
particular context - A new context and new problems result
- Patterns always work together to solve problems
in a particular domain - This kind of collection of related patterns is
called a pattern language
11Alexanders pattern language
- The best example of a pattern language
- Alexander, C.A. et al, A Pattern Language, Oxford
University Press, 1977. - To build something, where do I start?
- What do I do next?
12The Introducing Patterns into Organizations
Pattern Language building it
- Each pattern has one or more originators or
authors - Many pattern mining techniques
- Our experiences
- Others experiences
- Supported by other publications
- Individual patterns and the pattern language has
evolved iteratively - Format is based on Alexanders pattern format
13The Introducing Patterns into Organizations
Pattern Language using it
- Organizations start at different points in the
language and use different sequences through the
patterns - Organizations have different goals for
introducing patterns such as - Individuals use patterns
- Teams of individuals develop a common language
- Philosophy of Alexander is integrated
- A patterns repository is built
14Introducing new ideas the forces
- Most people are skeptical (to varying degrees) of
new ideas - There are so many new ideas that we cant keep up
- We dont have reliable ways of evaluating new
ideas - Were all too busy
- Different organizations need different ways to
introduce new ideas - Some organizations have no or limited resources
- It takes time and energy to convince others of
new ideas - Organizational change is not top-down or
bottom-up, but participative at all levels,
aligned through a common understanding - Change is not an event it is a process (often a
long process) - Result This is a hard problem!
15Some of the patterns
- Roles
- Connectors
- Corporate Angel
- Dedicated Champion
- Early Adopters
- Evangelist
- Innovators
- Local Leader
- Pattern Mentor
- Respected Techie
16Some of the patterns (continued)
- Some Techniques
- Information sessions Dealing with skeptics
- Big Jolt Adopt a Skeptic
- Hometown Story So Whats New?
- Study Groups Fear Less
- Brown Bag
- Do Food Proof of Concept
- Gold Mine
- Showing Relevance Just Do It
- Personal Touch Pilot Project
- Pieces of Clay
-
-
17One sequence through the language
- Evangelist
- To introduce patterns into your organization, let
your passion for the new approach drive you. - Brown Bag
- Use the time when people normally eat lunch to
provide a relaxed atmosphere for learning about
patterns. - Innovators
- When beginning to introduce patterns, Ask for
Help from a group of co-workers who take an early
interest in patterns. - e-Forum
- Set up a bulletin board, distribution list, or
listserver for those who want to hear more. -
18One sequence through the language (continued)
- Respected Techie
- Enlist the support of senior-level technical
people who are esteemed by members of the
organization. - Just Do It
- To prepare yourself for spreading the word about
patterns, gather first-hand information on their
benefits and limitations by integrating them into
your current work. - Personal Touch
- Show individuals how patterns can be personally
useful and valuable to them. - Study Groups
- Form a small group of colleagues who are
interested in a specific topic as a next step for
newcomers to learn about patterns or a good way
for those familiar with patterns to continue
learning.
19One sequence through the language (continued)
- Big Jolt
- To give more visibility to the patterns effort,
invite a well-known person to do a presentation. - Plant the Seeds
- Carry patterns material (seeds) with you to
plant the idea of patterns whenever the
opportunity arises. - Royal Audience
- Arrange for management and members of the
organization who have helped with the patterns
effort to spend time with a Big Jolt visitor. - Dedicated Champion
- Make patterns part of your job description so
that your effectiveness can increase
considerably. - etc. etc. etc.
20Summary
- The message of the patterns community is that we
all have something to share and learn. - Patterns provide a way to capture knowledge and
transmit experience to others. - The patterns in this presentation have been
successfully used in companies around the world
to introduce new ideas. - Take the ones that can help you and begin to
change your organization!
21Recent changes to the language
- Added one pattern
- Just Say Thanks
- Changed names and focus of two patterns
- Ask for Help (was Corporate Resources)
- Early Adopters (was Grass Roots)
- Various additions and edits throughout