skip to main content
10.1145/379605.379661acmconferencesArticle/Chapter ViewAbstractPublication PagespasteConference Proceedingsconference-collections
Article

Change impact analysis for object-oriented programs

Published: 01 June 2001 Publication History

Abstract

Small changes can have major and nonlocal effects in object-oriented languages, due to the use of subtyping and dynamic dispatch. This complicates life for maintenance programmers, who need to fix bugs or add enhancements to systems originally written by others. Change impact analysis provides feedback on the semantic impact of a set of program changes. This analysis can be used to determine the regression test drivers that are affected by a set of changes. Moreover, if a test fails, a subset of changes responsible for the failure can be identified, as well as a subset of changes that can be incorporated safely without affecting any test driver.

References

[1]
Bacon, D. F. Fast and Effective Optimization of Staticall Typed Object-Oriented Languages. PhD thesis, University of California, Berkeley, Dec. 1997.
[2]
Bible, J., Rothermel, G., and Rosenblum, D. A comparative study of coarse-and fine-grained safe regression test selection techniques. ACM Trans. on Software Engineering Methodolog (in press).
[3]
Chen, Y., Rosenblum, D., and VoK. Testtube: A system for selective regression testing. In Proc. of the 16th Int. Conf. on Software Engineering (1994), pp. 211-220.
[4]
Fowlor, M. Refactoring. Addison-Wesley, 1999.
[5]
Harrold, M. J., and Rothermel, G. Performing dataflow testing on classes. In Proc. of the 2nd Symp. on the Foundations of Software Engineering (1994), pp. 154-163.
[6]
Kung, D. C., Gao, J., Hsia, P., Toyoshima, Y., and Chen, C. On regression testing of object-oriented programs. J. of Systems and Software 32 (1996), 21-40.
[7]
Marlow, T. J., and Ryder, B. G. An efficient hybrid algorithm for incremental dataflow analysis. In Proc. of the ACM SIGPLAN/SIGACT Symp. on Principles of Programming Languages (Jan.1990), pp. 184-196.
[8]
Perry, D. E., and Kaisr, G. E. Adequate testing and OO programming. J. of Object-Oriented Programming (1990).
[9]
Rothermel, G., and Harrold, M. J. Selecting regression tests for object-riented software. In Proc. of the Int. Conf. on Software Maintenance (1994).
[10]
Rothermel, G., and Harrold, M. J. Asafe, efficient regression test selection technique. ACM Trans. on Software Engineering and Methodolog 6, 2 (April 1997), 173-210.
[11]
Souter, A., and Pollock, L. Omen: A strategy for testing object-oriented software. In Proc. of ACM SIGSOFT 2000 Int. Symp. on Software Testing and Analysis (ISSTA)(August 2000), p. 49'59.
[12]
Tip, F. A survey of program slicing techniques. J. of Programming Languages 3, 3 (1995), 121-189.
[13]
Tip, F., and Palsberg, J. Scalable propagation-based call graph construction algorithms. In Proc. ACM SIGPLAN Conf. on Object-Oriented Programming Systems, Languages, and Applications (OOPSLA '00)(Minneapolis, MN, 2000), pp.281-293. SIGPLAN Notices 35(10).
[14]
Weyuker, E. Axiomatizing software test data adequacy. IEEE Trans. on Software Engineering SE12:12 (1986), 668-675.
[15]
Zeller, A. Yesterday my program worked. Today, it does not. Why? In Proc. of the 7th European Software Engineering Conf./7th ACM SIGSOFT Symp. on the Foundations of Software Engineering (ESEC/FSE '99) (Toul use, France, 1999), pp. 253-267.

Cited By

View all
  • (2024)Maximizing Patch Coverage for Testing of Highly-Configurable Software without Exploding Build TimesProceedings of the ACM on Software Engineering10.1145/36437461:FSE(427-449)Online publication date: 12-Jul-2024
  • (2023)An Empirical Study of Regression Testing for Android Apps in Continuous Integration Environment2023 ACM/IEEE International Symposium on Empirical Software Engineering and Measurement (ESEM)10.1109/ESEM56168.2023.10304799(1-11)Online publication date: 26-Oct-2023
  • (2023)Analyzing the impact of API changes on Android appsJournal of Systems and Software10.1016/j.jss.2023.111664200(111664)Online publication date: Jun-2023
  • Show More Cited By

Recommendations

Comments

Please enable JavaScript to view thecomments powered by Disqus.

Information & Contributors

Information

Published In

cover image ACM Conferences
PASTE '01: Proceedings of the 2001 ACM SIGPLAN-SIGSOFT workshop on Program analysis for software tools and engineering
June 2001
103 pages
ISBN:1581134134
DOI:10.1145/379605
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

Sponsors

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 01 June 2001

Permissions

Request permissions for this article.

Check for updates

Qualifiers

  • Article

Conference

PASTE01

Acceptance Rates

PASTE '01 Paper Acceptance Rate 13 of 24 submissions, 54%;
Overall Acceptance Rate 57 of 159 submissions, 36%

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)77
  • Downloads (Last 6 weeks)17
Reflects downloads up to 01 Nov 2024

Other Metrics

Citations

Cited By

View all
  • (2024)Maximizing Patch Coverage for Testing of Highly-Configurable Software without Exploding Build TimesProceedings of the ACM on Software Engineering10.1145/36437461:FSE(427-449)Online publication date: 12-Jul-2024
  • (2023)An Empirical Study of Regression Testing for Android Apps in Continuous Integration Environment2023 ACM/IEEE International Symposium on Empirical Software Engineering and Measurement (ESEM)10.1109/ESEM56168.2023.10304799(1-11)Online publication date: 26-Oct-2023
  • (2023)Analyzing the impact of API changes on Android appsJournal of Systems and Software10.1016/j.jss.2023.111664200(111664)Online publication date: Jun-2023
  • (2022)Automated, Cost-effective, and Update-driven App TestingACM Transactions on Software Engineering and Methodology10.1145/350229731:4(1-51)Online publication date: 12-Jul-2022
  • (2022)Goal-Oriented Software Design ReviewsIEEE Access10.1109/ACCESS.2022.316154510(32584-32594)Online publication date: 2022
  • (2022)PatchworkingInformation and Software Technology10.1016/j.infsof.2021.106745142:COnline publication date: 1-Feb-2022
  • (2021)Regression Test Selection Tool for Python in Continuous Integration Process2021 IEEE International Conference on Software Analysis, Evolution and Reengineering (SANER)10.1109/SANER50967.2021.00077(618-621)Online publication date: Mar-2021
  • (2021)Classifying Code Commits with Convolutional Neural Networks2021 International Joint Conference on Neural Networks (IJCNN)10.1109/IJCNN52387.2021.9533534(1-8)Online publication date: 18-Jul-2021
  • (2021)API Change Impact Analysis for Android Apps2021 IEEE 45th Annual Computers, Software, and Applications Conference (COMPSAC)10.1109/COMPSAC51774.2021.00122(894-903)Online publication date: Jul-2021
  • (2021)Finding and Use of Source Code Changes for Aspect-Oriented SoftwareEvaluation of Novel Approaches to Software Engineering10.1007/978-3-030-70006-5_19(469-493)Online publication date: 27-Feb-2021
  • Show More Cited By

View Options

Get Access

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media