{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2026,6,10]],"date-time":"2026-06-10T16:55:06Z","timestamp":1781110506934,"version":"3.54.1"},"reference-count":22,"publisher":"IGI Global Scientific Publishing","issue":"1","content-domain":{"domain":[],"crossmark-restriction":false},"short-container-title":[],"published-print":{"date-parts":[[2013,1,1]]},"abstract":"<p>Database is a major component of many software systems. This paper proposes a novel graph called the attribute dependency graph to reveal the dependencies between attributes in a database application and also the programs involved. The authors propose an approach to automatically extract the attribute dependency graph out of a database application from its source code through inter-procedural static program analysis. The extracted information is a straightforward indicator that benefits the maintenance process, particularly for impact analysis on the modifications in a database application. A tool has been developed to implement the proposed approach for PHP-based database applications. Case studies have also been conducted to demonstrate the use of our approach.<\/p>","DOI":"10.4018\/jdm.2013010102","type":"journal-article","created":{"date-parts":[[2013,9,6]],"date-time":"2013-09-06T14:33:07Z","timestamp":1378477987000},"page":"20-35","source":"Crossref","is-referenced-by-count":4,"title":["Aiding Maintenance of Database Applications Through Extracting Attribute Dependency Graph"],"prefix":"10.4018","volume":"24","author":[{"given":"Kaiping","family":"Liu","sequence":"first","affiliation":[{"name":"School of Electrical and Electronic Engineering, Nanyang Technological University, Singapore"}],"role":[{"vocabulary":"crossref","role":"author"}]},{"given":"Hee Beng Kuan","family":"Tan","sequence":"additional","affiliation":[{"name":"School of Electrical and Electronic Engineering, Nanyang Technological University, Singapore"}],"role":[{"vocabulary":"crossref","role":"author"}]},{"given":"Xu","family":"Chen","sequence":"additional","affiliation":[{"name":"Institute of Computing Technology, Chinese Academy of Sciences, Beijing, China"}],"role":[{"vocabulary":"crossref","role":"author"}]}],"member":"2432","reference":[{"key":"jdm.2013010102-0","author":"S.Ambler","year":"2006","journal-title":"Relational databases 101: Looking at the whole picture"},{"key":"jdm.2013010102-1","unstructured":"Bohner, S. A. (1996). Software change impact analysis."},{"key":"jdm.2013010102-2","doi-asserted-by":"crossref","unstructured":"Castro, P., Melnik, S., & Adya, A. (2007). ADO. NET entity framework: Raising the level of abstraction in data programming. In Proceedings of the 2007 ACM SIGMOD International Conference on Management of Data.","DOI":"10.1145\/1247480.1247609"},{"key":"jdm.2013010102-3","doi-asserted-by":"publisher","DOI":"10.1145\/506812.506820"},{"key":"jdm.2013010102-4","doi-asserted-by":"crossref","unstructured":"Cleve, A., Henrard, J., & Hainaut, J.-L. (2006). Data reverse engineering using system dependency graphs. In Proceedings of the 13th Working Conference on Reverse Engineering, 2006 (WCRE'06).","DOI":"10.1109\/WCRE.2006.22"},{"key":"jdm.2013010102-5","doi-asserted-by":"crossref","unstructured":"Gardikiotis, S., Lazarou, V., & Malevris, N. (2007). An agent-based approach for the maintenance of database applications. In Proceedings of the 5th ACIS International Conference on Software Engineering Research, Management & Applications, 2007 (SERA 2007).","DOI":"10.1109\/SERA.2007.40"},{"key":"jdm.2013010102-6","doi-asserted-by":"publisher","DOI":"10.1007\/s11633-009-0109-4"},{"key":"jdm.2013010102-7","doi-asserted-by":"crossref","unstructured":"Gould, C., Su, Z., & Devanbu, P. (2004). Static checking of dynamically generated queries in database applications. In Proceedings of the 26th International Conference on Software Engineering, 2004 (ICSE 2004).","DOI":"10.1109\/ICSE.2004.1317486"},{"key":"jdm.2013010102-8","doi-asserted-by":"crossref","unstructured":"Henrard, J., & Hainaut, J.-L. (2001). Data dependency elicitation in database reverse engineering. In Proceedings of the Fifth European Conference on Software Maintenance and Reengineering, 2001.","DOI":"10.1109\/CSMR.2001.914963"},{"key":"jdm.2013010102-9","doi-asserted-by":"crossref","unstructured":"Jovanovic, N., Kruegel, C., & Kirda, E. (2006). Pixy: A static analysis tool for detecting web application vulnerabilities. In Proceedings of the 2006 IEEE Symposium on Security and Privacy.","DOI":"10.1109\/SP.2006.29"},{"key":"jdm.2013010102-10","doi-asserted-by":"crossref","unstructured":"Law, J., & Rothermel, G. (2003). Whole program path-based dynamic impact analysis. In Proceedings of the 25th International Conference on Software Engineering, 2003.","DOI":"10.1109\/ICSE.2003.1201210"},{"key":"jdm.2013010102-11","doi-asserted-by":"crossref","unstructured":"Liu, K., Tan, H. B. K., Chen, X., Zhang, H., & Padmanabhuni, B. M. (2011). Automated extraction of data lifecycle support from database applications.","DOI":"10.1109\/APSEC.2011.10"},{"key":"jdm.2013010102-12","doi-asserted-by":"crossref","unstructured":"Maule, A., Emmerich, W., & Rosenblum, D. (2008). Impact analysis of database schema changes. In Proceedings of the ACM\/IEEE 30th International Conference on Software Engineering, 2008 (ICSE'08).","DOI":"10.1145\/1368088.1368150"},{"key":"jdm.2013010102-13","doi-asserted-by":"crossref","unstructured":"Nagy, C., P\u00e1ntos, J., Gergely, T., & Besz\u00e9des, \u00c1. (2010). Towards a safe method for computing dependencies in database-intensive systems. In Proceedings of the 2010 14th European Conference on Software Maintenance and Reengineering (CSMR).","DOI":"10.1109\/CSMR.2010.29"},{"key":"jdm.2013010102-14","doi-asserted-by":"publisher","DOI":"10.1016\/j.infsof.2006.11.005"},{"key":"jdm.2013010102-15","doi-asserted-by":"publisher","DOI":"10.1109\/TKDE.2002.1019216"},{"key":"jdm.2013010102-16","doi-asserted-by":"publisher","DOI":"10.1109\/TKDE.2004.62"},{"key":"jdm.2013010102-17","doi-asserted-by":"publisher","DOI":"10.1016\/S0950-5849(03)00113-7"},{"key":"jdm.2013010102-18","doi-asserted-by":"publisher","DOI":"10.1145\/1571629.1571630"},{"key":"jdm.2013010102-19","doi-asserted-by":"crossref","unstructured":"Van Den Brink, H., Van Der Leek, R., & Visser, J. (2007). Quality assessment for embedded sql. In Proceedings of the Seventh IEEE International Working Conference on the Source Code Analysis and Manipulation, 2007 (SCAM 2007).","DOI":"10.1109\/SCAM.2007.23"},{"key":"jdm.2013010102-20","doi-asserted-by":"crossref","unstructured":"Van Deursen, A., & Kuipers, T. (1998). Rapid system understanding: Two COBOL case studies. In Proceedings of the 6th International Workshop on Program Comprehension, 1998 (IWPC'98).","DOI":"10.1109\/WPC.1998.693319"},{"key":"jdm.2013010102-21","doi-asserted-by":"publisher","DOI":"10.1016\/j.jss.2009.11.735"}],"container-title":["Journal of Database Management"],"original-title":[],"language":"ng","link":[{"URL":"https:\/\/www.igi-global.com\/viewtitle.aspx?TitleId=84067","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2022,6,1]],"date-time":"2022-06-01T21:58:56Z","timestamp":1654120736000},"score":1,"resource":{"primary":{"URL":"https:\/\/services.igi-global.com\/resolvedoi\/resolve.aspx?doi=10.4018\/jdm.2013010102"}},"subtitle":[""],"short-title":[],"issued":{"date-parts":[[2013,1,1]]},"references-count":22,"journal-issue":{"issue":"1","published-print":{"date-parts":[[2013,1]]}},"URL":"https:\/\/doi.org\/10.4018\/jdm.2013010102","relation":{},"ISSN":["1063-8016","1533-8010"],"issn-type":[{"value":"1063-8016","type":"print"},{"value":"1533-8010","type":"electronic"}],"subject":[],"published":{"date-parts":[[2013,1,1]]}}}