Although a number of libraries of patterns have been developed for reuse, there is no mechanism for supporting automated design of object-oriented systems by the intelligent reuse of patterns from such libraries. We describe a web-based system, APSARA, the purpose of which is to create object-oriented designs based upon simple requirements descriptions. The system, developed in Java, implements a pattern retrieval and synthesis methodology that uses natural language processing and automated reasoning heuristics. The system is tested on multiple cases from different domains. The results are reported using metrics defined in the spirit of familiar measures such as recall, precision, coverage and spuriousness. These initial tests suggest that this is a feasible approach for the reuse of patterns in object-oriented design. The testing also reveals specific areas of concern and suggests a number of avenues for extending this research.
[1]
Ralph Johnson,et al.
design patterns elements of reusable object oriented software
,
2019
.
[2]
L'ubor Sesera,et al.
Analysis Patterns
,
2000,
SOFSEM.
[3]
Doug Lea,et al.
Christopher Alexander: an introduction for object-oriented designers
,
1998,
SOEN.
[4]
Veda C. Storey,et al.
An Ontology-Based Expert System for Database Design
,
1998,
Data Knowl. Eng..
[5]
Mark Mayfield,et al.
Object Models: Strategies, Patterns, and Applications
,
1995
.
[6]
Martin Fowler,et al.
Analysis patterns - reusable object models
,
1996,
Addison-Wesley series in object-oriented software engineering.
[7]
Sandeep Purao,et al.
Intelligent Support for Retrieval and Synthesis of Patterns for Object-Oriented Design
,
1997,
ER.