Dimensions of Variability in Software Product Lines

old_uid6171
titleDimensions of Variability in Software Product Lines
start_date2009/02/03
schedule14h-15h30
onlineno
location_info/, amphi G. Besse
summaryTransformation-based program synthesis is a hallmark of automated program development. Some time ago, we discovered that the design of a program could be expressed as a matrix of transformations, where both rows and columns represented features. The technique was called Origami, as the matrix was folded in precise ways (thereby composing transformations) until a scalar was produced. This scalar defined an expression (a composition of transformations) that, when evaluated, synthesized the program. Origami generalized to n-dimensional matrices, where each axis defined a dimension of variability. But we never quite understood why Origami worked. Our research seeks principles of automated construction that can be appreciated by practitioners and that are expressed in terms of simple mathematics. This talk explains Origami by an interesting integration of diverse topics : data cubes (database technology), basic ideas from tensors and categories (mathematics), extensibility problem (programming languages), and feature interactions (software design).
responsiblesDaille