Constructing a Software Tool to Optimize Performance by Coupling Detection

Main Article Content

Tawfeeq Mokdad Tawfeeq

Abstract

Coupling relations reflect the interdependencies of software modules and can be used to assess a program's quality— Lower the coupling value will be, the higher the quality of the software will be. Coupling measures are crucial for determining the quality of object-oriented software, from design up to maintenance. Inside software engineering, quality attributes are realized non-functional requirements utilized to assess whether the software is of good quality or not, One of the quality attributes is Performance, which means the system can respond to various actions in a given time or how fast does it respond or execute. To calculate the total amount of time a program will require to run until completion use Time Complexity.


fig1.jpg


In this paper a Computer Aided Software Engineering Tool has been constructed which is called CDPI (Coupling Detection to Performance Improvement). It parse a software source code to extract information about its structure, components, and relationships that connect its parts. That leads to improving the software readability, understandability and for detects coupling among classes of Java software.The CDPI tool detects coupling in software source code and Show it in table to the software engineer, To start the process of decoupling by the software engineer for the candidate coupling.


The CDPI tool was tested by inputting software written in OOP by Java language. The CDPI Tool were evaluated by calculating the Time Complexity before and after decoupling. Results, source code after the decoupling is executed faster than before decoupling to produce the required output, which is an indication of Optimize Runtime Performance of the program.


Article Details

How to Cite
Tawfeeq, T. (2022). Constructing a Software Tool to Optimize Performance by Coupling Detection. Technium: Romanian Journal of Applied Sciences and Technology, 4(6), 84–98. https://doi.org/10.47577/technium.v4i6.7059
Section
Articles

References

Ajienka, N., Capiluppi, A. (2017). "Understanding the Interplay between the Logical and Structural Coupling of Software Classes". Journal of Systems and Software, 134, 120-137.

Altaie, A. (2022). "Designing and implementing a tool for measuring cohesion and coupling of Object-Oriented Systems". Turkish Journal of Computer and Mathematics Education, Vol.13 No.02 (2022), 368-375

Alzamil, Z.A. (2018). "Software Components' Coupling Detection for Software Reusability". International Journal of Advanced Computer Science and Applications(IJACSA),9(10).

Anwer, S., Adbellatif, A., Alshayeb, M., and Anjum, M. S., (2017). "Effect of coupling on software faults: An empirical study". International Conference on Communication, Computing and Digital Systems (C-CODE), 2017, pp. 211-215.

Apul, S. (2021). "Bimar Software Quality Portal: Experience and Lessons Learned" 15th Turkish National Software Engineering Symposium (UYMS), pp. 1-3.

Bidve, V.S., Sarasu, P., Pathan, S.K., & Pakle, G.K. (2019). "Web Based Tool for Measuring Coupling in Object-Oriented Software Modules". International Journal of Intelligent Engineering and Systems. Vol.12, No.4, 2019.

Bidve, V.S., Sarasu,P. (2016). "Tool for Measuring Coupling in Object- Oriented Java Software". International Journal of Engineering and Technology (IJET), Vol 8 No 2 Apr-May 2016.

Czibula, I., Onet-Marian, Z., Vida, R.F. (2019). "Automatic Algorithmic Complexity Determination Using Dynamic Program Analysis". In Proceedings of the 14th International Conference on Software Technologies (ICSOFT 2019). SCITEPRESS - Science and Technology Publications, Lda, Setubal, PRT, 186-193.

Fregnan, E., Baum, T., Palomba, F., Bacchelli, A. (2019). "A survey on software coupling relations and tools". Information and Software Technology. 2019, 107,159-178.

Gethers, M., Poshyvanyk, D.(2010). "Using Relational Topic Models to capture coupling among classes in object-oriented software systems". IEEE International Conference on Software Maintenance, 2010, pp. 1-10.

Goodrich, M.T. Tamassia, R. (2009). "Algorithm Design: Foundations, Analysis and Internet Examples". (2nd. ed.). John Wiley & Sons, Inc., USA.

Li, H., Wang, T., et al. (2021). "Mining key classes in java projects by examining a very small number of classes: a complex network-based approach". IEEE Access, vol. 9, pp. 28076-28088.

Miholca, D-L., Czibula, G., Tomescu, V. (2020). "COMET: A conceptual coupling based metrics suite for software defect prediction". Proc. Comput.Sci., vol. 176, pp. 31-40.

Miholca, D-L., Onet-Marian, Z. (2020). "An analysis of aggregated coupling's suitability for software defect prediction". 22nd International Symposium on Symbolic and Numeric Algorithms for Scientific Computing (SYNASC), 2020, pp. 141-148.

Paixao, M., Harman, M., Zhang, Y., Yu, Y. (2018). "An Empirical Study of Cohesion and Coupling: Balancing Optimization and Disruption". in IEEE Transactions on Evolutionary Computation, vol. 22, no. 3, pp. 394-414.

Papadopoulos L, Marantos C, et al. (2018). "Interrelations between software quality metrics, performance and energy consumption in embedded applications". In: Proceedings of the 21st International Workshop on Software and Compilers for Embedded Systems, Association for Computing Machinery, New York, NY, USA, SCOPES '18, p 62-65

Saeed, M.G., Paolone, G., Di Felice, P. (2022). "Hierarchical Evaluation of Software Projects: An Experiment". In: Arai, K. (eds) Proceedings of the Future Technologies Conference (FTC) 2021, Volume 3. FTC 2021. Lecture Notes in Networks and Systems, vol 360. Springer.

Saxena, V., Kumar, S. (2012). "Impact of Coupling and Cohesion in Object-Oriented Technology, Journal of Software Engineering and Applications". Vol. 5 No. 9, Pp. 671-676.

Saydemir, A., Simitcioglu, M. E., Sozer, H.(2021). "On the Use of Evolutionary Coupling for Software Architecture Recovery". 15th Turkish National Software Engineering Symposium (UYMS), 2021, pp. 1-6.

Seiffert, C., Khoshgoftaar, T. M., Van Hulse, J., Folleco, A. (2014). "An Empirical Study of the Classification Performance of Learners on Imbalanced and Noisy Software Quality Data," Information Sciences. Vol 259 (February, 2014), 571-595.

Singh, V., Bhattacherjee, V. (2013). "Identifying Coupling Metrics and Impact on Software Quality". International Journal of Engineering and Technology (IJET), Vol 5 No 4.

Sousa, B.L., Bigonha, M.A., Ferreira, K.A. (2019). "Analysis of Coupling Evolution on Open Source Systems". In Proceedings of the XIII Brazilian Symposium on Software Components, Architectures, and Reuse, Salvador, Brazil, 23-27 September 2019; pp. 23-32.

Vaz, R., Shah, V., Sawhney, A., Deolekar, R. (2017). "Automated Big-O analysis of algorithms" International Conference on Nascent Technologies in Engineering (ICNTE), pp. 1-6.

Woodside, M., Franks, G., Petriu, D. C. (2007). "The Future of Software Performance Engineering". Future of Software Engineering (FOSE '07), pp. 171-187.

Yu, L., Ramaswamy, S. (2011). "Examining the Relationships between Software Coupling and Software Performance: A Cross-platform Experiment". Journal of computing and information technology, 19 (1), 1-10.

Similar Articles

<< < 6 7 8 9 10 11 12 13 14 15 > >> 

You may also start an advanced similarity search for this article.