Home > Research > Publications & Outputs > Assert use and defectiveness in industrial code

Electronic data

  • ISSRE_2017_Industry_Track_paper_6

    Rights statement: ©2017 IEEE. Personal use of this material is permitted. However, permission to reprint/republish this material for advertising or promotional purposes or for creating new collective works for resale or redistribution to servers or lists, or to reuse any copyrighted component of this work in other works must be obtained from the IEEE.

    Accepted author manuscript, 269 KB, PDF document

    Available under license: CC BY-NC: Creative Commons Attribution-NonCommercial 4.0 International License

Links

Text available via DOI:

View graph of relations

Assert use and defectiveness in industrial code

Research output: Contribution in Book/Report/Proceedings - With ISBN/ISSNConference contribution/Paperpeer-review

Published

Standard

Assert use and defectiveness in industrial code. / Counsell, Steve; Hall, Tracy; Shippey, Thomas; Bowes, David; Tahir, Amjed; MacDonell, Stephen.

Proceedings - 2017 IEEE 28th International Symposium on Software Reliability Engineering Workshops, ISSREW 2017. Institute of Electrical and Electronics Engineers Inc., 2017. p. 20-23 8109241.

Research output: Contribution in Book/Report/Proceedings - With ISBN/ISSNConference contribution/Paperpeer-review

Harvard

Counsell, S, Hall, T, Shippey, T, Bowes, D, Tahir, A & MacDonell, S 2017, Assert use and defectiveness in industrial code. in Proceedings - 2017 IEEE 28th International Symposium on Software Reliability Engineering Workshops, ISSREW 2017., 8109241, Institute of Electrical and Electronics Engineers Inc., pp. 20-23, 28th IEEE International Symposium on Software Reliability Engineering Workshops, ISSREW 2017, Toulouse, France, 23/10/17. https://doi.org/10.1109/ISSREW.2017.20

APA

Counsell, S., Hall, T., Shippey, T., Bowes, D., Tahir, A., & MacDonell, S. (2017). Assert use and defectiveness in industrial code. In Proceedings - 2017 IEEE 28th International Symposium on Software Reliability Engineering Workshops, ISSREW 2017 (pp. 20-23). [8109241] Institute of Electrical and Electronics Engineers Inc.. https://doi.org/10.1109/ISSREW.2017.20

Vancouver

Counsell S, Hall T, Shippey T, Bowes D, Tahir A, MacDonell S. Assert use and defectiveness in industrial code. In Proceedings - 2017 IEEE 28th International Symposium on Software Reliability Engineering Workshops, ISSREW 2017. Institute of Electrical and Electronics Engineers Inc. 2017. p. 20-23. 8109241 https://doi.org/10.1109/ISSREW.2017.20

Author

Counsell, Steve ; Hall, Tracy ; Shippey, Thomas ; Bowes, David ; Tahir, Amjed ; MacDonell, Stephen. / Assert use and defectiveness in industrial code. Proceedings - 2017 IEEE 28th International Symposium on Software Reliability Engineering Workshops, ISSREW 2017. Institute of Electrical and Electronics Engineers Inc., 2017. pp. 20-23

Bibtex

@inproceedings{ecf90243b44b40c8b7b2e30d212ae68f,
title = "Assert use and defectiveness in industrial code",
abstract = "The use of asserts in code has received increasing attention in the software engineering community in the past few years, even though it has been a recognized programming construct for many decades. A previous empirical study by Casalnuovo showed that methods containing asserts had fewer defects than those that did not. In this paper, we analyze the test classes of two industrial telecom Java systems to lend support to, or refute that finding. We also analyze the physical position of asserts in methods to determine if there is a relationship between assert placement and method defect-proneness. Finally, we explore the role of test method size and the relationship it has with asserts. In terms of the previous study by Casalnuovo, we found only limited evidence to support the earlier results. We did however find that defective methods with one assert tended to be located at significantly lower levels of the class position-wise than non-defective methods. Finally, method size seemed to correlate strongly with asserts, but surprisingly less so when we excluded methods with just one assert. The work described highlights the need for more studies into this aspect of code, one which has strong links with code comprehension.",
keywords = "Assert, Defect, Empirical, Industry",
author = "Steve Counsell and Tracy Hall and Thomas Shippey and David Bowes and Amjed Tahir and Stephen MacDonell",
note = "{\textcopyright}2017 IEEE. Personal use of this material is permitted. However, permission to reprint/republish this material for advertising or promotional purposes or for creating new collective works for resale or redistribution to servers or lists, or to reuse any copyrighted component of this work in other works must be obtained from the IEEE.; 28th IEEE International Symposium on Software Reliability Engineering Workshops, ISSREW 2017 ; Conference date: 23-10-2017 Through 26-10-2017",
year = "2017",
month = nov,
day = "14",
doi = "10.1109/ISSREW.2017.20",
language = "English",
pages = "20--23",
booktitle = "Proceedings - 2017 IEEE 28th International Symposium on Software Reliability Engineering Workshops, ISSREW 2017",
publisher = "Institute of Electrical and Electronics Engineers Inc.",
address = "United States",

}

RIS

TY - GEN

T1 - Assert use and defectiveness in industrial code

AU - Counsell, Steve

AU - Hall, Tracy

AU - Shippey, Thomas

AU - Bowes, David

AU - Tahir, Amjed

AU - MacDonell, Stephen

N1 - ©2017 IEEE. Personal use of this material is permitted. However, permission to reprint/republish this material for advertising or promotional purposes or for creating new collective works for resale or redistribution to servers or lists, or to reuse any copyrighted component of this work in other works must be obtained from the IEEE.

PY - 2017/11/14

Y1 - 2017/11/14

N2 - The use of asserts in code has received increasing attention in the software engineering community in the past few years, even though it has been a recognized programming construct for many decades. A previous empirical study by Casalnuovo showed that methods containing asserts had fewer defects than those that did not. In this paper, we analyze the test classes of two industrial telecom Java systems to lend support to, or refute that finding. We also analyze the physical position of asserts in methods to determine if there is a relationship between assert placement and method defect-proneness. Finally, we explore the role of test method size and the relationship it has with asserts. In terms of the previous study by Casalnuovo, we found only limited evidence to support the earlier results. We did however find that defective methods with one assert tended to be located at significantly lower levels of the class position-wise than non-defective methods. Finally, method size seemed to correlate strongly with asserts, but surprisingly less so when we excluded methods with just one assert. The work described highlights the need for more studies into this aspect of code, one which has strong links with code comprehension.

AB - The use of asserts in code has received increasing attention in the software engineering community in the past few years, even though it has been a recognized programming construct for many decades. A previous empirical study by Casalnuovo showed that methods containing asserts had fewer defects than those that did not. In this paper, we analyze the test classes of two industrial telecom Java systems to lend support to, or refute that finding. We also analyze the physical position of asserts in methods to determine if there is a relationship between assert placement and method defect-proneness. Finally, we explore the role of test method size and the relationship it has with asserts. In terms of the previous study by Casalnuovo, we found only limited evidence to support the earlier results. We did however find that defective methods with one assert tended to be located at significantly lower levels of the class position-wise than non-defective methods. Finally, method size seemed to correlate strongly with asserts, but surprisingly less so when we excluded methods with just one assert. The work described highlights the need for more studies into this aspect of code, one which has strong links with code comprehension.

KW - Assert

KW - Defect

KW - Empirical

KW - Industry

U2 - 10.1109/ISSREW.2017.20

DO - 10.1109/ISSREW.2017.20

M3 - Conference contribution/Paper

AN - SCOPUS:85040580973

SP - 20

EP - 23

BT - Proceedings - 2017 IEEE 28th International Symposium on Software Reliability Engineering Workshops, ISSREW 2017

PB - Institute of Electrical and Electronics Engineers Inc.

T2 - 28th IEEE International Symposium on Software Reliability Engineering Workshops, ISSREW 2017

Y2 - 23 October 2017 through 26 October 2017

ER -