DocumentCode
2599110
Title
Generating product-lines of product-families
Author
Batory, Don ; Lopez-Herrejon, Roberto E. ; Martin, Jean-Philippe
Author_Institution
Dept. of Comput. Sci., Texas Univ., Austin, TX, USA
fYear
2002
fDate
2002
Firstpage
81
Lastpage
92
Abstract
GenVoca is a methodology and technology for generating product-lines, i.e. building variants of a program. The primitive components from which applications are constructed are refinements or layers, which are modules that implement a feature that many programs of a product-line can share. Unlike conventional components (e.g., COM, CORBA, EJB), a layer encapsulates fragments of multiple classes. Sets of fully formed classes can be produced by composing layers. Layers are modular, albeit unconventional, building blocks of programs. But what are the building blocks of layers? We argue that facets is an answer. A facet encapsulates fragments of multiple layers, and compositions of facets yields sets of fully formed layers. Facets arise when refinements scale from producing variants of individual programs to producing variants of multiple integrated programs, as typified byproduct families (e.g., MS Office). We present a mathematical model that explains relationships between layers and facets. We use the model to develop a generator for tools (i.e., product family) that are used in language-extensible Integrated Development Environments (IDEs).
Keywords
formal specification; graphical user interfaces; programming environments; GenVoca; facet; fully formed classes; language-extensible integrated development environments; mathematical model; primitive components; product-lines generation; Electrical capacitance tomography; Encapsulation; Hip; Packaging; Reactive power; Read only memory;
fLanguage
English
Publisher
ieee
Conference_Titel
Automated Software Engineering, 2002. Proceedings. ASE 2002. 17th IEEE International Conference on
ISSN
1938-4300
Print_ISBN
0-7695-1736-6
Type
conf
DOI
10.1109/ASE.2002.1114997
Filename
1114997
Link To Document