Skip to main content

Model-Driven Engineering of Machine Executable Code

  • Conference paper
Modelling Foundations and Applications (ECMFA 2010)

Part of the book series: Lecture Notes in Computer Science ((LNPSE,volume 6138))

Included in the following conference series:

Abstract

Implementing static analyses of machine-level executable code is labor intensive and complex. We show how to leverage model-driven engineering to facilitate the design and implementation of programs doing static analyses. Further, we report on important lessons learned on the benefits and drawbacks while using the following technologies: using the Scala programming language as target of code generation, using XML-Schema to express a metamodel, and using XSLT to implement (a) transformations and (b) a lint like tool. Finally, we report on the use of Prolog for writing model transformations.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Subscribe and save

Springer+ Basic
$34.99 /Month
  • Get 10 units per month
  • Download Article/Chapter or eBook
  • 1 Unit = 1 Article or 1 Chapter
  • Cancel anytime
Subscribe now

Buy Now

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

Similar content being viewed by others

References

  1. Jackson, D., Rinard, M.: Software analysis: A roadmap. In: Proceedings of the Conference on The Future of Software Engineering, pp. 133–145 (2000)

    Google Scholar 

  2. Binkley, D.: Source code analysis: A road map. In: Future of Software Engineering (FOSE 2007), Washington, DC, USA, pp. 104–119. IEEE Computer Society, Los Alamitos (2007)

    Chapter  Google Scholar 

  3. Brooks, F.: No silver bullet: Essence and accidents of software engineering. IEEE computer 20(4), 10–19 (1987)

    MathSciNet  Google Scholar 

  4. Garcia, M.: Formalizing the well-formedness rules of EJB3QL in UML+ OCL. In: Kühne, T. (ed.) MoDELS 2006. LNCS, vol. 4364, p. 66. Springer, Heidelberg (2007)

    Chapter  Google Scholar 

  5. Strembeck, M., Zdun, U.: An approach for the systematic development of domain-specific languages. Software: Practice and Experience 39(15) (2009)

    Google Scholar 

  6. Kuehne, T.: Matters of (meta-) modeling. Software and System Modeling 5(4), 369–385 (2006)

    Article  Google Scholar 

  7. Lindholm, T., Yellin, F.: The Java Virtual Machine Specification, 2nd edn. Addison-Wesley, Reading (1999)

    Google Scholar 

  8. ISO/IEC Geneva, Switzerland: Information technology – Common Language Infrastructure (CLI) Partitions I to VI. ISO/IEC 23271:2006(E) edn. (2006)

    Google Scholar 

  9. Eichberg, M., Sewe, A.: Encoding the java virtual machine’s instruction set. In: Proceedings of the Fifth Bytecode Workshop. Electronic Notes in Theoretical Computer Science. Elsevier, Amsterdam (to appear)

    Google Scholar 

  10. Kelly, S., Tolvanen, J.P.: Domain-Specific Modeling: Enabling Full Code Generation. John Wiley & Sons, Chichester (2008)

    Google Scholar 

  11. Monperrus, M., Jaozafy, F., Marchalot, G., Champeau, J., Hoeltzener, B., Jézéquel, J.M.: Model-driven simulation of a maritime surveillance system. In: Proceedings of the 4th European Conference on Model Driven Architecture Foundations and Applications (ECMDA 2008), vol. 13. Springer, Heidelberg (2008)

    Google Scholar 

  12. Pavon, J., Gomez-Sanz, J., Fuentes, R.: Model driven development of multi-agent systems. In: Proceedings of the European Conference on Model Driven Architecture - Foundations and Applications, ECMDA 2006 (2006)

    Google Scholar 

  13. Evans, D., Larochelle, D.: Improving security using extensible lightweight static analysis. IEEE Software (2002)

    Google Scholar 

  14. Rugaber, S., Stirewalt, K.: Model-driven reverse engineering. IEEE Software 21(4), 45–53 (2004)

    Article  Google Scholar 

  15. Strein, D., Lincke, R., Lundberg, J., Löwe, W.: An extensible meta-model for program analysis. IEEE Transactions on Software Engineering 33, 592–607 (2007)

    Article  Google Scholar 

  16. Störrle, H.: A prolog-based approach to representing and querying software engineering models. In: Proceedings of the Workshop on Visual Languages and Logic (VLL 2007), pp. 71–83 (2007)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2010 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Eichberg, M., Monperrus, M., Kloppenburg, S., Mezini, M. (2010). Model-Driven Engineering of Machine Executable Code. In: Kühne, T., Selic, B., Gervais, MP., Terrier, F. (eds) Modelling Foundations and Applications. ECMFA 2010. Lecture Notes in Computer Science, vol 6138. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-13595-8_10

Download citation

  • DOI: https://doi.org/10.1007/978-3-642-13595-8_10

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-642-13594-1

  • Online ISBN: 978-3-642-13595-8

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics