The common definition for design patterns one that is potentially incomprehensible unless one is already familiar with patterns
is that they are solutions to recurring problems that can be used repeatedly in many contexts (Alexander, Ishikawa, & Silverstein, 1977; Guidelines for E-LEN Centres, 2004). However, the solutions are intentionally incomplete. Within their structure, patterns combine analysis and solutions to problems that are responsive to context, informed by theory and best practices. They focus and advise but do not constrain creativity. Thus, patterns guide rather than prescribe: a characteristic that makes them potentially valuable tools for designing complex learner managed systems.
This post began as an excerpt from Terry Anderson’s and my paper, Design Patterns for Complex Learning.
The use of design patterns and pattern languages originates with architect Christopher Alexander, who sought to reconceptualise approaches to building design and town planning. Driven by the conviction that many forces that shape modern life damage our wellbeing, he sought deeper, recurring patterns in human activities that intuitively improve our environment. He articulated these patterns into a set of conceptual tools such that ordinary people as well as architects could shape the environment in which they live (Alexander, Ishikawa, & Silverstein, 1977).
Since its development in the 1970s, Alexander’s thinking on design has received warm reception in surprisingly varied professions and disciplines. In software engineering, patterns have been used to represent successful models of information systems (see HillsideNet Patterns Library) and human computer interaction (for example, Tidwell, 1999). More recently, education technologists have looked to patterns to solve problems such as collaborative activities in Computer-Supported Collaborative Learning (CSCL) systems (Hernández Leo, Asenio Pacrez, & Dimitriadis, 2004; Baggetun, Rusman, & Poggi, 2004) and learning management standards (Avgeriou, Papasalouros, Retalis, & Skordalakis, 2003), and to capture teaching practices in their respective disciplines (for example, from the Pedagogical Patterns project, Esckstein, Marquardt, Manns, & Wallingford, 2001, and also Bergin, 2002; Frizell & Hubscher, 2002).
Structure and Elements of Design Patterns
‘Go Berrypicking’ is one example of the lifelong learning patterns we have identified (There are a few more). Based on Bates’s (1989) Berrypicking model of information retrieval, it identifies a typical problem encountered in the information-rich world of the Internet: finding appropriate resources online. Pattern structure is fundamental to its value, and this pattern uses a variation of the Alexandrian pattern structure (other variations include Goodyear, Avgeriou, Baggetun, Bartouluzzi, Retalis, Ronteltap & Rusman, 2004, and Bergin, 2002). Like all such patterns, it is written in second person, and in this case is directed to the learner, has a name, and these key elements separated by asterisks (***):
- The context for the problem that prevents an over-generalised solution.
- The forces that describe in what contexts users apply the pattern, followed by the key
problem (in bold). The forces of the problem clash, constrain, and communicate the nature of both problem and solution. - ‘Therefore …’ (Also in bold) introduces the archetypal solution. It describes how to apply the pattern correctly and includes consequences, limitations and disadvantages of the solution.
- Further information and examples (in italics) about its use, including references to related work and contraindications to support the pattern’s use.
[title] GO BERRYPICKING**
[context] You want to search online about a topic that is unfamiliar to you.
***
[forces] The sheer volume and variability of sources on the internet make search complex. If you are unfamiliar with the domain, you may not know what sources exist, how to frame the research question, or what search terms to use. Unfortunately, search engines typically require that you present an structured, precise query that can be matched to the database contents to produces a single set of results (note: there are exceptions).
[problem] An underdeveloped research question produces less meaningful search results.
***
[solution] Therefore, use the results to refine and redefine your research question until the results are meaningful.
Search is iterative: the search question and result co-evolve. Start with just one feature of the broader topic and move through a wide variety of sources. Retrieve information a bit at a time, not all at once. Look for potential ideas and new directions and repeat with a refined query. Bates (1989) calls this strategy berrypicking and the shifting nature of queries an evolving search. You may be tempted to restrict your search among a small set of familiar sites. (Tauscher & Greenberg, 1997 in Candy, 2004). However, a broadly scoped search will offer more
opportunities. ‘Berries are scattered on the bushes; they do not come in bunches’ (Bates, 1998, p. 4). Don’t get lost. After pursuing a string of new directions, you may find yourself far a field from where you started, and unable to assimilate this new information into the original context. Fortunately, there are patterns for that too.
***
[further information] Bates (1989) suggests six ways to search for bits and pieces: footnote chasing, citation searching, journal run, area scanning, subject searches in bibliographies and abstracts, and author searching. These could be explicated as subpatterns. The online bookshop, Amazon.com, lets you find books by linking to other books by the same author, on the same topic, with the same reviewer or even other purchasers. CiteSeer, a database of computer and engineering documents that uses autonomous citation indexing, lets you query through a chain of documents.
Note: See family of patterns associated with assimilating information and insights.
Taken together, the ‘Go Berrypicking’ pattern captures an essential aspect of the online search experience. However, it is not full featured enough to create a working blueprint for a complete online search. Rather, like all design patterns, this one makes sense when it is seen in context of its neighbouring patterns. Patterns are nested with other smaller, related patterns and within even larger patterns that describe supersets and whole structures such as a class, a community or an e-learning program. A pattern language is a structure for nested design patterns.
For example, ‘Go Berrypicking’ is part of a cluster of patterns for ‘locating information sources and assistance’ that includes ‘Choose a well marked trail’ and ‘Trust a secondary source’ among others (It’s easier to see this in a hyperlinked version of the pattern cluster).
‘Locating information sources and assistance’ itself is a component of an online learning pattern language, for which we have used Candy’s online learning model (2004) to lend structure to and represent the power of nested patterns. Our goal was not to structure a pattern language for lifelong learning, a rather large undertaking, but rather to explore its value for designing technology-supported lifelong learning spaces.