Recording Venue: University of Passau
Guest: Sven Apel
In this second episode on Feature-Oriented Software Development (FOSD), Sven Apel gives us an overview of programming language and tool support for FOSD.
He introduces the Eclipse-based FeatureIDE which covers important phases of the FOSD process, namely domain implementation as well as configuration and generation. The Eclipse plugin CIDE comes in handy for refactoring an existing code base towards a feature-oriented design and feature modularisation in a stepwise manner. As for programming language support, Sven gives us some hints on how certain mainstream (e.g., C#, Ruby, Scala) and research-driven languages (FeatureC++) assist at turning features into proper feature modules. Sven makes an interesting point by stating that feature modularisation is limited by the common granularity levels available for modularisation in object-oriented languages, namely the levels of objects and methods. Rather, modularisation at the statement and expression level would be equally required.
We end this episode by outlining some burning issues in FOSD research and practise to be tackled in the years to come (e.g., verification of feature-oriented programs and product lines, optimising feature selection, etc.). Sven finally provides some hints on where to keep yourself informed about FOSD and how to participate in FOSD-related events.