1 / 29

On a Literature/Tool Review on Software Metrics Tools

This review examines different software metrics tools and their characteristics, with a focus on platform and language independence, supported metrics, code and metrics history storing features, and related works in the field.

josehopkins
Télécharger la présentation

On a Literature/Tool Review on Software Metrics Tools

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. On a Literature/Tool Review on Software Metrics Tools Gordana Rakic

  2. Contents • Motivation • Goal • Criteria • Tools • Summary • Related works • Conclusion

  3. Motivation (1) • Earlier stated goals – to develop tool which • Is platform independent • Is programming language independent • Supports as much as possible metrics • Interprets the meaning of computed numerical results • Provides suggestion what typical actions should be taken in order to improve the software quality • Discourages cheating • Is sensitive to the existence of additional code

  4. Motivation (2)

  5. Contents • Motivation • Goal • Criteria • Tools • Summary • Related works • Conclusion

  6. Goal of the review To answer the question: “IS OUR PLAN GOOD ENOUGH???” With special attention to first and second phases and tool characteristics related to it

  7. Contents • Motivation • Goal • Criteria • Tools • Summary • Related works • Conclusion

  8. Criterions • Platform dependency • Programming language dependency • Supported metrics • History of code storing facility • History of metrics storing facility

  9. Contents • Motivation • Goal • Criteria • Tools • Summary • Related works • Conclusion

  10. Tools (1) Code Counter Pro (by GeroneSoft) • Runs on Windows Operating System • Language independent  • Few LOC metrics  • Code History – NO • Metrics history supported - .CSV, .XML, .HTML files SLOC (by David A. Wheeler) • similar but for Linux OS

  11. Tools (2) • Source Monitor (by Campwood Software) • Runs on Windows • 8 supported programming languages(C++, C#, C, VB, VB.NET, Java, Delphi, HTML) • 11 supported metrics(style, OO) • Code history – NO • Metrics history supported - .CSV, .XML, .HTML files

  12. Tools (3) • Understand (by SciTool) • Multiplatform tool – not completely platform independent • 9 programming languages supported(Ada, C++, C#, FORTRAN, Java, JOVIAL, Delphi/Pascal, and/or PL/M) • More than 65 metrics supported • Code history – NO • Metrics history supported - comma delimited text files

  13. Tools (4) • RSM - Resource Standard Metrics (by M Squared Technologies) • Platforms supported - Windows, Unix and Linux • 4 Programming Languages supported(C, C++, C# and Java)  • More than 100 metrics supported  • Code history – internal representation of code reports could be stored in file  • Metrics history – reports could be stored in .CSV, .XML, .HTML and other format files

  14. Tools (5) • Krakatau (by PowerSoftware) • Windows platform • Language independent*** • ~35 metrics • Code history – NO • Metrics history – Yes (.CSV, .XML, .HTML files) *** = almost is and could become independent

  15. Contents • Motivation • Goal • Criteria • Tools • Summary • Related works • Conclusion

  16. Summary (1)

  17. Summary (2) • These 6 tools represent current situation • Two categories of tools are identified • I - language independent tools counting only few simple metrics • II – tools those are counting numerous metrics but with restriction on supported language • Krakatau – partially bridges the gap between tool categories

  18. Summary (3) • New tool should be… • platform independent • programming language independent • able to count as many metrics as possible • able to store code history • able to store metrics history • …

  19. Contents • Motivation • Goal • Criteria • Tools • Summary • Related works • Conclusion

  20. Related work (1) • In this section • Current researches in software metrics tools field • Current researches in related fields • Current software metrics tools development projects and product characteristics

  21. Related work (2) • Code clone analysis • Several language independent tools • Source code representation by AST • Different code segment fragments compare algorithms

  22. Related work (3) • Changes analysis tool • C programming language • based on AST code representation • Static analysis tool (for student assignments) • JAVA programming language • Based on AST code representation • LANGUAGE DEPENDENT but useful works!!!

  23. Related work (4) • ATHENA – software certification tool based on metrics • Work published in 1989 • Written in C for LINUX • Based on • AST code representation • Different parsers for different languages • Language independent – but in that period • implemented for only 2 language • hypothesis about realization for all languages by writing grammars or parsers implementation BUT there are no information about further development!!!

  24. Related work (5) • Codesquale - metrics tool • Development in progress • Based on AST generated by ANTLR parser generator • Implemented in JAVA PL • Currently realized for (information from July 2007) • java programs • 1 metric – number of methods per class • Preferring to extend set of languages and metrics BUT there are no information about further development!!!

  25. Related work (5) • Summary • AST code representation resulted in language independency in related field • AST code representation could result in language independency in software metrics tools development • AST modifications may be needed

  26. Contents • Motivation • Goal • Criteria • Tools • Summary • Related works • Conclusion

  27. Conclusion (1) Goals • are well stated • could be reached by • platform independency • implementation in JAVA PL • programming language independency • code representation by adapted AST to be unique for all PLs • ability to count as many metrics as possible • code representation by adapted AST to be unique for different metrics • ability to store code history • storing AST code in file (XML) • ability to store metrics history • storing metrics values in file (XML)

  28. Conclusion (2) • AST adaptation and it’s characteristics improvement to become unique for all languages could be possible by • Parser generator usage • Modification of AST in grammar before parser generating • not different implementation for different languages!!!

  29. Thank you

More Related