Impact of Dynamic Polymorphism on Quality of a System
DOI:
https://doi.org/10.46243/jstj.2020.v5.i2.269Keywords:
Polymorphism, quality, metric, reusabilityAbstract
Polymorphism has a great impact on the quality of a software .It is mainly of two types, compile time or static polymorphism based on method overloading and runtime or dynamic based on method overriding. If a class is highly polymorphic i.e. reusability of that class is high. If the class is less polymorphic then reusability of that class is low. There are only few metrics available in literature to find the polymorphism factor of a class. In this paper, we introduce a new metric to find polymorphism of a class at compile time and runtime and compare with the existing metric. The purposed metric is applied on 4 design patterns having different behaviour. Dynamic polymorphism is calculated with the help of purposed tool named DynaPoly implemented in AspectJ using aspect oriented programming in java. Eclipse platform is used to perform coding of tool using AspectJ After analysing the results, it is concluded that purposed metric plays a vital role to find reusability, hence quality of a system and gives better results than existing metrics.
References
prof. jubair j. al-ja'afer, “khaireddin m. sabri, metrics for objectoriented design(mood) to assess java programs,” king abdullah ii school of information 2004
Tobias Mayer,Tracy Hall, “Measuring OO system : A critical Analysis of Mood Metrics,” Software quality Journal 1999(Springer)
AmandeepKaur, Satwinder Singh, Dr.K.S.Kahlon, Dr.ParvinderS.Sandhu, “ Empirical Analysis of CK & Mood Metric Suit, ” International Journal of Inovation, Management and Technology, Vol.1No.5,2010. 0 0.5 1 1.5 2 2.5 3 3.5 P1 P2 P3 P4 POF SP DP www.jst.org.in 59 | Page
Kelvin H.T. Choi, Ewan Tempero, “ Dynamic Measurement of Polymorphism”, proceedings of the Thirtieth Australasian Computer Science Conference,Ballarat, Victoria, Australia,Vol.62,211-220, 2007
S Benlarbi, WL Melo, “Polymorphism measures for early risk prediction,” Proceedings of International Conference on Software Engineering,1999
https://moodmetrics.blogspot.com/2019/11/mood-metrics-suite.html
AspectJ<http://www.eclipse.org/aspectj>
https://o7planning.org/en/10257/java-aspect-oriented-programming-tutorial-with-aspectj
https://www.eclipse.org/aspectj/doc/next/progguide/printable.html
https://www.geeksforgeeks.org/inheritance-in-java/
https://www.geeksforgeeks.org/chain-responsibility-design-pattern/




