Refactoring of legacy software using model learning and equivalence checking: An industrial experience report

conference paper
Many companies struggle with large amounts of legacy software that is difficult to maintain and to extend. Refactoring legacy code typically requires large efforts and introduces serious risks because often crucial business assets are hidden in legacy components. We investigate the support of formal techniques for the rejuvenation of legacy embedded software, concentrating on control components. Model learning and equivalence checking are used to improve a new implementation of a legacy control component. Model learning is applied to both the old and the new implementation. The resulting models are compared using an equivalence check of a model checker. We report about our experiences with this approach at Philips. By gradually increasing the set of input stimuli, we obtained implementations of a power control service for which the learned behaviour is equivalent.
TNO Identifier
546176
ISSN
03029743
ISBN
9783319336923
Publisher
Springer Verlag
Source title
12th International Conference on Integrated Formal Methods, IFM 2016, 1 June 2016 through 5 June 2016
Editor(s)
Abraham, E.
Huisman, M.
Pages
311-325
Files
To receive the publication files, please send an e-mail request to TNO Repository.