Modern software systems should be designed to dynamically adapt to changing user requirements or resource constraints. Delta-oriented programming (DOP) is a compositional approach to flexibly implement software product lines. In DOP, a product line is represented by a code base and a product line declaration. The code base consists of a set of delta modules specifying modifications to object-oriented programs. The product line declaration provides the connection of the delta modules with the product features and describes how the product for a particular feature configuration is generated. DOP has so far only been used for static variability. In this paper, we present dynamic DOP, an extension of DOP that supports changing the feature configuration of a product at runtime. A dynamic DOP product line is a standard DOP product line with a reconfiguration automaton that specifies how to switch between different feature configurations. The type system of our dynamic DOP language ensures that any reconfiguration leads to a type safe product. Dynamic DOP is an approach for realizing dynamic product lines which also supports (unanticipated) software evolution

Dynamic delta-oriented programming

DAMIANI, Ferruccio;
2011-01-01

Abstract

Modern software systems should be designed to dynamically adapt to changing user requirements or resource constraints. Delta-oriented programming (DOP) is a compositional approach to flexibly implement software product lines. In DOP, a product line is represented by a code base and a product line declaration. The code base consists of a set of delta modules specifying modifications to object-oriented programs. The product line declaration provides the connection of the delta modules with the product features and describes how the product for a particular feature configuration is generated. DOP has so far only been used for static variability. In this paper, we present dynamic DOP, an extension of DOP that supports changing the feature configuration of a product at runtime. A dynamic DOP product line is a standard DOP product line with a reconfiguration automaton that specifies how to switch between different feature configurations. The type system of our dynamic DOP language ensures that any reconfiguration leads to a type safe product. Dynamic DOP is an approach for realizing dynamic product lines which also supports (unanticipated) software evolution
2011
Fifth International Workshop on Dynamic Software Product Lines (DSPL)
Munich, Germany
August 26, 2011
Proceedings of the 15th International Software Product Line Conference, Volume 2
ACM
34:1
34:8
9781450307895
http://doi.acm.org/10.1145/2019136.2019175
dynamic software product lines; evolution; programming languages; runtime reconfiguration
Ferruccio Damiani; Ina Schaefer
File in questo prodotto:
Non ci sono file associati a questo prodotto.

I documenti in IRIS sono protetti da copyright e tutti i diritti sono riservati, salvo diversa indicazione.

Utilizza questo identificativo per citare o creare un link a questo documento: https://hdl.handle.net/2318/91816
Citazioni
  • ???jsp.display-item.citation.pmc??? ND
  • Scopus 28
  • ???jsp.display-item.citation.isi??? ND
social impact