Skip to content

Software Engineering Radio

The Podcast for Professional Software Developers

Archive

Tag: variability

Recording Venue: University of Passau

Guest: Sven Apel

Host: Stefan

In this first episode on Feature-Oriented Software Development (FOSD), Sven Apel explains why developing software in a feature-oriented manner is so vital for us as software engineers and why objects are simply not enough.

Having stated that, Sven provides some clarifying answers to some key questions: What is a feature? What are feature models and feature modules? What is the infamous “feature interaction problem”?  And how come that we often struggle with the so-called “optional feature problem”?

Based on this common understanding, we then discuss the history of FOSD as a movement in software engineering research and a generative programming approach, its relationship to software product lines, and selected software landmarks (e.g. AHEAD). Finally, Sven sketches out the structure of an feature-oriented development process and comments on the relationship between FOSD and process management approaches such as Feature-Driven Design (FDD) and feature teams.

Links:

Play

Recording Venue: Practical Product Lines
Guest(s): Jan Bosch

Host(s): Markus
This episode is a conversation with Jan Bosch about product line engineering (PLE). Jan has worked in various roles and industries and academia in the context of product lines. In this episode we look at Jan’s view of what is next for product lines: software ecosystems. What is their relationship to PLE and how should PLE change to remain relevant?

Links:

Play

Recording Venue:
Guest(s):
Host(s): Michael Markus
Variability is one of the key concerns in software product line engineering. The episode introduces the concepts of structural and non-structural (or configurative) variability. It also discusses how to find and model variability, and especially how to implement variability in the solution artifacts. Michael and Markus discuss a series of variability mechanisms that can be used with today’s programming languages and technologies.

Links:

Play