IJITCS Vol. 7, No. 3, 8 Feb. 2015
Cover page and Table of Contents: PDF (size: 369KB)
Full Text (PDF, 369KB), PP.18-26
Views: 0 Downloads: 0
Aspect Oriented Programming (AOP), Aspect Oriented Software Development (AOSD), Aspect Oriented Software (AOS), Fuzzy Logic, Aspect-Oriented Metrics, Separation of Concerns (SoC), Software Testability
Testability is a property of software which introduces with the purpose of forecasting efforts need to test the programs. Software quality is the most important factor in the development of software, which can be depend on many quality attributes. The absence of testability is responsible for higher maintenance and testing effort. In this paper Fuzzy Logic is used to ascertain the relationship between the factors that affects the software testability. This paper presents the application of fuzzy logic the assessment of software testability. A new model is proposed using fuzzy inference system for tuning the performance of software testability. Aspect-oriented metrics are taken i.e. Separation of Concern (SoC), cohesion, size and coupling. These metrics are closely related to the factors i.e. Controllability, Observability, Built in Test Capability, Understandability and Complexity. These factors are independent to each other and used for accessing software testability. A Triangular Membership Function (TriMF) is applied on these factors which defined in Mamdani Fuzzy Inference System in MATLAB. In this paper, we have defined and evaluated factors combination which is used for the assessment of software testability for as well as aspect oriented software.
Pradeep Kumar Singh, Om Prakash Sangwan, Amar Pal Singh, Amrendra Pratap, "An Assessment of Software Testability using Fuzzy Logic Technique for Aspect-Oriented Software", International Journal of Information Technology and Computer Science(IJITCS), vol.7, no.3, pp.18-26, 2015. DOI:10.5815/ijitcs.2015.03.03
[1]Bruntink Magiel, Deursen Arie Van, “Predicting Class Testability using Object-Oriented Metrics”, Published in Proceedings 4th IEEE International Workshop on Source Code Analysis and Manipulation, pp. 136-145, Chicago, IL, US, September 2004.
[2]ISO 9126, International Organization for standardization.
[3]IEEE Standard Glossary of Software Engineering Terminology, IEEE, 1990.
[4]Mary Jean Harrold, “Testing: a Roadmap”, Published in Proceeding’s of the Conference on The Future of Software Engineering, pp. 61-72, Limerick, Ireland, 2000.
[5]Voas Jeffrey M., Miller Keith W., “Improving the Software Development Process using Testability Research”, at NASA-Langley Research Center, pp. 114-121, IEEE Software, 1992.
[6]Jungmayr Stefen, “Reviewing Software Artifacts for Testability”, at FernUniversität Hagen, Praktische Informatik III, Feithstrasse 142, D-58084 Hagen, EuroSTAR, Barcelona, Spain, 1999.
[7]SantAnna C., Garcia A., Chavez C., Lucena C., Staa A. von, “On the Reuse and Maintenance of Aspect Oriented Software: An Assessment Framework”, Published in Proceedings of XVII Brazilian Symposium on Software Engineering, PUC-Rio, Computer Science Department, TecComm, 2003.
[8]Kiczales G., Hilsdale E., Hugunin J., Kersten M., Palm J., Griswold W.G., “An Overview of AspectJ”. Published in Proceedings of the 15th European Conference on Object Oriented Programming, Springer, Heidelberg, Berlin, pp. 327–353, 2001.
[9]Santos R.P., Costa H.A.X., Parreira Júnior P.A., Amâncio A.F., Resende A.M.P., Werner C.M.L., “An Approach Based on Maintainability Criteria for Building Aspect-Oriented Software Implementation Model”, INFOCOMP Journal of Computer Science, Special Edition, pp. 11-20, 2009.
[10]Zhao Jianjun, “Measuring Coupling in Aspect Oriented Systems”, Published in Proceedings 10th International Software Metrics Symposium, Information Processing Society, Japan, 2004.
[11]Zhao Jianjun, Xu Baowen, “Measuring Aspect Cohesion”, Published in Proceedings of International Conference on Fundamental Approaches to Software Engineering, pp.54-68, Springer-Verlag, Barcelona, Spain, 2004.
[12]Ceccato Mariano, Tonella Paolo, “Measuring the Effects of Software Aspectization”, Published in WCRE: 1st Workshop on Aspect Reverse Engineering, 2004.
[13]Chidamber S.R., Kemerer C.F., “A Metrics Suite for Object Oriented Design”, Software Engineering, IEEE Transactions, Vol. 20, No. 6, 476–493, 1994.
[14]Zhang Charles, Jacobsen Hans-Arno, “Quantifying Aspects in Middleware Platforms in AOSD”, Published in Proceedings of the 2nd International Conference on Aspect Oriented Software Development, ACM Press, pp. 130–139, New York, NY, USA, 2003.
[15]Tsang Shiu Lun, Clarke Siobhán, Baniassad Elisa, “Object Metrics for Aspect Systems: Limiting Empirical Inference based on Modularity”, Technical report, Distributed Systems Group, Dublin, Ireland, 2000.
[16]Mulo Emmanuel, “Design for Testability in Software Systems”, Master’s Thesis, submitted to Delft University of Technology, Netherland, 2007.
[17]Wang Yingxu, “Design for Test and Software Testability”, University of Calgary, 2003.
[18]Pan Nankai, Song Eunjee, “An Aspect-oriented Testability Framework”, ACM, RACS’12, San Antonio, TX, USA, 2012.
[19]Bach James, “Heuristics of Software Testability”, Satisfice, Inc., Version 2.2, 2013.
[20]Basili V., Briand L., Melo W., “A Validation of Object-Oriented Design Metrics as Quality Indicators”, IEEE Transactions on Software Engineering, Vol. 22 No. 10, pp. 751-761, 1996.
[21]Khan R.A., Mustafa K., “Metric based Testability Model for Object-Oriented Design (MTMOOD)”, ACM SIGSOFT Software Engineering Notes, Vol. 34, No. 2, 2009.
[22]Shaheen Muhammad Rabee, Bousquet Lydie du, “Survey of Source Code Metrics for Evaluating Testability of Object-Oriented Systems”, ACM Transactions on Computational Logic, 2010.
[23]Nazir Mohd, Khan Raees A., “Software Design Testability Factors: A New Perspective”, Published in Proceedings of the 3rd National Conference on Computing for Nation Development, 2009.
[24]Abdullah, Srivastava Reena, Khan M.H., “Testability Estimation of Object Oriented Design: A Revisit”, IJARCCE, Vol. 2, Issue 8, 2013.
[25]Binder Robert V., “Design for testability in object-oriented systems,” Communications of the ACM, vol. 37, No. 9, pp. 87-101, 1994.
[26]Bruce W.N. Lo, Shi Haifeng, “A Preliminary Testability Model for Object-Oriented Software”, published in Proceeding of International Conference on Software Engineering, IEEE, Education Practice, pp. 330-337, 1998.
[27]Morris Stephen B., “Design Patterns in Java: The Observer”, Pearson Education, InformIT, 2007.
[28]Jungmayr Stefen, “Testability during Design”, Published in Proceedings of the GI Working Group Test, Analysis and Verification of Software, Softwaretechnik-Trends, Potsdam, pp. 10-11, 2002.
[29]Gao Jerry, Shih Ming-Chih, “A Component Testability Model for Verification and Measurement”, published in Proceedings of the 29th Annual International Computer Software and Applications Conference, IEEE Computer Society, pp. 211–218, 2005.
[30]Voas Jeffrey M., Miller Keith W., “Software Testability: The New Verification,” IEEE Software, vol. 12, pp. 17-28, 1995.
[31]Bache Richard, Mullerburg Monika, “Measures of Testability as a basis for Quality Assurance”, Software Engineering Journal, vol. 5, no.2, pp. 86-92, 1990.
[32]P.K. Singh, O.P. Sangwan, “Aspect Oriented Software Metrics Based Maintainability Assessment: Framework and Model”, published in proceeding's of Confluence-2013, The Next Generation Information Technology Submit, 26th -27th September, Amity University, Noida, India 2013.
[33]Bruntink Magiel, Deursen Arie van, “An Empirical Study into Class Testability,” Journal of Systems and Software, vol. 79, pp. 1219-32, 2006.
[34]Freedman Roy S., “Testability of Software Components”, IEEE Transactions on Software Engineering, vol. 17, no.6, pp.553-564, 1991.
[35]Boxall M.A.S., Araban S., “Interface Metrics for Reusability Analysis of Components”, Published in Proceedings of Australian Software Engineering Conference, pp. 40-46, Melbourne, Australia, 2004.
[36]P.K. Singh, O.P. Sangwan, Arun Sharma, “A Systematic Review on Fault Based Mutation Testing Techniques and Tools for Aspect-J Programs”, published in proceeding's of 3rd IEEE International Advance Computing Conference, IACC-2013 at AKGEC Ghaziabad, India, February 22-23, 2013.
[37]Piveta Eduardo Kessler, Moreira Ana, Pimenta Marcelo Soares, Araújo João, Guerreiro Pedro, Price R. Tom, “An empirical study of aspect-oriented metrics”, Journal of ELSEVIER, Science of Computer Programming 78, pp. 117–144, 2012.
[38]Malla Prakash, Gurung Bhupendra, “Adaptation of Software Testability Concept for Test Suite Generation”, Phd Thesis Submitted to School of Computing Blekinge Institute of Technology, SE-37179, Karlskrona, Sweden, 2012.
[39]Jungmayr Stefen, “Improving Testability of Object Oriented Software”, Dissertation.de-Verlag im Internet GmbH, Berlin, 2004.
[40]Bruntink Magiel, “Testability of Object-Oriented Systems: a Metrics-based Approach”, Master Thesis Submitted to University of Amsterdam, Software improvement group, 2003.
[41]Nazir Mohd, Khan Raees A., Mustafa Khurram, “A Metrics Based Model for Understandability Quantification”, Journal of Computing, volume 2, issue 4, 2010.
[42]Kumar Avadhesh, “Analysis and Design of Metrics for Aspect-Oriented Systems”, Phd Thesis Submitted to School of Mathematics and Computer Applications, Thapar University, Patiala, Punjab, India, 2010.
[43]Burrows Rachel, Ferrari Fabiano Cutigi, Garcia Alessandro, Taïani François, “An Empirical Evaluation of Coupling Metrics on Aspect-Oriented Programs”, ACM, WETSoM, Cape Town, South Africa, 2010.
[44]Saraiva Juliana, Barreiros Emanoel, Almeida Adauto, Lima Fl´avio, Alencar Aline, Lima Gustavo, Soares Sergio, Castor Fernando, “Aspect-Oriented Software Maintenance Metrics: A Systematic Mapping Study”, Published in Proceedings of the EASE - Published by the IET, 2012.
[45]Huang Rui, Li Mingyu, Li Zhang, “Research of Improving the Quality of the Object-Oriented System”, International Journal of Information and Education Technology, Vol. 3, No. 4, 2013.
[46]Aopmetrics project. http://aopmetrics.tigris.org/
[47]Coady Y., Kiczales G., “Back to the Future: A Retroactive Study of Aspect Evolution in Operating System Code”, Published in proceedings of the 2nd International Conference on Aspect Oriented Software Development, ACM Press, pp. 50–59, New York, NY,USA, 2003.
[48]Fenton N.E., Pfleeger S.L., “Software Metrics: A Rigorous and Practical Approach”, Published by Course Technology, 1998.
[49]Sivanandam, S.N., Sumathi, S., Deepa, S.N., “Introduction to Fuzzy Logic using MATLAB”, Springer, Heidel-berg, 2007.
[50]MacDonell S.G., Gray A.R., Calvert J.M., “Fuzzy Logic for Software Metric Practitioners and Researchers”, Published in Proceedings of the 6th International Conference on Neural Information Processing ICONIP, Perth, pp. 308-313, 1999.
[51]Ryder J., “Fuzzy Modeling of Software Effort Prediction”, Published in Proceedings of IEEE Information Technology Conference, pp. 53-56, Syracuse, New York, 1998.
[52]http://www.mathworks.in/help/fuzzy/building-systems-with-fuzzy-logic-toolbox-software.html (last accessed on 12/02/14).
[53]P.K. Singh, O. P. Sangwan, A. Pratap, A. P. Singh, An Analysis on Software Testability and Security in Context of Object and Aspect Oriented Software Development, International Journal of Security and Cybercrime, Romania, Vol. 3, Issue 1, pp. 17-28, 2014.