Software Product Line Engineering (SPLE) promotes extensive reuse of common aspects in developing new software components. Supervisory Control Theory (SCT) is a methodology to automatically synthesise a controller enforcing given safety requirements. The interplay between SPLE and SCT has recently received attention in the research community. This paper formally tackles the problem of synthesising a most permissive controller (mpc) enforcing a given requirement for a software product line (SPL). Generally, the number of products of an SPL can be exponential in the number of features, and an mpc should be synthesised for every product. To overcome this problem, the product line structure is exploited to synthesise, in the best case, a number of controllers that are linear in the number of features of the SPL. The SPL is formalised as a (Priced) Featured Automaton ((P)FA), whilst the mpc synthesis is formalised by modelling both the plant and the requirement as Extended Finite-state Automata (EFA), where quantitative aspects can be seamlessly integrated. The contributions are: (i) a formal mapping from FA to EFA; (ii) a mapping of energy problems onto synthesis of EFA; (iii) three-valued logic and partial-order reduction are used to greatly reduce the number of mpcs required. Contribution (iii) holds for a wide range of other objectives, not only energy problems. Both EFA and PFA are endowed with tools implementing algorithms that have been studied for more than a decade and both are adopted in industry. These results pave the way to reuse algorithms and tools that have been separately developed in SPLE and SCT research areas.
Applying supervisory control synthesis to priced featured automata and energy problems
Basile D
2019
Abstract
Software Product Line Engineering (SPLE) promotes extensive reuse of common aspects in developing new software components. Supervisory Control Theory (SCT) is a methodology to automatically synthesise a controller enforcing given safety requirements. The interplay between SPLE and SCT has recently received attention in the research community. This paper formally tackles the problem of synthesising a most permissive controller (mpc) enforcing a given requirement for a software product line (SPL). Generally, the number of products of an SPL can be exponential in the number of features, and an mpc should be synthesised for every product. To overcome this problem, the product line structure is exploited to synthesise, in the best case, a number of controllers that are linear in the number of features of the SPL. The SPL is formalised as a (Priced) Featured Automaton ((P)FA), whilst the mpc synthesis is formalised by modelling both the plant and the requirement as Extended Finite-state Automata (EFA), where quantitative aspects can be seamlessly integrated. The contributions are: (i) a formal mapping from FA to EFA; (ii) a mapping of energy problems onto synthesis of EFA; (iii) three-valued logic and partial-order reduction are used to greatly reduce the number of mpcs required. Contribution (iii) holds for a wide range of other objectives, not only energy problems. Both EFA and PFA are endowed with tools implementing algorithms that have been studied for more than a decade and both are adopted in industry. These results pave the way to reuse algorithms and tools that have been separately developed in SPLE and SCT research areas.File | Dimensione | Formato | |
---|---|---|---|
prod_412697-doc_150359.pdf
non disponibili
Descrizione: Applying supervisory control synthesis to priced featured automata and energy problems
Tipologia:
Versione Editoriale (PDF)
Dimensione
282.69 kB
Formato
Adobe PDF
|
282.69 kB | Adobe PDF | Visualizza/Apri Richiedi una copia |
prod_412697-doc_159691.pdf
accesso aperto
Descrizione: Applying supervisory control synthesis to priced featured automata and energy problems
Tipologia:
Versione Editoriale (PDF)
Dimensione
378.55 kB
Formato
Adobe PDF
|
378.55 kB | Adobe PDF | Visualizza/Apri |
I documenti in IRIS sono protetti da copyright e tutti i diritti sono riservati, salvo diversa indicazione.