S o u r c e C o d S o u r c e C o d e e
M e t r i c s T o M e t r i c s T o o l o l
for C / C++for C / C++Yatham Venkata Kiran ReddyYatham Venkata Kiran Reddy
Madhu Sudan Rao G.KMadhu Sudan Rao G.KSrivathsa M.PSrivathsa M.P
Varun BahlVarun Bahl
Presented by :
Visit us @ www.CodeEverywhere.Net
04/22/23 Dept. of Computer Science, SRSIT RAD 'E' Division - LRDE
2
Project Goals
Quantitative Measurements of Software Metrics
Analyze Complexity of Source CodeDecrease Redundancy in Source CodeReduce the time and effort spent on the
testing phase
04/22/23 Dept. of Computer Science, SRSIT RAD 'E' Division - LRDE
3
The Static Analyzer
The Scanner Prepares Tokens Keeps track of Line numbers Strips out White Space Deletes Comments
Table Management Hash Table Collision Management Operations performed on
Symbol Table
Input & Output .C / .CPP / .H file as Input .SAR / .CSV file as Output
The System consists of three main components which constitutes the Static Analyzer:
04/22/23 Dept. of Computer Science, SRSIT RAD 'E' Division - LRDE
4
Description
Data Flow Diagram of the Overall System
04/22/23 Dept. of Computer Science, SRSIT RAD 'E' Division - LRDE
5
Description
04/22/23 Dept. of Computer Science, SRSIT RAD 'E' Division - LRDE
6
Description
04/22/23 Dept. of Computer Science, SRSIT RAD 'E' Division - LRDE
7
Description
04/22/23 Dept. of Computer Science, SRSIT RAD 'E' Division - LRDE
8
Technology
Design and Implementation of a Lexical Analyzer / ScannerCan easily modify the scanner to suit the
requirementsIEEE Conventions & Standards followed
One of the most recognized standards by the IT industry.
IEEE: Institute of Electrical and Electronics Engineers
04/22/23 Dept. of Computer Science, SRSIT RAD 'E' Division - LRDE
9
Screen Shots of the Generated Report
Lines of Code
- Pure Comment Lines
- Blank Lines- Code Lines- Code
Comment Lines
04/22/23 Dept. of Computer Science, SRSIT RAD 'E' Division - LRDE
10
Screen Shots of the Generated Report
Count of Variables Used
Variable Counts
111
54
11
24
1
0 2 4 6
cur_line(4)cur_token(2)cur_token(3)
ii(2)jj(2)
buffer(4)cur_token(4)
v(1)size(2)
temp(4)
04/22/23 Dept. of Computer Science, SRSIT RAD 'E' Division - LRDE
11
Screen Shots of the Generated Report
Function wise details
04/22/23 Dept. of Computer Science, SRSIT RAD 'E' Division - LRDE
12
Screen Shots of the Generated Report
Halsteads Software Sciences
- Program Volume
- Program Length
- Ease of Reading or Writing
- Size of Program Vocabulary
Halstead's Measure
246.379796
419
58
145
3028
0 50 100 150 200 250 300
TOTAL NUMBER OF OPERATORS
TOTAL NUMBER OF OPERANDS
NUMBER OF DISTINCT OPERATORS
NUMBER OF DISTINCT OPERANDS
LENGTH OF THE PROGRAM
VOLUME OF THE PROGRAM
SIZE OF PROGRAM VOCABULARY
EASE OF READING OR WRITING
04/22/23 Dept. of Computer Science, SRSIT RAD 'E' Division - LRDE
13
Schedule
Project Milestones
May 31st – June 7th June 8th – June 18th
Requirements Specification
System Design
Detailed Design
June 19th – July 5th
Coding,Testing & Modification
July 6th – July 30th
04/22/23 Dept. of Computer Science, SRSIT RAD 'E' Division - LRDE
14
Related Documents
Software Requirements Specification Document
System Design DocumentDetailed Design DocumentFinal Project ReportUser Manual
04/22/23 Dept. of Computer Science, SRSIT RAD 'E' Division - LRDE
15
Competitive Analysis
Competitors Cantata , Cantata++
Strengths Greater Emphasis given to Static Analysis Detailed Static Analysis Report
Weaknesses Does not include Testing and Test Case
Generators
FOR MORE INFO... http://www.iplbath.com
T h a n k Y o u !
for your time Yatham Venkata Kiran Reddy Madhu Sudan Rao G.K Srivathsa M.P Varun Bahl
Project Guides : Justin Sagayaraj M,Scientist ,’D’,LRDE Dand Rakesh,Scientist ‘B’,LRDE Shailesh Chandra,HOD Comp Sc,SRSIT
Visit us @ www.CodeEverywhere.Net