| Flexible features: making feature modules more reusable |
| Full text |
Pdf
(1.63 MB)
|
Source
|
Symposium on Applied Computing
archive
Proceedings of the 2009 ACM symposium on Applied Computing
table of contents
Honolulu, Hawaii
SESSION: Programming for separation of concerns track
table of contents
Pages 1963-1970
Year of Publication: 2009
ISBN:978-1-60558-166-8
|
|
Authors
|
|
| Sponsor |
|
| Publisher |
|
| Bibliometrics |
Downloads (6 Weeks): 11, Downloads (12 Months): 47, Citation Count: 0
|
|
|
ABSTRACT
A growing trend in software construction advocates the encapsulation of software building blocks as features which better match the specification of requirements. As a result, programmers find it easier to design and compose different variations of their systems. Feature-oriented programming (FOP) is the research domain that targets this trend. We argue that the state-of-the-art techniques for FOP have shortcomings because they specify a feature as a set of building blocks rather than a transition that has to be applied on a software system in order to add that feature's functionality to the system. We propose to specify features as sets of first-class change objects which can add, modify or delete building blocks to or from a software system. We evaluate this approach by implementing a simple text editor in a feature-oriented way and use the implementation to produce four different program variations. This shows that our approach contributes to FOP on three levels: expressiveness, composition verification and bottom-up feature-oriented development.
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
|
S. Apel, T. Leich, M. Rosenmüller, and G. Saake. Featurec++: On the symbiosis of feature-oriented and aspect-oriented programming. In R. Glück and M. R. Lowry, editors, GPCE, volume 3676 of Lecture Notes in Computer Science, pages 125--140. Springer, 2005.
|
| |
2
|
D. S. Batory. A tutorial on feature oriented programming and the ahead tool suite. In GTTSE, pages 3--35, 2006.
|
 |
3
|
|
 |
4
|
Marcus Denker , Tudor Gîrba , Adrian Lienhard , Oscar Nierstrasz , Lukas Renggli , Pascal Zumkehr, Encapsulating and exploiting change with changeboxes, Proceedings of the 2007 international conference on Dynamic languages: in conjunction with the 15th International Smalltalk Joint Conference 2007, August 25-31, 2007, Lugano, Switzerland
[doi> 10.1145/1352678.1352681]
|
 |
5
|
Peter Ebraert , Jorge Vallejos , Pascal Costanza , Ellen Van Paesschen , Theo D'Hondt, Change-oriented software engineering, Proceedings of the 2007 international conference on Dynamic languages: in conjunction with the 15th International Smalltalk Joint Conference 2007, August 25-31, 2007, Lugano, Switzerland
[doi> 10.1145/1352678.1352680]
|
| |
6
|
P. Ebraert, E. Van Paesschen, and T. D'Hondt. Change-oriented round-trip engineering. Technical report, Vrije Universiteit Brussel, 2007.
|
| |
7
|
D. B. Ed Jung, Chetan Kapoor. Automatic code generation for actuator interfacing from a declarative specification. In International Conference on Intelligent Robots and Systems, 2005. (IROS 2005). 2005 IEEE/RSJ, pages 2839--2844, 2005.
|
| |
8
|
E. Gamma, R. Helm, R. Johnson, and J. Vlissides. Design Patterns. Addison-Wesley, 1994.
|
| |
9
|
K. C. Kang, S. G. Cohen, J. A. Hess, W. E. Novak, and A. S. Peterson. Feature-oriented domain analysis (foda) feasibility study. Technical report, Carnegie-Mellon University Software Engineering Institute, November 1990.
|
| |
10
|
G. Kiczales, J. Lamping, A. Mendhekar, C. Maeda, V. Lopes, J.-M. Loingtier, and J. Irwin. Aspect-oriented programming. In Proceedings of the European Conference on Object-Oriented Programming. Springer-Verlag, June 1997.
|
| |
11
|
T. Männistö, T. Soininen, and R. Sulonen. Modeling configurable products and software product families. In in Proc. of the International Joint Conference on Artificial Intelligence (IJCAI-2001) - Workshop on Configuration, 2001.
|
 |
12
|
|
 |
13
|
|
| |
14
|
C. Prehofer. Feature-Oriented Programming: A Fresh Look at Objects. Lecture Notes in Computer Science, 1241:419--434, 1997.
|
| |
15
|
|
 |
16
|
|
 |
17
|
|
|