Facilitating the use of patterns via a generic framework that supports semi-automatic concept indexing and in-depth searching

Les Beckford, Pace University

Abstract

The concept of patterns and pattern languages embodies a rigorous best practice documentation process. When done well, the resulting product is a named, well written peer reviewed document that expound a solution to a recurring problem that exists within a particular environment, surrounding or situation—complete with notes on tradeoffs and examples of past occurrences. As a result of its use in scores of modern software projects, in addition to its emergence in countless publications, the patterns paradigm and attendant value proposition has caught the interest of many practitioners—both inside and outside of the software community. While the awareness and use of patterns have increased at a rapid rate, practitioners are having a difficult time locating patterns that are decidedly relevant to the challenges and issues confronting them. In addition, they are also having a hard time comprehending the information enclosed within patterns. This thesis presents research that addresses each of these concerns. The objective of this thesis is to discover a technique to semi-automatically index patterns for the purpose of facilitating pattern searching. The motivation for this study is based on the premise that in order to be able to semi-automatically index and search patterns, a pattern must exist within a schema that is predictable, searchable and comprehendible. These characteristics are often missing and where present, are not coherent in the existing set. This study employs a grounded theory methodological approach, one that is supported via the combined use of qualitative and quantitative methods. The first part of this thesis (the qualitative component) investigates the process of writing, documenting and reviewing patterns and pattern languages. Forms commonly used to represent pattern text, in addition to common approaches to finding and using patterns are investigated. Collectively, these findings are used to define a Generic Pattern Framework (GPF) and a supporting methodology. The derived methodology is used to guide the process of populating GPF with pattern text from four different types of patterns, each documented via distinct pattern forms. In the second part of this thesis (the quantitative component), existing theories from the field of Information Retrieval (i.e., theory pertaining to subject matters of document configuration, automatic indexing, semi-automatic indexing, semi-automatic concept indexing, automatic categorization, semi-automatic categorization and retrieval) are investigated. In addition, effective implementations of several of those theories are reviewed, i.e., algorithms and schemes used to construct both general-purpose and domain-specific search engines are evaluated and empirical results of comparative approaches are presented. To demonstrate the practical value of this research, a rudimentary prototype of GPF is made operational. Based on knowledge obtained from the field of Information Retrieval, a test environment is designed, constructed and utilized to support preliminary testing. Through experimental results obtained from more than eighty queries executed, this thesis shows that the idea of a generic pattern document framework (GPF) and associated methodology has merit and provides utility. Additionally, this thesis also shows that such utility offers supporting functionality for the next piece of research to follow—automatic categorization and the subsequent turning of this prototype into a robust product.

Subject Area

Computer science|Information systems

Recommended Citation

Beckford, Les, "Facilitating the use of patterns via a generic framework that supports semi-automatic concept indexing and in-depth searching" (2004). ETD Collection for Pace University. AAI3148421.
https://digitalcommons.pace.edu/dissertations/AAI3148421

Share

COinS

Remote User: Click Here to Login (must have Pace University remote login ID and password. Once logged in, click on the View More link above)