Abstract
Software maintenance consumes a significant and increasing proportion of industrial software engineering budgets, only to maintain the existing product functionality. This hinders the development of new innovative features with added value to customers. To make software development efforts more effective, legacy software needs to be rejuvenated into a substantial redesign. We show that partially-automated software rejuvenation is becoming feasible and cost-effective in industrial practice. We use domain-specific models that abstract from implementation details, and apply a pragmatic combination of manual and automated techniques. We demonstrate the effectiveness of this approach by the rejuvenation of legacy software of the Interventional X-ray machines developed by Philips Healthcare.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
References
Baxter, I.D., Pidgeon, C.W., Mehlich, M.: DMS: Program transformations for practical scalable software evolution. In: Proceedings of ICSE 2004, pp. 625–634. IEEE Computer Society (2004)
Bray, T., Paolia, J., Sperberg-McQueen, C.M., Maler, E., Yergeau, F.: Extensible Markup Language (XML) 1.0, 5th edn. W3C recommendation, World Wide Web Consortium (2008). http://www.w3.org/TR/2008/REC-xml-20081126/
de Groot, J., Nugroho, A., Bäck, T., Visser, J.: What is the value of your software? In: Managing Technical Debt (MTD 2012), pp. 37–44. ACM (2012)
Fehrenbach, S., Erdweg, S., Ostermann, K.: Software evolution to domain-specific languages. In: Erwig, M., Paige, R.F., Van Wyk, E. (eds.) SLE 2013. LNCS, vol. 8225, pp. 96–116. Springer, Heidelberg (2013)
Fleurey, F., Breton, E., Baudry, B., Nicolas, A., Jézéquel, J.-M.: Model-driven engineering for software migration in a large industrial context. In: Engels, G., Opdyke, B., Schmidt, D.C., Weil, F. (eds.) MODELS 2007. LNCS, vol. 4735, pp. 482–497. Springer, Heidelberg (2007)
Hooman, J., Mooij, A.J., van Wezep, H.: Early fault detection in industry using models at various abstraction levels. In: Derrick, J., Gnesi, S., Latella, D., Treharne, H. (eds.) IFM 2012. LNCS, vol. 7321, pp. 268–282. Springer, Heidelberg (2012)
Klint, P., Landman, D., Vinju, J.J.: Exploring the limits of domain model recovery. In: Proceedings of ICSM 2013, pp. 120–129. IEEE (2013)
Mooij, A.J., Hooman, J., Albers, R.: Gaining industrial confidence for the introduction of domain-specific languages. In: Proceedings of IEESD 2013, pp. 662–667. IEEE (2013)
Parr, T.: Soapbox: Humans should not have to grok XML. IBM developerWorks, IBM, August 2001. http://www.ibm.com/developerworks/library/x-sbxml/
Pirkelbauer, P., Dechev, D., Stroustrup, B.: Source code rejuvenation is not refactoring. In: van Leeuwen, J., Muscholl, A., Peleg, D., Pokorný, J., Rumpe, B. (eds.) SOFSEM 2010. LNCS, vol. 5901, pp. 639–650. Springer, Heidelberg (2010)
Reus, T., Geers, H., van Deursen, A.: Harvesting software systems for MDA-based reengineering. In: Rensink, A., Warmer, J. (eds.) ECMDA-FA 2006. LNCS, vol. 4066, pp. 213–225. Springer, Heidelberg (2006)
Sneed, H.M.: Planning the reengineering of legacy systems. IEEE Softw. 12(1), 24–34 (1995)
Steffen, B., Howar, F., Merten, M.: Introduction to active automata learning from a practical perspective. In: Bernardo, M., Issarny, V. (eds.) SFM 2011. LNCS, vol. 6659, pp. 256–296. Springer, Heidelberg (2011)
Tolvanen, J.-P.: Domain-specific modeling for full code generation. Softw. Tech News (STN) 12(4), 4–7 (2010)
Tonella, P., Potrich, A.: Reverse Engineering of Object-Oriented Code. Springer, Heidelberg (2005)
van der Aalst, W.M.P.: Process Mining: Discovery. Conformance and Enhancement of Business Processes. Springer, Heidelberg (2011)
van der Aalst, W.M.P., van Hee, K.M.: Workflow Management: Models. MIT Press, Methods and Systems (2004)
Voelter, M.: Best practices for DSLs and model-driven development. J. Object Technol. 8(6), 79–102 (2009)
Voelter, M.: DSL Engineering (2013). http://dslbook.org/
Wagner, C.: Model-Driven Software Migration: A Methodology. Springer, Heidelberg (2014)
Whittle, J., Hutchinson, J., Rouncefield, M.: The state of practice in model-driven engineering. IEEE Softw. 31, 79–85 (2014)
Acknowledgment
This research was supported by the Dutch national program COMMIT and carried out as part of the Allegio project. The authors thank Dirk Jan Swagerman for his trust in this endeavor, and Aron van Beurden and Martien van der Meij for their technical contributions to the software rejuvenation.
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2015 Springer International Publishing Switzerland
About this paper
Cite this paper
Mooij, A.J., Eggen, G., Hooman, J., van Wezep, H. (2015). Cost-Effective Industrial Software Rejuvenation Using Domain-Specific Models. In: Kolovos, D., Wimmer, M. (eds) Theory and Practice of Model Transformations. ICMT 2015. Lecture Notes in Computer Science(), vol 9152. Springer, Cham. https://doi.org/10.1007/978-3-319-21155-8_6
Download citation
DOI: https://doi.org/10.1007/978-3-319-21155-8_6
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-319-21154-1
Online ISBN: 978-3-319-21155-8
eBook Packages: Computer ScienceComputer Science (R0)