Open Access   Article Go Back

Functional Decomposition as an Anomaly in Object-Oriented Software Design

Brahmaleen K. Sidhu1

  1. Dept. of Computer Science and Engineering, Punjabi University, Patiala, India.

Section:Research Paper, Product Type: Journal Paper
Volume-12 , Issue-4 , Page no. 47-54, Apr-2024

CrossRef-DOI:   https://doi.org/10.26438/ijcse/v12i4.4754

Online published on Apr 30, 2024

Copyright © Brahmaleen K. Sidhu . This is an open access article distributed under the Creative Commons Attribution License, which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.

View this paper at   Google Scholar | DPI Digital Library

How to Cite this Paper

  • IEEE Citation
  • MLA Citation
  • APA Citation
  • BibTex Citation
  • RIS Citation

IEEE Style Citation: Brahmaleen K. Sidhu, “Functional Decomposition as an Anomaly in Object-Oriented Software Design,” International Journal of Computer Sciences and Engineering, Vol.12, Issue.4, pp.47-54, 2024.

MLA Style Citation: Brahmaleen K. Sidhu "Functional Decomposition as an Anomaly in Object-Oriented Software Design." International Journal of Computer Sciences and Engineering 12.4 (2024): 47-54.

APA Style Citation: Brahmaleen K. Sidhu, (2024). Functional Decomposition as an Anomaly in Object-Oriented Software Design. International Journal of Computer Sciences and Engineering, 12(4), 47-54.

BibTex Style Citation:
@article{Sidhu_2024,
author = {Brahmaleen K. Sidhu},
title = {Functional Decomposition as an Anomaly in Object-Oriented Software Design},
journal = {International Journal of Computer Sciences and Engineering},
issue_date = {4 2024},
volume = {12},
Issue = {4},
month = {4},
year = {2024},
issn = {2347-2693},
pages = {47-54},
url = {https://www.ijcseonline.org/full_paper_view.php?paper_id=5678},
doi = {https://doi.org/10.26438/ijcse/v12i4.4754}
publisher = {IJCSE, Indore, INDIA},
}

RIS Style Citation:
TY - JOUR
DO = {https://doi.org/10.26438/ijcse/v12i4.4754}
UR - https://www.ijcseonline.org/full_paper_view.php?paper_id=5678
TI - Functional Decomposition as an Anomaly in Object-Oriented Software Design
T2 - International Journal of Computer Sciences and Engineering
AU - Brahmaleen K. Sidhu
PY - 2024
DA - 2024/04/30
PB - IJCSE, Indore, INDIA
SP - 47-54
IS - 4
VL - 12
SN - 2347-2693
ER -

VIEWS PDF XML
26 31 downloads 10 downloads
  
  
           

Abstract

Software must evolve continuously and accept the changes imposed by the environment in order to stay relevant. As the software undergoes updates, the quality of its design degrades. Poor design further deteriorates the quality of software. In the traditional software development processes, quality is often measured at code level using metrics-based approaches. However, quality assessment at model level has various advantages over code level. UML models provide a higher level of abstraction allowing isolation of the core design problem from irrelevant coincidental problems, which typically interfere at code level. Problems uncovered at the design level can be improved directly in the model. Early quality assessment reduces maintenance costs and manages requirement volatility. This paper presents a design flaw detection approach based on machine learning for UML models of object-oriented software. It advances the proposition of a concise quality assurance procedure wherein the root cause of design defects is identified instead of a localized flaw detection and correction approach. The notion of functional decomposition is advanced as an anomalous design tendency as object-oriented software architecture based on functional decomposition compromises on major quality goals like comprehensibility, changeability and semantic consistency. A semi-supervised machine learning technique is used in an unsupervised mode to detect functional decomposition as an anomaly. The precision and recall of the proposed approach were found to be 0.8 each.

Key-Words / Index Term

Functional Decomposition, Machine Learning, Model Refactoring, Object-Oriented Design, Software Quality, UML Class Diagram

References

[1] J. Manyika, S. Ramaswamy, S. Khanna, A. Yaffe, H. Sarrazin, G. Pinkus and G. Sethupathy, "Digital America: A tale of the haves and have-mores," McKinsey & Company, December 2015.
[2] N. Gupta, H. Swinehart, J. Poulter and B. Abbabatulla, "Forecast Analysis: Enterprise Application Software, Worldwide, 4Q18 Update," 2019.
[3] J. Wong and K. Mann, "Application Development and Platforms Primer for 2019," 2019.
[4] M. Fowler, K. Beck, J. Brant, W. Opdyke and d. Roberts, Refactoring: Improving the Design of Existing Code, Addison-Wesley, 1999.
[5] M. . Y. Mhawish and M. Gupta, "Generating Code-Smell Prediction Rules Using Decision Tree Algorithm and Software Metrics," International Journal of Computer Sciences and Engineering, Vol.7, No.5, pp.41-48, 2019.
[6] M. Kaur and D. Kaur, "Improve the accuracy and time complexity of code smell detection using SVM and Decision Tree with Multi-label Classification," International Journal of Computer Sciences and Engineering, Vol.8, No.12, pp.66-69, 2020.
[7] T. Mens, G. Taentzer and D. Müller, "Challenges in Model Refactoring," in Proceedings of 1st Workshop on Refactoring Tools, University of Berlin, July, 2007.
[8] C. Bouhours, H. Leblanc and C. Percebois , "Bad smells in design and design patterns," Journal of Object Technology, May-June, Vol.8, No.3, pp.43-63, 2009.
[9] G. E. Boussaidi and H. Mili, "Understanding design patterns - what is the problem?," Software: Practice and Experience, December, Vol.42, No.12, pp.1495–1529, 2012.
[10] M. El-Sharqwi, H. Mahdi and I. El-Madah , "Pattern-Based Model Refactoring," in Proceedings of The 2010 International Conference on Computer Engineering and Systems (ICCES), Cairo, Egypt, 2010.
[11] R. France, S. Ghosh, E. Song and D.-K. Kim, "A metamodeling approach to pattern-based model refactoring," IEEE Software,Special Issue on Model Driven Development, vol. 20, no. 5, pp. 52-58, September/October 2003.
[12] S. R. Judson, R. B. France and D. L. Carver, "Supporting Rigorous Evolution of UML Models," in Proceedings of Ninth IEEE International Conference on Engineering Complex Computer Systems, 2004., 2004.
[13] D.-K. Kim, "Design pattern based model transformation with tool support," Software: Practice and Experience, April, Vol.45, No.4, pp.473-499, 2015.
[14] X.-B. Wang, Q.-Y. Wu, H.-M. Wang and D.-X. Shi, "Research and Implementation of Design Pattern-Oriented Model Transformation," in Proceedings of International Multi-Conference on Computing in the Global Information Technology (ICCGI 2007), Guadeloupe City, 2007.
[15] T. v. Enckevort, "Refactoring UML models: using openarchitectureware to measure uml model quality and perform pattern matching on UML models with OCL queries," in Proceedings of the 24th ACM SIGPLAN conference companion on Object oriented programming systems languages and application (OOPSLA), Orlando, Florida, USA, 2009.
[16] M. V. Kempen, D. Kourie, M. Chaudron and A. Boake, "Towards Proving Preservation of Behaviour of Refactoring of UML Models," in Proceedings of the 2005 annual research conference of the South African institute of computer scientists and information technologists on IT research in developing countries SAICSIT `05, 2005.
[17] U. Mansoor, M. Kessentini, M. Wimmer and K. Deb, "Multi-view refactoring of class and activity diagrams using a multi-objective evolutionary algorithm," Software Quality Journal, Vol.25, pp.473–501, 2017 .
[18] M. Mohamed, M. Romdhani and K. Ghedira, "M-REFACTOR: A New Approach and Tool for Model Refactoring," ARPN Journal of Systems and Software, July, Vol.1, No.4, pp.117-122, 2011.
[19] T. Ruhroth, H. Voigt and H. Wehrheim, "Measure, Diagnose, Refactor: A Formal Quality Cycle for Software Models," in Proceedings of 35th Euromicro Conference on Software Engineering and Advanced Applications (SEAA), Patras, Greece, 2009.
[20] T. Arendt and G. Taentzer, "Implementation Details of Smells and Refactorings for UML Models within the Eclipse Modeling Framework," Philipps Universität Marburg, Marburg, November 4, 2011.
[21] A. C. Jensen and B. H. Cheng, "On the use of genetic programming for automated refactoring and the introduction of design patterns," in Proceedings of the 12th annual conference on Genetic and Evolutionary Computation (GECCO), Portland, Oregon, USA, 2010.
[22] M. Akiyama, S. Hayashi, T. Kobayashi and M. Saeki, "Supporting Design Model Refactoring for Improving Class Responsibility Assignment," in Model Driven Engineering Languages and Systems (Proceedings of 14th International Conference, MODELS 2011, Wellington, New Zealand, October 16-21, 2011), vol. 6981 of Lecture Notes in Computer Science, J. Whittle, T. Clark and T. Kühne , Eds., Springer Berlin Heidelberg, pp.455-469, 2011.
[23] ?. Dobrzanski, "UML Model Refactoring- Support for Maintenance of Executable UML Models," Sweden, July 2005.
[24] M. Stolc and I. Polasek, "A visual based framework for the model refactoring techniques," in Proceedings of IEEE 8th International Symposium on Applied Machine Intelligence and Informatics (SAMI), Herlany, Slovakia, 2010.
[25] B. K. Sidhu, "Development of refactoring technique for architecture based evolution of object oriented software systems," Punjabi University, Patiala, 2019.
[26] R. S. Pressman, Software Engineering, A Practitioner`s Approach, 7th ed., New York: McGraw-Hill, 2010.
[27] B. K. Sidhu, K. Singh and N. Sharma, "A Catalogue of Model Smells and Refactoring Operations for Object-Oriented Software," in Second International Conference on Inventive Communication and Computational Technologies (ICICCT), Coimbatore, 2018.
[28] F. Y. Edgeworth, "On discordant observations," The London, Edinburgh, and Dublin Philosophical Magazine and Journal of Science, Vol.23, No.143, pp.364-375, 1887.
[29] O. Chapelle, B. Scholkopf and A. Zien, Semi-Supervised Learning, The MIT Press, 2006.
[30] S. R. Chidamber and C. F. Kemerer, "A Metrics Suite for Object Oriented Design," IEEE Transactions on Software Engineering, June, Vol.20, No.6, pp.476-493, 1994.
[31] J. Bansiya and C. G. Davis, "A hierarchical model for object-oriented design quality assessment," IEEE Transactions on Software Engineering, January, Vol.28, No.1, pp.4-17, 2002.
[32] B. Karasneh and M. R. Chaudron, "Img2UML: A System for Extracting UML Models from Images," in 39th Euromicro Conference on Software Engineering and Advanced Applications, Santander, Spain, 2013.