SlideShare a Scribd company logo
1 of 18
Mapping and Visualization of
Source Code: A Survey
Nakul Sharma
Prasanth Yalla
Computer Science and Engineering Department,
Koneru Laxmiah Education Foundation,
Greenfields, Vijayawada
Abstract
This paper summarizes various states of art
literature in the field of mapping and visualizations
in a programming language. The main focus is the
design and analysis phase of Software Development
Life Cycle. Mapping and visualization in software
artifact is essential component for better
understanding of the software. It also helps
developers and maintenance professionals to
visualize the effect of changes conducted in source
code. In this work, a summary of literature review
in of major tools developed for visualization and
mapping of source code is provided.
Introduction
In this work, the following tools are being examined which are made in respect to
software visualization:-
1. Kieker [1]
2. Octobubbles [2]
3. Umple [3]
4. Reprograms [4]
5. ClonEvol [5]
6. CVSscan [6]
7. Revision Tower [7]
8. 3-DSoftVis [16]
9. History Slicing [8]
10. RelVis [9]
11. Chronia [10]
12. Spectographs [11]
13. Evolution radar [12]
14. CodeCity [13]
Necessity of Source Code Visualization
• The visualizations can help analyst, developer and
maintenance engineer in the following ways:
• Advantages to the developer include:
- Ability to visualize the changes done on source code.
- Ability to check relevant linkage between the design
and source code developed.
- Visual inspection of large software projects helps in
better understanding
Necessity of Source Code Visualization
• Advantages to the Software Maintenance: Software:
• Software maintainers are tasked with introducing
changeability through Software Configuration
Management (SCM). This change is done by studying
the end user's requirements. Hence, software
maintenance work involves the knowledge
• of analysis, design, coding, and testing as well. A visual
inspection of source code can aid in a quick
understanding of how software changes can cause
effects in different phases of the Software
Development Life Cycle (SDLC).
Steps In SCA
Literature Review
• C/C++/Java Related Visualization Tool
– ClonEval
– Kieker
– 3DSoftVis
• General Visualization Tools
– Chronos
– CVScan
– Revision Towers
– Code City
– Umple
– Reprograms
– Evolution metrics
– Evolution Radar
Reconstruction of source code from
the visualization
Source code and Its corresponding
UML class diagram
Observation From Literature Review
There were the following findings from the literature review
undertaken:
1. In a cloud-based environment, there were no specific
visualization tools developed focusing on larger project source-files.
2. Many object-oriented programming languages such as small talk do
not have any source code visualization tool.
3. In the source code visualization’s developed, the architecture of the
system is not recovered.
4. The solution domain is only addressed in the source code
visualizations which is not merged with the problem domain analysis.
5. The source code visualization’s developed were either
semi-automated completely automated.
Summary Of Tools Developed For
Different Languages For Software
VisualizationReference
No. Source Code
Language
Name of Tool
Developed
Research Tools
used Work Done
Year of
Publication
1 Java,.Net, Cobol Kieker
Java Programming
Language, Web
based GUI
Provides a framework which helps to oversee and
analyze the runtime behavior of system. Kieker is
currently deployed in multiple domains of
Software
Engineering. [18].
2012
2 UML Models Octobubbles Not Mentioned
Provides a multi-dimensional view interactive
environment for parallel visualization and
synchronization of software models 2018
5 C, C++, Java ClonEvol C,C++,Java ClonEval takes information from got from software
versioning
2013
15 Matlab/Octave None
Mentioned
Knowledge
Discovery Meta-
model
The authors generate KDM instances which are
fed as input for further processing and analysis. 2018
3
General purpose
programming
language
for visualization
Umple
Programming
language
Umple is a language which integrates modeling
and implementation. 2016
4
Repository based
projects in any
programming
language
Reprograms
Metric based
visualization
model
Tool for checking the differences and similarity of
software projects. 2016
16 Not mentioned 3DSoftVis
Java, JavaScript,
webserver,VRMLJ
D BC, RMI
Tool for visualizing the software’s release
history as it get changed across timelines 2000
Summary Of Tools Developed For
Different Languages For Software
Visualization
9 Not mentioned RelVis Kiviat Graphs
The tool allows studying the summary
of released history
of the source codes. This aids in visual
inspection across different commits.
2005
6 Not Mentioned CVSscan Not mentioned Line based approach for changes across
different Versions
2005
7 Not Mentioned Revision
Towers
Not Mentioned Creates a visualization across different
versions of software’s 2002
8 Not Mentioned Code City Small Talk,
Eclipse IDE
Code city is Eclipse based plugin which
makes use of small talk
2011
9 Not Mentioned Chronos Online tool Develops a tool named chronos for
showing
implementation
2012
11 Not Mentioned
Evolution
Spectrograph
s
Not mentioned
a visualization mechanism using
property based measurements for the
components of source code
2004
12
Mozilla
repository source
code
Evolution
Radar
Not
mentioned
Allows visual representation of the
given code at both document level as
well as module level logical coupling.
The coupling at various levels are
shown by the tool
2006
Advantages And Disadvantages Of
Software Visualization Tools Developed
Reference
No.
Source Code
Language
Name of Tool
Developed
Advantages of The Tool Disadvantage of The Tool
1, 18 Java,.Net, Cobol Kieker Allows the user to monitor the run-time behavior of
distributed systems.
1, 18
2 UML Models Octobubbles Solves the problem of program comprehension and
facilitates software navigation
2
5 C, C++, Java ClonEvol ClonEvol provides visual representation of software
across
different versions.
The scope-oriented view could
provide better representation
6 Not Mentioned CVSscan Provides a visual tool for inspecting contributions of
developers, statement by statement.
Not Mentioned
7 Not Mentioned
Revision
Towers
Provides an interface for the user to see the current
working
areas of the project, the change frequency and how
work are shared in a project.
The tool did not have any link
with the version-control
systems.
8 Not Mentioned Code City
Code City facilitates reduced task completion time and
correctness of the task performed.
Code city did not perform
better in comparison to Eclipse
and Excel
tools combined together.
9 Not Mentioned Chronos
The developer gets benefited as deelopers had study
reduced information to get to results. The accuracy of
the
developers results also increased for software
maintenance.
None Mentioned
3
General purpose
programming
language
for visualization
Umple
1. The tool is more useful to developers due to its
textual coding ability
Umple is restricted to English
natural language
4
Repository based
projects in any
programming
language
Reprograms
Tool provides user with interface to filter out
software projects and make more rational decisions
for evaluations.
None Mentioned
Advantages And Disadvantages Of
Software Visualization Tools
Developed
16 Not mentioned 3DSoftVis Tool for visual representation of release history of
the project. None mentioned
9 Not mentioned RelVis Tool provides visualization of of graphical
representation of
source code extending up to n releases.
3D Kivit diagrams are not
drawn
and are part of future scope.
11 Not Mentioned Evolution
Spectrographs
The tool highlights the changes across software
releases.
None Mentioned
12
Mozilla repository
source code
Evolution
Radar
Tools facilitates visual representation at document
and module level. The tool also does analysis at
different level of logical coupling between objects at
varying granularity.
Integration with different web
based tools.
ARTIFACTS RELATED TO SOURCE-CODE
OF A PROJECT
Sr.
No.
Type of Document Artifact of SDLC
Phase Usage Usage In SCA
Analysis
1 Dynamic Link
Library (DLL)
Coding Use in proving function
calls
Yes
2 Software Requirement
Specification (SRS) Analysis Useful in providing requirement as official
document between clients
Yes
3 Software Design
Specification
(SDS)
Design Useful in providing Design level specification of the
software being developed
Yes
4 Log Files General Create log of any activity Yes*
5 User Manual Deployment Helps in user’s day-to-day
usage of software being developed
No
6 Meeting Records General For creating proof of points discussed in meeting Yes*
7 Temp files General For storing temporary information Yes*
* depends on the relation with the source code being fed as input
Recommendations On The Literature
Review
• . Authors propose that NLP and AI technologies (NLP
and ML) can aid in better software visualization. Source
Code consists of text in-form of the developer’s
comments in the source-code files in addition to the
programming language statements.
• The programming language statements can be
understood by creating a parallel lookup dictionary or
be learnt to a machine using ML/DL techniques.
• The existing tools in SCA focus on mainly the source
code as an input. The developers of such tool need to
adopt a more holistic approach while developing these
SCA tools.
Conclusion
• This is a literature review regarding existing
software visualization tools developed in SCA.
The literature review is done on software
visualization and its related fields. The
literature contains various tools for providing
visualization to the software developer and
maintenance engineers. There has been more
work focused on software visualization with
more traditional languages such as C, C++,
java.
Citation
• Nakul Sharma, Prasanth Yalla, Mapping and
Visualization of Source Code: A Survey, DOI
10.5013/IJSSST.a.21.04.03, 3.1, ISSN: 1473-
804x online, 1473-8031 print, Vol 21, No-3.
(https://ijssst.info/Vol-21/No-4/paper3.pdf)

More Related Content

What's hot

The recommendations system for source code components retrieval
The recommendations system for source code components retrievalThe recommendations system for source code components retrieval
The recommendations system for source code components retrievalAYESHA JAVED
 
A New Metric for Code Readability
A New Metric for Code ReadabilityA New Metric for Code Readability
A New Metric for Code ReadabilityIOSR Journals
 
A Conceptual Dependency Graph Based Keyword Extraction Model for Source Code...
 A Conceptual Dependency Graph Based Keyword Extraction Model for Source Code... A Conceptual Dependency Graph Based Keyword Extraction Model for Source Code...
A Conceptual Dependency Graph Based Keyword Extraction Model for Source Code...Nakul Sharma
 
Class Diagram Extraction from Textual Requirements Using NLP Techniques
Class Diagram Extraction from Textual Requirements Using NLP TechniquesClass Diagram Extraction from Textual Requirements Using NLP Techniques
Class Diagram Extraction from Textual Requirements Using NLP Techniquesiosrjce
 
Revisiting Code Ownership and Its Relationship with Software Quality in the S...
Revisiting Code Ownership and Its Relationship with Software Quality in the S...Revisiting Code Ownership and Its Relationship with Software Quality in the S...
Revisiting Code Ownership and Its Relationship with Software Quality in the S...The University of Adelaide
 
Data collection for software defect prediction
Data collection for software defect predictionData collection for software defect prediction
Data collection for software defect predictionAmmAr mobark
 
A Multi-Objective Refactoring Approach to Introduce Design Patterns and Fix A...
A Multi-Objective Refactoring Approach to Introduce Design Patterns and Fix A...A Multi-Objective Refactoring Approach to Introduce Design Patterns and Fix A...
A Multi-Objective Refactoring Approach to Introduce Design Patterns and Fix A...Ali Ouni
 
The Use of Development History in Software Refactoring Using a Multi-Objectiv...
The Use of Development History in Software Refactoring Using a Multi-Objectiv...The Use of Development History in Software Refactoring Using a Multi-Objectiv...
The Use of Development History in Software Refactoring Using a Multi-Objectiv...Ali Ouni
 
Finding Bad Code Smells with Neural Network Models
Finding Bad Code Smells with Neural Network Models Finding Bad Code Smells with Neural Network Models
Finding Bad Code Smells with Neural Network Models IJECEIAES
 
Runtime Behavior of JavaScript Programs
Runtime Behavior of JavaScript ProgramsRuntime Behavior of JavaScript Programs
Runtime Behavior of JavaScript ProgramsIRJET Journal
 
Is Text Search an Effective Approach for Fault Localization: A Practitioners ...
Is Text Search an Effective Approach for Fault Localization: A Practitioners ...Is Text Search an Effective Approach for Fault Localization: A Practitioners ...
Is Text Search an Effective Approach for Fault Localization: A Practitioners ...Debdoot Mukherjee
 
A Novel Approach for Code Clone Detection Using Hybrid Technique
A Novel Approach for Code Clone Detection Using Hybrid TechniqueA Novel Approach for Code Clone Detection Using Hybrid Technique
A Novel Approach for Code Clone Detection Using Hybrid TechniqueINFOGAIN PUBLICATION
 
The Road Not Taken: Estimating Path Execution Frequency Statically
The Road Not Taken: Estimating Path Execution Frequency StaticallyThe Road Not Taken: Estimating Path Execution Frequency Statically
The Road Not Taken: Estimating Path Execution Frequency StaticallyRay Buse
 
A novel data type architecture support for programming languages
A novel data type architecture support for programming languagesA novel data type architecture support for programming languages
A novel data type architecture support for programming languagesijpla
 

What's hot (19)

The recommendations system for source code components retrieval
The recommendations system for source code components retrievalThe recommendations system for source code components retrieval
The recommendations system for source code components retrieval
 
Mannu_Kumar_CV
Mannu_Kumar_CVMannu_Kumar_CV
Mannu_Kumar_CV
 
A New Metric for Code Readability
A New Metric for Code ReadabilityA New Metric for Code Readability
A New Metric for Code Readability
 
A Conceptual Dependency Graph Based Keyword Extraction Model for Source Code...
 A Conceptual Dependency Graph Based Keyword Extraction Model for Source Code... A Conceptual Dependency Graph Based Keyword Extraction Model for Source Code...
A Conceptual Dependency Graph Based Keyword Extraction Model for Source Code...
 
Class Diagram Extraction from Textual Requirements Using NLP Techniques
Class Diagram Extraction from Textual Requirements Using NLP TechniquesClass Diagram Extraction from Textual Requirements Using NLP Techniques
Class Diagram Extraction from Textual Requirements Using NLP Techniques
 
Revisiting Code Ownership and Its Relationship with Software Quality in the S...
Revisiting Code Ownership and Its Relationship with Software Quality in the S...Revisiting Code Ownership and Its Relationship with Software Quality in the S...
Revisiting Code Ownership and Its Relationship with Software Quality in the S...
 
Who Should Review My Code?
Who Should Review My Code?  Who Should Review My Code?
Who Should Review My Code?
 
Software bug prediction
Software bug prediction Software bug prediction
Software bug prediction
 
Data collection for software defect prediction
Data collection for software defect predictionData collection for software defect prediction
Data collection for software defect prediction
 
A Multi-Objective Refactoring Approach to Introduce Design Patterns and Fix A...
A Multi-Objective Refactoring Approach to Introduce Design Patterns and Fix A...A Multi-Objective Refactoring Approach to Introduce Design Patterns and Fix A...
A Multi-Objective Refactoring Approach to Introduce Design Patterns and Fix A...
 
The Use of Development History in Software Refactoring Using a Multi-Objectiv...
The Use of Development History in Software Refactoring Using a Multi-Objectiv...The Use of Development History in Software Refactoring Using a Multi-Objectiv...
The Use of Development History in Software Refactoring Using a Multi-Objectiv...
 
kapil_2_3years
kapil_2_3yearskapil_2_3years
kapil_2_3years
 
Finding Bad Code Smells with Neural Network Models
Finding Bad Code Smells with Neural Network Models Finding Bad Code Smells with Neural Network Models
Finding Bad Code Smells with Neural Network Models
 
Runtime Behavior of JavaScript Programs
Runtime Behavior of JavaScript ProgramsRuntime Behavior of JavaScript Programs
Runtime Behavior of JavaScript Programs
 
Is Text Search an Effective Approach for Fault Localization: A Practitioners ...
Is Text Search an Effective Approach for Fault Localization: A Practitioners ...Is Text Search an Effective Approach for Fault Localization: A Practitioners ...
Is Text Search an Effective Approach for Fault Localization: A Practitioners ...
 
Arch java
Arch javaArch java
Arch java
 
A Novel Approach for Code Clone Detection Using Hybrid Technique
A Novel Approach for Code Clone Detection Using Hybrid TechniqueA Novel Approach for Code Clone Detection Using Hybrid Technique
A Novel Approach for Code Clone Detection Using Hybrid Technique
 
The Road Not Taken: Estimating Path Execution Frequency Statically
The Road Not Taken: Estimating Path Execution Frequency StaticallyThe Road Not Taken: Estimating Path Execution Frequency Statically
The Road Not Taken: Estimating Path Execution Frequency Statically
 
A novel data type architecture support for programming languages
A novel data type architecture support for programming languagesA novel data type architecture support for programming languages
A novel data type architecture support for programming languages
 

Similar to Mapping and Visualization of Source Code Tools Survey

Mapping and visualization of source code a survey
Mapping and visualization of source code a surveyMapping and visualization of source code a survey
Mapping and visualization of source code a surveyNakul Sharma
 
Software System Development Methodologies, tools, design and life cycle by K....
Software System Development Methodologies, tools, design and life cycle by K....Software System Development Methodologies, tools, design and life cycle by K....
Software System Development Methodologies, tools, design and life cycle by K....Babu Kanikicharla (K Y Babu Setty)
 
Android app development SEO Expert Bangladesh LTD.pdf
Android app development  SEO Expert Bangladesh LTD.pdfAndroid app development  SEO Expert Bangladesh LTD.pdf
Android app development SEO Expert Bangladesh LTD.pdfTasnim Jahan
 
Android app development SEO Expert Bangladesh LTD.pdf
Android app development  SEO Expert Bangladesh LTD.pdfAndroid app development  SEO Expert Bangladesh LTD.pdf
Android app development SEO Expert Bangladesh LTD.pdfTasnim Jahan
 
.Net Technologies Lesson 1.pptx
.Net Technologies Lesson 1.pptx.Net Technologies Lesson 1.pptx
.Net Technologies Lesson 1.pptxEllenGracePorras
 
Understanding Computers: Today and Tomorrow, 13th Edition Chapter 13 - Progra...
Understanding Computers: Today and Tomorrow, 13th Edition Chapter 13 - Progra...Understanding Computers: Today and Tomorrow, 13th Edition Chapter 13 - Progra...
Understanding Computers: Today and Tomorrow, 13th Edition Chapter 13 - Progra...yaminohime
 
Top 25+ .Net development tools for intelligent business solutions - AppsDevPro
Top 25+ .Net development tools for intelligent business solutions - AppsDevProTop 25+ .Net development tools for intelligent business solutions - AppsDevPro
Top 25+ .Net development tools for intelligent business solutions - AppsDevProSofiaCarter4
 
Portable Code Compiler
Portable Code CompilerPortable Code Compiler
Portable Code Compilerijtsrd
 
CLR_via_CSharp_(Jeffrey_Richter_4th_Edition).pdf
CLR_via_CSharp_(Jeffrey_Richter_4th_Edition).pdfCLR_via_CSharp_(Jeffrey_Richter_4th_Edition).pdf
CLR_via_CSharp_(Jeffrey_Richter_4th_Edition).pdfssuserbe139c
 
React Native App Development Company in USA and India
React Native App Development Company in USA and India				React Native App Development Company in USA and India
React Native App Development Company in USA and India Shelly Megan
 
Software Development Methodologies.pptx
Software Development Methodologies.pptxSoftware Development Methodologies.pptx
Software Development Methodologies.pptxMohamedElshaikh10
 

Similar to Mapping and Visualization of Source Code Tools Survey (20)

Mapping and visualization of source code a survey
Mapping and visualization of source code a surveyMapping and visualization of source code a survey
Mapping and visualization of source code a survey
 
Wecreate
WecreateWecreate
Wecreate
 
Prakash_Ganapathy
Prakash_GanapathyPrakash_Ganapathy
Prakash_Ganapathy
 
10tait
10tait10tait
10tait
 
Chapter 10
Chapter 10 Chapter 10
Chapter 10
 
MERN PPT
MERN PPTMERN PPT
MERN PPT
 
Software System Development Methodologies, tools, design and life cycle by K....
Software System Development Methodologies, tools, design and life cycle by K....Software System Development Methodologies, tools, design and life cycle by K....
Software System Development Methodologies, tools, design and life cycle by K....
 
Android app development SEO Expert Bangladesh LTD.pdf
Android app development  SEO Expert Bangladesh LTD.pdfAndroid app development  SEO Expert Bangladesh LTD.pdf
Android app development SEO Expert Bangladesh LTD.pdf
 
Android app development SEO Expert Bangladesh LTD.pdf
Android app development  SEO Expert Bangladesh LTD.pdfAndroid app development  SEO Expert Bangladesh LTD.pdf
Android app development SEO Expert Bangladesh LTD.pdf
 
.Net Technologies Lesson 1.pptx
.Net Technologies Lesson 1.pptx.Net Technologies Lesson 1.pptx
.Net Technologies Lesson 1.pptx
 
Understanding Computers: Today and Tomorrow, 13th Edition Chapter 13 - Progra...
Understanding Computers: Today and Tomorrow, 13th Edition Chapter 13 - Progra...Understanding Computers: Today and Tomorrow, 13th Edition Chapter 13 - Progra...
Understanding Computers: Today and Tomorrow, 13th Edition Chapter 13 - Progra...
 
Uc13.chapter.13
Uc13.chapter.13Uc13.chapter.13
Uc13.chapter.13
 
Top 25+ .Net development tools for intelligent business solutions - AppsDevPro
Top 25+ .Net development tools for intelligent business solutions - AppsDevProTop 25+ .Net development tools for intelligent business solutions - AppsDevPro
Top 25+ .Net development tools for intelligent business solutions - AppsDevPro
 
Portable Code Compiler
Portable Code CompilerPortable Code Compiler
Portable Code Compiler
 
CLR_via_CSharp_(Jeffrey_Richter_4th_Edition).pdf
CLR_via_CSharp_(Jeffrey_Richter_4th_Edition).pdfCLR_via_CSharp_(Jeffrey_Richter_4th_Edition).pdf
CLR_via_CSharp_(Jeffrey_Richter_4th_Edition).pdf
 
React Native App Development Company in USA and India
React Native App Development Company in USA and India				React Native App Development Company in USA and India
React Native App Development Company in USA and India
 
2. C# Guide - To Print
2. C# Guide - To Print2. C# Guide - To Print
2. C# Guide - To Print
 
Software Development Methodologies.pptx
Software Development Methodologies.pptxSoftware Development Methodologies.pptx
Software Development Methodologies.pptx
 
Resume
ResumeResume
Resume
 
dot net
dot netdot net
dot net
 

More from Nakul Sharma

Visualizing UML’s Sequence and Class Diagrams Using Graph-Based Clusters
Visualizing UML’s Sequence and   Class Diagrams Using Graph-Based Clusters  Visualizing UML’s Sequence and   Class Diagrams Using Graph-Based Clusters
Visualizing UML’s Sequence and Class Diagrams Using Graph-Based Clusters Nakul Sharma
 
Integrating natural language processing and software engineering
Integrating natural language processing and software engineeringIntegrating natural language processing and software engineering
Integrating natural language processing and software engineeringNakul Sharma
 
Possibility of interdisciplinary research software engineering andnatural lan...
Possibility of interdisciplinary research software engineering andnatural lan...Possibility of interdisciplinary research software engineering andnatural lan...
Possibility of interdisciplinary research software engineering andnatural lan...Nakul Sharma
 
Possibility of interdisciplinary research software engineering and
Possibility of interdisciplinary research software engineering andPossibility of interdisciplinary research software engineering and
Possibility of interdisciplinary research software engineering andNakul Sharma
 
Session on machine translation batu 19 march2016
Session on machine translation batu 19 march2016Session on machine translation batu 19 march2016
Session on machine translation batu 19 march2016Nakul Sharma
 
Integrating natural language processing and software engineering
Integrating natural language processing and software engineeringIntegrating natural language processing and software engineering
Integrating natural language processing and software engineeringNakul Sharma
 
Statistical machine translation for indian language copy
Statistical machine translation for indian language   copyStatistical machine translation for indian language   copy
Statistical machine translation for indian language copyNakul Sharma
 

More from Nakul Sharma (7)

Visualizing UML’s Sequence and Class Diagrams Using Graph-Based Clusters
Visualizing UML’s Sequence and   Class Diagrams Using Graph-Based Clusters  Visualizing UML’s Sequence and   Class Diagrams Using Graph-Based Clusters
Visualizing UML’s Sequence and Class Diagrams Using Graph-Based Clusters
 
Integrating natural language processing and software engineering
Integrating natural language processing and software engineeringIntegrating natural language processing and software engineering
Integrating natural language processing and software engineering
 
Possibility of interdisciplinary research software engineering andnatural lan...
Possibility of interdisciplinary research software engineering andnatural lan...Possibility of interdisciplinary research software engineering andnatural lan...
Possibility of interdisciplinary research software engineering andnatural lan...
 
Possibility of interdisciplinary research software engineering and
Possibility of interdisciplinary research software engineering andPossibility of interdisciplinary research software engineering and
Possibility of interdisciplinary research software engineering and
 
Session on machine translation batu 19 march2016
Session on machine translation batu 19 march2016Session on machine translation batu 19 march2016
Session on machine translation batu 19 march2016
 
Integrating natural language processing and software engineering
Integrating natural language processing and software engineeringIntegrating natural language processing and software engineering
Integrating natural language processing and software engineering
 
Statistical machine translation for indian language copy
Statistical machine translation for indian language   copyStatistical machine translation for indian language   copy
Statistical machine translation for indian language copy
 

Recently uploaded

CCS355 Neural Network & Deep Learning Unit II Notes with Question bank .pdf
CCS355 Neural Network & Deep Learning Unit II Notes with Question bank .pdfCCS355 Neural Network & Deep Learning Unit II Notes with Question bank .pdf
CCS355 Neural Network & Deep Learning Unit II Notes with Question bank .pdfAsst.prof M.Gokilavani
 
EduAI - E learning Platform integrated with AI
EduAI - E learning Platform integrated with AIEduAI - E learning Platform integrated with AI
EduAI - E learning Platform integrated with AIkoyaldeepu123
 
Decoding Kotlin - Your guide to solving the mysterious in Kotlin.pptx
Decoding Kotlin - Your guide to solving the mysterious in Kotlin.pptxDecoding Kotlin - Your guide to solving the mysterious in Kotlin.pptx
Decoding Kotlin - Your guide to solving the mysterious in Kotlin.pptxJoão Esperancinha
 
Call Girls Delhi {Jodhpur} 9711199012 high profile service
Call Girls Delhi {Jodhpur} 9711199012 high profile serviceCall Girls Delhi {Jodhpur} 9711199012 high profile service
Call Girls Delhi {Jodhpur} 9711199012 high profile servicerehmti665
 
UNIT III ANALOG ELECTRONICS (BASIC ELECTRONICS)
UNIT III ANALOG ELECTRONICS (BASIC ELECTRONICS)UNIT III ANALOG ELECTRONICS (BASIC ELECTRONICS)
UNIT III ANALOG ELECTRONICS (BASIC ELECTRONICS)Dr SOUNDIRARAJ N
 
Work Experience-Dalton Park.pptxfvvvvvvv
Work Experience-Dalton Park.pptxfvvvvvvvWork Experience-Dalton Park.pptxfvvvvvvv
Work Experience-Dalton Park.pptxfvvvvvvvLewisJB
 
VICTOR MAESTRE RAMIREZ - Planetary Defender on NASA's Double Asteroid Redirec...
VICTOR MAESTRE RAMIREZ - Planetary Defender on NASA's Double Asteroid Redirec...VICTOR MAESTRE RAMIREZ - Planetary Defender on NASA's Double Asteroid Redirec...
VICTOR MAESTRE RAMIREZ - Planetary Defender on NASA's Double Asteroid Redirec...VICTOR MAESTRE RAMIREZ
 
Introduction-To-Agricultural-Surveillance-Rover.pptx
Introduction-To-Agricultural-Surveillance-Rover.pptxIntroduction-To-Agricultural-Surveillance-Rover.pptx
Introduction-To-Agricultural-Surveillance-Rover.pptxk795866
 
Call Us ≽ 8377877756 ≼ Call Girls In Shastri Nagar (Delhi)
Call Us ≽ 8377877756 ≼ Call Girls In Shastri Nagar (Delhi)Call Us ≽ 8377877756 ≼ Call Girls In Shastri Nagar (Delhi)
Call Us ≽ 8377877756 ≼ Call Girls In Shastri Nagar (Delhi)dollysharma2066
 
GDSC ASEB Gen AI study jams presentation
GDSC ASEB Gen AI study jams presentationGDSC ASEB Gen AI study jams presentation
GDSC ASEB Gen AI study jams presentationGDSCAESB
 
An experimental study in using natural admixture as an alternative for chemic...
An experimental study in using natural admixture as an alternative for chemic...An experimental study in using natural admixture as an alternative for chemic...
An experimental study in using natural admixture as an alternative for chemic...Chandu841456
 
Internship report on mechanical engineering
Internship report on mechanical engineeringInternship report on mechanical engineering
Internship report on mechanical engineeringmalavadedarshan25
 
complete construction, environmental and economics information of biomass com...
complete construction, environmental and economics information of biomass com...complete construction, environmental and economics information of biomass com...
complete construction, environmental and economics information of biomass com...asadnawaz62
 
Study on Air-Water & Water-Water Heat Exchange in a Finned Tube Exchanger
Study on Air-Water & Water-Water Heat Exchange in a Finned Tube ExchangerStudy on Air-Water & Water-Water Heat Exchange in a Finned Tube Exchanger
Study on Air-Water & Water-Water Heat Exchange in a Finned Tube ExchangerAnamika Sarkar
 
IVE Industry Focused Event - Defence Sector 2024
IVE Industry Focused Event - Defence Sector 2024IVE Industry Focused Event - Defence Sector 2024
IVE Industry Focused Event - Defence Sector 2024Mark Billinghurst
 
Call Girls Narol 7397865700 Independent Call Girls
Call Girls Narol 7397865700 Independent Call GirlsCall Girls Narol 7397865700 Independent Call Girls
Call Girls Narol 7397865700 Independent Call Girlsssuser7cb4ff
 

Recently uploaded (20)

CCS355 Neural Network & Deep Learning Unit II Notes with Question bank .pdf
CCS355 Neural Network & Deep Learning Unit II Notes with Question bank .pdfCCS355 Neural Network & Deep Learning Unit II Notes with Question bank .pdf
CCS355 Neural Network & Deep Learning Unit II Notes with Question bank .pdf
 
EduAI - E learning Platform integrated with AI
EduAI - E learning Platform integrated with AIEduAI - E learning Platform integrated with AI
EduAI - E learning Platform integrated with AI
 
Decoding Kotlin - Your guide to solving the mysterious in Kotlin.pptx
Decoding Kotlin - Your guide to solving the mysterious in Kotlin.pptxDecoding Kotlin - Your guide to solving the mysterious in Kotlin.pptx
Decoding Kotlin - Your guide to solving the mysterious in Kotlin.pptx
 
Call Girls Delhi {Jodhpur} 9711199012 high profile service
Call Girls Delhi {Jodhpur} 9711199012 high profile serviceCall Girls Delhi {Jodhpur} 9711199012 high profile service
Call Girls Delhi {Jodhpur} 9711199012 high profile service
 
UNIT III ANALOG ELECTRONICS (BASIC ELECTRONICS)
UNIT III ANALOG ELECTRONICS (BASIC ELECTRONICS)UNIT III ANALOG ELECTRONICS (BASIC ELECTRONICS)
UNIT III ANALOG ELECTRONICS (BASIC ELECTRONICS)
 
Work Experience-Dalton Park.pptxfvvvvvvv
Work Experience-Dalton Park.pptxfvvvvvvvWork Experience-Dalton Park.pptxfvvvvvvv
Work Experience-Dalton Park.pptxfvvvvvvv
 
VICTOR MAESTRE RAMIREZ - Planetary Defender on NASA's Double Asteroid Redirec...
VICTOR MAESTRE RAMIREZ - Planetary Defender on NASA's Double Asteroid Redirec...VICTOR MAESTRE RAMIREZ - Planetary Defender on NASA's Double Asteroid Redirec...
VICTOR MAESTRE RAMIREZ - Planetary Defender on NASA's Double Asteroid Redirec...
 
Introduction-To-Agricultural-Surveillance-Rover.pptx
Introduction-To-Agricultural-Surveillance-Rover.pptxIntroduction-To-Agricultural-Surveillance-Rover.pptx
Introduction-To-Agricultural-Surveillance-Rover.pptx
 
POWER SYSTEMS-1 Complete notes examples
POWER SYSTEMS-1 Complete notes  examplesPOWER SYSTEMS-1 Complete notes  examples
POWER SYSTEMS-1 Complete notes examples
 
Call Us ≽ 8377877756 ≼ Call Girls In Shastri Nagar (Delhi)
Call Us ≽ 8377877756 ≼ Call Girls In Shastri Nagar (Delhi)Call Us ≽ 8377877756 ≼ Call Girls In Shastri Nagar (Delhi)
Call Us ≽ 8377877756 ≼ Call Girls In Shastri Nagar (Delhi)
 
GDSC ASEB Gen AI study jams presentation
GDSC ASEB Gen AI study jams presentationGDSC ASEB Gen AI study jams presentation
GDSC ASEB Gen AI study jams presentation
 
An experimental study in using natural admixture as an alternative for chemic...
An experimental study in using natural admixture as an alternative for chemic...An experimental study in using natural admixture as an alternative for chemic...
An experimental study in using natural admixture as an alternative for chemic...
 
Design and analysis of solar grass cutter.pdf
Design and analysis of solar grass cutter.pdfDesign and analysis of solar grass cutter.pdf
Design and analysis of solar grass cutter.pdf
 
Internship report on mechanical engineering
Internship report on mechanical engineeringInternship report on mechanical engineering
Internship report on mechanical engineering
 
complete construction, environmental and economics information of biomass com...
complete construction, environmental and economics information of biomass com...complete construction, environmental and economics information of biomass com...
complete construction, environmental and economics information of biomass com...
 
Study on Air-Water & Water-Water Heat Exchange in a Finned Tube Exchanger
Study on Air-Water & Water-Water Heat Exchange in a Finned Tube ExchangerStudy on Air-Water & Water-Water Heat Exchange in a Finned Tube Exchanger
Study on Air-Water & Water-Water Heat Exchange in a Finned Tube Exchanger
 
IVE Industry Focused Event - Defence Sector 2024
IVE Industry Focused Event - Defence Sector 2024IVE Industry Focused Event - Defence Sector 2024
IVE Industry Focused Event - Defence Sector 2024
 
Call Girls Narol 7397865700 Independent Call Girls
Call Girls Narol 7397865700 Independent Call GirlsCall Girls Narol 7397865700 Independent Call Girls
Call Girls Narol 7397865700 Independent Call Girls
 
young call girls in Rajiv Chowk🔝 9953056974 🔝 Delhi escort Service
young call girls in Rajiv Chowk🔝 9953056974 🔝 Delhi escort Serviceyoung call girls in Rajiv Chowk🔝 9953056974 🔝 Delhi escort Service
young call girls in Rajiv Chowk🔝 9953056974 🔝 Delhi escort Service
 
young call girls in Green Park🔝 9953056974 🔝 escort Service
young call girls in Green Park🔝 9953056974 🔝 escort Serviceyoung call girls in Green Park🔝 9953056974 🔝 escort Service
young call girls in Green Park🔝 9953056974 🔝 escort Service
 

Mapping and Visualization of Source Code Tools Survey

  • 1. Mapping and Visualization of Source Code: A Survey Nakul Sharma Prasanth Yalla Computer Science and Engineering Department, Koneru Laxmiah Education Foundation, Greenfields, Vijayawada
  • 2. Abstract This paper summarizes various states of art literature in the field of mapping and visualizations in a programming language. The main focus is the design and analysis phase of Software Development Life Cycle. Mapping and visualization in software artifact is essential component for better understanding of the software. It also helps developers and maintenance professionals to visualize the effect of changes conducted in source code. In this work, a summary of literature review in of major tools developed for visualization and mapping of source code is provided.
  • 3. Introduction In this work, the following tools are being examined which are made in respect to software visualization:- 1. Kieker [1] 2. Octobubbles [2] 3. Umple [3] 4. Reprograms [4] 5. ClonEvol [5] 6. CVSscan [6] 7. Revision Tower [7] 8. 3-DSoftVis [16] 9. History Slicing [8] 10. RelVis [9] 11. Chronia [10] 12. Spectographs [11] 13. Evolution radar [12] 14. CodeCity [13]
  • 4. Necessity of Source Code Visualization • The visualizations can help analyst, developer and maintenance engineer in the following ways: • Advantages to the developer include: - Ability to visualize the changes done on source code. - Ability to check relevant linkage between the design and source code developed. - Visual inspection of large software projects helps in better understanding
  • 5. Necessity of Source Code Visualization • Advantages to the Software Maintenance: Software: • Software maintainers are tasked with introducing changeability through Software Configuration Management (SCM). This change is done by studying the end user's requirements. Hence, software maintenance work involves the knowledge • of analysis, design, coding, and testing as well. A visual inspection of source code can aid in a quick understanding of how software changes can cause effects in different phases of the Software Development Life Cycle (SDLC).
  • 7. Literature Review • C/C++/Java Related Visualization Tool – ClonEval – Kieker – 3DSoftVis • General Visualization Tools – Chronos – CVScan – Revision Towers – Code City – Umple – Reprograms – Evolution metrics – Evolution Radar
  • 8. Reconstruction of source code from the visualization
  • 9. Source code and Its corresponding UML class diagram
  • 10. Observation From Literature Review There were the following findings from the literature review undertaken: 1. In a cloud-based environment, there were no specific visualization tools developed focusing on larger project source-files. 2. Many object-oriented programming languages such as small talk do not have any source code visualization tool. 3. In the source code visualization’s developed, the architecture of the system is not recovered. 4. The solution domain is only addressed in the source code visualizations which is not merged with the problem domain analysis. 5. The source code visualization’s developed were either semi-automated completely automated.
  • 11. Summary Of Tools Developed For Different Languages For Software VisualizationReference No. Source Code Language Name of Tool Developed Research Tools used Work Done Year of Publication 1 Java,.Net, Cobol Kieker Java Programming Language, Web based GUI Provides a framework which helps to oversee and analyze the runtime behavior of system. Kieker is currently deployed in multiple domains of Software Engineering. [18]. 2012 2 UML Models Octobubbles Not Mentioned Provides a multi-dimensional view interactive environment for parallel visualization and synchronization of software models 2018 5 C, C++, Java ClonEvol C,C++,Java ClonEval takes information from got from software versioning 2013 15 Matlab/Octave None Mentioned Knowledge Discovery Meta- model The authors generate KDM instances which are fed as input for further processing and analysis. 2018 3 General purpose programming language for visualization Umple Programming language Umple is a language which integrates modeling and implementation. 2016 4 Repository based projects in any programming language Reprograms Metric based visualization model Tool for checking the differences and similarity of software projects. 2016 16 Not mentioned 3DSoftVis Java, JavaScript, webserver,VRMLJ D BC, RMI Tool for visualizing the software’s release history as it get changed across timelines 2000
  • 12. Summary Of Tools Developed For Different Languages For Software Visualization 9 Not mentioned RelVis Kiviat Graphs The tool allows studying the summary of released history of the source codes. This aids in visual inspection across different commits. 2005 6 Not Mentioned CVSscan Not mentioned Line based approach for changes across different Versions 2005 7 Not Mentioned Revision Towers Not Mentioned Creates a visualization across different versions of software’s 2002 8 Not Mentioned Code City Small Talk, Eclipse IDE Code city is Eclipse based plugin which makes use of small talk 2011 9 Not Mentioned Chronos Online tool Develops a tool named chronos for showing implementation 2012 11 Not Mentioned Evolution Spectrograph s Not mentioned a visualization mechanism using property based measurements for the components of source code 2004 12 Mozilla repository source code Evolution Radar Not mentioned Allows visual representation of the given code at both document level as well as module level logical coupling. The coupling at various levels are shown by the tool 2006
  • 13. Advantages And Disadvantages Of Software Visualization Tools Developed Reference No. Source Code Language Name of Tool Developed Advantages of The Tool Disadvantage of The Tool 1, 18 Java,.Net, Cobol Kieker Allows the user to monitor the run-time behavior of distributed systems. 1, 18 2 UML Models Octobubbles Solves the problem of program comprehension and facilitates software navigation 2 5 C, C++, Java ClonEvol ClonEvol provides visual representation of software across different versions. The scope-oriented view could provide better representation 6 Not Mentioned CVSscan Provides a visual tool for inspecting contributions of developers, statement by statement. Not Mentioned 7 Not Mentioned Revision Towers Provides an interface for the user to see the current working areas of the project, the change frequency and how work are shared in a project. The tool did not have any link with the version-control systems. 8 Not Mentioned Code City Code City facilitates reduced task completion time and correctness of the task performed. Code city did not perform better in comparison to Eclipse and Excel tools combined together. 9 Not Mentioned Chronos The developer gets benefited as deelopers had study reduced information to get to results. The accuracy of the developers results also increased for software maintenance. None Mentioned 3 General purpose programming language for visualization Umple 1. The tool is more useful to developers due to its textual coding ability Umple is restricted to English natural language 4 Repository based projects in any programming language Reprograms Tool provides user with interface to filter out software projects and make more rational decisions for evaluations. None Mentioned
  • 14. Advantages And Disadvantages Of Software Visualization Tools Developed 16 Not mentioned 3DSoftVis Tool for visual representation of release history of the project. None mentioned 9 Not mentioned RelVis Tool provides visualization of of graphical representation of source code extending up to n releases. 3D Kivit diagrams are not drawn and are part of future scope. 11 Not Mentioned Evolution Spectrographs The tool highlights the changes across software releases. None Mentioned 12 Mozilla repository source code Evolution Radar Tools facilitates visual representation at document and module level. The tool also does analysis at different level of logical coupling between objects at varying granularity. Integration with different web based tools.
  • 15. ARTIFACTS RELATED TO SOURCE-CODE OF A PROJECT Sr. No. Type of Document Artifact of SDLC Phase Usage Usage In SCA Analysis 1 Dynamic Link Library (DLL) Coding Use in proving function calls Yes 2 Software Requirement Specification (SRS) Analysis Useful in providing requirement as official document between clients Yes 3 Software Design Specification (SDS) Design Useful in providing Design level specification of the software being developed Yes 4 Log Files General Create log of any activity Yes* 5 User Manual Deployment Helps in user’s day-to-day usage of software being developed No 6 Meeting Records General For creating proof of points discussed in meeting Yes* 7 Temp files General For storing temporary information Yes* * depends on the relation with the source code being fed as input
  • 16. Recommendations On The Literature Review • . Authors propose that NLP and AI technologies (NLP and ML) can aid in better software visualization. Source Code consists of text in-form of the developer’s comments in the source-code files in addition to the programming language statements. • The programming language statements can be understood by creating a parallel lookup dictionary or be learnt to a machine using ML/DL techniques. • The existing tools in SCA focus on mainly the source code as an input. The developers of such tool need to adopt a more holistic approach while developing these SCA tools.
  • 17. Conclusion • This is a literature review regarding existing software visualization tools developed in SCA. The literature review is done on software visualization and its related fields. The literature contains various tools for providing visualization to the software developer and maintenance engineers. There has been more work focused on software visualization with more traditional languages such as C, C++, java.
  • 18. Citation • Nakul Sharma, Prasanth Yalla, Mapping and Visualization of Source Code: A Survey, DOI 10.5013/IJSSST.a.21.04.03, 3.1, ISSN: 1473- 804x online, 1473-8031 print, Vol 21, No-3. (https://ijssst.info/Vol-21/No-4/paper3.pdf)