ACM Home Page
Please provide us with feedback. Feedback
Edicts: implementing features with flexible binding times
Full text PdfPdf (942 KB)
Source Aspect-oriented software development archive
Proceedings of the 7th international conference on Aspect-oriented software development table of contents
Brussels, Belgium
SESSION: Aspects for adaptation and variability support table of contents
Pages 108-119  
Year of Publication: 2008
ISBN:978-1-60558-044-9
Authors
Venkat Chakravarthy  University of Utah
John Regehr  University of Utah
Eric Eide  University of Utah
Sponsor
AOSA : Aspect-Oriented Software Association
Publisher
ACM  New York, NY, USA
Bibliometrics
Downloads (6 Weeks): 10,   Downloads (12 Months): 74,   Citation Count: 1
Additional Information:

abstract   references   cited by   index terms   collaborative colleagues  

Tools and Actions: Request Permissions Request Permissions    Review this Article  
DOI Bookmark: Use this link to bookmark this Article: http://doi.acm.org/10.1145/1353482.1353496
What is a DOI?

ABSTRACT

In a software product line, the binding time of a feature is the time at which one decides to include or exclude a feature from a product. Typical binding site implementations are intended to support a single binding time only, e.g., compile time or run time. Sometimes, however, a product line must support features with variable binding times. For instance, a product line may need to include both embedded system configurations, in which features are selected and optimized early, and desktop configurations, in which client programs choose features on demand.

We present a new technique for implementing the binding sites of features that require flexible binding times. Our technique combines design patterns and aspect-oriented programming: a pattern encapsulates the variation point, and targeted aspects---called edicts---set the binding times of the pattern participants. We describe our approach and demonstrate its usefulness by creating a middleware product line capable of serving the desktop and embedded domains. Our product line is based on JacORB, a middleware platform with many dynamically configurable features. By using edicts to select features at compile time, we create a version of JacORB more suited to resource-constrained environments. By configuring four JacORB subsystems via edicts, we achieve a 32.2% reduction in code size. Our examples show that our technique effectively modularizes binding-time concerns, supporting both compile-time optimization and run-time flexibility as needed.


REFERENCES

Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.

 
1
V. Chakravarthy. Adaptive product line design using aspects and design patterns. Master's thesis, University of Utah, 2008.
 
2
 
3
 
4
 
5
E. Dolstra, G. Florijn, and E. Visser. Timeline variability: The variability of binding time of variation points. In Proc. of the 2003 Workshop on Software Variability Management (SVM), pages 119--122, Gronigen, The Netherlands, Feb. 2003.
6
 
7
C. Fritsch, A. Lehn, and T. Strohm. Evaluating variability implementation mechanisms. In Proc. of the 2002 Workshop on Product Line Engineering: The Early Steps: Planning, Modeling, and Managing (PLEES), pages 59--64, Seattle, WA, Nov. 2002.
8
 
9
 
10
A. Garcia, C. Sant'Anna, E. Figueiredo, U. Kulesza, C. Lucena, and A. von Staa. Modularizing design patterns with aspects: A quantitative study. In Transactions on Aspect-Oriented Software Development, volume 3880 of LNCS, pages 36--74. Springer, 2006.
11
 
12
 
13
JacORB. http://www.jacorb.org/.
 
14
K. Kang, S. Cohen, J. Hess, W. Novak, and A. Peterson. Feature-Oriented Domain Analysis (FODA) feasibility study. Software Engineering Institute Technical Report CMU/SEI-90TR-21, Software Engineering Institute, Carnegie Mellon University, Pittsburgh, PA, 1990.
15
 
16
E. Lafortune. ProGuard. http://proGuard.sourceforge.net/.
 
17
R. E. Lopez-Herrejon, D. Batory, and W. Cook. Evaluating support for features in advanced modularization technologies. In Proc. of the 19th European Conf. on Object-Oriented Programming (ECOOP), pages 169--194, Glasgow, UK, July 2005.
 
18
 
19
Sony Ericsson. Symbian OS Docs&Tools. http://developer.sonyericsson.com/site/global/docstools/symbian/p_symbian.jsp.
20
 
21
 
22
23
24
25


Collaborative Colleagues:
Venkat Chakravarthy: colleagues
John Regehr: colleagues
Eric Eide: colleagues