Abstract
As the scale of software is getting large and complex, the development cost of software scales up to lots of man-months. The maintenance cost of complex software is also increasing and it is usually more than the development cost. Understanding the underlying logic and modifying the actual code consume most part of the maintenance. However, the first step, say the understanding of codes, is extremely hard for even professional developers especially when the code to modify is written by other programmers. Though several visualization methods, such as flowcharts and NS-charts, have been proposed up to now, it is still practically hard to adopt such methods in a real analysis of an existing code because the complexity of the code results in complex visualization results. The complexity of these results hinders the developers in drawing them directly or even in taking a look of them. This paper introduces VizMe, an automatic visualization tool generating a compact visualization. The key of the compact visualization is the adoption of the meta-tags, the annotations attributed to the code blocks. VizMe accepts the source code written in C, Java, or Scheme and produces the visual output including flowcharts, PADs (problem analysis diagrams), and pseudo codes.
Keywords
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
References
Banker, Rajiv D., et al.: Software complexity and maintenance costs. Commun. ACM. 36(11), 81–94 (1993)
Koskinen, J.: Software maintenance costs. Information Technology Research Institute, ELTIS-Project University of Jyväskylä (2003)
Nassi, I., Shneiderman, B.: Flowchart techniques for structured programming. ACM Sigplan Not. 8(8), 12–26 (1973)
Gilbreth, F.B., et al.: American society of mechanical engineers (1921)
Futamura, Y., et al.: Development of computer programs by problem analysis Diagram. In: Proceedings of the 5th International Conference on Software Engineering, pp. 325–332 (1981)
Cheon, J. Jo, K., Woo, G.: VizMe: an automatic visualization tool for source codes. In: 2014 IEEE International Conference on CIT (2014)
Adams, I.V., Norman, I., et al.: Revised 5 report on the algorithmic language scheme. ACM Sigplan Not. 33(9), 26–76 (1998)
TIOBE Programming Community Index. http://www.tiobe.com/
Kernighan, B.W., Ritchie, D.M.: The C programming language (1988)
Arnold, K., Gosling, J., Holmes, D.: The Java programming language (1996)
Abelson, et al.: Structure and interpretation of computer programs (1983)
CTAN: package algorithmicx. http://www.ctan.org/pkg/algorithmicx
A red-black search tree. http://www-cs.ccny.cuny.edu/~peter/dstest/rb_tree.c
Visustin v7. http://www.aivosto.com/
Program: C Program to Implement N Queen’s Problem using Backtracking. http://www.c4learn.com/c-programs/c-progran-to-implement-n-queens-problem.html
Acknowledgements
This work was supported by BK21PLUS, Creative Human Resource Development Program for IT Convergence.
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2019 Springer Nature Singapore Pte Ltd.
About this paper
Cite this paper
Cheon, J., Kang, D., Woo, G. (2019). VizMe: An Annotation-Based Program Visualization System Generating a Compact Visualization. In: Abawajy, J., Othman, M., Ghazali, R., Deris, M., Mahdin, H., Herawan, T. (eds) Proceedings of the International Conference on Data Engineering 2015 (DaEng-2015) . Lecture Notes in Electrical Engineering, vol 520. Springer, Singapore. https://doi.org/10.1007/978-981-13-1799-6_45
Download citation
DOI: https://doi.org/10.1007/978-981-13-1799-6_45
Published:
Publisher Name: Springer, Singapore
Print ISBN: 978-981-13-1797-2
Online ISBN: 978-981-13-1799-6
eBook Packages: Intelligent Technologies and RoboticsIntelligent Technologies and Robotics (R0)