An ontology-based knowledge base for the representation and reuse of software patterns. - Girardi, Rosario (Software engineering notes.)
The description, localization and effective reuse of software patterns and systems of patterns can be approached through an ontology-based formalism. An ontology is an explicit specification of objects, concepts and entities of an area of interest, besides the relationships between these concepts expressed through axioms. This work introduces ONTOPATTERN, an ontology that represents knowledge about how patterns are described and about their relationships in a pattern system. Patterns are included as instances of classes in the ontology, thus turning ONTOPATTERN a knowledge base where concepts are semantically related and where searches and inferences can be made thus facilitating the understanding and reuse of patterns. The use of ONTOPATTERN is illustrated through an example on the construction of a multi-agent framework.