Skip to main content

MapIt: A Model Based Pattern Recovery Tool

  • Conference paper
Model-Based Methodologies for Pervasive and Embedded Software (MOMPES 2012)

Abstract

Design patterns provide a means to reuse proven solutions during development, but also to identify good practices during analysis. These are particularly relevant in complex and critical software, such as is the case of ubiquitous and pervasive systems. Model Driven Engineering (MDE) presents a solution for this problem, with the usage of high level models. As part of an effort to develop approaches to the migration of applications to mobile contexts, this paper reports on a tool that identifies design patterns in source code. Code is transformed into both platform specific and independent models, and from these design patterns are inferred. MapIt, the tool which implements these functionalities is described.

This work is funded by ERDF - European Regional Development Fund through the COMPETE Programme (operational programme for competitiveness) and by National Funds through the FCT Fundação para a Ciência e a Tecnologia (Portuguese Foundation for Science and Technology) within project FCOMP-01-0124-FEDER-015095.

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

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 49.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

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.

References

  1. Abadi, M., Feldman, Y.A.: Automatic recovery of statecharts from procedural code. In: Proceedings of the 27th IEEE/ACM International Conference on Automated Software Engineering, ASE 2012, pp. 238–241. ACM, New York (2012)

    Chapter  Google Scholar 

  2. Alexander, C., Silverstein, S.I.M.: A Pattern Language: Towns, Buildings, Construction. Oxford University Press (1977)

    Google Scholar 

  3. Buschmann, F., Meunier, R., Rohnert, H., Sommerlad, P.: Pattern-Oriented Software Architecture. John Wiley & Sons (1996)

    Google Scholar 

  4. Corbett, J., Dwyer, M., Hatcliff, J., Laubach, S., Pasareanu, C., Robby, Zheng, H.: Bandera: extracting finite-state models from Java source code. In: Proceedings of the 22nd International Conference on Software Engineering, pp. 439–448. ACM (2000)

    Google Scholar 

  5. Favre, L.: Model Driven Architecture for Reverse Engineering Technologies: Strategic Directions and System Evolution. IGI Global (2010)

    Google Scholar 

  6. Fowler, M.: Patterns of Enterprise Application Architecture. Addison-Wesley (2002)

    Google Scholar 

  7. Gamma, E., Helm, R., Johnson, R., Vlissides, J.: Design Patterns - Elements of Reusable Object-Oriented Software. Addison-Wesley (1995)

    Google Scholar 

  8. Guéhéneuc, Y.-G.: Un cadre pour la tra caabilité des motifs de conception. PhD thesis, Université de Nantes (2003)

    Google Scholar 

  9. Guéhéneuc, Y.-G., Albin-Amiot, H.: Recovering binary class relationships: putting icing on the UML cake. In: Proceedings of the 19th Annual ACM SIGPLAN Conference on Object-Oriented Programming, Systems, Languages, and Applications, OOPSLA 2004, pp. 301–314. ACM, New York (2004)

    Chapter  Google Scholar 

  10. Jinto, K., Limpiyakorn, Y.: Java code reviewer for verifying object-oriented design in class diagrams. In: 2010 The 2nd IEEE International Conference on Information Management and Engineering (ICIME), pp. 471–475. IEEE (2010)

    Google Scholar 

  11. Kleppe, A., Warmer, J., Bast, W.: MDA Explained - The Model Driven Architecture: Practice and Promise. Addison-Wesley (2003)

    Google Scholar 

  12. Kollman, R., Selonen, P., Stroulia, E., Systä, T., Zundorf, A.: A Study on the Current State of the Art in Tool-Supported UML-Based Static Reverse Engineering. In: Proceedings of the Ninth Working Conference on Reverse Engineering (WCRE 2002), pp. 22–32. IEEE (2002)

    Google Scholar 

  13. Mellor, S., Balcer, M.: Executable UML: A Foundation for Model-Driven Architecture. Addison-Wesley (2002)

    Google Scholar 

  14. Miller, J., Mukerji, J.: MDA Guide Version 1.0.1. Object Management Group (2003)

    Google Scholar 

  15. Moha, N., Guéhéneuc, Y.-G.: Ptidej and décor: identification of design patterns and design defects. In: Companion to the 22nd ACM SIGPLAN Conference on Object-Oriented Programming Systems and Applications Companion, OOPSLA 2007, pp. 868–869. ACM, New York (2007)

    Google Scholar 

  16. Pastor, O., Molina, J.C.: Model-Driven Architecture in Practice. Springer (2007)

    Google Scholar 

  17. Systä, T.: Static and Dynamic Reverse Engineering Techniques for Java Software Systems. University of Tampere (2000)

    Google Scholar 

  18. Truyen, F.: The Fast Guide to Model Driven Architecture - The Basics of Model Driven Architecture. Object Management Group (2006)

    Google Scholar 

  19. von Detten, M., Meyer, M., Travkin, D.: Reverse engineering with the reclipse tool suite. In: Proceedings of the 32nd ACM/IEEE International Conference on Software Engineering, pp. 299–300. ACM (2010)

    Google Scholar 

  20. Wuyts, R.: Declarative reasoning about the structure of object-oriented systems. In: Proceedings of the TOOLS USA 1998 Conference, pp. 112–124. IEEE (1998)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2013 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Couto, R., Nestor Ribeiro, A., Creissac Campos, J. (2013). MapIt: A Model Based Pattern Recovery Tool. In: Machado, R.J., Maciel, R.S.P., Rubin, J., Botterweck, G. (eds) Model-Based Methodologies for Pervasive and Embedded Software. MOMPES 2012. Lecture Notes in Computer Science, vol 7706. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-38209-3_2

Download citation

  • DOI: https://doi.org/10.1007/978-3-642-38209-3_2

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-642-38208-6

  • Online ISBN: 978-3-642-38209-3

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics