TY - GEN
T1 - Towards migrating object-oriented frameworks to enable synthesis of product line members
AU - Heineman, George
AU - Hoxha, Armend
AU - Dudder, Boris
AU - Rehof, Jakob
PY - 2015/7/20
Y1 - 2015/7/20
N2 - For many software engineers, object-oriented frameworks represent the highest level of achievement in extensible design. The framework designers become experts in a specific application domain and design cooperating classes that impose specific responsibilities and collaborations for those seeking to extend the framework. In short, once a framework matures, it has complicated usage patterns that must be followed otherwise nothing works. Turning a framework into a software product line is challenging because of the difficulty in coding these complex behaviors and enabling the configuration of product line members using the framework. We propose to support this migration process by showing how to design a repository of modular units to synthesize member applications compositionally. These units are formalized using combinatory logic synthesis, a type-based approach to component-oriented synthesis. We demonstrate the feasibility of our approach with a Java-based product line for which we can automatically synthesize member applications.
AB - For many software engineers, object-oriented frameworks represent the highest level of achievement in extensible design. The framework designers become experts in a specific application domain and design cooperating classes that impose specific responsibilities and collaborations for those seeking to extend the framework. In short, once a framework matures, it has complicated usage patterns that must be followed otherwise nothing works. Turning a framework into a software product line is challenging because of the difficulty in coding these complex behaviors and enabling the configuration of product line members using the framework. We propose to support this migration process by showing how to design a repository of modular units to synthesize member applications compositionally. These units are formalized using combinatory logic synthesis, a type-based approach to component-oriented synthesis. We demonstrate the feasibility of our approach with a Java-based product line for which we can automatically synthesize member applications.
UR - http://www.scopus.com/inward/record.url?scp=84982835425&partnerID=8YFLogxK
U2 - 10.1145/2791060.2791076
DO - 10.1145/2791060.2791076
M3 - Article in proceedings
AN - SCOPUS:84982835425
T3 - ACM International Conference Proceeding Series
SP - 56
EP - 60
BT - Proceedings - 19th International Software Product Line Conference, SPLC 2015
PB - Association for Computing Machinery, Inc.
T2 - 19th International Software Product Line Conference, SPLC 2015
Y2 - 20 July 2015 through 24 July 2015
ER -