Supporting the adaptation of open-source database applications through extracting data lifecycles

Supporting the adaptation of open-source database applications through extracting data lifecycles

For access to this article, please select a purchase option:

Buy article PDF
(plus tax if applicable)
Buy Knowledge Pack
10 articles for £75.00
(plus taxes if applicable)

IET members benefit from discounts to all IET publications and free access to E&T Magazine. If you are an IET member, log in to your account and the discounts will automatically be applied.

Learn more about IET membership 

Recommend Title Publication to library

You must fill out fields marked with: *

Librarian details
Your details
Why are you recommending this title?
Select reason:
IET Software — Recommend this title to your library

Thank you

Your recommendation has been sent to your librarian.

The adaptation of open-source database applications is common in the industry. Most open-source database applications are incomplete. During adaptation, users usually have to implement additional data maintenance. Hence, the completeness of an application is an important concern for the adaptation as a key factor to indicate how much additional effort is required before using a system. From our study of database applications with complete functionalities, we observe that data in a database has common patterns of lifecycles. Anomaly in data lifecycles provides a good indicator on the completeness of database applications. In this paper, we propose a novel approach to automatically extract the data lifecycles out of the source code of database applications through inter-procedural static program analysis. This representative information can benefit the adaptation of database applications specifically for selection, maintenance and extension. We have developed a tool to implement the proposed approach for PHP (Hypertext Preprocessor)-based database applications. Case studies have shown that the proposed approach is useful in assisting adaptation and detecting faults of open-source database applications.


    1. 1)
      • 1. Jovanovic, N., Kruegel, C., Kirda, E.: ‘Pixy: A static analysis tool for detecting web application vulnerabilities’. Security and Privacy, 2006 IEEE Symp. IEEE, 2006, pp. 611.
    2. 2)
      • 2. Stamelos, I., Angelis, L., Oikonomou, A., Bleris, G.: ‘Code quality analysis in open source software development’, Inf. Syst. J., 2002, 12, (1), pp. 4360 (doi: 10.1046/j.1365-2575.2002.00117.x).
    3. 3)
      • 3. Polancic, G., Horvat, R., Rozman, T.: ‘Comparative assessment of open source software using easy accessible data’. Information Technology Interfaces, 2004. 26th Int. Conf. on. IEEE, 2004, pp. 673678.
    4. 4)
      • 4. Kawaguchi, S., Garg, P., Matsushita, M., Inoue, K.: ‘On automatic categorization of open source software’.  ThirdWorkshop on Open Source Software Engineering. Citeseer, 2003, p. 79.
    5. 5)
      • 5. Koschke, R.: ‘Software visualization in software maintenance, reverse engineering, and re-engineering: a research survey’, J. Softw. Maint., 2003, 15, (2), pp. 87109 (doi: 10.1002/smr.270).
    6. 6)
      • 6. Müller, H., Orgun, M., Tilley, S., Uhl, J.: ‘A reverse-engineering approach to subsystem structure identification’, J. Softw. Maint.: Res. Pract., 1993, 5, (4), pp. 181204 (doi: 10.1002/smr.4360050402).
    7. 7)
      • 7. Canfora, G., Di Penta, M., Cerulo, L.: ‘Achievements and challenges in software reverse engineering’, Commun. ACM, 2011, 54, (4), pp. 142151 (doi: 10.1145/1924421.1924451).
    8. 8)
      • 8. Canfora, G., Di Penta, M.: ‘New frontiers of reverse engineering’. 2007 Future of Software Engineering, 2007, pp. 326341, series FOSE ‘07.
    9. 9)
      • 9. She, S., , Lotufo, R., , Berger, T., , Wasowski, A., , Czarnecki, K.: ‘Reverse engineering feature models’. Software Engineering (ICSE), 2011 33rd Int. Conf. on IEEE, 2011, pp. 461470.
    10. 10)
      • 10. Premerlani, W.J., Blaha, M.R.: ‘An approach for reverse engineering of relational databases’. Reverse Engineering, 1993, Proc. Working Conf. on IEEE, 1993, pp. 151160.
    11. 11)
      • 11. Maatuk, A., Ali, M.A., Rossiter, N.: ‘Re-engineering relational databases: the way forward’. Proc. 2011 Int. Conf. on Intelligent Semantic Web-Services and Applications, ACM, 2011, p. 17.
    12. 12)
      • 12. Malpani, A., Bernstein, P., Melnik, S., Terwilliger, J.: ‘Reverse engineering models from databases to bootstrap application development’. 2010 IEEE 26th Int. Conf. on Data Engineering, March 2010, pp. 11771180.
    13. 13)
      • 13. Piattini, M., Calero, C., Genero, M.: ‘Table oriented metrics for relational databases’, Softw. Qual. J., 2001, 9, (2), pp. 7997 (doi: 10.1023/A:1016670717863).
    14. 14)
      • 14. Baroni, A., Calero, C., Brito e Abreu, F., Piattini, M.: ‘Object-relational database metrics formalization’. Quality Software, 2006. QSIC 2006. Sixth Int. Conf., 2006, pp. 3037.
    15. 15)
      • 15. Fu, X., Qian, K.: ‘Safeli: Sql injection scanner using symbolic execution’. Proc. 2008 Workshop on Testing, Analysis, and Verification of Web Services and Applications, ACM, 2008, pp. 3439.
    16. 16)
      • 16. Huang, Y., Yu, F., Hang, C., Tsai, C., Lee, D., Kuo, S.: ‘Securing web application code by static analysis and runtime protection’. Proc. 13th Int. Conf. on World Wide Web, ACM, 2004, pp. 4052.
    17. 17)
      • 17. Dasgupta, A., Narasayya, V., Syamala, M.: ‘A static analysis framework for database applications’. IEEE 25th Int. Conf. on Data Engineering, 2009. ICDE'09, IEEE, 2009, pp. 14031414.
    18. 18)
      • 18. Liu, K., Tan, H.B.K., Chen, X., Zhang, H., Padmanabhuni, B.: ‘Automated extraction of data lifecycle support from database applications’. Proc. 23rd Int. Conf. on Software Engineering and Knowledge Engineering (SEKE'2011), July 7–9, 2011, pp. 432437.
    19. 19)
      • 19. Liu, K., Tan, H.B.K.: ‘Automated insertion of exception handling for key and referential constraints’. 2012 19th Asia Pacific Software Engineering Conf. (APSEC), IEEE, 2011.
    20. 20)
      • 20. Lemaitre, J., Hainaut, J.: ‘Transformation-based framework for the evaluation and improvement of database schemas’. Proc. Adv. Inf. Syst. Eng., 2010, pp. 317331.
    21. 21)
      • 21. Lemaitre, J., Hainaut, J.: ‘Quality evaluation and improvement framework for database schemas-using defect taxonomies’. Proc. Adv. Inf. Syst. Eng., 2011, pp. 536550.

Related content

This is a required field
Please enter a valid email address