کد مقاله کد نشریه سال انتشار مقاله انگلیسی نسخه تمام متن
433453 1441716 2012 22 صفحه PDF دانلود رایگان
عنوان انگلیسی مقاله ISI
rbFeatures: Feature-oriented programming with Ruby
موضوعات مرتبط
مهندسی و علوم پایه مهندسی کامپیوتر نظریه محاسباتی و ریاضیات
پیش نمایش صفحه اول مقاله
rbFeatures: Feature-oriented programming with Ruby
چکیده انگلیسی

Features are pieces of core functionality of a program that is relevant to particular stakeholders. Features pose dependencies and constraints among each other. These dependencies and constraints describe the possible number of variants of the program: A valid feature configuration generates a specific variant with unique behavior. Feature-Oriented Programming is used to implement features as program units. This paper introduces rbFeatures, a feature-oriented programming language implemented on top of the dynamic programming language Ruby. With rbFeatures, programmers use software product lines, variants, and features as first-class entities. This allows several runtime reflection and modification capabilities, including the extension of the product line with new features and the provision of multiple variants. The paper gives a broad overview to the implementation and application of rbFeatures. We explain how features as first-class entities are designed and implemented, and discuss how the semantics of features are carefully added to Ruby programs. We show two case studies: The expression product line, a common example in feature-oriented programming, and a web application.

Research highlights
► rbFeatures implements features and product lines as first-class entities.
► Feature-refactoring of existing programs requires only small code modifications.
► Arbitrary product variants can be created and modified at runtime.
► rbFeatures is a pure language extension that works with several Ruby interpreters.

ناشر
Database: Elsevier - ScienceDirect (ساینس دایرکت)
Journal: Science of Computer Programming - Volume 77, Issue 3, 1 March 2012, Pages 152–173
نویسندگان
, ,