A design feature-based approach to deriving program code from features
Hye-Sun Lee, Kyo C. Kang · 2013
Feature-oriented software development is a software development paradigm that uses "features" as the first class objects in designing program instead of objects as with the object-orientation. Most of researches on feature-oriented software development attempt to derive program code directly from a feature model, which presents several problems: there is no explicit attempt to embed required quality attributes into code; and features tend to cut across program units and it is difficult to derive program units from the features. To address these problems, a design-feature-based approach is proposed in this paper. Design feature model captures implementation-level design decisions explicitly. It bridges the abstraction gap between features (i.e., functionalities in abstraction) and program units (i.e., concrete implementation). Design features of a design feature model are identified based on required quality attributes. We demonstrated the feasibility of the proposed approach by providing a case study of an arcade game software product line. Initial lessons learned and research agenda are also introduced in the paper.