Software engineering research often requires analyzing multiple revisions of several software projects, be it to make and test predictions or to observe and identify patterns in how software evolves. Most of the research trends and potential research areas are identified in static source code analysis, program comprehension, refactoring, reverse engineering, detection, and traceability of cross-language links, code coverage, security analysis, cross-language parsing and abstraction of source code models. We highlighted the limitations and future perspectives and grouped them in various software engineering domains. Every research has its limitations or prospects for future research. We presented the research contributions in the form of tools techniques and approaches that are presented in the form of research models, platforms, frameworks, prototype models and case studies. We examined the research contributions and mapped them with individual research problems. We identified 46 research issues and requirements for analyzing multilingual applications and grouped them in 13 different software engineering domains. The research findings are presented in the form of research problems, research contributions, challenges and future prospects. Based on our findings, we highlight research gaps and challenges in the field of multilingual applications. We finalized 56 multi-discipline published papers relevant to multilingual source code analysis and its applications out of 3820 papers, filtered through multi-stage search criterion. This systematic literature review is based on different techniques, tools and methodologies to analyze multilingual source code applications. The objective of this systematic review (SLR) is to summarize state of the art and prominent areas for future research. A large number of studies presented on multilingual source code analysis and its applications in the last one and half decade. The source code analysis of these applications requires the extraction and examination of artifacts which are build using multiple programming languages along with their dependencies. We show that the time and space requirements for multi-revision analyses can be reduced by multiple orders of magnitude, when compared to traditional, sequential approaches.Ĭontemporary software applications are developed using cross-language artifacts which are interdependent with each other. The evaluation of our approach consists of measuring the effect of each individual technique incorporated, an in-depth study of LISA's resource requirements and a large-scale analysis over 7 million program revisions of 4,000 software projects written in four languages. It employs a redundancy-free, multi-revision representation for artifacts and avoids re-computation by only analyzing changed artifact fragments across thousands of revisions. ![]() ![]() In this work, we propose the Lean Language-Independent Software Analyzer (LISA), a generic framework for representing and analyzing multi-revisioned software artifacts. Thus, tools tailored for the analysis of multiple revisions should only analyze these differences, thereby preventing re-computation and storage of redundant data, improving scalability and enabling the study of a larger number of revisions. However, the actual difference between two subsequent revisions is typically very small. Most existing analysis techniques are not designed for the analysis of multi-revision artifacts and they treat each revision individually. The time and resources requirements for running these analyses often make it necessary to limit the number of analyzed revision, e.g., by only selecting major revisions or by using a coarse-grained sampling strategy, which could remove significant details of the evolution. For example, they statically analyze the source code and monitor the evolution of certain metrics over multiple revisions. Researchers often analyze several revisions of a software project to obtain historical data about its evolution.
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |