Knowledge Patterns

Knowledge Patterns

Jörg Rech (Fraunhofer Institute for Experimental Software Engineering, Germany), Raimund L. Feldmann (Fraunhofer USA, Center for Experimental Software Engineering, USA) and Eric Ras (Fraunhofer Institute for Experimental Software Engineering, Germany)
Copyright: © 2011 |Pages: 9
DOI: 10.4018/978-1-59904-931-1.ch080

Abstract

Knowledge patterns are one way to formalize and describe lessons learned and best practices (i.e., proven experiences) about structuring knowledge, the design of KM systems, or the development of underlying ontologies. Such patterns capture aspects that positively or negatively influence the KM activities. In the later case, where negative influences are described, such patterns are denoted as anti-patterns. Knowledge patterns and anti patterns support practitioners and researchers in their knowledge management (KM) activities and can help in developing KM systems as well as improving the quality of the systems themselves and that of the knowledge within (i.e., the quality of the knowledge). Thereby, patterns in KM represent a way of structuring knowledge as well as a form of language that helps knowledge engineers to communicate about knowledge and KM systems.

Key Terms in this Chapter

Anti-Pattern: An anti-pattern is a general, proven, and non-beneficial problem (i.e., bad solution) in a software product or process. It strongly classifies the problem that exhibits negative consequences and provides a solution. Built upon similar experiences, anti-patterns represent “worst-practices” about how to structure or build a software architecture. An example is the “lava flow” anti-pattern that warns about developing a software system without stopping sometimes and reengineering the system. The larger and older such a software system gets, the more dead code and solidified (bad) decisions it carries along.

Software Refactoring: A (software) refactoring is an explicit, replicable, and beneficial activity that transforms the structure or representation of a software component without changing its meaning (i.e., behavior). The goal of software refactoring is the improvement of the quality (e.g., maintainability) of the software system.

Design Pattern: A design pattern is a general, proven, and beneficial solution to a common, reoccurring problem in software design. Built upon similar experiences, design patterns represent “best-practices” about how to structure or build a software architecture. An example is the façade pattern, which recommends encapsulating a complex subsystem and only allows the connection via a single interface (or “façade”) class. This enables the easy exchange and modification of the subsystem.

Knowledge Refactoring: A (knowledge) refactoring is an explicit, replicable, and beneficial activity that transforms the structure or representation of a knowledge element or component without changing its meaning (i.e., semantics). The goal of knowledge refactoring is the improvement of the quality (e.g., understandability) of the documented knowledge.

Explicit Knowledge: This term refers to documented knowledge (e.g., in the form of publications, or web-pages) rather than tacit knowledge which is only available through people (i.e., this kind of knowledge only exists in the human brain).

Knowledge Quality: The quality of knowledge is important (Marwick, 2001) because knowledge is, typically, reused by people who do not authored it and will have a lifetime of several years. Quality aspects for knowledge include usability-related aspects such a s readability, understandability (Kari, 1996), or learnability, as well as reliability, efficiency, maintainability, portability, etc.

Best Practice: A best practice is commonly understood to be a well-proven, repeatable, and established technique, method, tool, process, or activity that is more certain in delivering the desired results. This indicates that a best practice typically has been used by a large number of people or organizations and / or over a long time, with significant results that are clearly superior over other practices. Knowledge patterns can be used to formalize the description of a best practice.

Complete Chapter List

Search this Book:
Reset