Download presentation
Presentation is loading. Please wait.
Published byHarvey Lynch Modified over 9 years ago
1
Towards the better software metrics tool motivation and the first experiences Gordana Rakić Zoran Budimac
2
Contents Motivation Objective Starting ideas for gain the objective Preparation phase Future work
3
Motivation Systematic application of software metrics techniques can significantly improve the quality of a software product Although software metrics seems to be well-understood area of research and application, there are still a lot of open problems
4
Motivation The most important weaknesses of current techniques and tools: Many techniques and tools are appropriate for only one programming language or one type of programming languages Support of object-oriented metrics is still weak Many techniques/tools compute numerical results with no real interpretation of their meanings There also no hints and advices what typical actions should be taken in order to improve the software The technique/tool should discourage cheating Current techniques/tools are not sensitive to the existence of additional code Sometimes is not clear which specific software metric have to be applied to accomplish the specific goal.
5
Contents Motivation Objective Starting ideas for gain the objective Preparation phase Future work
6
Objective To produce software metrics tool which Will be applicable to “any” programming language Will be able to count “any” metric (even OO) or even combine metrics in order to gain higher measure quality Will interpret the meaning of computed numerical results Will also provide suggestion what typical actions should be taken in order to improve the software quality Will discourage cheating Will be sensitive to the existence of additional code
7
Contents Motivation Objective Starting ideas for gain the objective Preparation phase Future work
8
Starting ideas for gain the objective
9
Goal gaining strategy(1) Determine appropriate tree form great field for research Idea is to Investigate by comparable analysis of application of different metrics on one language application of one metric on different languages Join all results and construct suitable tree structure
10
Goal gaining strategy(2) Generate appropriate tree structure External tool should generate XML representation of tree (and source code, too) In XML manipulation it may be needed to enrich tree possibly by passing again through source code
11
Goal gaining strategy(3) Apply different algorithms… Another great field for research containing Software metrics and their combinations Cheating and additional code recognizer Heuristics …to generated tree structure in intention to Gain as precise measure as possible Provide useful information to user
12
External tool example – ANTLR(1) “a sophisticated parser generator you can use to implement language interpreters, compilers, and other translators” [1] Tool input: (language) grammar Tool output: (language) lexer and parser Interpreter interprets corresponding source code
13
External tool example – ANTLR(2) The lexical analyzer (lexer) breaks up the input stream into tokens. The parser feeds off this token stream and tries to recognize the sentence structure Abstract Syntax Tree (AST) is intermediate structure
14
ANTLR and tree structures Parse Tree (Concrete Syntax Tree) - represents the sequence of rule invocations used to match an input stream (Abstract) Abstract Syntax Tree - represents language in abstract form (Concrete) Abstract Syntax Tree - represents concrete source code contains only those nodes associated with input symbols and are, therefore, not parse trees
15
Parse Tree ws. (Concrete) AST
17
Contents Motivation Objective Starting ideas for gain the objective Preparation phase Future work
18
Preparation phase We are here now Investigation of alternative external tools This includes comparable analysis of the so generated trees and their representation Investigation of appropriate tree structure This includes a prior investigation of algorithms
19
Contents Motivation Objective Starting ideas for gain the objective Preparation phase Future work
20
Future work Investigation of alternative external tools Investigation of appropriate tree structure Real job
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.