A Tool Development for Test Case Based Code Optimization in Java
Abstract
Java has been a popular programming language since its first stable release in 1996 because of its platform independence. Along with its popularity Java has been a focus of performance studies since its debut. Developments in hardware has unbelievably advanced the performance of the devices that run Java and thus software performance has lost its popularity until the release of Android OS and rapid increase in mobile device ownership Java language usage has increased once again. Mobile devices having far less system resources compared to personal computers had re-brought software performance studies into the spotlight. However mobile devices have gone into a fast-paced development like all other information technologies and this brought down the need for software performance studies, again. Also, worth mentioning that development of new Java Virtual Machine (JVM) versions has made the specialized compiler studies, which may threaten the platform independency, obsolete except for specific situations. Today it is not enough to consider code optimization solely in terms of performance improvement. Much broader vision is needed like software development processes such as Maintainability, code readability, improving cooperation in multi-programmer projects, software quality assurance.
In this study, white box testing approach is adopted as the software testing technique and static code analysis method is selected to ensure line coverage. A new software (JPA) has been developed based on a currently used testing tool (PMD) to improve the user experience.
Keywords
References
- Abdallah, M. M., & Al-Rifaee, M. M. (2017). Java Standards: A Comparative Study. International Journal of Computer Science and Software Engineering, 6 (6), 146-151.
- Aderhold, M., & Kochtchi, A. (2013). Tailoring pmd to secure coding. Tech. Rep.
- Ayewah, N., Pugh, W., Hovemeyer, D., Morgenthaler, J. D., & Penix, J. (2008). Using static analysis to find bugs. IEEE Software, 25 (5), 22-29.
- Bajwa, M. S., Agarwal, A. P., Gupta, N. (2016) Code optimization as a tool for testing software. 3rd International Conference on Computing for Sustainable Global Development, 961–967.
- Carpenter, B., Chang, Y. J., Fox, G., Leskiw, D., & Li, X. (1997). Experiments with ‘HP Java’. Concurrency: Practice and Experience, 9(6), 633-648.
- Galin, D. (2004). Software quality assurance: from theory to implementation. India: Pearson Education.
- Gosling, J., Joy, B., Steele, G., Bracha, G., Buckley, A., Smith, D. (2018) The Java(TM) Language Specification Java SE 11 Edition, Retrieved November 14, 2018, from https://docs.oracle.com/javase/specs/
- Hall, S. P. & Anderson, E. (2009) Operating systems for mobile computing. Journal of Computing Sciences in Colleges, 25 (2), 64-71.
Details
Primary Language
English
Subjects
Engineering
Journal Section
Research Article
Publication Date
March 31, 2020
Submission Date
September 7, 2019
Acceptance Date
March 20, 2020
Published in Issue
Year 2020 Volume: 4 Number: 1
