Understanding software application interfaces via string analysis

Evan Martin, Tao Xie

Research output: Chapter in Book/Report/Conference proceedingConference contribution

Abstract

In software systems, different software applications often interact with each other through specific interfaces by exchanging data in string format. For example, web services interact with each other through XML strings. Database applications interact with a database through strings of SQL statements. Sometimes these interfaces between different software applications are complex and distributed. For example, a table in a database can be accessed by multiple methods in a database application and a single method can access multiple tables. In this paper, we propose an approach to understanding software application interfaces through string analysis. The approach first performs a static analysis of source code to identify interaction points (in the form of interface-method-call sites). We then leverage existing string analysis tools to collect all possible string data that can be sent through these different interaction points. Then we manipulate collected string data by grouping similar data together. For example, we group together all collected SQL statements that access the same table. Then we associate various parts of aggregated data with interaction points in order to show the connections between entities from interacting applications. Our preliminary results show that the approach can help us understand the characteristics of interactions between database applications and databases. We also identify some challenges in this approach for our future work.

Original languageEnglish (US)
Title of host publicationProceeding of the 28th International Conference on Software Engineering 2006, ICSE '06
Pages901-904
Number of pages4
StatePublished - Dec 1 2006
Externally publishedYes
Event28th International Conference on Software Engineering 2006, ICSE '06 - Shanghai, China
Duration: May 20 2006May 28 2006

Publication series

NameProceedings - International Conference on Software Engineering
Volume2006
ISSN (Print)0270-5257

Other

Other28th International Conference on Software Engineering 2006, ICSE '06
Country/TerritoryChina
CityShanghai
Period5/20/065/28/06

Keywords

  • Database-driven applications
  • Program understanding

ASJC Scopus subject areas

  • Software

Fingerprint

Dive into the research topics of 'Understanding software application interfaces via string analysis'. Together they form a unique fingerprint.

Cite this