Content area
This thesis employs the basic theory of patterns to systematize the largely unexplored domain of software component documentation; it presents an original pattern language to describe successful documentation systems, and creates a framework to guide the development of CASE tools, further research, and theorizing. As an analytical tool, patterns describe solutions to problems existing within a given context in a given domain, and by developing a set of inter-locking patterns, a pattern language is formed, providing a synergistic solution to an entire class of problems. The pattern language presented in this thesis solves a class of problems arising from the needs of software engineers attempting to use or reuse an object-oriented software component. Each of the 39 patterns in the pattern language is defined by (1) carefully describing the exact problem it solves and the contextual forces that might influence the solution, (2) providing a solution to the problem, (3) identifying where, in an industrial setting, the solution can be seen, and (4) identifying other closely-related patterns in the language. In addition to the pattern language itself, a general classification system for component documentation patterns is presented. This multi-dimensional classfication system serves not only as an aid in understanding the pattern language, but also a framework for further research and identification of documentation based in actual industrial practice, expressed abstractly as a pattern language, and organized through analysis and classification.