Skip to main content

Program and Aspect Metrics for MATLAB

  • Conference paper

Part of the book series: Lecture Notes in Computer Science ((LNTCS,volume 7336))

Abstract

In this paper we present the main concepts of a domain-specific aspect language for specifying cross-cutting concerns of MATLAB programs, together with a suite of metrics that is capable of assessing the overall advantage of introducing aspects in the development cycle of MATLAB software. We present the results of using our own suite to quantify the advantages of using aspect oriented programming, both in terms of programming effort and code quality. The results are promising and show a good potential for aspect oriented programming in MATLAB while our suite proves to be capable of analyzing the overall characteristics of MATLAB solutions and providing interesting results about them.

This work is funded by the ERDF through the Programme COMPETE and by the Portuguese Government through FCT - Foundation for Science and Technology, projects ref. PTDC/EIA/70271/2006 and PTDC/EIA-CCO/108995/2008. The first and third authors were also supported by FCT grants BI3-2011/PTDC/EIA/70271/2006 and SFRH/BPD/46987/2008, respectively.

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

Buying options

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   54.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

Learn about institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. MATLAB: version 7.10.0 (R2010a). The MathWorks Inc., Natick, Massachusetts (2010)

    Google Scholar 

  2. MathWorks: Front page, http://www.mathworks.com (accessed in February 2012)

  3. Halstead, M.H.: Elements of Software Science. Operating and programming systems series. Elsevier Science Inc., New York (1977)

    MATH  Google Scholar 

  4. Aslam, T., Doherty, J., Dubrau, A., Hendren, L.: Aspectmatlab: an aspect-oriented scientific programming language. In: Proceedings of the 9th International Conference on Aspect-Oriented Software Development (AOSD), pp. 181–192. ACM, New York (2010)

    Chapter  Google Scholar 

  5. MathWorks: R2012a documentation - fixed-point toolbox, http://www.mathworks.com/help/toolbox/fixedpoint/ref/quantizer.html (accessed in February 2012)

  6. Cardoso, J., Fernandes, J., Monteiro, M.: Adding aspect-oriented features to matlab. In: Workshop on Software Engineering Properties of Languages and Aspect Technologies (SPLAT! 2006) (2006)

    Google Scholar 

  7. Cardoso, J., Diniz, P., Monteiro, M.P., Fernandes, J.M., Saraiva, J.: A domainspecific aspect language for transforming MATLAB programs. In: Fifth Workshop on Domain-Specific Aspect Languages (DSAL) (March 2010)

    Google Scholar 

  8. Kiczales, G., Hilsdale, E., Hugunin, J., Kersten, M., Palm, J., Griswold, W.G.: An Overview of AspectJ. In: Lee, S.H. (ed.) ECOOP 2001. LNCS, vol. 2072, pp. 327–353. Springer, Heidelberg (2001)

    Chapter  Google Scholar 

  9. Peckhan, J., Lloyd, S.J.: Practicing Software Engineering in 21st century. IRM Press (2003)

    Google Scholar 

  10. Lopes, C.V.: D: A Language Framework for Distributed Programming. PhD thesis, College of Computer Science, Northeastern University (1997)

    Google Scholar 

  11. Sant’anna, C., Garcia, A., Chavez, C., Lucena, C., v. von Staa, A.: On the reuse and maintenance of aspect-oriented software: An assessment framework. In: Proceedings XVII Brazilian Symposium on Software Engineering (SBES) (2003)

    Google Scholar 

  12. Nobre, R., Cardoso, J.M.P., Diniz, P.C.: Leveraging type knowledge for efficient matlab to c translation. In: 15th Workshop on Compilers for Parallel Computing (CPC) (2010)

    Google Scholar 

  13. MathWorks: Matlab central - file exchange, http://www.mathworks.com/matlabcentral/fileexchange (accessed in February 2012)

  14. Devouassoux, J., Reynaud, S., Jonniaux, G., Ribeiro, R.A., Pais, T.C.: Hazard avoidance developments for planetary exploration. In: 7th International ESA Conference on Guidance, Navigation and Control Systems (2008)

    Google Scholar 

  15. Reynaud, S., Drieux, M., Bourdarias, C., Philippe, C., Pham, B.v., Astrium Space Transportation: Science driven autonomous navigation for safe planetary pin-point landing 1. Context, 1–10 (2009)

    Google Scholar 

  16. Pais, T., Ribeiro, R.A.: Contributions to dynamic multicriteria decision making models. In: Proceedings of the International Fuzzy Systems Association World Congress and European Society for Fuzzy logic and technology Conference (IFSA-EUSFLAT), pp. 719–724 (2009)

    Google Scholar 

  17. Parr, T.: The Definitive ANTLR Reference: Building Domain-Specific Languages, 1st edn. Pragmatic Programmers. Pragmatic Bookshelf (2007)

    Google Scholar 

  18. Visser, J., Saraiva, J.: Tutorial on strategic programming across programming paradigms. In: 8th Brazilian Symposium on Programming Languages, SBLP (2004)

    Google Scholar 

  19. Balland, E., Moreau, P.E., Reilles, A.: Rewriting strategies in java. Electron. Notes Theor. Comput. Sci. 219, 97–111 (2008)

    Article  Google Scholar 

  20. Visser, E.: Program Transformation with Stratego/XT: Rules, Strategies, Tools, and Systems in Strategoxt-0.9. In: Lengauer, C., Batory, D., Blum, A., Vetta, A. (eds.) Domain-Specific Program Generation. LNCS, vol. 3016, pp. 216–238. Springer, Heidelberg (2004)

    Chapter  Google Scholar 

  21. Balland, E., Brauner, P., Kopetz, R., Moreau, P.-E., Reilles, A.: Tom: Piggybacking Rewriting on Java. In: Baader, F. (ed.) RTA 2007. LNCS, vol. 4533, pp. 36–47. Springer, Heidelberg (2007)

    Chapter  Google Scholar 

  22. Knuth, D.E.: Semantics of Context-free Languages. Mathematical Systems Theory 2(2), 127–145 (1968); Correction: Mathematical Systems Theory 5(1), 95–96 (March 1971)

    Google Scholar 

  23. Saraiva, J., Swierstra, D.: Generating Spreadsheet-Like Tools from Strong Attribute Grammars. In: Pfenning, F., Smaradakis, Y. (eds.) GPCE 2003. LNCS, vol. 2830, pp. 307–323. Springer, Heidelberg (2003)

    Chapter  Google Scholar 

  24. Kuiper, M., Saraiva, J.: Lrc - A Generator for Incremental Language-Oriented Tools. In: Koskimies, K. (ed.) CC 1998. LNCS, vol. 1383, pp. 298–301. Springer, Heidelberg (1998)

    Chapter  Google Scholar 

  25. Fernandes, J.P., Pardo, A., Saraiva, J.: A shortcut fusion rule for circular program calculation. In: ACM SIGPLAN Haskell Workshop, Haskell 2007, pp. 95–106. ACM, New York (2007)

    Chapter  Google Scholar 

  26. Pardo, A., Fernandes, J.P., Saraiva, J.: Shortcut fusion rules for the derivation of circular and higher-order programs. In: Higher-Order and Symbolic Computation, pp. 1–35. Springer (2011)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2012 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Martins, P., Lopes, P., Fernandes, J.P., Saraiva, J., Cardoso, J.M.P. (2012). Program and Aspect Metrics for MATLAB . In: Murgante, B., et al. Computational Science and Its Applications – ICCSA 2012. ICCSA 2012. Lecture Notes in Computer Science, vol 7336. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-31128-4_16

Download citation

  • DOI: https://doi.org/10.1007/978-3-642-31128-4_16

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-642-31127-7

  • Online ISBN: 978-3-642-31128-4

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics