1 / 22

An Approach to Measure Java Code Quality in Reuse Environment

An Approach to Measure Java Code Quality in Reuse Environment. Master: Aline Timóteo Professor: Silvio Meira UFPE – Federal University of Pernambuco alt@cin.ufpe.br. Summary. Motivation An Approach to Measure Java Code Quality Metrics Background Quality Attributes x Metrics Current Stage

indra
Download Presentation

An Approach to Measure Java Code Quality in Reuse Environment

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. An Approach to Measure Java Code Quality in Reuse Environment Master: Aline Timóteo Professor: Silvio Meira UFPE – Federal University of Pernambuco alt@cin.ufpe.br http://www.rise.com.br

  2. Summary • Motivation • An Approach to Measure Java Code Quality • Metrics Background • Quality Attributes x Metrics • Current Stage • Conclusion http://www.rise.com.br

  3. Motivation http://www.rise.com.br

  4. Reuse • What is reuse? • [Basili, 1991; Frakes, 1994] [Kruger, 1992] Reuse is a process of creating software systems from existing software rather than building software system from scratch. http://www.rise.com.br

  5. Reuse Program • Griss Model [Griss, 1994] • Reuse leveis • Sametinger Model [Sametinger, 1997] • Domain Abalysis, pilot project, Institutionalization • Commons Points: • Reuse Evironment needs: • Assets Repository • Search and recovery tools • ... http://www.rise.com.br

  6. Search and Recovery Tools [Garcia, 2006] • CodeFinder, Agora, CLARiFi, InteliZap, Strathcona, Bart ... • Efficiency in search time • Communication with different kinds of repository • Support to all development cicle http://www.rise.com.br

  7. The Problem • How to analyze the quality of the assets stored in the repository? http://www.rise.com.br

  8. Work Proposal http://www.rise.com.br

  9. Work Proposal • Basic Asset Retrieval Tool (B.A.R.T.) [Santos, 2006] • Tool for search and recovery assets in version control systems • The mais objective of B.A.R.T. System is: • To minimize the time of analysis and implementation • Increased the quality of software products through the facilitated access to reusable devices http://www.rise.com.br

  10. Work Proposal bartFilter Code Quality Metrics + Quality Attributes http://www.rise.com.br

  11. bartFilter analysis assets according with metrics and quality attributes Work Proposal Customer request bartFilter The server return assets according with the customer request http://www.rise.com.br

  12. Tools Analysis http://www.rise.com.br

  13. Tools Analysis • Metodology • Step 1: Selecting software metrics and quality attributes • Step 2: Apply GQM [GQM, 1994] (Goal, Question, Metrics) in selected metrics and quality attributes • Step 3: Select metrics tools and a project • Step 4: Collects project metrics • Step 5: Results Analysis http://www.rise.com.br

  14. Step 1: Selecting Software Metrics and Quality Attributes http://www.rise.com.br

  15. Step 2: Apply GQM in Selected Metrics and Quality Attributes http://www.rise.com.br

  16. Step 3: Select Metrics Tools and a Project • Metrics • Jdepend • Javancss • Refactorit • JHawk Metrics • Coverlipse • Burn http://www.rise.com.br

  17. Step 4: Collect Project Metrics http://www.rise.com.br

  18. Step 5: Results Analysis • We identified some improvement poits: • The metrics relation can’t be 1 to n, the best way is this relation to be n to m. • Improve the results representation, study statistical forms for it. • Define clear selection criterions for metrics and quality attributes. http://www.rise.com.br

  19. Referências • [Alshayeb, 2003] Alshayeb, M., Li, M.; (2003), "An Empirical Validation of Object-Oriented Metrics in Two Different Iterative Software Processes", IEEETransactions on Software Engineering archive, Volume 29, page(s): 1043 - 1049. • [Basili, 1991] Basili, V.R., Rombach, H. D.; (1991), “Support for Comprehensive Reuse”, Software Engineering Journal, Special issue on software process and its support, Volume 06, page(s): 306-316. • [Basili, 1996] Basili, V. R., Briand, L. C., Melo, W. L.; (1996), “A Validation of Object-Oriented Design Metrics as Quality Indicators”, IEEE Transactions on Software Engineering, Volume 22, page(s): 751-761, Piscataway, NJ, USA. • [Briand, 1997] Briand, L., Devanbu, W., Melo W.; (1997), "An investigation into coupling measures for C++", 19th International Conference on Software Engineering, page(s): 412-421, Boston, USA. • [Bauer, 1993] D. Bauer, A Reusable Parts Center , IBM Systems Journal, Vol. 32, No. 04, June, 1993, pp. 620-624. • [Briand, 1999] Briand, L.C., Morasca, S., Basili, V.R.; (1999), "Defining and validating measures for object-based high-level design", Software Engineering, IEEE Transactions, Volume 25, page(s): 722-743. • [Brito, 1994] Brito, Abreu, F., Carapuça, R.; (1994), "Object-Oriented Software Engineering: Measuring and controlling the development process", 4th Interntional Conference on Software Quality, Mc Lean, VA, USA. • [Chatzigeorgiou, 2003] Chatzigeorgiou, A.; (2003), "Mathematical Assessment of Object-Oriented Design Quality", IEEE Transactions on Software Engineering, Volume 29, page(s): 1050-1053. • [Chidamber, 1994] Chidamber, S. R., Kemerer, C. F.; (1994), "A Metrics Suite for Object Oriented Design", IEEE Transactions on Software Engineering, Volume 20, page(s): 476-493, Piscataway, USA. • [Daskalantonakis, 1992] Daskalantonakis, M. K.; (1992), “A Pratical View of Software Measurement and Implementation Experiences Within Motorola”, IEEE Transactions on Software Engineering, Volume 18, page(s): 998 – 1010. http://www.rise.com.br

  20. Referências • [Emam, 2001] Emam, K. E., Benlarbi, S., Goel, N., Rai, S. N.; (2001), "The Confounding Effect of Class Size on the Validity of Object-Oriented Metrics", IEEE Transaction on Software Engineering, Volume 27, page(s): 630-650. • [Frakes, 1994] Frakes, W. B., Isoda, S.; (1994), “Success Factors of Systematic Reuse”, IEEE Software, Volume 11, page(s): 14-19. • [Garcia, 2006] Garcia, V. C., Lucrédio, D., Durão, F. A., Almeida, E. S. d., Fortes, R. P. d., Meira, S. R. d. L.; (2006), "From Specification to Experimentation: A Software Component Search Engine Architecture", the 9th International Symposium on Component-Based Software Engineering (CBSE), Lecture Notes in Computer Science, Springer-Verlag, Sweden. • [Gill, 1991] Gill, G. K., Kemerer, C. F.; (1991), "Cyclomatic Complexity Density and Software Maintenance Productivity", IEEE Transactions on Software Engineering, page(s):1284-1288. • [GQM, 1994] accessible in: https://www.goldpractices.com/practices/gqm/ • [Griss, 1994] Griss, M. L.; (1994), “Software reuse experience at Hewlett-Packard”, Proceedings of the 16th international conference on Software engineering, page(s): 270, Sorrento, Italy. • [Halstead, 1977] Halstead, M.H.; (1977), “Elements of Software Science”, page(s): 128, New York, USA. • [Harrison, 1998] Harrison, R., Counsell, S., Nithi, R.; (1998), "Coupling Metrics for Object-Oriented Design", 5th International Software Metrics Symposium Metrics, page(s): 150-156. • [Henry, 1981] Henry, S., Kafura, D.; (1981), "Software Structure Metrics Based on Information Flow", Software Engineering, IEEE Transactions, page(s): 510-518. • [Lind, 1989] Lind, R. K., Vairavan, K.; (1989), "An Experimental Investigation of Software Metrics and Their Relationship to Software Development Effort", IEEE Transactions on Software Engineering, page(s): 649-653, Piscataway, NJ, USA. • [Lorenz, 1994] Lorenz M. and Kidd J.; (1994), "Object-Oriented Software Metrics: A Practical Guide", Prentice Hall, Englewood Cliffs, New Jersey, USA. • [Mayer, 1999] Mayer, T., Hall, T.; (1999), "A Critical Analysis of Current OO Design Metrics", Software Quality Journal, Volume 8, page(s): 97-110. • [McCabe, 1976] McCabe, T. J.; (1976) “A Complexity Measure”. IEEE Transactions of Software Engineering, Volume SE-2, page(s): 308-320. http://www.rise.com.br

  21. Referências • [McClure, 1978] McClure, C. L.; (1978), "A Model for Program Complexity Analysis", 3rd International Conference on Software Engineering, page(s): 149-157, Piscataway, NJ, USA. • [Pressman, 1997] Pressman, R. S.; (1997), "Software engineering a practitioner's approach", 4th.ed, McGraw-Hill, page(s): 852, New York, USA. • [Kafura, 1987] Kafura, D., Reddy, G.; (1987), "The Use of Software Complexity Metrics in Software Maintenance", IEEE Transactions on Software Engineering archive, Volume 13 , page(s): 335-343, Piscataway, NJ, USA. • [Krueguer, 1992] Krueger, C. W.; (1992), “Software Reuse” , ACM Computing Surveys, Volume 24, page(s): 131-183. • [Sametinger, 1997] Sametinger, J.; (1997), “Software Engineering with Reusable Components”, Springer Verlag, page(s): 275. • [Santos, 2006] Santos, E. C. R.; Durão, F.A.; Martins, A. C.; Mendes, R.; Melo, C. A.; Melo, B. J. M.; Garcia, V. C.; Almeida, E. S.; Meira, S. R. L.; (2006), “Towards an Effective Context-Aware Proactive Asset Search and Retrieval Tool”, in the Sixth Workshop on Component-Based Development (WDBC), Recife, Brazil. • [Schneidewind, 1999] Schneidewind, N.F.; (1999), "Measuring and evaluating maintenance process using reliability, risk, and test metrics", Software Engineering, IEEE Transactions, Volume 25, page(s):769-781. • [Sommerville, 2004] Sommerville, I.; (2004), “Engenharia de Software”, Editora Addison Wesley, 6º Edição, São Paulo – SP. • [Subramanya, 2003] Subramanya, R., Krishnan, M. S.; (2003), "Empirical Analysis of CK Metrics for Object-Oriented Design Complexity: Implication for Software Defects", IEEE Transactions on Software Engineering, Volume 29, page(s): 297-310. • [VanDoren, 1997] VanDoren, E., Sciences, k., Springs, C.; (1997), "Cyclomatic Complexity", Web Publication, access in: http://www.sei.cmu.edu/str/descriptions/cyclomatic_body.html • [Woodfield, 1980] Woodfield, N.; (1980), "Enhanced effort estimation by extending basic programming models to include modularity factors", ACM publication. • [Yin, 1978] Yin, B. H., Winchester, J. W.; (1978), "The establishment and use of measures to evaluate the quality of software designs", Software quality assurance workshop on Functional and performance, page(s): 45-52, New York, NY, USA. http://www.rise.com.br

  22. Aline Timóteo C.E.S.A.R. - Recife Center for Advanced Studies and Systems UFPE – Federal University of Pernambuco alt.timoteo@gmail.com http://www.rise.com.br

More Related