SourceMiner - A Multi-perspective Software Visualization Environment

Glauco de F. Carneiro, Manoel Gomes de Mendonça

Abstract

In spite of the available resources provided by modern IDEs, program understanding remains as a very difficult and important task in software engineering. This paper presents a software visualization environment named SourceMiner. Implemented as an Eclipse plug-in to enhance software comprehension activities, SourceMiner is an extensible, interactive and coordinated multi-perspective environment. It is multi-perspective because it provides sets of views that allow programmers to look at the software from different points of view. It is coordinated because views are linked to each other, and consistently respond to the actions executed by the programmers on the environment. It is interactive in the sense that programmers can dynamically configure visual scenarios to better support the building of mental models. It is extensible because its architecture was designed to facilitate the inclusion of new views to the environment. This paper describes the principles behind the design of SourceMiner, and discusses how it has been used to support software comprehension activities such as the identification of code smells and the characterization of object-oriented software systems.

References

  1. Baldonado, M., Woodruff, A. Kuchinsky, A., 2000. Guidelines for Using Multiple Views in Information Visualization, In ACM AVI 2000, Italy, pp. 110-119.
  2. Ball, T and Eick, S., 1996. Software visualization in the large. Computer, 29(4):33-43, 1996.
  3. Becks, A., Seeling, C., 2004 SWAPit: A Multiple Views Paradigm for Exploring Associations of Texts and Structured Data. In AVI'2004, Italy.
  4. Callendar, C., 2012. Creole: Integrating Shrimp to the Eclipse IDE. Available at http://www. thechiselgroup.org/creole. Accessed in May.
  5. Card, S. K., Mackinlay, J. and Shneiderman, B., 1999. Readings in Information Visualization Using Vision to Think. San Francisco, CA, Morgan Kaufmann.
  6. Carneiro, G., Silva, M., Mara, L., Figueiredo, E., Sant'Anna, C., Garcia, A., and Mendonca, M., 2010. Identifying Code Smells with Multiple Concern Views. In proceedings of the 24th Brazilian Symposium on Software Engineering (SBES).
  7. Carneiro, G., Mendonça, M., 2013. SourceMiner. Technical Report. Available at http://www. sourceminer.org/screenshots.html.
  8. Demoiselle, F., 2013. Demoiselle Framework. Available at http: //demoiselle.sourceforge.net/.
  9. Diehl, S., 2007. Software Visualization: Visualizing the Structure, Behaviour, and Evolution of Software, 1st Edition. Springer.
  10. Eick, S.; Steffen, J.; Eric S., 1992. SeeSoft-a tool for visualizing line oriented software statistics. IEEE Transactions on Software Engineering, 18(11):957- 968, November.
  11. Fowler, M., 1999. Refactoring: Improving the Design of Existing Code. Addison Wesley.
  12. Graham, M. And Kennedy, J., 2008. Multiform Views of Multiple Trees. In CMV2008. London, UK.
  13. Greenwood, P., Bartolomei, T., Figueiredo, E., Dosea, M., Garcia, A., Cacho, N., Sant'Anna, C., Soares, S., Borba, P., Kulesza, U., Rashid, A.., 2007. On the Impact of Aspectual Decompositions on Design Stability: An Empirical Study. ECOOP, Germany.
  14. Heer, J., Shneiderman, B., 2012. Interactive Dynamics for Visual Analysis. Communications of the ACM, 55(4), pp. 45-54, April.
  15. Koschke, R., 2003. Software Visualization in Software maintenance, Reverse Engineering, and Reengineering: A research Survey. Journal of Software Maintenance and Evolution: Research and Practice.
  16. Lanza, M., Ducasse, S., 2003. Polymetric Views-A Lightweight Visual Approach to Reverse Engineering, IEEE Trans. Softw. Eng. 29, 9 (Sep.), 782-795.
  17. Lanza, M.; Marinescu, R., 2006. Object-Oriented Metrics in Practice - Using Software Metrics to Characterize, Evaluate, and Improve the Design of Object-Oriented Systems. Springer-Verlag.
  18. Lehman, M and Belady, L., 1985. Program Evolution: Processes of Software Change. London Academic Press, 1985.
  19. Lintern, R., Michaud, J., Storey, M-A and Wu, X., 2003. Plugging-in Visualization: Experiences Integrating a Visualization Tool with Eclipse. In Proceedings of SoftVis 7803, pages 47- 56. ACM Press.
  20. Malnati, J., 2012. X-Ray Open Source Software Visualization. Available at http://xray.inf.usi.ch/ xray.php. Accessed in May.
  21. Müller, H. A. and Klashinsky K., 2008. Rigi: A system for programming-in-the-large. In Proceedings of the 10th International Conference on Software Engineering, pp. 80-86. Singapore.
  22. Riel, A., 1996. Object-Oriented Design Heuristics. Addison-Wesley Professional, 1996.
  23. Robillard, M. and Murphy, G., 2007. Representing Concerns in Source Code. ACM Transactions on Software Engineering and Methodology, 16(1):1-38, February.
  24. Shneirderman, B., 1992. Tree Visualization with TreeMaps: A 2-D Space-Filling Approach. ACM Transactions on Graphics (ToG) 11, 1, 92-99.
  25. Shneiderman, B. and Plaisant, C., 2009. Designing the User Interface: Strategies for Effective HumanComputer Interaction, 5th ed. Addison Wesley, March.
  26. Storey, M.; Fracchia, F.and Muller, H., 1999. Cognitive design elements to support the construction of a mental model during software exploration. Journal of Systems and Software, vol. 44, no. 3, pp. 171-185, January.
  27. Storey, M. D., Müller, H. A., 1995. Manipulating and documenting software structures using SHriMP views, in: 11th IEEE International Conference on Software Maintenance, ICSM'95, pp. 275-284.
  28. Storey, M., 2006. Theories, tools and research methods in program comprehension: past, present and future. Software Quality Journal, 14(3):187-208.
  29. Teyseyre, A. R., and Campo, M. R., 2009. An Overview of 3D Software Visualization. IEEE Transactions on Visualization and Computer Graphics (TVCG) 15, 1, 87-105.
  30. Ware, C., 2004. Information visualization: perception for design. Morgan Kaufmann Publishers Inc., 2 edition, 2004.
  31. Wu, J., and M.-A. Storey., 2000. A Multi-perspective Software Visualization Environment. In Proceedings of CASCON'2000, November, pp. 41-50.
Download


Paper Citation


in Harvard Style

de F. Carneiro G. and Gomes de Mendonça M. (2013). SourceMiner - A Multi-perspective Software Visualization Environment . In Proceedings of the 15th International Conference on Enterprise Information Systems - Volume 2: ICEIS, ISBN 978-989-8565-60-0, pages 25-36. DOI: 10.5220/0004420400250036


in Bibtex Style

@conference{iceis13,
author={Glauco de F. Carneiro and Manoel Gomes de Mendonça},
title={SourceMiner - A Multi-perspective Software Visualization Environment},
booktitle={Proceedings of the 15th International Conference on Enterprise Information Systems - Volume 2: ICEIS,},
year={2013},
pages={25-36},
publisher={SciTePress},
organization={INSTICC},
doi={10.5220/0004420400250036},
isbn={978-989-8565-60-0},
}


in EndNote Style

TY - CONF
JO - Proceedings of the 15th International Conference on Enterprise Information Systems - Volume 2: ICEIS,
TI - SourceMiner - A Multi-perspective Software Visualization Environment
SN - 978-989-8565-60-0
AU - de F. Carneiro G.
AU - Gomes de Mendonça M.
PY - 2013
SP - 25
EP - 36
DO - 10.5220/0004420400250036