In this study we present a review of the emerging field of meta-knowledge components as practised over the past decade among a variety of practitioners. We use the artificially defined term “meta-knowledge” to encompass all those different but overlapping notions used by the artificial intelligence and software engineering communities to represent reusable modelling frameworks: ontologies, problem-solving methods, patterns and experience factories and bases, to name but a few. We then elaborate on how meta-knowledge is deployed in the context of system's design to improve its reliability by consistency-checking, enhance its reuse potential and manage its knowledge-sharing. We speculate on its usefulness and explore technologies for supporting deployment of meta-knowledge. We argue that, despite the different approaches being followed in systems design by divergent communities, meta-knowledge is present in all cases, in a tacit or explicit form, and its utilisation depends on pragmatic aspects which we try to identify and critically review on criteria of effectiveness.