Proceedings of the 33rd ACM/IEEE International Conference on Automated Software Engineering 2018
DOI: 10.1145/3238147.3238178
|View full text |Cite
|
Sign up to set email alerts
|

Client-specific equivalence checking

Abstract: Software is often built by integrating components created by different teams or even different organizations. With little understanding of changes in dependent components, it is challenging to maintain correctness and robustness of the entire system. In this paper, we investigate the effect of component changes on the behavior of their clients. We observe that changes in a component are often irrelevant to a particular client and thus can be adopted without any delays or negative effects. Following this observ… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
3
1
1

Citation Types

0
17
0

Year Published

2019
2019
2023
2023

Publication Types

Select...
3
3

Relationship

1
5

Authors

Journals

citations
Cited by 23 publications
(17 citation statements)
references
References 21 publications
0
17
0
Order By: Relevance
“…ModDiff [45] is a modular and demand-driven analysis which performs a bottom-up summarization of methods common between versions and only refines the paths of the methods that are needed to prove equivalence. CLEVER [34] formulates the notion of clientspecific equivalence checking and develops an automated technique optimized for checking the equivalence of downstream components by leveraging the fact that their calling context is unchanged. As such, CLEVER only explores paths that are relevant within the client context.…”
Section: Discussion and Related Workmentioning
confidence: 99%
See 3 more Smart Citations
“…ModDiff [45] is a modular and demand-driven analysis which performs a bottom-up summarization of methods common between versions and only refines the paths of the methods that are needed to prove equivalence. CLEVER [34] formulates the notion of clientspecific equivalence checking and develops an automated technique optimized for checking the equivalence of downstream components by leveraging the fact that their calling context is unchanged. As such, CLEVER only explores paths that are relevant within the client context.…”
Section: Discussion and Related Workmentioning
confidence: 99%
“…We started by using benchmarks proposed by recent work on symbolic-execution-based equivalence checking [34,45], which we refer to as the ModDiff benchmarks. As these benchmarks are relatively small (28 cases, 7.4 statements per case on average) and contain no complex constraints, we also adapted for our evaluation benchmarks collected by Li et al [32] from the literature on evaluating symbolic and concolic execution methods in the presence of complex path conditions and non-linear functions [19,44].…”
Section: Subjectsmentioning
confidence: 99%
See 2 more Smart Citations
“…Related work [11] pioneered the field of semantic differencing between two versions of a procedure by comparing dependencies between input and output variables. Symbolic execution methods [23,24,19] have proposed analysis techniques for programs with small state space and bounded loops, which may support modular regression verification. On the contrary, we can handle programs with unbounded loops and an infinite number of execution paths, like the example of Figs.…”
Section: Introductionmentioning
confidence: 99%