Abstract
With the rapid growth of software size and complexity, how to understand and maintain a software system has become a great challenge in its life-cycle, especially from the global perspective. The paper mainly focuses on the comprehension problem of database-based software systems. A framework for visualizing and analyzing table dependency structure of a DB-based application is proposed, and its corresponding prototype tool named DBViewer is implemented. It mainly includes two main functions, i.e., table dependency visualization in database and structure feature metrics. The key methods of building this tool are proposed and some characters of table dependency relations in database are also found via metrics in this paper. Some experiments are performed on five DB-based software systems, and some preliminary rules have been found: (1) the degree distribution of table dependency graph roughly conforms to power law, (2) the average path length of the max connected subgraph is small, and (3) the clustering effect is not so evident and the coefficients are all less than 0.05 in the max connected sub-graph of all table dependency relations.
Keywords
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
Stasko, J. T., Domingue, J. B., Brown, M. H., Price, B. A.: Software Visualization, MIT Press (1998)
Kanellopoulos, Y., Tjortjis, C.: Data Mining Source Code to Facilitate Program Comprehension: Experiments on Clustering Data Retrieved from C++ Programs. In: Proc. of the 12th International Workshop on Program Comprehension, Bari, Italy, pp. 214-225. IEEE CS Press (2004)
Zaidman, A., Calders, T., Demeyer, S., Paredaens, J.: Applying Web Mining Techniques to Execution Traces to Support the Program Comprehension Process. In: Proc. of the 9th European Conference on Software Maintenance and Reengineering, Manchester, UK, pp. 134-142. IEEE CS Press, (2005)
Newman, M. E. J.: The Structure and Function of Complex Networks. SIAM Review 45, 167-256 (2003)
Mao, C.: DBViewer: A Tool for Visualizing and Measuring Dependency Relations between Tables in Database. In: Proc. of the 2009 World Congress on Software Engineering (WCSE 2009), Xiamen, China, pp. 13-17. IEEE CS Press (2009)
Koschke, R.: Software Visualization in Software Maintenance, Reverse Engineering, and Re-engineering: A Research Survey. Journal of Software Maintenance and Evolution: Research and Practice, 15, pp. 87-109, John Wiley & Sons (2003)
Tip, F.: A Survey of Program Slicing Techniques. Journal of Programming Languages, Vol.3, No. 3, pp. 121-189 (1995)
Together, Borland, 2009. http://www.borland.com/together
Fuggetta, A.: Software Process: A Roadmap. In: Proc. of the Conference on the Future of Software Engineering, Limerick, Ireland, pp. 25-34. ACM Press (2000)
Rubin, V., Günther, C. W., Aalst, W. M. P., Kindler, E., Dongen, B. F., Schäfer, W.: Process Mining Framework for Software Processes. In: Wang Q., Pfahl D., Raffo D. M. (eds.): Software Process Dynamics and Agility, International Conference on Software Process, LNCS, vol. 4470, pp. 169-181, Springer, Heidelberg (2007)
Souza, C. R. B., Quirk, S., Trainer, E., Redmiles, D.F.: Supporting Collaborative Software Development through the Visualization of Socio-Technical Dependencies. In: Proc. of the 2007 International ACM Conference on Supporting Group Work, pp. 147-156. ACM Press, New York (2007)
Conway, M.: How Do Committees Invent. Datamation, 14, pp. 28-31 (1968)
Amrit, C : Coordination in Software Development: The Problem of Task Allocation. ACM SIGSOFT Software Engineering Notes, vol. 30, no. 4, pp. 1-7, ACM Press (2005)
Amrit, C., Hillegersberg, J.: Matrix Based Problem Detection in the Application of Software Process Patterns. In: Proc. of the 9th International Conference on Enterprise Information Systems, Funchal, Madeira, Portugal, June 12-16, vol. 3, pp. 316-320 (2007)
Valetto G., Helander M., Ehrlich K., Chulani S., Wegman M., Williams C.: Using Software Repositories to Investigate Socio-technical Congruence in Development Projects. In: Proc. of the Fourth International Workshop on Mining Software Repositories, pp. 25-25. IEEE CS Press (2007)
Faloutsos, M., Faloutsos, P., Faloutsos, C.: On Power-law Relationships of the Internet Topology. ACM SIGCOMM Computer Communication Review, vol. 29, no. 4, pp. 251-262 (1999)
The DOT language, http://www.graphviz.org/doc/info/lang.html
Graphviz, http://www.graphviz.org
Bookstein, A.: Informetric Distributions, Part I: Unified Overview. Journal of the American Society for Information Science, 41, pp. 368-375 (1990)
Pastor-Satorras, R., Vespingnani, A.: Epidemic Spreading in Scale-free Networks. Physical Review Letters, vol.86, no. 4, pp. 3200-3203 (2001)
Acknowledgments
This work was supported in part by the National Natural Science Foundation of China (NSFC) under Grant No. 60803046, China Postdoctoral Science Foundation under Grant No.20070410946, the Science Foundation of Jiangxi Educational Committee under Grant No.GJJZ-2007-267, and the Youth Foundation of Jiangxi University of Finance and Economics. We are also grateful for the great help from Qiong Zhang, Chunxu Huang, Shengbiao Huang, Qiang Liu and Wenjia Ouyang.
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2009 Springer-Verlag US
About this paper
Cite this paper
Mao, C. (2009). Visualizing Table Dependency Relations to Reveal Network Characters in Database Applications. In: Huang, M., Nguyen, Q., Zhang, K. (eds) Visual Information Communication. Springer, Boston, MA. https://doi.org/10.1007/978-1-4419-0312-9_19
Download citation
DOI: https://doi.org/10.1007/978-1-4419-0312-9_19
Published:
Publisher Name: Springer, Boston, MA
Print ISBN: 978-1-4419-0311-2
Online ISBN: 978-1-4419-0312-9
eBook Packages: Computer ScienceComputer Science (R0)