%%% -*-BibTeX-*- %%% ==================================================================== %%% BibTeX-file{ %%% author = "Nelson H. F. Beebe", %%% version = "1.96", %%% date = "28 March 2026", %%% time = "08:21:23 MDT", %%% filename = "tosem.bib", %%% address = "University of Utah %%% Department of Mathematics, 110 LCB %%% 155 S 1400 E RM 233 %%% Salt Lake City, UT 84112-0090 %%% USA", %%% telephone = "+1 801 581 5254", %%% URL = "https://www.math.utah.edu/~beebe", %%% checksum = "44579 52901 260726 2525855", %%% email = "beebe at math.utah.edu, beebe at acm.org, %%% beebe at computer.org (Internet)", %%% codetable = "ISO/ASCII", %%% keywords = "bibliography; BibTeX; ACM Transactions on %%% Software Engineering and Methodology", %%% license = "public domain", %%% supported = "no", %%% docstring = "This is a COMPLETE BibTeX bibliography for %%% the journal ACM Transactions on Software %%% Engineering and Methodology (CODEN ATSMER, %%% ISSN 1049-331X (print), 1557-7392 %%% (electronic)), for 1992--date. %%% %%% Publication began with volume 1, number 1, in %%% January 1992. The journal appears quarterly. %%% %%% The journal has a joint World-Wide Web site %%% at: %%% %%% http://www.acm.org/pubs/tosem %%% %%% Tables-of-contents of all issues are %%% available at: %%% %%% http://www.acm.org/pubs/contents/journals/tosem/ %%% https://dl.acm.org/loi/tosem %%% %%% Qualified subscribers can retrieve the full %%% text of recent articles in PDF form. %%% %%% At version 1.96, the COMPLETE journal %%% coverage looked like this: %%% %%% 1992 ( 15) 2004 ( 10) 2016 ( 17) %%% 1993 ( 13) 2005 ( 15) 2017 ( 13) %%% 1994 ( 12) 2006 ( 12) 2018 ( 25) %%% 1995 ( 12) 2007 ( 19) 2019 ( 28) %%% 1996 ( 14) 2008 ( 23) 2020 ( 33) %%% 1997 ( 13) 2009 ( 14) 2021 ( 57) %%% 1998 ( 14) 2010 ( 14) 2022 ( 86) %%% 1999 ( 13) 2011 ( 18) 2023 ( 161) %%% 2000 ( 14) 2012 ( 19) 2024 ( 223) %%% 2001 ( 11) 2013 ( 38) 2025 ( 242) %%% 2002 ( 15) 2014 ( 47) 2026 ( 115) %%% 2003 ( 14) 2015 ( 24) %%% %%% Article: 1413 %%% %%% Total entries: 1413 %%% %%% The initial draft of this bibliography was %%% derived from data at the ACM Web site. %%% %%% ACM copyrights explicitly permit abstracting %%% with credit, so article abstracts, keywords, %%% and subject classifications have been %%% included in this bibliography wherever %%% available. %%% %%% The bibsource keys in the bibliography %%% entries below indicate the data sources. %%% %%% URL keys in the bibliography point to %%% World Wide Web locations of additional %%% information about the entry. %%% %%% Spelling has been verified with the UNIX %%% spell and GNU ispell programs using the %%% exception dictionary stored in the %%% companion file with extension .sok. %%% %%% BibTeX citation tags are uniformly chosen %%% as name:year:abbrev, where name is the %%% family name of the first author or editor, %%% year is a 4-digit number, and abbrev is a %%% 3-letter condensation of important title %%% words. Citation tags were automatically %%% generated by software developed for the %%% BibNet Project. %%% %%% In this bibliography, entries are sorted in %%% publication order, using ``bibsort -byvolume.'' %%% %%% The checksum field above contains a CRC-16 %%% checksum as the first value, followed by the %%% equivalent of the standard UNIX wc (word %%% count) utility output of lines, words, and %%% characters. This is produced by Robert %%% Solovay's checksum utility.", %%% } %%% ==================================================================== @Preamble{"\input bibnames.sty" # "\ifx \undefined \emph \def \emph #1{{{\em #1\/}}} \fi" } %%% ==================================================================== %%% Acknowledgement abbreviations: @String{ack-nhfb = "Nelson H. F. Beebe, University of Utah, Department of Mathematics, 110 LCB, 155 S 1400 E RM 233, Salt Lake City, UT 84112-0090, USA, Tel: +1 801 581 5254, e-mail: \path|beebe@math.utah.edu|, \path|beebe@acm.org|, \path|beebe@computer.org| (Internet), URL: \path|https://www.math.utah.edu/~beebe/|"} %%% ==================================================================== %%% Journal abbreviations: @String{j-TOSEM = "ACM Transactions on Software Engineering and Methodology"} %%% ==================================================================== %%% Bibliography entries: @Article{Offutt:1992:IST, author = "A. Jefferson Offutt", title = "Investigations of the software testing coupling effect", journal = j-TOSEM, volume = "1", number = "1", pages = "5--20", month = jan, year = "1992", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Apr 20 08:21:35 MDT 2001", bibsource = "http://www.acm.org/pubs/toc/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "http://www.acm.org/pubs/articles/journals/tosem/1992-1-1/p5-offutt/p5-offutt.pdf; http://www.acm.org/pubs/citations/journals/tosem/1992-1-1/p5-offutt/", abstract = "Fault-based testing strategies test software by focusing on specific, common types of faults. The {\em coupling effect\/} hypothesizes that test data sets that detect simple types of faults are sensitive enough to detect more complex types of faults. This paper describes empirical investigations into the coupling effect over a specific class of software faults. All of the results from this investigation support the validity of the coupling effect. The major conclusion from this investigation is the fact that by explicitly testing for simple faults, we are also implicitly testing for more complicated faults, giving us confidence that fault-based testing is an effective way to test software.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", generalterms = "Experimentation; Reliability; Verification", journal-URL = "https://dl.acm.org/loi/tosem", keywords = "fault-based testing; mutation; software testing; unit testing", subject = "Software --- Software Engineering --- Testing and Debugging (D.2.5): {\bf Testing tools (e.g., data generators, coverage testing)}; Software --- Software Engineering --- Software/Program Verification (D.2.4): {\bf Reliability}", } @Article{Olender:1992:ISA, author = "Kurt M. Olender and Leon J. Osterweil", title = "Interprocedural static analysis of sequencing constraints", journal = j-TOSEM, volume = "1", number = "1", pages = "21--52", month = jan, year = "1992", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Apr 20 08:21:35 MDT 2001", bibsource = "http://www.acm.org/pubs/toc/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "http://www.acm.org/pubs/articles/journals/tosem/1992-1-1/p21-olender/p21-olender.pdf; http://www.acm.org/pubs/citations/journals/tosem/1992-1-1/p21-olender/", abstract = "This paper describes a system that automatically performs static interprocedural sequencing analysis from programmable constraint specifications. We describe the algorithms used for interprocedural analysis, relate the problems arising from the analysis of real-world programs, and show how these difficulties were overcome. Finally, we sketch the architecture of our prototype analysis system (called Cesar) and describe our experiences to date with its use, citing performance and error detection characteristics.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", generalterms = "Algorithms; Languages; Reliability; Verification", journal-URL = "https://dl.acm.org/loi/tosem", keywords = "error detection; interprocedural data flow analysis; sequencing constraints", subject = "Software --- Software Engineering --- Software/Program Verification (D.2.4): {\bf Validation}; Software --- Software Engineering --- Testing and Debugging (D.2.5): {\bf Debugging aids}; Software --- Software Engineering --- Requirements/Specifications (D.2.1): {\bf Methodologies (e.g., object-oriented, structured)}; Software --- Programming Techniques --- Sequential Programming (D.1.4); Software --- Software Engineering --- Design Tools and Techniques (D.2.2): {\bf Computer-aided software engineering (CASE)}; Software --- Software Engineering --- Software/Program Verification (D.2.4): {\bf Reliability}; Software --- Software Engineering --- Requirements/Specifications (D.2.1): {\bf Languages}", } @Article{Basili:1992:RAC, author = "Victor R. Basili and Gianluigi Caldiera and Giovanni Cantone", title = "A reference architecture for the component factory", journal = j-TOSEM, volume = "1", number = "1", pages = "53--80", month = jan, year = "1992", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Apr 20 08:21:35 MDT 2001", bibsource = "http://www.acm.org/pubs/toc/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "http://www.acm.org/pubs/articles/journals/tosem/1992-1-1/p53-basili/p53-basili.pdf; http://www.acm.org/pubs/citations/journals/tosem/1992-1-1/p53-basili/", abstract = "Software reuse can be achieved through an organization that focuses on utilization of life cycle products from previous developments. The component factory is both an example of the more general concepts of experience and domain factory and an organizational unit worth being considered independently. The critical features of such an organization are flexibility and continuous improvement. In order to achieve these features we can represent the architecture of the factory at different levels of abstraction and define a reference architecture from which specific architectures can be derived by instantiation. A reference architecture is an implementation and organization independent representation of the component factory and its environment. The paper outlines this reference architecture, discusses the instantiation process, and presents some examples of specific architectures by comparing them in the framework of the reference model.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", generalterms = "Design; Economics; Management; Measurement; Performance", journal-URL = "https://dl.acm.org/loi/tosem", keywords = "component factory; experience factory; reference architecture; reusability", subject = "Software --- Software Engineering --- Management (D.2.9); Software --- Software Engineering --- Miscellaneous (D.2.m): {\bf Reusable software**}; Computing Milieux --- Management of Computing and Information Systems --- Software Management (K.6.3): {\bf Software development}; Software --- Software Engineering --- Requirements/Specifications (D.2.1): {\bf Methodologies (e.g., object-oriented, structured)}; Software --- Software Engineering --- Design Tools and Techniques (D.2.2): {\bf Software libraries}", } @Article{Trammell:1992:APC, author = "Carmen J. Trammell and Leon H. Binder and Cathrine E. Snyder", title = "The automated production control documentation system: a case study in cleanroom software engineering", journal = j-TOSEM, volume = "1", number = "1", pages = "81--94", month = jan, year = "1992", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Apr 20 08:21:35 MDT 2001", bibsource = "http://www.acm.org/pubs/toc/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "http://www.acm.org/pubs/articles/journals/tosem/1992-1-1/p81-trammell/p81-trammell.pdf; http://www.acm.org/pubs/citations/journals/tosem/1992-1-1/p81-trammell/", abstract = "A prototype software system was developed for the U.S. Naval Underwater Systems Center(NUSC) as a demonstration of the Cleanroom Software Engineering methodology. The Cleanroom method is a team approach to the incremental development of software under statistical quality control. Cleanroom's formal methods of Box Structure specification and design, functional verification, and statistical testing were used by a four-person team to develop the Automated Production Control Documentation(APCODOC) system, a relational database application. As is typical in Cleanroom developments, correctness of design and code were ensured through team reviews. Eighteen errors were found during functional verification of the design, and nineteen errors were found during walkthrough of the 1820 lines of FOXBASE code. The software was not executed by developers prior to independent testing (i.e., there was no debugging). There were no errors in compilation, no failures during statistical certification testing, and the software was certified at the target levels of reliability and confidence. Team members attribute the ultimate error-free compilation and failure-free execution of the software to the rigor of the methodology and the intellectual control afforded by the team approach.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", generalterms = "Design; Management; Performance; Reliability; Verification", journal-URL = "https://dl.acm.org/loi/tosem", keywords = "box structures; cleanroom software engineering; statistical quality control; statistical testing", subject = "Software --- Software Engineering --- Requirements/Specifications (D.2.1): {\bf Methodologies (e.g., object-oriented, structured)}; Software --- Software Engineering --- Software/Program Verification (D.2.4): {\bf Correctness proofs}; Software --- Software Engineering --- Management (D.2.9): {\bf Programming teams}; Computing Milieux --- Management of Computing and Information Systems --- Software Management (K.6.3): {\bf Software development}; Software --- Software Engineering --- Software/Program Verification (D.2.4): {\bf Reliability}", } @Article{Ballance:1992:PLB, author = "Robert A. Ballance and Susan L. Graham and Michael L. Van de Vanter", title = "The {Pan} language-based editing system", journal = j-TOSEM, volume = "1", number = "1", pages = "95--127", month = jan, year = "1992", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Apr 20 08:21:35 MDT 2001", bibsource = "http://www.acm.org/pubs/toc/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "http://www.acm.org/pubs/articles/journals/tosem/1992-1-1/p95-ballance/p95-ballance.pdf; http://www.acm.org/pubs/citations/journals/tosem/1992-1-1/p95-ballance/", abstract = "Powerful editing systems for developing complex software documents are difficult to engineer. Besides requiring efficient incremental algorithms and complex data structures, such editors must accommodate flexible editing styles, provide a consistent, coherent, and powerful user interface, support individual variations and projectwide configurations, maintain a sharable database of information concerning the documents being edited, and integrate smoothly with the other tools in the environment. {\em Pan\/} is a language-based editing and browsing system that exhibits these characteristics. This paper surveys the design and engineering of {\em Pan}, paying particular attention to a number of issues that pervade the system: incremental checking and analysis, information retention in the presence of change, tolerance for errors and anomalies, and extension facilities.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", generalterms = "Design; Documentation; Human Factors; Languages", journal-URL = "https://dl.acm.org/loi/tosem", keywords = "coherent user interfaces; colander; contextual constraint; extension facilities; grammatical abstraction; interactive programming environment; Ladle; logic programming; logical constraint grammar; Pan; reason maintenance; syntax-recognizing editor; tolerance for errors and anomalies", subject = "Software --- Software Engineering --- Coding Tools and Techniques (D.2.3): {\bf Program editors}; Software --- Software Engineering --- Programming Environments (D.2.6); Software --- Software Engineering --- Design Tools and Techniques (D.2.2): {\bf User interfaces}; Software --- Software Engineering --- Distribution, Maintenance, and Enhancement (D.2.7)", } @Article{Engels:1992:BIS, author = "G. Engels and C. Lewerentz and M. Nagl and W. Sch{\"a}fer and A. Sch{\"u}rr", title = "Building integrated software development environments. {Part} {I} tool specification", journal = j-TOSEM, volume = "1", number = "2", pages = "135--167", month = apr, year = "1992", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Apr 20 08:21:35 MDT 2001", bibsource = "http://www.acm.org/pubs/toc/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "http://www.acm.org/pubs/articles/journals/tosem/1992-1-2/p135-engels/p135-engels.pdf; http://www.acm.org/pubs/citations/journals/tosem/1992-1-2/p135-engels/", abstract = "The conceptual modeling approach of the IPSEN (Integrated Project Support Environment) project for building highly integrated environments is based on using attributed graphs to model and implement arbitrary object structures, in particular all kinds of software documents and their relationships. A language based on graph grammars, called PROGRESS (PROgrammed Graph REwriting SyStems), and a suitable method for the application of this language, called graph grammar engineering, have been developed over the last ten years. This language and method are being extensively used for specifying the complex graph structures of internal document representations as well as for specifying the functionality of all tools (editors, browsers, analyzers, debuggers) working on these internal representations. This paper explains the language and the method for applying the language based on a pragmatic nontrivial example of a software production process and its corresponding documents. In particular, it is shown why and how a graph grammar-based strongly typed language is perfectly suitable to formally specify highly integrated software tools. In addition, it is shown that the implementation of these tools (i.e., an environment composed of these tools) is systematically being derived from the formal specifications.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", generalterms = "Design; Languages", journal-URL = "https://dl.acm.org/loi/tosem", keywords = "attribute grammars; attributed graphs; environment generators; graph grammars", subject = "Software --- Software Engineering --- Requirements/Specifications (D.2.1); Software --- Software Engineering --- Design Tools and Techniques (D.2.2); Software --- Software Engineering --- Programming Environments (D.2.6); Software --- Software Engineering --- Design** (D.2.10); Information Systems --- Database Management --- Languages (H.2.3); Software --- Programming Languages --- Language Classifications (D.3.2)", } @Article{Kiper:1992:STR, author = "James D. Kiper", title = "Structural testing of rule-based expert systems", journal = j-TOSEM, volume = "1", number = "2", pages = "168--187", month = apr, year = "1992", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Apr 20 08:21:35 MDT 2001", bibsource = "http://www.acm.org/pubs/toc/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "http://www.acm.org/pubs/articles/journals/tosem/1992-1-2/p168-kiper/p168-kiper.pdf; http://www.acm.org/pubs/citations/journals/tosem/1992-1-2/p168-kiper/", abstract = "Testing of rule-based expert systems has become a high priority for many organizations as the use of such systems proliferates. Traditional software testing techniques apply to some components of rule-based systems, e.g., the inference engine. However, to structurally test the rule base component requires new techniques or adaptations of existing ones. This paper describes one such adaptation: an extension of data flow path selection in which a graphical representation of a rule base is defined and evaluated. This graphical form, called a logical path graph, captures logical paths through a rule base. These logical paths create precisely the abstractions needed in the testing process. An algorithm for the construction of logical path graphs are analyzed.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", generalterms = "Algorithms; Design; Experimentation; Measurement; Performance; Reliability", journal-URL = "https://dl.acm.org/loi/tosem", keywords = "basis path testing; data flow path selection; expert systems; rule bases; structured testing", subject = "Software --- Software Engineering --- Testing and Debugging (D.2.5); Computing Methodologies --- Artificial Intelligence --- Programming Languages and Software (I.2.5): {\bf Expert system tools and techniques}", } @Article{Schneider:1992:ESF, author = "G. Michael Schneider and Johnny Martin and W. T. Tsai", title = "An experimental study of fault detection in user requirements documents", journal = j-TOSEM, volume = "1", number = "2", pages = "188--204", month = apr, year = "1992", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Apr 20 08:21:35 MDT 2001", bibsource = "http://www.acm.org/pubs/toc/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "http://www.acm.org/pubs/articles/journals/tosem/1992-1-2/p188-schneider/p188-schneider.pdf; http://www.acm.org/pubs/citations/journals/tosem/1992-1-2/p188-schneider/", abstract = "This paper describes a software engineering experiment designed to confirm results from an earlier project which measured fault detection rates in {\em user requirements documents\/} (URD). The experiment described in this paper involves the creation of a standardized URD with a known number of injected faults of specific type. Nine independent inspection teams were given this URD with instructions to locate as many faults as possible using the N-fold requirements inspection technique developed by the authors. Results obtained from this experiment confirm earlier conclusions about the low rate of fault detection in requirements documents using formal inspections and the advantages to be gained using the N-fold inspection method. The experiment also provides new results concerning variability in inspection team performance and the relative difficulty of locating different classes of URD faults.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", generalterms = "Design; Experimentation; Management; Performance; Verification", journal-URL = "https://dl.acm.org/loi/tosem", keywords = "fault detection; inspections; user requirements", subject = "Software --- Software Engineering --- Management (D.2.9): {\bf Programming teams}; Computing Milieux --- Management of Computing and Information Systems --- Software Management (K.6.3): {\bf Software development}; Software --- Software Engineering --- Requirements/Specifications (D.2.1): {\bf Tools}; Software --- Software Engineering --- Requirements/Specifications (D.2.1): {\bf Methodologies (e.g., object-oriented, structured)}", } @Article{Ostertag:1992:CSR, author = "Eduardo Ostertag and James Hendler and Rub{\'e}n Prieto D{\'\i}az and Christine Braun", title = "Computing similarity in a reuse library system: an {AI-based} approach", journal = j-TOSEM, volume = "1", number = "3", pages = "205--228", month = jul, year = "1992", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Apr 20 08:21:35 MDT 2001", bibsource = "http://www.acm.org/pubs/toc/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "http://www.acm.org/pubs/articles/journals/tosem/1992-1-3/p205-ostertag/p205-ostertag.pdf; http://www.acm.org/pubs/citations/journals/tosem/1992-1-3/p205-ostertag/", abstract = "This paper presents an AI based library system for software reuse, called AIRS, that allows a developer to browse a software library in search of components that best meet some stated requirement. A {\em component\/} is described by a set of ({\em feature, term\/}) pairs. A feature represents a classification criterion, and is defined by a set of related terms. The system allows to represent {\em packages\/} (logical units that group a set of components) which are also described in terms of features. Candidate reuse components and packages are selected from the library based on the degree of similarity between their descriptions and a given target description. Similarity is quantified by a nonnegative magnitude ({\em distance\/}) proportional to the effort required to obtain the target given a candidate. Distances are computed by {\em comparator\/} functions based on the {\em subsumption, closeness}, and {\em package\/} relations. We present a formalization of the concepts on which the AIRS system is based. The functionality of a prototype implementation of the AIRS system is illustrated by application to two different software libraries: a set of Ada packages for data structure manipulation, and a set of C components for use in Command, Control, and Information Systems. Finally, we discuss some of the ideas we are currently exploring to automate the construction of AIRS classification libraries.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", generalterms = "Design; Theory", journal-URL = "https://dl.acm.org/loi/tosem", keywords = "facet classification; similarity-based retrieval", subject = "Software --- Software Engineering --- Design Tools and Techniques (D.2.2): {\bf Software libraries}; Software --- Software Engineering --- Metrics (D.2.8): {\bf Complexity measures}; Information Systems --- Information Storage and Retrieval --- Information Search and Retrieval (H.3.3): {\bf Retrieval models}; Computing Milieux --- Management of Computing and Information Systems --- Software Management (K.6.3): {\bf Software selection}; Software --- Software Engineering --- Miscellaneous (D.2.m): {\bf Reusable software**}", } @Article{Sullivan:1992:REI, author = "Kevin J. Sullivan and David Notkin", title = "Reconciling environment integration and software evolution", journal = j-TOSEM, volume = "1", number = "3", pages = "229--268", month = jul, year = "1992", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Apr 20 08:21:35 MDT 2001", bibsource = "http://www.acm.org/pubs/toc/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "http://www.acm.org/pubs/articles/journals/tosem/1992-1-3/p229-sullivan/p229-sullivan.pdf; http://www.acm.org/pubs/citations/journals/tosem/1992-1-3/p229-sullivan/", abstract = "Common software design approaches complicate both tool integration and software evolution when applied in the development of integrated environments. We illustrate this by tracing the evolution of three different designs for a simple integrated environment as representative changes are made to the requirements. We present an approach that eases integration and evolution by preserving tool independence in the face of integration. We design tool integration relationships as separate components called {\em mediators}, and we design tools to implicitly invoke mediators that integrate them. Mediators separate tools from each other, while implicit invocation allows tools to remain independent of mediators. To enable the use of our approach on a range of platforms, we provide a formalized model and requirements for implicit invocation mechanisms. We apply this model both to analyze existing mechanisms and in the design of a mechanism for C++.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", generalterms = "Design; Theory", journal-URL = "https://dl.acm.org/loi/tosem", keywords = "abstract behavior type; behavior abstraction; component independence; environment integration; event mechanism; implicit invocation; integrated environment; mediator; mediator/event design; software evolution; tool integration", subject = "Software --- Software Engineering --- Distribution, Maintenance, and Enhancement (D.2.7): {\bf Enhancement**}; Software --- Software Engineering --- Design** (D.2.10): {\bf Methodologies**}; Computing Milieux --- Management of Computing and Information Systems --- Software Management (K.6.3): {\bf Software development}; Software --- Software Engineering --- Distribution, Maintenance, and Enhancement (D.2.7): {\bf Extensibility**}; Computing Milieux --- Management of Computing and Information Systems --- Software Management (K.6.3): {\bf Software maintenance}; Software --- Software Engineering --- Programming Environments (D.2.6); Software --- Software Engineering --- Design Tools and Techniques (D.2.2); Theory of Computation --- Logics and Meanings of Programs --- Specifying and Verifying and Reasoning about Programs (F.3.1): {\bf Assertions}; Software --- Software Engineering --- Requirements/Specifications (D.2.1): {\bf Methodologies (e.g., object-oriented, structured)}", } @Article{Tyszberowicz:1992:OPL, author = "Shmuel Tyszberowicz and Amiram Yehudai", title = "{OBSERV} --- a prototyping language and environment", journal = j-TOSEM, volume = "1", number = "3", pages = "269--309", month = jul, year = "1992", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Apr 20 08:21:35 MDT 2001", bibsource = "http://www.acm.org/pubs/toc/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "http://www.acm.org/pubs/articles/journals/tosem/1992-1-3/p269-tyszberowicz/p269-tyszberowicz.pdf; http://www.acm.org/pubs/citations/journals/tosem/1992-1-3/p269-tyszberowicz/", abstract = "The OBSERV methodology for software development is based on rapid construction of an executable specification, or prototype, of a systems, which may be examined and modified repeatedly to achieve the desired functionality. The objectives of OBSERV also include facilitating a smooth transition to a target system, and providing means for reusing specification, design, and code of systems and subsystems. We are particularly interested in handling embedded systems, which are likely to have concurrency and have some real-time requirements. \par The OBSERV prototyping language combines several paradigms to express the behavior of a system. The object-oriented approach provides the basic mechanism for building a system from a collection of objects, with well-defined interfaces between them. We use finite-state machines to model the behavior of individual objects. At a lower level, activities that occur within objects, either upon entry to a state or in transition between thus allowing a nonprocedural description. \par The environment provided to a prototype builder is as important as the language. We have made an attempt to provide flexible tools for executing or simulating the prototype being built, as well as for browsing and static checking. The first implementation of the tools was window based but not graphic. A graphic front end, name CRUISE, was developed afterwards. \par A simulation sequence focuses on a single object, which can be as complex as necessary, possibly the entire system, and expects all the interactions between it and the outside world to be achieved by communication between the simulator and the user. The simulator allows the user to easily switch back and forth from one object to another, simulating each object in isolation. \par To enable testing the behavior of a prototype in a realistic environment, it is possible to construct objects that imitate the environment objects. We also allow simulation of systems with missing pieces, by calling upon the user to simulate any such missing piece by himself.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", generalterms = "Design; Documentation; Languages", journal-URL = "https://dl.acm.org/loi/tosem", keywords = "browsers; concurrency; CRUISE; embedded systems; graphical user interface; interactive programming environments; logic programming; modeling with finite state machines; object-oriented approach; OBSERV; real time systems; simulator; software reuse; static checker", subject = "Software --- Software Engineering --- Requirements/Specifications (D.2.1); Software --- Software Engineering --- Design Tools and Techniques (D.2.2); Software --- Software Engineering --- Miscellaneous (D.2.m): {\bf Rapid prototyping**}; Software --- Software Engineering --- Miscellaneous (D.2.m): {\bf Reusable software**}; Software --- Programming Languages --- Language Classifications (D.3.2): {\bf OBSERV}", } @Article{Yang:1992:PIA, author = "Wuu Yang and Susan Horwitz and Thomas Reps", title = "A program integration algorithm that accommodates semantics-preserving transformations", journal = j-TOSEM, volume = "1", number = "3", pages = "310--354", month = jul, year = "1992", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Apr 20 08:21:35 MDT 2001", bibsource = "http://www.acm.org/pubs/toc/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "http://www.acm.org/pubs/articles/journals/tosem/1992-1-3/p310-yang/p310-yang.pdf; http://www.acm.org/pubs/citations/journals/tosem/1992-1-3/p310-yang/", abstract = "Given a program {\em Base\/} and two variants, {\em A\/} and {\em B}, each created by modifying separate copies of {\em Base}, the goal of program integration is to determine whether the modifications interfere, and if they do not, to create an integrated program that includes both sets of changes as well as the portions of {\em Base\/} preserved in both variants. Text-based integration techniques, such as the one used by the Unix {\em diff 3\/} utility, are obviously unsatisfactory because one has no guarantees about how the execution behavior of the integrated program relates to the behaviors of {\em Base}, {\em A}, and {\em B}. The first program-integration algorithm to provide such guarantees was developed by Horwitz et al.[13]. However, a limitation of that algorithm is that it incorporates no notion of semantics-preserving transformations. This limitation causes the algorithm to be overly conservative in its definition of interference. For example, if one variant changes the {\em way\/} a computation is performed (without changing the values computed) while the other variant adds code that uses the result of the computation, the algorithm would classify those changes as interfering. This paper describes a new integration algorithm that is able to accommodate semantics-preserving transformations.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", generalterms = "Algorithms; Design", journal-URL = "https://dl.acm.org/loi/tosem", keywords = "coarsest partition; control dependence; data dependence; data-flow analysis; flow dependence; program dependence graph; program integration; program representation graph; static-single-assignment form", subject = "Software --- Software Engineering --- Design Tools and Techniques (D.2.2): {\bf Programmer workbench**}; Software --- Software Engineering --- Coding Tools and Techniques (D.2.3): {\bf Program editors}; Software --- Software Engineering --- Programming Environments (D.2.6); Software --- Software Engineering --- Distribution, Maintenance, and Enhancement (D.2.7): {\bf Enhancement**}; Software --- Software Engineering --- Distribution, Maintenance, and Enhancement (D.2.7): {\bf Restructuring, reverse engineering, and reengineering}; Software --- Software Engineering --- Distribution, Maintenance, and Enhancement (D.2.7): {\bf Version control}; Software --- Software Engineering --- Management (D.2.9): {\bf Software configuration management}; Software --- Programming Languages --- Processors (D.3.4): {\bf Optimization}; Software --- Programming Languages --- Processors (D.3.4): {\bf Compilers}; Software --- Programming Languages --- Processors (D.3.4): {\bf Interpreters}", } @Article{Batory:1992:DIH, author = "Don Batory and Sean O'Malley", title = "The design and implementation of hierarchical software systems with reusable components", journal = j-TOSEM, volume = "1", number = "4", pages = "355--398", month = oct, year = "1992", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Apr 20 08:21:35 MDT 2001", bibsource = "http://www.acm.org/pubs/toc/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "http://www.acm.org/pubs/articles/journals/tosem/1992-1-4/p355-batory/p355-batory.pdf; http://www.acm.org/pubs/citations/journals/tosem/1992-1-4/p355-batory/", abstract = "We present a domain-independent model of hierarchical software system design and construction that is based on interchangeable software components and large-scale reuse. The model unifies the conceptualizations of two independent projects, Genesis and Avoca, that are successful examples of software component/building-block technologies and domain modeling. Building-block technologies exploit large-scale reuse, rely on open architecture software, and elevate the granularity of programming to the subsystem level. Domain modeling formalizes the similarities and differences among systems of a domain. We believe our model is a blueprint for achieving software component technologies in many domains.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", generalterms = "Design; Standardization", journal-URL = "https://dl.acm.org/loi/tosem", keywords = "domain modeling; open system architectures; reuse; software building-blocks; software design", subject = "Computer Systems Organization --- Computer-Communication Networks --- Network Protocols (C.2.2): {\bf Protocol architecture}; Software --- Programming Techniques --- Object-oriented Programming (D.1.5); Software --- Software Engineering --- Design Tools and Techniques (D.2.2): {\bf Modules and interfaces}; Software --- Software Engineering --- Design Tools and Techniques (D.2.2): {\bf Software libraries}; Software --- Software Engineering --- Distribution, Maintenance, and Enhancement (D.2.7): {\bf Extensibility**}; Software --- Software Engineering --- Design** (D.2.10): {\bf Methodologies**}; Software --- Software Engineering --- Design** (D.2.10): {\bf Representation**}; Software --- Software Engineering --- Miscellaneous (D.2.m): {\bf Rapid prototyping**}; Software --- Software Engineering --- Miscellaneous (D.2.m): {\bf Reusable software**}; Computing Methodologies --- Simulation and Modeling --- Model Development (I.6.5): {\bf Modeling methodologies}", } @Article{Harel:1992:SO, author = "David Harel and Chaim-arie Kahana", title = "On statecharts with overlapping", journal = j-TOSEM, volume = "1", number = "4", pages = "399--421", month = oct, year = "1992", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Apr 20 08:21:35 MDT 2001", bibsource = "http://www.acm.org/pubs/toc/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "http://www.acm.org/pubs/articles/journals/tosem/1992-1-4/p399-harel/p399-harel.pdf; http://www.acm.org/pubs/citations/journals/tosem/1992-1-4/p399-harel/", abstract = "The problem of extending the language of statecharts to include overlapping states is considered. The need for such an extension is motivated and the subtlety of the problem is illustrated by exhibiting the shortcomings of naive approaches. The syntax and formal semantics of our extension are then presented, showing in the process that the definitions for conventional statecharts constitute a special case. Our definitions are rather complex, a fact that we feel points to the inherent difficulty of such an extension. We thus prefer to leave open the question of whether or not it should be adopted in practice.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", generalterms = "Design; Languages", journal-URL = "https://dl.acm.org/loi/tosem", keywords = "higraphs; reactive systems; statecharts; visual language", } @Article{Zeil:1992:DLE, author = "Steven J. Zeil and Faten H. Afifi and Lee J. White", title = "Detection of linear errors via domain testing", journal = j-TOSEM, volume = "1", number = "4", pages = "422--451", month = oct, year = "1992", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Apr 20 08:21:35 MDT 2001", bibsource = "http://www.acm.org/pubs/toc/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "http://www.acm.org/pubs/articles/journals/tosem/1992-1-4/p422-zeil/p422-zeil.pdf; http://www.acm.org/pubs/citations/journals/tosem/1992-1-4/p422-zeil/", abstract = "Domain testing attempts to find errors in the numeric expressions affecting the flow of control through a program. Intuitively, domain testing provides a systematic form of boundary value testing for the conditional statements within a program. Several forms of domain testing have been proposed, all dealing with the detection of linear errors in linear functions. \par Perturbation analysis has been previously developed as a measure of the volume of faults, from within a selected space of possible faults, left undetected by a test set. It is adapted here to errors and error spaces. The adapted form is used to show that the different forms of domain testing are closer in error detection ability than had been supposed. They may all be considered effective for finding linear errors in linear predicate functions. A simple extension is proposed, which allows them to detect linear errors in nonlinear predicate functions using only a single additional test point.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", generalterms = "Reliability; Verification", journal-URL = "https://dl.acm.org/loi/tosem", keywords = "domain testing; perturbation testing", subject = "Software --- Software Engineering --- Testing and Debugging (D.2.5); Mathematics of Computing --- Numerical Analysis --- Ordinary Differential Equations (G.1.7): {\bf Boundary value problems}", } @Article{Broy:1993:FST, author = "Manfred Broy", title = "Functional specification of time-sensitive communicating systems", journal = j-TOSEM, volume = "2", number = "1", pages = "1--46", month = jan, year = "1993", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Apr 20 08:21:35 MDT 2001", bibsource = "http://www.acm.org/pubs/toc/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "http://www.acm.org/pubs/articles/journals/tosem/1993-2-1/p1-broy/p1-broy.pdf; http://www.acm.org/pubs/citations/journals/tosem/1993-2-1/p1-broy/", abstract = "A formal model and a logical framework for the functional specification of time-sensitive communicating systems and their interacting components are outlined. The specification method is modular with respect to sequential composition, parallel composition, and communication feedback. Nondeterminism is included by underspecification. The application of the specification method to timed communicating functions is demonstrated. Abstractions from time are studied. In particular, a rational is given for the chosen concepts of the functional specification technique. The relationship between system models based on nondeterminism and system models based on explicit time notions is investigated. Forms of reasoning are considered. The alternating bit protocol is used as a running example.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", generalterms = "Design; Experimentation; Theory; Verification", journal-URL = "https://dl.acm.org/loi/tosem", keywords = "functional system models; real-time systems; specification", subject = "Software --- Software Engineering --- Software/Program Verification (D.2.4); Software --- Operating Systems --- Organization and Design (D.4.7); Software --- Software Engineering --- Requirements/Specifications (D.2.1); Computer Systems Organization --- Computer-Communication Networks --- Network Protocols (C.2.2)", } @Article{Kaiser:1993:PDI, author = "Gail E. Kaiser and Simon M. Kaplan", title = "Parallel and distributed incremental attribute evaluation algorithms for multiuser software development environments", journal = j-TOSEM, volume = "2", number = "1", pages = "47--92", month = jan, year = "1993", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Apr 20 08:21:35 MDT 2001", bibsource = "http://www.acm.org/pubs/toc/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "http://www.acm.org/pubs/articles/journals/tosem/1993-2-1/p47-kaiser/p47-kaiser.pdf; http://www.acm.org/pubs/citations/journals/tosem/1993-2-1/p47-kaiser/", abstract = "The problem of {\em change propagation\/} in multiuser software development environments distributed across a local-area network is addressed. The program is modeled as an attributed parse tree segmented among multiple user processes and changes are modeled as subtree replacements requested asynchronously by individual users. Change propagation is then implemented using decentralized incremental evaluation of an attribute grammar that defines the static semantic properties of the programming language. Building up to our primary result, we first present algorithms that support parallel evaluation on a centralized tree in response to single edits using a singe editing cursor and multiple edits with multiple editing cursors. Then we present our algorithm for parallel evaluation on a decentralized tree. We also present a protocol to guarantee reliability of the evaluation algorithm as components of the decentralized tree become unavailable due to failures and return to availability.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", generalterms = "Algorithms; Design; Languages; Reliability", journal-URL = "https://dl.acm.org/loi/tosem", keywords = "attribute grammar; change propagation; distributed; incremental algorithm; parallel; reliability", subject = "Software --- Software Engineering --- Programming Environments (D.2.6): {\bf Interactive environments}; Software --- Software Engineering --- Design Tools and Techniques (D.2.2): {\bf Modules and interfaces}; Software --- Software Engineering --- Design Tools and Techniques (D.2.2): {\bf Computer-aided software engineering (CASE)}; Software --- Software Engineering --- Coding Tools and Techniques (D.2.3): {\bf Program editors}; Software --- Programming Languages --- Formal Definitions and Theory (D.3.1): {\bf Semantics}; Software --- Programming Techniques --- Concurrent Programming (D.1.3)", } @Article{Whittaker:1993:MAS, author = "James A. Whittaker and J. H. Poore", title = "{Markov} analysis of software specifications", journal = j-TOSEM, volume = "2", number = "1", pages = "93--106", month = jan, year = "1993", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Apr 20 08:21:35 MDT 2001", bibsource = "http://www.acm.org/pubs/toc/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "http://www.acm.org/pubs/articles/journals/tosem/1993-2-1/p93-whittaker/p93-whittaker.pdf; http://www.acm.org/pubs/citations/journals/tosem/1993-2-1/p93-whittaker/", abstract = "A procedure for modeling software usage with the finite state, discrete parameter Markov chain is described. It involves rigorous analysis of the specification before design and coding begin. Many benefits emerge from this process, including the ability to synthesize a macro level usage distribution from a micro level understanding of how the software will be used. This usage distribution becomes the basis for a statistical test of the software, which is fundamental to the Cleanroom development process. Some analytical results known for Markov chains that have meaningful implications and interpretations for the software development process are described.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", generalterms = "Design; Management; Measurement; Reliability; Standardization; Theory; Verification", journal-URL = "https://dl.acm.org/loi/tosem", keywords = "box structure method; certification; Cleanroom; Markov chain; software specification; statistical test; stochastic process; usage distribution", subject = "Software --- Software Engineering --- Requirements/Specifications (D.2.1): {\bf Methodologies (e.g., object-oriented, structured)}; Mathematics of Computing --- Probability and Statistics (G.3); Software --- Software Engineering --- Testing and Debugging (D.2.5): {\bf Testing tools (e.g., data generators, coverage testing)}; Software --- Software Engineering --- Metrics (D.2.8): {\bf Complexity measures}; Software --- Software Engineering --- Management (D.2.9): {\bf Software quality assurance (SQA)}; Computing Methodologies --- Simulation and Modeling --- Model Development (I.6.5): {\bf Modeling methodologies}", } @Article{DeMillo:1993:ERA, author = "Richard A. DeMillo and A. Jefferson Offutt", title = "Experimental results from an automatic test case generator", journal = j-TOSEM, volume = "2", number = "2", pages = "109--127", month = apr, year = "1993", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Apr 20 08:21:35 MDT 2001", bibsource = "http://www.acm.org/pubs/toc/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "http://www.acm.org/pubs/articles/journals/tosem/1993-2-2/p109-demillo/p109-demillo.pdf; http://www.acm.org/pubs/citations/journals/tosem/1993-2-2/p109-demillo/", abstract = "Constraint-based testing is a novel way of generating test data to detect specific types of common programming faults. The conditions under which faults will be detected are encoded as mathematical systems of constraints in terms of program symbols. A set of tools, collectively called Godzilla, has been implemented that automatically generates constraint systems and solves them to create test cases for use by the Mothra testing system. Experimental results from using Godzilla show that the technique can produce test data that is very close in terms of mutation adequacy to test data that is produced manually, and at substantially reduced cost. Additionally, these experiments have suggested a new procedure for unit testing, where test cases are viewed as throw-away items rather than scarce resources.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", generalterms = "Experimentation; Measurement; Performance; Reliability; Verification", journal-URL = "https://dl.acm.org/loi/tosem", keywords = "adequacy; constraints; mutation analysis", subject = "Software --- Software Engineering --- Testing and Debugging (D.2.5): {\bf Testing tools (e.g., data generators, coverage testing)}", } @Article{Feldman:1993:SRS, author = "Yishai A. Feldman and Haim Schneider", title = "Simulating reactive systems by deduction", journal = j-TOSEM, volume = "2", number = "2", pages = "128--175", month = apr, year = "1993", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Apr 20 08:21:35 MDT 2001", bibsource = "http://www.acm.org/pubs/toc/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "http://www.acm.org/pubs/articles/journals/tosem/1993-2-2/p128-feldman/p128-feldman.pdf; http://www.acm.org/pubs/citations/journals/tosem/1993-2-2/p128-feldman/", abstract = "Debugging is one of the main uses of simulation. Localizing bugs or finding the reasons for unclear behavior involves going backwards in time, whereas simulation goes forward in time. Therefore, identifying causes with the aid of most existing simulation tools usually requires repeating the simulation several times, each time with reduced holes in the sieve. An alternative is simulation by deduction, a technique in which the steps in the dynamic behavior of the simulated model are deduced by a reasoning system. A simulation system that uses simulation by deduction can give direct answers to questions about the reasons for the simulation results. By recording the support for its deductions, such a system can answer ``why'' and ``why not'' questions about the scenario. \par Another benefit of simulation by deduction is that it enables symbolic simulation, that is, simulating a scenario given only a partial description of the environment and the simulated model. This allows verifying properties of an evolving design at any stage of the design process, and thus checking the consequences of the design decisions made so far. In order to allow deducing as much as possible from partial information, the axiom system has to be minimalistic, i.e., axioms have to require the minimum amount of knowledge of simulation inputs. \par These ideas were implemented in a system called SIP, which simulates the behavior of reactive systems. SIP is capable of answering ``why,'' ``why not,'' and ``what if'' questions. It also has a limited capability of dealing with partial knowledge. SIP is based on a reasoning system that is responsible for deducing the effects of the external inputs on the state of the simulated model, and recording the support for its deductions. The logical basis for the deduction of a step in SIP is provided by a minimalistic axiom system for statecharts. \par Although SIP simulates reactive systems described as statecharts, the principle of simulation by deduction is applicable to other types of systems and descriptions, provided only that they have a well-defined formal semantics.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", generalterms = "Design; Theory", journal-URL = "https://dl.acm.org/loi/tosem", subject = "Computing Methodologies --- Artificial Intelligence --- Deduction and Theorem Proving (I.2.3): {\bf Deduction}; Computing Methodologies --- Simulation and Modeling --- Simulation Support Systems (I.6.7): {\bf Environments}; Computer Applications --- Computers in Other Systems (J.7)", } @Article{Klint:1993:MEG, author = "P. Klint", title = "A meta-environment for generating programming environments", journal = j-TOSEM, volume = "2", number = "2", pages = "176--201", month = apr, year = "1993", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Apr 20 08:21:35 MDT 2001", bibsource = "http://www.acm.org/pubs/toc/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "http://www.acm.org/pubs/articles/journals/tosem/1993-2-2/p176-klint/p176-klint.pdf; http://www.acm.org/pubs/citations/journals/tosem/1993-2-2/p176-klint/", abstract = "Over the last decade, considerable progress has been made in solving the problems of automatic generation of programming/development environments, given a formal definition of some programming or specification language. In most cases, research has focused on the functionality and efficiency of the generated environments, and, of course, these aspects will ultimately determine the acceptance of environment generators. However, only marginal attention has been paid to the development process of formal language definitions itself. Assuming that the quality of automatically generated environments will be satisfactory within a few years, the development costs of formal language definitions will then become the next limiting factor determining ultimate success and acceptance of environment generators. \par In this paper we describe the design and implementation of a meta-environment (a development environment for formal language definitions) based on the formalism ASF + SDF. This meta-environment is currently being implemented as part of the Centaur system and is, at least partly, obtained by applying environment generation techniques to the language definition formalism itself. A central problem is providing fully interactive editing of modular language definitions such that modifications made to the language definition during editing can be translated immediately to modifications in the programming environment generated from the original language definition. Therefore, some of the issues addressed are the treatment of formalisms with user-definable syntax and incremental program generation techniques.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", generalterms = "Design; Languages; Theory", journal-URL = "https://dl.acm.org/loi/tosem", subject = "Software --- Software Engineering --- Programming Environments (D.2.6); Computing Methodologies --- Artificial Intelligence --- Automatic Programming (I.2.2); Software --- Programming Languages --- Formal Definitions and Theory (D.3.1)", } @Article{Ciancarini:1993:CRB, author = "Paolo Ciancarini", title = "Coordinating rule-based software processes with {ESP}", journal = j-TOSEM, volume = "2", number = "3", pages = "203--227", month = jul, year = "1993", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Apr 20 08:21:35 MDT 2001", bibsource = "http://www.acm.org/pubs/toc/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "http://www.acm.org/pubs/articles/journals/tosem/1993-2-3/p203-ciancarini/p203-ciancarini.pdf; http://www.acm.org/pubs/citations/journals/tosem/1993-2-3/p203-ciancarini/", abstract = "ESP is a language for modeling rule-based software processes that take place in a distributed software development environment. It is based on PoliS, an abstract coordination model that relies on Multiple Tuple Spaces, i.e., collections of tuples a la Linda. PoliS extends Linda aiming at the specification and coordination of logically distributed systems. ESP (Extended Shared Prolog) combines the PoliS mechanisms to deal with concurrency and distribution, with the logic-programming language Prolog, to deal with rules and deduction. Such a combination of a coordination model and a logic language provides a powerful framework in which experiments about rule-based software process programming can be performed and evaluated.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", generalterms = "Design; Languages", journal-URL = "https://dl.acm.org/loi/tosem", keywords = "concurrency; logic programming; multiuser programming environment; rule-based programming; software process; software process modeling", subject = "Software --- Programming Techniques --- Concurrent Programming (D.1.3); Software --- Software Engineering --- Programming Environments (D.2.6); Computing Methodologies --- Artificial Intelligence --- Deduction and Theorem Proving (I.2.3): {\bf Deduction}; Software --- Programming Languages --- Language Classifications (D.3.2): {\bf Concurrent, distributed, and parallel languages}; Computing Methodologies --- Artificial Intelligence --- Deduction and Theorem Proving (I.2.3): {\bf Logic programming}; Computing Milieux --- Management of Computing and Information Systems --- Software Management (K.6.3): {\bf Software development}; Computing Methodologies --- Simulation and Modeling --- Applications (I.6.3); Software --- Software Engineering --- Design** (D.2.10): {\bf Methodologies**}; Software --- Software Engineering --- Management (D.2.9)", } @Article{Griswold:1993:AAP, author = "William G. Griswold and David Notkin", title = "Automated assistance for program restructuring", journal = j-TOSEM, volume = "2", number = "3", pages = "228--269", month = jul, year = "1993", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Apr 20 08:21:35 MDT 2001", bibsource = "http://www.acm.org/pubs/toc/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "http://www.acm.org/pubs/articles/journals/tosem/1993-2-3/p228-griswold/p228-griswold.pdf; http://www.acm.org/pubs/citations/journals/tosem/1993-2-3/p228-griswold/", abstract = "Maintenance tends to degrade the structure of software, ultimately making maintenance more costly. At times, then, it is worthwhile to manipulate the structure of a system to make changes easier. However, manual restructuring is an error-prone and expensive activity. By separating structural manipulations from other maintenance activities, the semantics of a system can be held constant by a tool, assuring that no errors are introduced by restructuring. To allow the maintenance team to focus on the aspects of restructuring and maintenance requiring human judgment, a transformation-based tool can be provided--based on a model that exploits preserving data flow dependence and control flow dependence--to automate the repetitive, error-prone, and computationally demanding aspects of restructuring. A set of automatable transformations is introduced; their impact on structure is described, and their usefulness is demonstrated in examples. A model to aid building meaning-preserving restructuring transformations is described, and its realization in a functioning prototype tool for restructuring Scheme programs is discussed.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", generalterms = "Design; Management", journal-URL = "https://dl.acm.org/loi/tosem", keywords = "CASE; flow analysis; meaning-preserving transformations; software engineering; software evolution; software maintenance; software restructuring; source-level restructuring", subject = "Software --- Software Engineering --- Distribution, Maintenance, and Enhancement (D.2.7): {\bf Restructuring, reverse engineering, and reengineering}; Software --- Software Engineering --- Distribution, Maintenance, and Enhancement (D.2.7): {\bf Corrections**}; Software --- Software Engineering --- Distribution, Maintenance, and Enhancement (D.2.7): {\bf Enhancement**}; Software --- Software Engineering --- Distribution, Maintenance, and Enhancement (D.2.7): {\bf Extensibility**}; Software --- Software Engineering --- Design** (D.2.10); Computing Milieux --- Management of Computing and Information Systems --- Software Management (K.6.3): {\bf Software maintenance}; Software --- Software Engineering --- Design Tools and Techniques (D.2.2): {\bf Computer-aided software engineering (CASE)}; Computing Methodologies --- Artificial Intelligence --- Automatic Programming (I.2.2): {\bf Program transformation}", } @Article{Harrold:1993:MCS, author = "M. Jean Harrold and Rajiv Gupta and Mary Lou Soffa", title = "A methodology for controlling the size of a test suite", journal = j-TOSEM, volume = "2", number = "3", pages = "270--285", month = jul, year = "1993", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Apr 20 08:21:35 MDT 2001", bibsource = "http://www.acm.org/pubs/toc/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "http://www.acm.org/pubs/articles/journals/tosem/1993-2-3/p270-harrold/p270-harrold.pdf; http://www.acm.org/pubs/citations/journals/tosem/1993-2-3/p270-harrold/", abstract = "This paper presents a technique to select a representative set of test cases from a test suite that provides the same coverage as the entire test suite. This selection is performed by identifying, and then eliminating, the redundant and obsolete test cases in the test suite. The representative set replaces the original test suite and thus, potentially produces a smaller test suite. The representative set can also be used to identify those test cases that should be rerun to test the program after it has been changed. Our technique is independent of the testing methodology and only requires an association between a testing requirement and the test cases that satisfy the requirement. We illustrate the technique using the data flow testing methodology. The reduction that is possible with our technique is illustrated by experimental results.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", generalterms = "Algorithms; Experimentation; Theory", journal-URL = "https://dl.acm.org/loi/tosem", keywords = "hitting set; regression testing; software engineering; software maintenance; test suite reduction", subject = "Software --- Software Engineering --- Testing and Debugging (D.2.5); Software --- Software Engineering --- Design** (D.2.10): {\bf Methodologies**}; Software --- Software Engineering --- Distribution, Maintenance, and Enhancement (D.2.7): {\bf Version control}", } @Article{Podgurski:1993:RRS, author = "Andy Podgurski and Lynn Pierce", title = "Retrieving reusable software by sampling behavior", journal = j-TOSEM, volume = "2", number = "3", pages = "286--303", month = jul, year = "1993", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Apr 20 08:21:35 MDT 2001", bibsource = "http://www.acm.org/pubs/toc/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "http://www.acm.org/pubs/articles/journals/tosem/1993-2-3/p286-podgurski/p286-podgurski.pdf; http://www.acm.org/pubs/citations/journals/tosem/1993-2-3/p286-podgurski/", abstract = "A new method, called {\em behavior sampling}, is proposed for automated retrieval of reusable components from software libraries. Behavior sampling exploits the property of software that distinguished it from other forms of test: executability. Basic behavior sampling identifies relevant routines by executing candidates on a searcher-supplied sample of operational inputs and by comparing their output to output provided by the searcher. The probabilistic basis for behavior sampling is described, and experimental results are reported that suggest that basic behavior sampling exhibits high precision when used with small samples. Extensions to basic behavior sampling are proposed to improve its recall and to make it applicable to the retrieval of abstract data types and object classes.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", generalterms = "Algorithms; Design; Experimentation", journal-URL = "https://dl.acm.org/loi/tosem", keywords = "behavior sampling; software libraries; software retrieval; software reuse", subject = "Software --- Software Engineering --- Miscellaneous (D.2.m): {\bf Reusable software**}; Software --- Software Engineering --- Design Tools and Techniques (D.2.2): {\bf Software libraries}; Software --- Software Engineering --- Distribution, Maintenance, and Enhancement (D.2.7); Information Systems --- Information Storage and Retrieval --- Information Search and Retrieval (H.3.3)", } @Article{Dillon:1993:VEM, author = "Laura K. Dillon", title = "A visual execution model for {Ada} tasking", journal = j-TOSEM, volume = "2", number = "4", pages = "311--345", month = oct, year = "1993", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Apr 20 08:21:35 MDT 2001", bibsource = "http://www.acm.org/pubs/toc/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "http://www.acm.org/pubs/articles/journals/tosem/1993-2-4/p311-dillon/p311-dillon.pdf; http://www.acm.org/pubs/citations/journals/tosem/1993-2-4/p311-dillon/", abstract = "A visual execution model for Ada tasking can help programmers attain a deeper understanding of the tasking semantics. It can illustrate subtleties in semantic definitions that are not apparent in natural language design. We describe a contour model of Ada tasking that depicts asynchronous tasks (threads of control), relationships between the environments in which tasks execute, and the manner in which tasks interact. The use of this high-level execution model makes it possible to see what happens during execution of a program. The paper provides an introduction to the contour model of Ada tasking and demonstrates its use.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", generalterms = "Algorithms; Design; Languages", journal-URL = "https://dl.acm.org/loi/tosem", keywords = "contour model; visual execution model", subject = "Software --- Software Engineering --- Design Tools and Techniques (D.2.2); Software --- Software Engineering --- Programming Environments (D.2.6); Software --- Programming Languages --- Formal Definitions and Theory (D.3.1): {\bf Semantics}; Software --- Programming Languages --- Language Classifications (D.3.2): {\bf Ada}; Software --- Programming Languages --- Language Constructs and Features (D.3.3): {\bf Concurrent programming structures}; Software --- Programming Techniques --- Concurrent Programming (D.1.3); Theory of Computation --- Logics and Meanings of Programs --- Semantics of Programming Languages (F.3.2): {\bf Operational semantics}; Software --- Programming Languages --- Processors (D.3.4): {\bf Interpreters}", } @Article{Wang:1993:DRT, author = "Farn Wang and Aloysius K. Mok and E. Allen Emerson", title = "Distributed real-time system specification and verification in {APTL}", journal = j-TOSEM, volume = "2", number = "4", pages = "346--378", month = oct, year = "1993", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Apr 20 08:21:35 MDT 2001", bibsource = "http://www.acm.org/pubs/toc/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "http://www.acm.org/pubs/articles/journals/tosem/1993-2-4/p346-wang/p346-wang.pdf; http://www.acm.org/pubs/citations/journals/tosem/1993-2-4/p346-wang/", abstract = "In this article, we propose a language, Asynchronous Propositional Temporal Logic (APTL), for the specification and verification of distributed hard real-time systems. APTL extends the logic TPTL by dealing explicitly with multiple local clocks. We propose a distributed-system model which permits definition of inequalities asserting the temporal precedence of local clock readings. We show the expressiveness of APTL through two nontrivial examples. Our logic can be used to specify and reason about such important properties as bounded clock rate drifting. We then give a 2 2 0(n) tableau-based decision procedure for determining APTL satisfiability, where {\em n\/} is the size (number of bits) of the input formula.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", generalterms = "Languages; Verification", journal-URL = "https://dl.acm.org/loi/tosem", keywords = "asynchronous; bounded clock rate drifting; multiclock system model; propositional temporal logic; real-time systems; specification; verification", subject = "Software --- Software Engineering --- Requirements/Specifications (D.2.1): {\bf Languages}; Software --- Operating Systems --- Organization and Design (D.4.7): {\bf Real-time systems and embedded systems}; Software --- Programming Languages --- Formal Definitions and Theory (D.3.1): {\bf Semantics}", } @Article{Zave:1993:CC, author = "Pamela Zave and Michael Jackson", title = "Conjunction as composition", journal = j-TOSEM, volume = "2", number = "4", pages = "379--411", month = oct, year = "1993", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Apr 20 08:21:35 MDT 2001", bibsource = "http://www.acm.org/pubs/toc/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "http://www.acm.org/pubs/articles/journals/tosem/1993-2-4/p379-zave/p379-zave.pdf; http://www.acm.org/pubs/citations/journals/tosem/1993-2-4/p379-zave/", abstract = "Partial specifications written in many different specification languages can be composed if they are all given semantics in the same domain, or alternatively, all translated into a common style of predicate logic. The common semantic domain must be very general, the particular semantics assigned to each specification language must be conducive to composition, and there must be some means of communication that enables specifications to build on one another. The criteria for success are that a wide variety of specification languages should be accommodated, there should be no restrictions on where boundaries between languages can be placed, and intuitive expectations of the specifier should be met.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", generalterms = "Languages; Theory; Verification", journal-URL = "https://dl.acm.org/loi/tosem", keywords = "compositional specification; multiparadigm specification; practical specification", subject = "Software --- Software Engineering --- Requirements/Specifications (D.2.1): {\bf Languages}; Software --- Software Engineering --- Requirements/Specifications (D.2.1): {\bf Methodologies (e.g., object-oriented, structured)}", } @Article{Adams:1994:CSR, author = "Rolf Adams and Walter Tichy and Annette Weinert", title = "The cost of selective recompilation and environment processing", journal = j-TOSEM, volume = "3", number = "1", pages = "3--28", month = jan, year = "1994", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Apr 20 08:21:35 MDT 2001", bibsource = "http://www.acm.org/pubs/toc/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", note = "See comment \cite{Brett:1995:CCS,Tichy:1995:AR}.", URL = "http://www.acm.org/pubs/articles/journals/tosem/1994-3-1/p3-adams/p3-adams.pdf; http://www.acm.org/pubs/citations/journals/tosem/1994-3-1/p3-adams/", abstract = "When a single software module in a large system is modified, a potentially large number of other modules may have to be recompiled. By reducing both the number of compilations and the amount of input processed by each compilation run, the turnaround time after changes can be reduced significantly. \par Potential time savings are measured in a medium-sized, industrial software project over a three-year period. The results indicate that a large number of compilations caused by traditional compilation unit dependencies may be redundant. On the available data, a mechanism that compares compiler output saves about 25 percent, smart recompilation saves 50 percent, and smartest recompilation may save up to 80 percent of compilation work. \par Furthermore, all compilation methods other than smartest recompilation process large amounts of unused environment data. In the project analyzed, the average environment symbols are actually used. Reading only the actually used symbols would reduce total compiler input by about 50 percent. \par Combining smart recompilation with a reduction in environment processing might double to triple perceived compilation speed and double linker speed, without sacrificing static type safety.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", generalterms = "Languages; Measurement", journal-URL = "https://dl.acm.org/loi/tosem", keywords = "empirical analysis; environment processing; selective recompilation; separate compilation; smart recompilation; software evolution", subject = "Software --- Software Engineering --- Programming Environments (D.2.6); Software --- Software Engineering --- Management (D.2.9): {\bf Software configuration management}; Software --- Programming Languages --- Processors (D.3.4); Software --- Programming Languages --- Processors (D.3.4): {\bf Compilers}", } @Article{Forgacs:1994:DIF, author = "Istv{\'a}n Forg{\'a}cs", title = "Double iterative framework for flow-sensitive interprocedural data flow analysis", journal = j-TOSEM, volume = "3", number = "1", pages = "29--55", month = jan, year = "1994", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Apr 20 08:21:35 MDT 2001", bibsource = "http://www.acm.org/pubs/toc/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "http://www.acm.org/pubs/articles/journals/tosem/1994-3-1/p29-forgacs/p29-forgacs.pdf; http://www.acm.org/pubs/citations/journals/tosem/1994-3-1/p29-forgacs/", abstract = "Compiler optimization, parallel processing, data flow testing, and symbolic debugging can benefit from interprocedural data flow analysis. However, the live, reaching definition, and most summary data flow problems are theoretically intractable in the interprocedural case. A method is presented that reduces the exponential time bound with the help of an algorithm that solves the problem in polynomial time. Either the resulting sets contain precise results or the missing (or additional) results do not cause any problems during their use. We also introduce the double iterative framework, where one procedure is processed at a time. The results of the intraprocedural analysis of procedures then propagates along the edges of the call multi-graph. In this way the intra and interprocedural analyses are executed alternately until there is no change in any result set. This method can be applied to any known interprocedural data flow problem. Here the algorithms for the kill, live variables, and reaching definitions problems are presented. Besides for precision, the algorithms can be used for very large programs, and since inter and intraprocedural analyses can be optimized separately, the method is fast as well.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", generalterms = "Algorithms; Performance", journal-URL = "https://dl.acm.org/loi/tosem", keywords = "data flow analysis; double iterative frameworks", subject = "Software --- Software Engineering --- Testing and Debugging (D.2.5); Data --- Files (E.5); Software --- Software Engineering --- Design Tools and Techniques (D.2.2); Software --- Programming Languages --- Processors (D.3.4): {\bf Optimization}", } @Article{Morzenti:1994:OOL, author = "Angelo Morzenti and Pierluigi {San Pietro}", title = "Object-oriented logical specification of time-critical systems", journal = j-TOSEM, volume = "3", number = "1", pages = "56--98", month = jan, year = "1994", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Apr 20 08:21:35 MDT 2001", bibsource = "http://www.acm.org/pubs/toc/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "http://www.acm.org/pubs/articles/journals/tosem/1994-3-1/p56-morzenti/p56-morzenti.pdf; http://www.acm.org/pubs/citations/journals/tosem/1994-3-1/p56-morzenti/", abstract = "We define TRIO +, an object-oriented logical language for modular system specification. TRIO + is based on TRIO, a first-order temporal language that is well suited to the specification of embedded and real-time systems, and that provides an effective support to a variety of validation activities, like specification testing, simulation, and property proof. Unfortunately, TRIO lacks the ability to construct specifications of complex systems in a systematic and modular way. TRIO + combines the use of constructs for hierarchical system decomposition and object-oriented concepts like inheritance and genericity with an expressive and intuitive graphic notation, yielding a specification language that is formal and rigorous, yet still flexible, readable, general, and easily adaptable to the user's needs. After introducing and motivating the main features of the language, we illustrate its application to a nontrivial case study extracted from a real-life industrial application.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", generalterms = "Languages; Measurement; Theory", journal-URL = "https://dl.acm.org/loi/tosem", keywords = "first-order logic; formal specifications; model-theoretic semantics; object-oriented methodologies; real-time systems; temporal logic", subject = "Software --- Software Engineering --- Requirements/Specifications (D.2.1): {\bf Methodologies (e.g., object-oriented, structured)}; Software --- Software Engineering --- Requirements/Specifications (D.2.1): {\bf Tools}; Software --- Software Engineering --- Design Tools and Techniques (D.2.2): {\bf Modules and interfaces}; Software --- Software Engineering --- Design Tools and Techniques (D.2.2): {\bf Software libraries}; Software --- Operating Systems --- Organization and Design (D.4.7): {\bf Real-time systems and embedded systems}; Software --- Software Engineering --- Requirements/Specifications (D.2.1): {\bf TRIO+}", } @Article{Doong:1994:AAT, author = "Roong-Ko Doong and Phyllis G. Frankl", title = "The {ASTOOT} approach to testing object-oriented programs", journal = j-TOSEM, volume = "3", number = "2", pages = "101--130", month = apr, year = "1994", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Apr 20 08:21:35 MDT 2001", bibsource = "http://www.acm.org/pubs/toc/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "http://www.acm.org/pubs/articles/journals/tosem/1994-3-2/p101-doong/p101-doong.pdf; http://www.acm.org/pubs/citations/journals/tosem/1994-3-2/p101-doong/", abstract = "This article describes a new approach to the unit testing of object-oriented programs, a set of tools based on this approach, and two case studies. In this approach, each test case consists of a tuple of sequences of messages, along with tags indicating whether these sequences should put objects of the class under test into equivalent states and/or return objects that are in equivalent states. Tests are executed by sending the sequences to objects of the class under test, then invoking a user-supplied equivalence-checking mechanism. This approach allows for substantial automation of many aspects of testing, including test case generation, test driver generation, test execution, and test checking. Experimental prototypes of tools for test generation and test execution are described. The test generation tool requires the availability of an algebraic specification of the abstract data type being tested, but the test execution tool can be used when no formal specification is available. Using the test execution tools, case studies involving execution of tens of thousands of test cases, with various sequence lengths, parameters, and combinations of operations were performed. The relationships among likelihood of detecting an error and sequence length, range of parameters, and relative frequency of various operations were investigated for priority queue and sorted-list implementations having subtle errors. In each case, long sequences tended to be more likely to detect the error, provided that the range of parameters was sufficiently large and likelihood of detecting an error tended to increase up to a threshold value as the parameter range increased.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", generalterms = "Experimentation; Languages; Reliability", journal-URL = "https://dl.acm.org/loi/tosem", keywords = "abstract data types; algebraic specification; object-oriented programming; software testing", subject = "Software --- Software Engineering --- Testing and Debugging (D.2.5): {\bf Testing tools (e.g., data generators, coverage testing)}; Software --- Software Engineering --- Requirements/Specifications (D.2.1): {\bf Languages}; Software --- Programming Languages --- Language Classifications (D.3.2): {\bf Object-oriented languages}; Software --- Software Engineering --- Testing and Debugging (D.2.5): {\bf Symbolic execution}; Software --- Programming Languages --- Language Constructs and Features (D.3.3): {\bf Abstract data types}", } @Article{Dillon:1994:GIL, author = "L. K. Dillon and G. Kutty and L. E. Moser and P. M. Melliar-Smith and Y. S. Ramakrishna", title = "A graphical interval logic for specifying concurrent systems", journal = j-TOSEM, volume = "3", number = "2", pages = "131--165", month = apr, year = "1994", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Apr 20 08:21:35 MDT 2001", bibsource = "http://www.acm.org/pubs/toc/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "http://www.acm.org/pubs/articles/journals/tosem/1994-3-2/p131-dillon/p131-dillon.pdf; http://www.acm.org/pubs/citations/journals/tosem/1994-3-2/p131-dillon/", abstract = "This article describes a graphical interval logic that is the foundation of a tool set supporting formal specification and verification of concurrent software systems. Experience has shown that most software engineers find standard temporal logics difficult to understand and use. The objective of this article is to enable software engineers to specify and reason about temporal properties of concurrent systems more easily by providing them with a logic that has an intuitive graphical representation and with tools that support its use. To illustrate the use of the graphical logic, the article provides some specifications for an elevator system and proves several properties of the specifications. The article also describes the tool set and the implementation.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", generalterms = "Human Factors; Languages; Theory; Verification", journal-URL = "https://dl.acm.org/loi/tosem", keywords = "automated proof-checking; concurrent systems; formal specifications; graphical interval logic; temporal logic; timing diagrams; visual languages", subject = "Theory of Computation --- Logics and Meanings of Programs --- Specifying and Verifying and Reasoning about Programs (F.3.1): {\bf Specification techniques}; Theory of Computation --- Logics and Meanings of Programs --- Specifying and Verifying and Reasoning about Programs (F.3.1): {\bf Mechanical verification}; Software --- Software Engineering --- Requirements/Specifications (D.2.1): {\bf Languages}; Software --- Software Engineering --- Requirements/Specifications (D.2.1): {\bf Tools}; Software --- Software Engineering --- Design Tools and Techniques (D.2.2)", } @Article{Parisi-Presicce:1994:ATC, author = "Francesco Parisi-Presicce and Alfonso Pierantonio", title = "An algebraic theory of class specification", journal = j-TOSEM, volume = "3", number = "2", pages = "166--199", month = apr, year = "1994", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Apr 20 08:21:35 MDT 2001", bibsource = "http://www.acm.org/pubs/toc/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "http://www.acm.org/pubs/articles/journals/tosem/1994-3-2/p166-parisi-presicce/p166-parisi-presicce.pdf; http://www.acm.org/pubs/citations/journals/tosem/1994-3-2/p166-parisi-presicce/", abstract = "The notion of class (or object pattern) as defined in most object-oriented languages is formalized using known techniques from algebraic specifications. Inheritance can be viewed as a relation between classes, which suggests how classes can be arranged in hierarchies. The hierarchies contain two kinds of information: on the one hand, they indicate how programs are structured and how code is shared among classes; on the other hand, they give information about compatible assignment rules, which are based on subtyping. In order to distinguish between code sharing, which is related to implementational aspects, and functional specialization, which is connected to the external behavior of objects, we introduce an algebraic specification-based formalism, by which one can specify the behavior of a class and state when a class inherits another one. It is shown that reusing inheritance can be reduced to specialization inheritance with respect to a virtual class. The class model and the two distinct aspects of inheritance allow the definition of {\em clean\/} interconnection mechanisms between classes leading to new classes which inherit from old classes their correctness and their semantics.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", generalterms = "Design; Languages", journal-URL = "https://dl.acm.org/loi/tosem", keywords = "algebraic specifications; inheritance; interconnection mechanisms; modularity", subject = "Software --- Programming Techniques --- Object-oriented Programming (D.1.5); Software --- Software Engineering --- Requirements/Specifications (D.2.1): {\bf Methodologies (e.g., object-oriented, structured)}; Software --- Software Engineering --- Design** (D.2.10): {\bf Methodologies**}; Software --- Programming Languages --- Formal Definitions and Theory (D.3.1); Software --- Programming Languages --- Language Constructs and Features (D.3.3): {\bf Abstract data types}; Software --- Programming Languages --- Language Constructs and Features (D.3.3): {\bf Modules, packages}; Theory of Computation --- Logics and Meanings of Programs --- Semantics of Programming Languages (F.3.2): {\bf Algebraic approaches to semantics}", } @Article{Bernhard:1994:RTS, author = "Philip J. Bernhard", title = "A reduced test suite for protocol conformance testing", journal = j-TOSEM, volume = "3", number = "3", pages = "201--220", month = jul, year = "1994", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Apr 20 08:21:35 MDT 2001", bibsource = "http://www.acm.org/pubs/toc/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", note = "See comments \cite{Petrenko:1997:CRT}.", URL = "http://www.acm.org/pubs/articles/journals/tosem/1994-3-3/p201-bernhard/p201-bernhard.pdf; http://www.acm.org/pubs/citations/journals/tosem/1994-3-3/p201-bernhard/", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", generalterms = "Algorithms; Reliability; Theory; Verification", journal-URL = "https://dl.acm.org/loi/tosem", keywords = "heuristics", subject = "Software --- Software Engineering --- Testing and Debugging (D.2.5); Computer Systems Organization --- Computer-Communication Networks --- Network Protocols (C.2.2); Computer Systems Organization --- Performance of Systems (C.4)", } @Article{Cheon:1994:LSI, author = "Yoonsik Cheon and Gary T. Leavens", title = "The {Larch\slash Smalltalk} interface specification language", journal = j-TOSEM, volume = "3", number = "3", pages = "221--253", month = jul, year = "1994", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Apr 20 08:21:35 MDT 2001", bibsource = "http://www.acm.org/pubs/toc/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "http://www.acm.org/pubs/articles/journals/tosem/1994-3-3/p221-cheon/p221-cheon.pdf; http://www.acm.org/pubs/citations/journals/tosem/1994-3-3/p221-cheon/", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", generalterms = "Design; Documentation; Languages", journal-URL = "https://dl.acm.org/loi/tosem", keywords = "formal methods; interface specification; Larch/Smalltalk; Smalltalk; specification inheritance; subtype; verification", subject = "Software --- Programming Languages --- Language Classifications (D.3.2): {\bf Larch}; Software --- Programming Languages --- Language Classifications (D.3.2): {\bf Smalltalk}; Software --- Software Engineering --- Design Tools and Techniques (D.2.2); Software --- Software Engineering --- Requirements/Specifications (D.2.1): {\bf Languages}; Theory of Computation --- Logics and Meanings of Programs --- Specifying and Verifying and Reasoning about Programs (F.3.1): {\bf Assertions}; Theory of Computation --- Logics and Meanings of Programs --- Specifying and Verifying and Reasoning about Programs (F.3.1): {\bf Invariants}; Theory of Computation --- Logics and Meanings of Programs --- Specifying and Verifying and Reasoning about Programs (F.3.1): {\bf Pre- and post-conditions}; Theory of Computation --- Logics and Meanings of Programs --- Specifying and Verifying and Reasoning about Programs (F.3.1): {\bf Specification techniques}", } @Article{Jeng:1994:SDT, author = "Bingchiang Jeng and Elaine J. Weyuker", title = "A simplified domain-testing strategy", journal = j-TOSEM, volume = "3", number = "3", pages = "254--270", month = jul, year = "1994", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Apr 20 08:21:35 MDT 2001", bibsource = "http://www.acm.org/pubs/toc/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "http://www.acm.org/pubs/articles/journals/tosem/1994-3-3/p254-jeng/p254-jeng.pdf; http://www.acm.org/pubs/citations/journals/tosem/1994-3-3/p254-jeng/", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", generalterms = "Reliability; Theory; Verification", journal-URL = "https://dl.acm.org/loi/tosem", keywords = "domain testing; software testing", subject = "Software --- Software Engineering --- Testing and Debugging (D.2.5)", } @Article{Creveuil:1994:FSD, author = "Christian Creveuil and Gruia-Catalin Roman", title = "Formal specification and design of a message router", journal = j-TOSEM, volume = "3", number = "4", pages = "271--307", month = oct, year = "1994", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Apr 20 08:21:35 MDT 2001", bibsource = "http://www.acm.org/pubs/toc/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "http://www.acm.org/pubs/articles/journals/tosem/1994-3-4/p271-creveuil/p271-creveuil.pdf; http://www.acm.org/pubs/citations/journals/tosem/1994-3-4/p271-creveuil/", abstract = "Formal derivation refers to a family of design techniques that entail the development of programs which are guaranteed to be correct by construction. Only limited industrial use of such techniques (e.g., UNITY-style specification refinement) has been reported in the literature, and there is a great need for methodological developments aimed at facilitating their application to complex problems. This article examines the formal specification and design of a message router in an attempt to identify those methodological elements that are likely to contribute to successful industrial uses of program derivation. Although the message router cannot be characterized as being industrial grade, it is a sophisticated problem that poses significant specification and design challenges--its apparent simplicity is rather deceiving. The main body of the article consists of a complete formal specification of the router and a series of successive refinements that eventually lead to an immediate construction of a correct UNITY program. Each refinement is accompanied by its design rationale and is explained in a manner accessible to a broad audience. We use this example to make the case that program derivation provides a good basis for introducing rigor in the design strategy, regardless of the degrees of formality one is willing to consider.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", generalterms = "Design; Verification", journal-URL = "https://dl.acm.org/loi/tosem", keywords = "formal methods; program derivation; specification refinement; UNITY", subject = "Software --- Programming Techniques --- Concurrent Programming (D.1.3): {\bf Distributed programming}; Software --- Programming Techniques --- Concurrent Programming (D.1.3): {\bf Parallel programming}; Software --- Software Engineering --- Requirements/Specifications (D.2.1): {\bf Methodologies (e.g., object-oriented, structured)}; Software --- Software Engineering --- Software/Program Verification (D.2.4): {\bf Correctness proofs}; Software --- Software Engineering --- Design** (D.2.10): {\bf Methodologies**}", } @Article{Felder:1994:VRT, author = "Miguel Felder and Angelo Morzenti", title = "Validating real-time systems by history-checking {TRIO} specifications", journal = j-TOSEM, volume = "3", number = "4", pages = "308--339", month = oct, year = "1994", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Apr 20 08:21:35 MDT 2001", bibsource = "http://www.acm.org/pubs/toc/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "http://www.acm.org/pubs/articles/journals/tosem/1994-3-4/p308-felder/p308-felder.pdf; http://www.acm.org/pubs/citations/journals/tosem/1994-3-4/p308-felder/", abstract = "We emphasize the importance of formal executable specifications in the development of real-time systems, as a means to assess the adequacy of the requirements before a costly development process takes place. TRIO is a first-order temporal logic language for executable specification of real-time systems that deals with time in a quantitative way by providing a metric to indicate distance in time between events and length of time intervals. We summarize the language and its model-parametric semantics. Then we present an algorithm to perform history checking, i.e., to check that a history of the system satisfies the specification. This algorithm can be used as a basis for an effective specification testing tool. The algorithm is described; an estimation of its complexity is provided; and the main functionalities of the tool are presented, together with sample test cases. Finally, we draw conclusions and indicate directions of future research.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", generalterms = "Languages; Verification", journal-URL = "https://dl.acm.org/loi/tosem", keywords = "first-order logic; formal specifications; model-theoretic semantics; requirements validation", subject = "Computer Systems Organization --- Special-Purpose and Application-Based Systems (C.3): {\bf Real-time and embedded systems}; Software --- Software Engineering --- Requirements/Specifications (D.2.1); Software --- Software Engineering --- Software/Program Verification (D.2.4): {\bf Validation}; Software --- Operating Systems --- Organization and Design (D.4.7): {\bf Real-time systems and embedded systems}; Theory of Computation --- Logics and Meanings of Programs --- Specifying and Verifying and Reasoning about Programs (F.3.1): {\bf Mechanical verification}; Theory of Computation --- Logics and Meanings of Programs --- Specifying and Verifying and Reasoning about Programs (F.3.1): {\bf Specification techniques}", } @Article{Duri:1994:AEE, author = "S. Duri and U. Buy and R. Devarapalli and S. M. Shatz", title = "Application and experimental evaluation of state space reduction methods for deadlock analysis in {Ada}", journal = j-TOSEM, volume = "3", number = "4", pages = "340--380", month = oct, year = "1994", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Apr 20 08:21:35 MDT 2001", bibsource = "http://www.acm.org/pubs/toc/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "http://www.acm.org/pubs/articles/journals/tosem/1994-3-4/p340-duri/p340-duri.pdf; http://www.acm.org/pubs/citations/journals/tosem/1994-3-4/p340-duri/", abstract = "An emerging challenge for software engineering is the development of the methods and tools to aid design and analysis of concurrent and distributed software. Over the past few years, a number of analysis methods that focus on Ada tasking have been developed. Many of these methods are based on some form of reachability analysis, which has the advantage of being conceptually simple, but the disadvantage of being computationally expensive. We explore the effectiveness of various Petri net-based techniques for the automated deadlock analysis of Ada programs. Our experiments consider a variety of state space reduction methods both individually and in various combinations. The experiments are applied to a number of classical concurrent programs as well as a set of ``real-world'' programs. The results indicate that Petri net reduction and reduced state space generation are mutually beneficial techniques, and that combined approaches based on Petri net models are quite effective, compared to alternative analysis approaches.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", generalterms = "Experimentation; Languages; Verification", journal-URL = "https://dl.acm.org/loi/tosem", keywords = "Ada tasking; automatic analysis; concurrency analysis; deadlock detection; experimental evaluation; state space explosion", subject = "Software --- Programming Techniques --- Concurrent Programming (D.1.3): {\bf Distributed programming}; Software --- Software Engineering --- Design Tools and Techniques (D.2.2): {\bf Computer-aided software engineering (CASE)}; Software --- Software Engineering --- Design Tools and Techniques (D.2.2): {\bf Petri nets}; Software --- Software Engineering --- Testing and Debugging (D.2.5): {\bf Debugging aids}", } @Article{Binkley:1995:PIL, author = "David Binkley and Susan Horwitz and Thomas Reps", title = "Program integration for languages with procedure calls", journal = j-TOSEM, volume = "4", number = "1", pages = "3--35", month = jan, year = "1995", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Apr 20 08:21:35 MDT 2001", bibsource = "http://www.acm.org/pubs/toc/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "http://www.acm.org/pubs/articles/journals/tosem/1995-4-1/p3-binkley/p3-binkley.pdf; http://www.acm.org/pubs/citations/journals/tosem/1995-4-1/p3-binkley/", abstract = "Given a program Base and two variants, A and B, each created by modifying separate copies of Base, the goal of program integration is to determine whether the modifications interfere, and if they do not, to create an integrated program that incorporates both sets of changes as well as the portions of Base preserved in both variants. Text-based integration techniques, such as the one used by the Unix {\em diff3\/} utility, are obviously unsatisfactory because one has no guarantees about how the execution behavior of the integrated program relates to the behaviors of Base, A, and B. The first program integration algorithm to provide such guarantees was developed by Horwitz, Prins, and Reps. However, a limitation of that algorithm is that it only applied to programs written in a restricted language--in particular, the algorithm does not handle programs with procedures. This article describes a generalization of the Horwitz-Prins-Reps algorithm that handles programs that consist of multiple (and possibly mutually recursive) procedures. \par We show that two straightforward generalizations of the Horwitz-Prins-Reps algorithm yield unsatisfactory results. The key issue in developing a satisfactory algorithm is how to take into account different calling contexts when determining what has changed in the variants A and B. Our solution to this problem involves identifying two different kinds of affected components of A and B: those affected regardless of how the procedure is called, and those affected by a changed or new calling context. The algorithm makes use of interprocedural program slicing to identify these components, as well as components in Base, A, and B with the same behavior.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", generalterms = "Algorithms; Design; Languages; Theory", journal-URL = "https://dl.acm.org/loi/tosem", keywords = "control dependence; data dependence; data-flow analysis; flow-insensitive summary information; program dependence graph; program slicing; semantics-based program integration", subject = "Software --- Software Engineering --- Distribution, Maintenance, and Enhancement (D.2.7): {\bf Version control}; Software --- Software Engineering --- Distribution, Maintenance, and Enhancement (D.2.7): {\bf Restructuring, reverse engineering, and reengineering}; Software --- Software Engineering --- Management (D.2.9); Software --- Software Engineering --- Design Tools and Techniques (D.2.2): {\bf Programmer workbench**}; Software --- Software Engineering --- Coding Tools and Techniques (D.2.3): {\bf Program editors}; Software --- Programming Languages --- Language Constructs and Features (D.3.3); Software --- Programming Languages --- Processors (D.3.4): {\bf Compilers}", } @Article{Howden:1995:STA, author = "W. E. Howden and Yudong Huang", title = "Software trustability analysis", journal = j-TOSEM, volume = "4", number = "1", pages = "36--64", month = jan, year = "1995", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Apr 20 08:21:35 MDT 2001", bibsource = "http://www.acm.org/pubs/toc/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "http://www.acm.org/pubs/articles/journals/tosem/1995-4-1/p36-howden/p36-howden.pdf; http://www.acm.org/pubs/citations/journals/tosem/1995-4-1/p36-howden/", abstract = "A measure of software dependability called trustability is described. A program p has trustability T if we are at least T confident that p is free of faults. Trustability measurement depends on detectability. The detectability of a method is the probability that it will detect faults, when there are faults present. Detectability research can be used to characterize conditions under which one testing and analysis method is more effective than another. Several detectability results that were only previously described informally, and illustrated by example, are proved. Several new detectability results are also proved. The trustability model characterizes the kind of information that is needed to justify a given level of trustability. When the required information is available, the trustability approach can be used to determine strategies in which methods are combined for maximum effectiveness. It can be used to determine the minimum amount of resources needed to guarantee a required degree of trustability, and the maximum trustability that is achievable with a given amount of resources. Theorems proving several optimization results are given. Applications of the trustability model are discussed. Methods for the derivation of detectability factors, the relationship between trustability and operational reliability, and the relationship between the software development process and trustability are described.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", generalterms = "Reliability; Verification", journal-URL = "https://dl.acm.org/loi/tosem", keywords = "analysis; dependability; detectability; failure density; statistical; testability; testing; trustability", subject = "Software --- Software Engineering --- Testing and Debugging (D.2.5); Theory of Computation --- Logics and Meanings of Programs --- Specifying and Verifying and Reasoning about Programs (F.3.1)", } @Article{Young:1995:CAT, author = "Michal Young and Richard N. Taylor and David L. Levine and Kari A. Nies and Debra Brodbeck", title = "A concurrency analysis tool suite for {Ada} programs: rationale, design, and preliminary experience", journal = j-TOSEM, volume = "4", number = "1", pages = "65--106", month = jan, year = "1995", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Apr 20 08:21:35 MDT 2001", bibsource = "http://www.acm.org/pubs/toc/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "http://www.acm.org/pubs/articles/journals/tosem/1995-4-1/p65-young/p65-young.pdf; http://www.acm.org/pubs/citations/journals/tosem/1995-4-1/p65-young/", abstract = "Cats (Concurrency Analysis Tool Suite) is designed to satisfy several criteria: it must analyze implementation-level Ada source code and check user-specified conditions associated with program source code; it must be modularized in a fashion that supports flexible composition with other tool components, including integration with a variety of testing and analysis techniques; and its performance and capacity must be sufficient for analysis of real application programs. Meeting these objectives together is significantly more difficult than meeting any of them alone. We describe the design and rationale of Cats and report experience with an implementation. The issues addressed here are primarily practical concerns for modularizing and integrating tools for analysis of actual source programs. We also report successful application of Cats to major subsystems of a (nontoy) highly concurrent user interface system.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", generalterms = "Design; Reliability; Verification", journal-URL = "https://dl.acm.org/loi/tosem", keywords = "Ada; concurrency; software development environments; static analysis; tool integration", subject = "Software --- Software Engineering --- Design Tools and Techniques (D.2.2); Software --- Software Engineering --- Testing and Debugging (D.2.5); Software --- Software Engineering --- Programming Environments (D.2.6); Software --- Programming Languages --- Language Classifications (D.3.2): {\bf Concurrent, distributed, and parallel languages}; Software --- Programming Languages --- Language Constructs and Features (D.3.3): {\bf Concurrent programming structures}", } @Article{Jackson:1995:ADB, author = "Daniel Jackson", title = "Aspect: detecting bugs with abstract dependences", journal = j-TOSEM, volume = "4", number = "2", pages = "109--145", month = apr, year = "1995", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Apr 20 08:21:35 MDT 2001", bibsource = "http://www.acm.org/pubs/toc/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "http://www.acm.org/pubs/articles/journals/tosem/1995-4-2/p109-jackson/p109-jackson.pdf; http://www.acm.org/pubs/citations/journals/tosem/1995-4-2/p109-jackson/", abstract = "Aspect is a static analysis technique for detecting bugs in imperative programs, consisting of an annotation language and a checking tool. Like a type declaration, an Aspect annotation of a procedure is a kind of declarative, partial specification that can be checked efficiently in a modular fashion. But instead of constraining the types of arguments and results, Aspect specifications assert dependences that should hold between inputs and outputs. The checker uses a simple dependence analysis to check code against annotations and can find bugs automatically that are not detectable by other static means, especially errors of omission, which are common, but resistant to type checking. This article explains the basic scheme and shows how it is elaborated to handle data abstraction and aliasing.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", generalterms = "Documentation; Languages; Verification", journal-URL = "https://dl.acm.org/loi/tosem", keywords = "dataflow dependences; partial specification; partial verification", subject = "Software --- Software Engineering --- Design Tools and Techniques (D.2.2): {\bf Modules and interfaces}; Software --- Software Engineering --- Software/Program Verification (D.2.4): {\bf Assertion checkers}; Software --- Software Engineering --- Testing and Debugging (D.2.5): {\bf Symbolic execution}; Software --- Programming Languages --- Language Constructs and Features (D.3.3): {\bf Abstract data types}; Theory of Computation --- Logics and Meanings of Programs --- Specifying and Verifying and Reasoning about Programs (F.3.1): {\bf Assertions}; Theory of Computation --- Logics and Meanings of Programs --- Specifying and Verifying and Reasoning about Programs (F.3.1): {\bf Mechanical verification}; Theory of Computation --- Logics and Meanings of Programs --- Specifying and Verifying and Reasoning about Programs (F.3.1): {\bf Pre- and post-conditions}", } @Article{Zaremski:1995:SMT, author = "Amy Moormann Zaremski and Jeannette M. Wing", title = "Signature matching: a tool for using software libraries", journal = j-TOSEM, volume = "4", number = "2", pages = "146--170", month = apr, year = "1995", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Apr 20 08:21:35 MDT 2001", bibsource = "http://www.acm.org/pubs/toc/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "http://www.acm.org/pubs/articles/journals/tosem/1995-4-2/p146-zaremski/p146-zaremski.pdf; http://www.acm.org/pubs/citations/journals/tosem/1995-4-2/p146-zaremski/", abstract = "{\em Signature matching\/} is a method for organizing, navigating through, and retrieving from software libraries. We consider two kinds of software library components--functions and modules--and hence two kinds of matching--function matching and module matching. The signature of a function is simply its type; the signature of a module is a multiset of user-defined types and a multiset of function signatures. For both functions and modules, we consider not just {\em exact\/} match but also various flavors of {\em relaxed\/} match. We describe various applications of signature matching as a tool for using software libraries, inspired by the use of our implementation of a function signature matcher written in Standard ML.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", generalterms = "Design", journal-URL = "https://dl.acm.org/loi/tosem", keywords = "signature matching; software retrieval", subject = "Software --- Software Engineering --- Design Tools and Techniques (D.2.2): {\bf Modules and interfaces}; Software --- Software Engineering --- Miscellaneous (D.2.m): {\bf Reusable software**}; Software --- Programming Languages --- Language Constructs and Features (D.3.3): {\bf Data types and structures}; Software --- Software Engineering --- Design Tools and Techniques (D.2.2): {\bf Software libraries}", } @Article{Pezze:1995:GMR, author = "Mauro Pezz{\`e} and Richard N. Taylor and Michal Young", title = "Graph models for reachability analysis of concurrent programs", journal = j-TOSEM, volume = "4", number = "2", pages = "171--213", month = apr, year = "1995", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Apr 20 08:21:35 MDT 2001", bibsource = "http://www.acm.org/pubs/toc/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "http://www.acm.org/pubs/articles/journals/tosem/1995-4-2/p171-pezze/p171-pezze.pdf; http://www.acm.org/pubs/citations/journals/tosem/1995-4-2/p171-pezze/", abstract = "The problem of analyzing concurrent systems has been investigated by many researchers, and several solutions have been proposed. Among the proposed techniques, reachability analysis--systematic enumeration of reachable states in a finite-state model--is attractive because it is conceptually simple and relatively straightforward to automate and can be used in conjunction with model-checking procedures to check for application-specific as well as general properties. This article shows that the nature of the translation from source code to a modeling formalism is of greater practical importance than the underlying formalism. Features identified as pragmatically important are the representation of internal choice, selection of a dynamic or static matching rule, and the ease of applying reductions. Since combinatorial explosion is the primary impediment to application of reachability analysis, a particular concern in choosing a model is facilitating divide-and-conquer analysis of large programs. Recently, much interest in finite-state verification systems has centered on algebraic theories of concurrency. Algebraic structure can be used to decompose reachability analysis based on a flowgraph model. The semantic equivalence of graph and Petri net-based models suggests that one ought to be able to apply a similar strategy for decomposing Petri nets. We describe how category-theoretic treatments of Petri nets provide a basis for decomposition of Petri net reachability analysis.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", generalterms = "Reliability; Verification", journal-URL = "https://dl.acm.org/loi/tosem", keywords = "Ada tasking; process algebra; static analysis", subject = "Software --- Programming Techniques --- Concurrent Programming (D.1.3); Software --- Software Engineering --- Design Tools and Techniques (D.2.2): {\bf Petri nets}; Software --- Software Engineering --- Testing and Debugging (D.2.5): {\bf Debugging aids}; Software --- Programming Languages --- Language Constructs and Features (D.3.3): {\bf Concurrent programming structures}; Theory of Computation --- Logics and Meanings of Programs --- Specifying and Verifying and Reasoning about Programs (F.3.1): {\bf Mechanical verification}", } @Article{Brett:1995:CCS, author = "Bevin R. Brett", title = "Comments on {``The cost of selective recompilation and environment processing''}", journal = j-TOSEM, volume = "4", number = "2", pages = "214--216", month = apr, year = "1995", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Apr 20 08:21:35 MDT 2001", bibsource = "http://www.acm.org/pubs/toc/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", note = "See \cite{Adams:1994:CSR,Tichy:1995:AR}.", URL = "http://www.acm.org/pubs/articles/journals/tosem/1995-4-2/p214-brett/p214-brett.pdf; http://www.acm.org/pubs/citations/journals/tosem/1995-4-2/p214-brett/", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", generalterms = "Languages; Measurement", journal-URL = "https://dl.acm.org/loi/tosem", subject = "Software --- Programming Languages --- Processors (D.3.4): {\bf Compilers}; Software --- Software Engineering --- Programming Environments (D.2.6); Software --- Software Engineering --- Management (D.2.9): {\bf Software configuration management}; Software --- Programming Languages --- Processors (D.3.4)", } @Article{Tichy:1995:AR, author = "Walter Tichy and Rolf Adams and Annette Weinert", title = "Authors' response", journal = j-TOSEM, volume = "4", number = "2", pages = "217--219", month = apr, year = "1995", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Apr 20 08:21:35 MDT 2001", bibsource = "http://www.acm.org/pubs/toc/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", note = "See \cite{Adams:1994:CSR,Brett:1995:CCS}.", URL = "http://www.acm.org/pubs/articles/journals/tosem/1995-4-2/p217-tichy/p217-tichy.pdf; http://www.acm.org/pubs/citations/journals/tosem/1995-4-2/p217-tichy/", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", generalterms = "Languages; Measurement", journal-URL = "https://dl.acm.org/loi/tosem", subject = "Software --- Programming Languages --- Processors (D.3.4): {\bf Compilers}; Software --- Software Engineering --- Programming Environments (D.2.6); Software --- Software Engineering --- Management (D.2.9): {\bf Software configuration management}; Software --- Programming Languages --- Processors (D.3.4)", } @Article{Sutton:1995:ALS, author = "Stanley M. Sutton and Dennis Heimbigner and Leon J. Osterweil", title = "{APPL/A}: a language for software process programming", journal = j-TOSEM, volume = "4", number = "3", pages = "221--286", month = jul, year = "1995", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Apr 20 08:21:35 MDT 2001", bibsource = "http://www.acm.org/pubs/toc/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "http://www.acm.org/pubs/articles/journals/tosem/1995-4-3/p221-sutton/p221-sutton.pdf; http://www.acm.org/pubs/citations/journals/tosem/1995-4-3/p221-sutton/", abstract = "Software process programming is the coding of software processes in executable programming languages. Process programming offers many potential benefits, but their realization has been hampered by a lack of experience in the design and use of process programming languages. APPL/A is a prototype software process programming language developed to help gain this experience. It is intended for the coding of programs to represent and support software processes including process, product, and project management. APPL/A is defined as an extension to Ada, to which it adds persistent programmable relations, concurrent triggers on relation operations (for reactive control), optionally and dynamically enforceable predicates on relations (which may serve as constraints), and composite statements that provide alternative combinations of serializability, atomicity, and consistency enforcement (for programming high-level transactions). APPL/A has been used to code engineering-oriented applications, like requirements specification and design, as well as management-related activities, such as personnel assignment, task scheduling, and project monitoring. APPL/A has also enabled us to experiment with process program design techniques and architectures, including process state reification, intermittent (or persistent) processes, reflexive and metaprocesses, and multiple-process systems. Our ability to address a wide range of software processes and process characteristics indicates that the APPL/A constructs represent important and general capabilities for software process programming. \par -- {\em Authors' Abstract\/}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", generalterms = "Design; Languages", journal-URL = "https://dl.acm.org/loi/tosem", keywords = "consistency management; multiparadigm programming languages; software process programming; transaction management", subject = "Software --- Software Engineering --- Design Tools and Techniques (D.2.2); Software --- Programming Languages --- Language Classifications (D.3.2): {\bf Ada}; Software --- Programming Languages --- Language Classifications (D.3.2): {\bf APPL}; Software --- Programming Languages --- Language Constructs and Features (D.3.3); Information Systems --- Database Management --- Languages (H.2.3): {\bf Database (persistent) programming languages}", } @Article{Callison:1995:TSO, author = "H. Rebecca Callison", title = "A time-sensitive object model for real-time systems", journal = j-TOSEM, volume = "4", number = "3", pages = "287--317", month = jul, year = "1995", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Apr 20 08:21:35 MDT 2001", bibsource = "http://www.acm.org/pubs/toc/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "http://www.acm.org/pubs/articles/journals/tosem/1995-4-3/p287-callison/p287-callison.pdf; http://www.acm.org/pubs/citations/journals/tosem/1995-4-3/p287-callison/", abstract = "Process-oriented models for real-time systems focus on the timing constraints of {\em processes}, a focus that can adversely affect resulting designs. Data dependencies between processes create scheduling interactions that limit the times at which processes may execute. Processes are then designed to fit available windows in the overall system schedule. ``Fitting in'' frequently involves fragmenting processes to fit scheduling windows and/or designing program and data structures for speed rather than for program comprehension. The result is often a system with very sensitive timing that is hard to understand and maintain. As an alternative to process-oriented design, we present time-sensitive objects: a data-oriented model for real-time systems. The time-sensitive object (TSO) model structures systems as time-constrained data, rather than time constrained processing. Object values are extended to object histories in which a sequence of time constrained values describe the evolution of the object over time. Systems comprise a set of objects and their dependencies. The TSO model describes the effects of object operations and the propagation of change among related objects. Periodic objects, a class of objects within the TSO model, are described in detail in this article and compared with traditional periodic processes. Advantages of time-sensitive objects are identified, including greater scheduling independence when processes have data dependencies, more opportunity for concurrency, and greater inherent capability for detection of and tolerance to timing errors.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", generalterms = "Design; Performance", journal-URL = "https://dl.acm.org/loi/tosem", keywords = "concurrency; fault tolerance; object models; programming techniques; real-time processing models; timing constraints", subject = "Software --- Programming Techniques --- Concurrent Programming (D.1.3); Software --- Software Engineering --- Design** (D.2.10); Software --- Operating Systems --- Reliability (D.4.5): {\bf Fault-tolerance}; Software --- Operating Systems --- Organization and Design (D.4.7): {\bf Real-time systems and embedded systems}", } @Article{Abowd:1995:FSU, author = "Gregory D. Abowd and Robert Allen and David Garlan", title = "Formalizing style to understand descriptions of software architecture", journal = j-TOSEM, volume = "4", number = "4", pages = "319--364", month = oct, year = "1995", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Apr 20 08:21:35 MDT 2001", bibsource = "http://www.acm.org/pubs/toc/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "http://www.acm.org/pubs/articles/journals/tosem/1995-4-4/p319-abowd/p319-abowd.pdf; http://www.acm.org/pubs/citations/journals/tosem/1995-4-4/p319-abowd/", abstract = "The software architecture of most systems is usually described informally and diagrammatically by means of boxes and lines. In order for these descriptions to be meaningful, the diagrams are understood by interpreting the boxes and lines in specific, conventionalized ways. The informal, imprecise nature of these interpretations has a number of limitations. In this article we consider these conventionalized interpretations as architectural styles and provide a formal framework for their uniform definition. In addition to providing a template for precisely defining new architectural styles, this framework allows for analysis within and between different architectural styles.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", generalterms = "Algorithms; Design; Languages; Verification", journal-URL = "https://dl.acm.org/loi/tosem", keywords = "software architecture; Z notation", subject = "Theory of Computation --- Logics and Meanings of Programs --- Specifying and Verifying and Reasoning about Programs (F.3.1): {\bf Specification techniques}; Software --- Software Engineering --- Requirements/Specifications (D.2.1): {\bf Z}; Theory of Computation --- Logics and Meanings of Programs --- Semantics of Programming Languages (F.3.2): {\bf Denotational semantics}; Software --- Software Engineering --- Design Tools and Techniques (D.2.2); Software --- Software Engineering --- Requirements/Specifications (D.2.1): {\bf Methodologies (e.g., object-oriented, structured)}; Software --- Software Engineering --- Requirements/Specifications (D.2.1): {\bf Languages}; Software --- Software Engineering --- Design Tools and Techniques (D.2.2): {\bf Modules and interfaces}", } @Article{Jackson:1995:SZS, author = "Daniel Jackson", title = "Structuring {Z} specifications with views", journal = j-TOSEM, volume = "4", number = "4", pages = "365--389", month = oct, year = "1995", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Apr 20 08:21:35 MDT 2001", bibsource = "http://www.acm.org/pubs/toc/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "http://www.acm.org/pubs/articles/journals/tosem/1995-4-4/p365-jackson/p365-jackson.pdf; http://www.acm.org/pubs/citations/journals/tosem/1995-4-4/p365-jackson/", abstract = "A view is a partial specification of a program, consisting of a state space and a set of operations. A full specification is obtained by composing several views, linking them through their states (by asserting invariants across views) and through their operations (by defining external operations as combinations of operations from different views). By encouraging multiple representations of the program's state, view structuring lends clarity and terseness to the specification of operations. And by separating different aspects of functionality, it brings modularity at the grossest level of organization, so that specifications can accommodate change more gracefully. View structuring in Z is demonstrated with a few small examples. Both the features of Z that lend themselves to view structuring and those that are a hindrance are discussed.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", generalterms = "Algorithms; Languages", journal-URL = "https://dl.acm.org/loi/tosem", keywords = "formal specification; implicit definition; views; Z", subject = "Theory of Computation --- Logics and Meanings of Programs --- Specifying and Verifying and Reasoning about Programs (F.3.1): {\bf Specification techniques}; Software --- Software Engineering --- Requirements/Specifications (D.2.1): {\bf Languages}; Software --- Software Engineering --- Requirements/Specifications (D.2.1): {\bf Methodologies (e.g., object-oriented, structured)}; Software --- Software Engineering --- Design** (D.2.10): {\bf Representation**}; Software --- Software Engineering --- Design Tools and Techniques (D.2.2): {\bf Modules and interfaces}; Software --- Software Engineering --- Requirements/Specifications (D.2.1): {\bf Z}", } @Article{vandenBrand:1996:GFC, author = "Mark van den Brand and Eelco Visser", title = "Generation of formatters for context-free languages", journal = j-TOSEM, volume = "5", number = "1", pages = "1--41", month = jan, year = "1996", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Oct 31 06:33:29 2003", bibsource = "http://www.acm.org/pubs/toc/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "http://www.acm.org/pubs/articles/journals/tosem/1996-5-1/p1-van\_den\_brand/p1-van\_den\_brand.pdf; http://www.acm.org/pubs/citations/journals/tosem/1996-5-1/p1-van\_den\_brand/; http://www.acm.org/pubs/citations/journals/tosem/1996-5-1/p1-van_den_brand/", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Devanbu:1996:GTA, author = "Premkumar T. Devanbu and David S. Rosenblum and Alexander L. Wolf", title = "Generating testing and analysis tools with {Aria}", journal = j-TOSEM, volume = "5", number = "1", pages = "42--62", month = jan, year = "1996", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Apr 20 08:21:35 MDT 2001", bibsource = "http://www.acm.org/pubs/toc/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "http://www.acm.org/pubs/articles/journals/tosem/1996-5-1/p42-devanbu/p42-devanbu.pdf; http://www.acm.org/pubs/citations/journals/tosem/1996-5-1/p42-devanbu/", abstract = "Many software testing and analysis tools manipulate graph representations of programs, such as abstract syntax trees or abstract semantics graphs. Handcrafting such tools in conventional programming languages can be difficult, error prone, and time consuming. Our approach is to use application generators targeted for the domain of graph-representation-based testing and analysis tools. Moreover, we generate the generators themselves, so that the development of tools based on different languages and/or representations can also be supported better. In this article we report on our experiences in developing and using a system called Aria that generates testing and analysis tools based on an abstract semantics graph representation for C and C++ called Reprise. Aria itself was generated by the Genoa system. We demonstrate the utility of Aria and, thereby, the power of our approach, by showing Aria's use in the development of a number of useful testing and analysis tools.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", generalterms = "Algorithms; Design; Languages; Verification", journal-URL = "https://dl.acm.org/loi/tosem", keywords = "application generators; Aria; Genoa; program dependence graphs; program representations; Reprise; software analysis; software testing; tools", subject = "Software --- Software Engineering --- Design Tools and Techniques (D.2.2): {\bf Software libraries}; Software --- Programming Languages --- Language Constructs and Features (D.3.3): {\bf Control structures}; Software --- Programming Languages --- Processors (D.3.4): {\bf Code generation}; Data --- Data Structures (E.1): {\bf Graphs and networks}; Software --- Programming Languages --- Language Constructs and Features (D.3.3): {\bf Data types and structures}; Software --- Programming Languages --- Processors (D.3.4): {\bf Parsing}; Software --- Software Engineering --- Metrics (D.2.8): {\bf Complexity measures}; Software --- Software Engineering --- Testing and Debugging (D.2.5)", } @Article{Ferguson:1996:CAS, author = "Roger Ferguson and Bogdan Korel", title = "The chaining approach for software test data generation", journal = j-TOSEM, volume = "5", number = "1", pages = "63--86", month = jan, year = "1996", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Apr 20 08:21:35 MDT 2001", bibsource = "http://www.acm.org/pubs/toc/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "http://www.acm.org/pubs/articles/journals/tosem/1996-5-1/p63-ferguson/p63-ferguson.pdf; http://www.acm.org/pubs/citations/journals/tosem/1996-5-1/p63-ferguson/", abstract = "Software testing is very labor intensive and expensive and accounts for a significant portion of software system development cost. If the testing process could be automated, the cost of developing software could be significantly reduced. Test data generation in program testing is the process of identifying a set of test data that satisfies a selected testing criterion, such as statement coverage and branch coverage. In this article we present a {\em chaining approach\/} for automated software test data generation which builds on the current theory of execution-oriented test data generation. In the chaining approach, test data are derived based on the actual execution of the program under test. For many programs, the execution of the selected statement may require prior execution of some other statements. The existing methods of test data generation may not efficiently generate test data for these types of programs because they only use control flow information of a program during the search process. The chaining approach uses data dependence analysis to guide the search process, i.e., data dependence analysis automatically identifies statements that affect the execution of the selected statement. The chaining approach uses these statements to form a sequence of statements that is to be executed prior to the execution of the selected statement. The experiments have shown that the chaining approach may significantly improve the chances of finding test data as compared to the existing methods of automated test data generation.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", generalterms = "Experimentation; Measurement; Performance", journal-URL = "https://dl.acm.org/loi/tosem", keywords = "data dependency; dynamic analysis; heuristics; program execution", subject = "Software --- Software Engineering --- Testing and Debugging (D.2.5): {\bf Testing tools (e.g., data generators, coverage testing)}", } @Article{Weyuker:1996:UFC, author = "Elaine J. Weyuker", title = "Using failure cost information for testing and reliability assessment", journal = j-TOSEM, volume = "5", number = "2", pages = "87--98", month = apr, year = "1996", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Apr 20 08:21:35 MDT 2001", bibsource = "http://www.acm.org/pubs/toc/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "http://www.acm.org/pubs/articles/journals/tosem/1996-5-2/p87-weyuker/p87-weyuker.pdf; http://www.acm.org/pubs/citations/journals/tosem/1996-5-2/p87-weyuker/", abstract = "A technique for incorporating failure cost information into algorithms designed to automatically generate software-load-testing suites is presented. A previously introduced reliability measure is also modified to incorporate this cost information. examples are presented to show the usefulness of including cost information when testing or assessing software.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", generalterms = "Experimentation; Measurement; Reliability", journal-URL = "https://dl.acm.org/loi/tosem", keywords = "failure cost; software testing; test case selection", subject = "Software --- Software Engineering --- Testing and Debugging (D.2.5); Software --- Software Engineering --- General (D.2.0)", } @Article{Offutt:1996:EDS, author = "A. Jefferson Offutt and Ammei Lee and Gregg Rothermel and Roland H. Untch and Christian Zapf", title = "An experimental determination of sufficient mutant operators", journal = j-TOSEM, volume = "5", number = "2", pages = "99--118", month = apr, year = "1996", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Apr 20 08:21:35 MDT 2001", bibsource = "http://www.acm.org/pubs/toc/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "http://www.acm.org/pubs/articles/journals/tosem/1996-5-2/p99-offutt/p99-offutt.pdf; http://www.acm.org/pubs/citations/journals/tosem/1996-5-2/p99-offutt/", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", generalterms = "Experimentation; Measurement; Reliability", journal-URL = "https://dl.acm.org/loi/tosem", subject = "Software --- Software Engineering --- Testing and Debugging (D.2.5)", } @Article{Bergadano:1996:TMI, author = "Francesco Bergadano and Daniele Gunetti", title = "Testing by means of inductive program learning", journal = j-TOSEM, volume = "5", number = "2", pages = "119--145", month = apr, year = "1996", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Apr 20 08:21:35 MDT 2001", bibsource = "http://www.acm.org/pubs/toc/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "http://www.acm.org/pubs/articles/journals/tosem/1996-5-2/p119-bergadano/p119-bergadano.pdf; http://www.acm.org/pubs/citations/journals/tosem/1996-5-2/p119-bergadano/", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", generalterms = "Algorithms; Reliability", journal-URL = "https://dl.acm.org/loi/tosem", keywords = "program induction by examples", subject = "Software --- Software Engineering --- Testing and Debugging (D.2.5); Computing Methodologies --- Artificial Intelligence --- Learning (I.2.6)", } @Article{Snelting:1996:RCB, author = "Gregor Snelting", title = "Reengineering of configurations based on mathematical concept analysis", journal = j-TOSEM, volume = "5", number = "2", pages = "146--189", month = apr, year = "1996", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Apr 20 08:21:35 MDT 2001", bibsource = "http://www.acm.org/pubs/toc/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "http://www.acm.org/pubs/articles/journals/tosem/1996-5-2/p146-snelting/p146-snelting.pdf; http://www.acm.org/pubs/citations/journals/tosem/1996-5-2/p146-snelting/", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", generalterms = "Design; Management; Theory", journal-URL = "https://dl.acm.org/loi/tosem", keywords = "concept analysis; concept lattices", subject = "Software --- Software Engineering --- Programming Environments (D.2.6): {\bf Interactive environments}; Software --- Software Engineering --- Distribution, Maintenance, and Enhancement (D.2.7); Software --- Software Engineering --- Management (D.2.9): {\bf Software configuration management}", } @Article{Cugola:1996:FFI, author = "Gianpaolo Cugola and Elisabetta {Di Nitto} and Alfonso Fuggetta and Carlo Ghezzi", title = "A framework for formalizing inconsistencies and deviations in human-centered systems", journal = j-TOSEM, volume = "5", number = "3", pages = "191--230", month = jul, year = "1996", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Apr 20 08:21:35 MDT 2001", bibsource = "http://www.acm.org/pubs/toc/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "http://www.acm.org/pubs/articles/journals/tosem/1996-5-3/p191-cugola/p191-cugola.pdf; http://www.acm.org/pubs/citations/journals/tosem/1996-5-3/p191-cugola/", abstract = "Most modern business activities are carried out by a combination of computerized tools and human agents. Typical examples are engineering design activities, office procedures, and banking systems. All these {\em human-centered systems\/} are characterized by the interaction among people, and between people and computerized tools. This interaction defines a process, whose effectiveness is essential to ensure the quality of the delivered products and/or services. To support these systems, process-centered environments and workflow management systems have been recently developed. They can be collectively identified with the term {\em process technology}. This technology is based on the explicit definition of the process to be followed (the {\em process model\/} ). The model specifies the kind of support that has to be provided to human agents. An essential property that process technology mut exhibit is the ability of tolerating, controlling, and supporting {\em deviations\/} and {\em inconsistencies\/} of the real-world behaviors with respect to the process model. This is necessary to provide consistent and effective support to the human-centered system, still maintaining a high degree of flexibility and adaptability to the evolving needs, preferences, an expertise of the human agents. This article presents a formal framework to characterize the interaction between a human-centered system and its automated support. It does not aim at introducing a new language or system to describe processes. Rather, it aims at identifying the basic properties and features that make it possible to formally define the concepts of inconsistency and deviation. This formal framework can then be used to compare existing solutions and guide future research work.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", generalterms = "Design; Human Factors; Management; Theory", journal-URL = "https://dl.acm.org/loi/tosem", keywords = "business processes; deviation; formal model; human-centered systems; inconsistency; software processes", subject = "Information Systems --- Models and Principles --- User/Machine Systems (H.1.2); Software --- Software Engineering --- Programming Environments (D.2.6); Computing Milieux --- Management of Computing and Information Systems --- Software Management (K.6.3)", } @Article{Heitmeyer:1996:ACC, author = "Constance L. Heitmeyer and Ralph D. Jeffords and Bruce G. Labaw", title = "Automated consistency checking of requirements specifications", journal = j-TOSEM, volume = "5", number = "3", pages = "231--261", month = jul, year = "1996", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Apr 20 08:21:35 MDT 2001", bibsource = "http://www.acm.org/pubs/toc/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "http://www.acm.org/pubs/articles/journals/tosem/1996-5-3/p231-heitmeyer/p231-heitmeyer.pdf; http://www.acm.org/pubs/citations/journals/tosem/1996-5-3/p231-heitmeyer/", abstract = "This article describes a formal analysis technique, called {\em consistency checking}, for automatic detection of errors, such as type errors, nondeterminism, missing cases, and circular definitions, in requirements specifications. The technique is designed to analyze requirements specifications expressed in the SCR (Software Cost Reduction) tabular notation. As background, the SCR approach to specifying requirements is reviewed. To provide a formal semantics for the SCR notation and a foundation for consistency checking, a formal requirements model is introduced; the model represents a software system as a finite-state automation which produces externally visible outputs in response to changes in monitored environmental quantities. Results of two experiments are presented which evaluated the utility and scalability of our technique for consistency checking in real-world avionics application. The role of consistency checking during the requirements phase of software development is discussed.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", generalterms = "Languages; Management; Verification", journal-URL = "https://dl.acm.org/loi/tosem", keywords = "application-independent properties; consistency checking; formal requirements modeling; software cost reduction methodology; tabular notations", subject = "Software --- Software Engineering --- Software/Program Verification (D.2.4); Software --- Software Engineering --- Requirements/Specifications (D.2.1); Computing Milieux --- Management of Computing and Information Systems --- Software Management (K.6.3); Software --- Software Engineering --- Design Tools and Techniques (D.2.2)", } @Article{Murphy:1996:LLS, author = "Gail C. Murphy and David Notkin", title = "Lightweight lexical source model extraction", journal = j-TOSEM, volume = "5", number = "3", pages = "262--292", month = jul, year = "1996", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Apr 20 08:21:35 MDT 2001", bibsource = "http://www.acm.org/pubs/toc/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "http://www.acm.org/pubs/articles/journals/tosem/1996-5-3/p262-murphy/p262-murphy.pdf; http://www.acm.org/pubs/citations/journals/tosem/1996-5-3/p262-murphy/", abstract = "Software engineers maintaining an existing software system often depend on the mechanized extraction of information from system artifacts. Some useful kinds of information--source models--are well known: call graphs, file dependences, etc. Predicting every kind of source model that a software engineer may need is impossible. We have developed a lightweight approach for generating flexible and tolerant source model extractors from lexical specifications. The approach is lightweight in that the specifications are relatively small and easy to write. It is flexible in that there are few constraints on the kinds of artifacts from which source models are extracted (e.g., we can extract from source code, structured data files, documentation, etc.). It is tolerant in that there are few constraints on the condition of the artifacts. For example, we can extract from source that cannot necessarily be compiled. Our approach extended the kinds of source models that can be easily produced from lexical information while avoiding the constraints and brittleness of most parser-based approaches. We have developed tools to support this approach and applied the tools to the extraction of a number of different source models (file dependences, event interactions, call graphs) from a variety of system artifacts (C, C++, CLOS, Eiffel. TCL, structured data). We discuss our approach and describe its application to extract source models not available using existing systems; for example, we compute the implicitly-invokes relation over Field tools. We compare and contrast our approach to the conventional lexical and syntactic approaches of generating source models.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", generalterms = "Design; Experimentation; Languages; Theory", journal-URL = "https://dl.acm.org/loi/tosem", keywords = "lexical analysis; lexing; reverse engineering; scanner generation; scanning; software maintenance; source code analysis; source model; static analysis", subject = "Software --- Software Engineering --- Design Tools and Techniques (D.2.2); Software --- Programming Languages --- Processors (D.3.4); Software --- Software Engineering --- General (D.2.0)", } @Article{Harel:1996:SSS, author = "David Harel and Amnon Naamad", title = "The {STATEMATE} semantics of statecharts", journal = j-TOSEM, volume = "5", number = "4", pages = "293--333", month = oct, year = "1996", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Apr 20 08:21:35 MDT 2001", bibsource = "http://www.acm.org/pubs/toc/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "http://www.acm.org/pubs/articles/journals/tosem/1996-5-4/p293-harel/p293-harel.pdf; http://www.acm.org/pubs/citations/journals/tosem/1996-5-4/p293-harel/", abstract = "We describe the semantics of statecharts as implemented in the STATEMATE system. This was the first executable semantics defined for the language and has been in use for almost a decade. In terms of the controversy around whether changes made in a given step should take effect in the current step or in the next one, this semantics adopts the latter approach.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", generalterms = "Languages", journal-URL = "https://dl.acm.org/loi/tosem", keywords = "behavioral modeling; reactive system; semantics; statechart; STATEMATE", subject = "Software --- Software Engineering --- Design Tools and Techniques (D.2.2); Software --- Programming Languages --- Formal Definitions and Theory (D.3.1): {\bf Semantics}; Theory of Computation --- Logics and Meanings of Programs --- Semantics of Programming Languages (F.3.2)", } @Article{Cheung:1996:CCC, author = "Shing Chi Cheung and Jeff Kramer", title = "Context constraints for compositional reachability analysis", journal = j-TOSEM, volume = "5", number = "4", pages = "334--377", month = oct, year = "1996", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Apr 20 08:21:35 MDT 2001", bibsource = "http://www.acm.org/pubs/toc/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "http://www.acm.org/pubs/articles/journals/tosem/1996-5-4/p334-cheung/p334-cheung.pdf; http://www.acm.org/pubs/citations/journals/tosem/1996-5-4/p334-cheung/", abstract = "Behavior analysis of complex distributed systems has led to the search for enhanced reachability analysis techniques which support modularity and which control the state explosion problem. While modularity has been achieved, state explosion in still a problem. Indeed, this problem may even be exacerbated, as a locally minimized subsystem may contain many states and transitions forbidden by its environment or context. Context constraints, specified as interface processes, are restrictions imposed by the environment on subsystem behavior. Recent research has suggested that the state explosion problem can be effectively controlled if context constraints are incorporated in compositional reachability analysis (CRA). Although theoretically very promising, the approach has rarely been used in practice because it generally requires a more complex computational model and does not contain a mechanism to derive context constraints automatically. This article presents a technique to automate the approach while using a similar computational model to that of CRA. Context constraints are derived automatically, based on a set of sufficient conditions for these constraints to be transparently included when building reachability graphs. As a result, the global reachability graph generated using the derived constraints is shown to be observationally equivalent to that generated by CRA without the inclusion of context constraints. Constraints can also be specified explicitly by users, based on their application knowledge. Erroneous constraints which contravene transparency can be identified together with an indication of the error sources. User-specified constraints can be combined with those generated automatically. The technique is illustrated using a clients/server system and other examples.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", generalterms = "Design; Reliability; Verification", journal-URL = "https://dl.acm.org/loi/tosem", keywords = "compositional techniques; concurrency; context constraints; distributed systems; labeled transition systems; reachability analysis; state space reduction; static analysis; validation", subject = "Software --- Software Engineering --- Requirements/Specifications (D.2.1); Software --- Software Engineering --- Design Tools and Techniques (D.2.2); Software --- Programming Languages --- Language Classifications (D.3.2): {\bf Concurrent, distributed, and parallel languages}; Software --- Programming Languages --- Language Constructs and Features (D.3.3): {\bf Concurrent programming structures}; Theory of Computation --- Logics and Meanings of Programs --- Specifying and Verifying and Reasoning about Programs (F.3.1)", } @Article{Barrett:1996:FEB, author = "Daniel J. Barrett and Lori A. Clarke and Peri L. Tarr and Alexander E. Wise", title = "A framework for event-based software integration", journal = j-TOSEM, volume = "5", number = "4", pages = "378--421", month = oct, year = "1996", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Apr 20 08:21:35 MDT 2001", bibsource = "http://www.acm.org/pubs/toc/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "http://www.acm.org/pubs/articles/journals/tosem/1996-5-4/p378-barrett/p378-barrett.pdf; http://www.acm.org/pubs/citations/journals/tosem/1996-5-4/p378-barrett/", abstract = "Although event-based software integration is one of the most prevalent approaches to loose integration, no consistent model for describing it exists. As a result, there is no uniform way to discuss event-based integration, compare approaches and implementations, specify new event-based approaches, or match user requirements with the capabilities of event-based integration systems. We attempt to address these shortcomings by specifying a {\em generic framework for event-based integration}, the EBI framework, that provides a flexible, object-oriented model for discussing and comparing event-based integration approaches. The EBI framework can model dynamic and static specification, composition, and decomposition and can be instantiated to describe the features of most common event-based integration approaches. We demonstrate how to use the framework as a reference model by comparing and contrasting three well-known integration systems: FIELD, Polylith, and CORBA.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", generalterms = "Design; Theory", journal-URL = "https://dl.acm.org/loi/tosem", keywords = "control integration; CORBA; event-based systems; FIELD; interoperability; Polylith; reference model; software integration", subject = "Software --- Software Engineering --- Requirements/Specifications (D.2.1); Software --- Software Engineering --- Design Tools and Techniques (D.2.2)", } @Article{Anonymous:1996:AI, author = "Anonymous", title = "Author Index", journal = j-TOSEM, volume = "5", number = "4", pages = "422--423", month = oct, year = "1996", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Apr 20 08:05:47 MDT 2001", bibsource = "http://www.acm.org/pubs/toc/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "http://www.acm.org/pubs/articles/journals/tosem/1996-5-4/p422-authorindex/p422-authorindex.pdf; http://www.acm.org/pubs/citations/journals/tosem/1996-5-4/p422-author\_index/; http://www.acm.org/pubs/citations/journals/tosem/1996-5-4/p422-author_index/", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Zave:1997:FDC, author = "Pamela Zave and Michael Jackson", title = "Four dark corners of requirements engineering", journal = j-TOSEM, volume = "6", number = "1", pages = "1--30", month = jan, year = "1997", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Apr 20 08:21:35 MDT 2001", bibsource = "http://www.acm.org/pubs/toc/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "http://www.acm.org/pubs/articles/journals/tosem/1997-6-1/p1-zave/p1-zave.pdf; http://www.acm.org/pubs/citations/journals/tosem/1997-6-1/p1-zave/", abstract = "Research in requirements engineering has produced an extensive body of knowledge, but there are four areas in which the foundation of the discipline seems weak or obscure. This article shines some light in the ``four dark corners,'' exposing problems and proposing solutions. We show that all descriptions involved in requirements engineering should be descriptions of the environment. We show that certain control information is necessary for sound requirements engineering, and we explain the close association between domain knowledge and refinement of requirements. Together these conclusions explain the precise nature of requirements, specifications, and domain knowledge, as well as the precise nature of the relationships among them. They establish minimum standards for what information should be represented in a requirements language. They also make it possible to determine exactly what it means for requirements and engineering to be successfully completed.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", generalterms = "Theory", journal-URL = "https://dl.acm.org/loi/tosem", keywords = "control of actions; domain knowledge; implementation bias; refinement of requirements", subject = "Software --- Software Engineering --- Requirements/Specifications (D.2.1): {\bf Methodologies (e.g., object-oriented, structured)}", } @Article{Moser:1997:GED, author = "L. E. Moser and Y. S. Ramakrishna and G. Kutty and P. M. Melliar-Smith and L. K. Dillon", title = "A graphical environment for the design of concurrent real-time systems", journal = j-TOSEM, volume = "6", number = "1", pages = "31--79", month = jan, year = "1997", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Apr 20 08:21:35 MDT 2001", bibsource = "http://www.acm.org/pubs/toc/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "http://www.acm.org/pubs/articles/journals/tosem/1997-6-1/p31-moser/p31-moser.pdf; http://www.acm.org/pubs/citations/journals/tosem/1997-6-1/p31-moser/", abstract = "Concurrent real-time systems are among the most difficult systems to design because of the many possible interleavings of events and because of the timing requirements that must be satisfied. We have developed a graphical environment based on Real-Time Graphical Interval Logic (RTGIL) for specifying and reasoning about the designs of concurrent real-time systems. Specifications in the logic have an intuitive graphical representation that resembles the timing diagrams drawn by software and hardware engineers, with real-time constraints that bound the durations of intervals. The syntax-directed editor of the RTGIL environment enables the user to compose and edit graphical formulas on a workstation display; the automated theorem prover mechanically checks the validity of proofs in the logic; and the database and proof manager tracks proof dependencies and allows formulas to be stored and retrieved. This article describes the logic, methodology, and tools that comprise the prototype RTGIL environment and illustrates the use of the environment with an example application.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", generalterms = "Design; Verification", journal-URL = "https://dl.acm.org/loi/tosem", keywords = "automated deduction; concurrent systems; formal specification and verification; graphical user interface; real-time systems; temporal logic", subject = "Computer Systems Organization --- Special-Purpose and Application-Based Systems (C.3): {\bf Real-time and embedded systems}; Software --- Software Engineering --- Requirements/Specifications (D.2.1): {\bf Methodologies (e.g., object-oriented, structured)}; Software --- Software Engineering --- Requirements/Specifications (D.2.1): {\bf Tools}; Software --- Software Engineering --- Design Tools and Techniques (D.2.2): {\bf Computer-aided software engineering (CASE)}; Software --- Software Engineering --- Design** (D.2.10): {\bf Methodologies**}; Software --- Software Engineering --- Design** (D.2.10): {\bf Representation**}; Theory of Computation --- Mathematical Logic and Formal Languages --- Mathematical Logic (F.4.1): {\bf Mechanical theorem proving}; Theory of Computation --- Mathematical Logic and Formal Languages --- Formal Languages (F.4.3): {\bf Decision problems}", } @Article{Dillon:1997:TDT, author = "Laura K. Dillon", title = "Task dependence and termination in {Ada}", journal = j-TOSEM, volume = "6", number = "1", pages = "80--110", month = jan, year = "1997", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Apr 20 08:21:35 MDT 2001", bibsource = "http://www.acm.org/pubs/toc/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "http://www.acm.org/pubs/articles/journals/tosem/1997-6-1/p80-dillon/p80-dillon.pdf; http://www.acm.org/pubs/citations/journals/tosem/1997-6-1/p80-dillon/", abstract = "This article analyzes the semantics of task dependence and termination in Ada. We use a contour model of Ada tasking in examining the implications of and possible motivation for the rules that determine when procedures and tasks terminate during execution of an Ada program. The termination rules prevent the data that belong to run-time instances of scope units from being deallocated prematurely, but they are unnecessarily conservative in this regard. For task instances that are created by invoking a storage allocator, we show that the conservative termination policy allows heap storage to be managed more efficiently than a less conservative policy. The article also examines the manner in which the termination rules affect the synchronization of concurrent tasks. Master-slave and client-server applications are considered. We show that the rules for distributed termination of concurrent tasks guarantee that a task terminates only if it can no longer affect the outcome of an execution. The article is meant to give programmers a better understanding of Ada tasking and to help language designers assess the strengths and weaknesses of the termination model.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", generalterms = "Languages", journal-URL = "https://dl.acm.org/loi/tosem", keywords = "Ada tasking; distributed termination; master/dependent relation; task termination; tasking execution model", subject = "Software --- Programming Languages --- Language Constructs and Features (D.3.3): {\bf Concurrent programming structures}; Software --- Programming Languages --- Language Classifications (D.3.2): {\bf Ada}", } @Article{Henninger:1997:EAC, author = "Scott Henninger", title = "An evolutionary approach to constructing effective software reuse repositories", journal = j-TOSEM, volume = "6", number = "2", pages = "111--140", month = apr, year = "1997", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Apr 20 08:21:35 MDT 2001", bibsource = "http://www.acm.org/pubs/toc/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "http://www.acm.org/pubs/articles/journals/tosem/1997-6-2/p111-henninger/p111-henninger.pdf; http://www.acm.org/pubs/citations/journals/tosem/1997-6-2/p111-henninger/", abstract = "Repositories for software reuse are faced with two interrelated problems: (1) acquiring the knowledge to initially construct the repository and (2) modifying the repository to meet the evolving and dynamic needs of software development organizations. Current software repository methods rely heavily on classification, which exacerbates acquisition and evolution problems by requiring costly classification and domain analysis efforts before a repository can be used effectively, This article outlines an approach that avoids these problems by choosing a retrieval method that utilizes minimal repository structure to effectively support the process of finding software components. The approach is demonstrated through a pair of proof-of-concept prototypes: PEEL, a tool to semiautomatically identify reusable components, and CodeFinder, a retrieval system that compensates for the lack of explicit knowledge structures through a spreading activation retrieval process. CodeFinder also allows component representations to be modified while users are searching for information. This mechanism adapts to the changing nature of the information in the repository and incrementally improves the repository while people use it. The combination of these techniques holds potential for designing software repositories that minimize up-front costs, effectively support the search process, and evolve with an organization's changing needs.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", generalterms = "Design", journal-URL = "https://dl.acm.org/loi/tosem", keywords = "component repositories; information retrieval; software reuse", subject = "Software --- Software Engineering --- Design Tools and Techniques (D.2.2): {\bf Software libraries}; Software --- Software Engineering --- Design Tools and Techniques (D.2.2): {\bf User interfaces}; Information Systems --- Information Storage and Retrieval --- Information Search and Retrieval (H.3.3): {\bf Query formulation}; Information Systems --- Information Storage and Retrieval --- Information Search and Retrieval (H.3.3): {\bf Retrieval models}", } @Article{Devanbu:1997:UDL, author = "Premkumar Devanbu and Mark A. Jones", title = "The use of description logics in {KBSE} systems", journal = j-TOSEM, volume = "6", number = "2", pages = "141--172", month = apr, year = "1997", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Apr 20 08:21:35 MDT 2001", bibsource = "http://www.acm.org/pubs/toc/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "http://www.acm.org/pubs/articles/journals/tosem/1997-6-2/p141-devalbu/p141-devalbu.pdf; http://www.acm.org/pubs/citations/journals/tosem/1997-6-2/p141-devanbu/", abstract = "The increasing size and complexity of many software systems demand a greater emphasis on capturing and maintaining knowledge at many different levels within the software development process. This knowledge includes descriptions of the hardware and software components and their behavior, external and internal design specifications, and support for system testing. The Knowledge-based software engineering (KBSE) research paradigm is concerned with systems that use formally represented knowledge, with associated inference procedures, to support the various subactivities of software development. As they growing scale, KBSE systems must balance expressivity and inferential power with the real demands of knowledge base construction, maintenance, performance, and comprehensibility. {\em Description logics\/} (DLs) possess several features--a terminological orientation, a formal semantics, and efficient reasoning procedures--which offer an effective tradeoff of these factors. We discuss three KBSE systems in which DLs capture some of the requisite knowledge needed to support design, coding, and testing activities. We then survey some alternative approaches (to DLs) in KBSE systems. We close with a discussion of the benefits of DLs and ways to address some of their limitations.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", generalterms = "Verification", journal-URL = "https://dl.acm.org/loi/tosem", keywords = "automated software engineering; knowledge basis; logics; software development environments; testing; tools", subject = "Software --- Software Engineering --- Design Tools and Techniques (D.2.2); Software --- Software Engineering --- Coding Tools and Techniques (D.2.3); Software --- Software Engineering --- Testing and Debugging (D.2.5); Software --- Software Engineering --- Programming Environments (D.2.6); Computing Methodologies --- Artificial Intelligence --- Automatic Programming (I.2.2); Computing Methodologies --- Artificial Intelligence --- Knowledge Representation Formalisms and Methods (I.2.4): {\bf Representations (procedural and rule-based)}", } @Article{Rothermel:1997:SER, author = "Gregg Rothermel and Mary Jean Harrold", title = "A safe, efficient regression test selection technique", journal = j-TOSEM, volume = "6", number = "2", pages = "173--210", month = apr, year = "1997", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Apr 20 08:21:35 MDT 2001", bibsource = "http://www.acm.org/pubs/toc/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "http://www.acm.org/pubs/articles/journals/tosem/1997-6-2/p173-rothermel/p173-rothermel.pdf; http://www.acm.org/pubs/citations/journals/tosem/1997-6-2/p173-rothermel/", abstract = "Regression testing is an expensive but necessary maintenance activity performed on modified software to provide confidence that changes are correct and do not adversely affect other portions of the software. A regression test selection technique chooses, from an existing test set, tests that are deemed necessary to validate modified software. We present a new technique for regression test selection. Our algorithms construct control flow graphs for a procedure or program and its modified version and use these graphs to select tests that execute changed code from the original test suite. We prove that, under certain conditions, the set of tests our technique selects includes every test from the original test suite that con expose faults in the modified procedure or program. Under these conditions our algorithms are {\em safe}. Moreover, although our algorithms may select some tests that cannot expose faults, they are at lease as precise as other safe regression test selection algorithms. Unlike many other regression test selection algorithms, our algorithms handle all language constructs and all types of program modifications. We have implemented our algorithms; initial empirical studies indicate that our technique can significantly reduce the cost of regression testing modified software.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", generalterms = "Algorithms; Measurement; Performance; Verification", journal-URL = "https://dl.acm.org/loi/tosem", keywords = "regression test selection; regression testing; selective retest", subject = "Software --- Software Engineering --- Design Tools and Techniques (D.2.2): {\bf Computer-aided software engineering (CASE)}; Software --- Software Engineering --- Testing and Debugging (D.2.5); Software --- Software Engineering --- Distribution, Maintenance, and Enhancement (D.2.7): {\bf Corrections**}", } @Article{Allen:1997:FBA, author = "Robert Allen and David Garlan", title = "A formal basis for architectural connection", journal = j-TOSEM, volume = "6", number = "3", pages = "213--249", month = jul, year = "1997", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Apr 20 08:21:35 MDT 2001", bibsource = "http://www.acm.org/pubs/toc/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", note = "See errata \cite{Allen:1998:EFB}.", URL = "http://www.acm.org/pubs/articles/journals/tosem/1997-6-3/p213-allen/p213-allen.pdf; http://www.acm.org/pubs/citations/journals/tosem/1997-6-3/p213-allen/", abstract = "As software systems become more complex, the overall system structure--or software architecture--becomes a central design problem. An important step toward an engineering discipline of software is a formal basis for describing and analyzing these designs. In the article we present a formal approach to one aspect of architectural design: the interactions among components. The key idea is to define architectural connectors as explicit semantic entities. These are specified as a collection of protocols that characterize each of the participant roles in an interaction and how these roles interact. We illustrate how this scheme can be used to define a variety of common architectural connectors. We further provide a formal semantics and show how this leads to a system in which architectural compatibility can be checked in a way analogous to type-checking in programming languages.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", generalterms = "Design; Theory", journal-URL = "https://dl.acm.org/loi/tosem", keywords = "formal models; model-checking; module interconnection; software analysis; WRIGHT", subject = "Software --- Software Engineering --- Requirements/Specifications (D.2.1): {\bf Languages}; Software --- Software Engineering --- Design Tools and Techniques (D.2.2): {\bf Modules and interfaces}; Software --- Software Engineering --- Design** (D.2.10): {\bf Representation**}; Theory of Computation --- Logics and Meanings of Programs --- Specifying and Verifying and Reasoning about Programs (F.3.1): {\bf Specification techniques}; Theory of Computation --- Mathematical Logic and Formal Languages --- Formal Languages (F.4.3)", } @Article{Roman:1997:MUR, author = "Gruia-Catalin Roman and Peter J. McCann and Jerome Y. Plun", title = "Mobile {UNITY}: reasoning and specification in mobile computing", journal = j-TOSEM, volume = "6", number = "3", pages = "250--282", month = jul, year = "1997", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Apr 20 08:21:35 MDT 2001", bibsource = "http://www.acm.org/pubs/toc/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "http://www.acm.org/pubs/articles/journals/tosem/1997-6-3/p250-roman/p250-roman.pdf; http://www.acm.org/pubs/citations/journals/tosem/1997-6-3/p250-roman/", abstract = "Mobile computing represents a major point of departure from the traditional distributed-computing paradigm. The potentially very large number of independent computing units, a decoupled computing style, frequent disconnections, continuous position changes, and the location-dependent nature of the behavior and communication patterns present designers with unprecedented challenges in the areas of modularity and dependability. So far, the literature on mobile computing is dominated by concerns having to de with the development of protocols and services. This article complements this perspective by considering the nature of the underlying formal models that will enable us to specify and reason about such computations. The basic research goal is to characterize fundamental issues facing mobile computing. We want to achieve this in a manner analogous to the way concepts such as shared variables and message passing help us understand distributed computing. The pragmatic objective is to develop techniques that facilitate the verification and design of dependable mobile systems. Toward this goal we employ the methods of UNITY. To focus on what is essential, we center our study on {\em ad hoc networks}, whose singular nature is bound to reveal the ultimate impact of movement on the way one computes and communicates in a mobile environment. To understand interactions we start with the UNITY concepts of union and superposition and consider direct generalizations to transient interactions. The motivation behind the transient nature of the interactions comes from the fact that components can communicate with each other only when they are within a certain range. The notation we employ is a highly modular extension of the UNITY programming notation. Reasoning about mobile computations relies on extensions to the UNITY proof logic.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", generalterms = "Design; Languages; Reliability; Theory; Verification", journal-URL = "https://dl.acm.org/loi/tosem", keywords = "formal methods; mobile computing; mobile UNITY; shared variables; synchronization; transient interactions; weak consistency", subject = "Software --- Software Engineering --- Software/Program Verification (D.2.4): {\bf Correctness proofs}; Software --- Programming Languages --- Formal Definitions and Theory (D.3.1): {\bf Semantics}; Software --- Programming Languages --- Language Constructs and Features (D.3.3): {\bf Concurrent programming structures}; Theory of Computation --- Logics and Meanings of Programs --- Specifying and Verifying and Reasoning about Programs (F.3.1); Theory of Computation --- Logics and Meanings of Programs --- Semantics of Programming Languages (F.3.2)", } @Article{Ambriola:1997:APC, author = "Vincenzo Ambriola and Reidar Conradi and Alfonso Fuggetta", title = "Assessing process-centered software engineering environments", journal = j-TOSEM, volume = "6", number = "3", pages = "283--328", month = jul, year = "1997", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Apr 20 08:21:35 MDT 2001", bibsource = "http://www.acm.org/pubs/toc/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "http://www.acm.org/pubs/articles/journals/tosem/1997-6-3/p283-ambriola/p283-ambriola.pdf; http://www.acm.org/pubs/citations/journals/tosem/1997-6-3/p283-ambriola/", abstract = "Process-centered software engineering environments (PSEEs) are the most recent generation of environments supporting software development activities. They exploit a representation of the process (called the {\em process model\/}) that specifies how to carry out software development activities, the roles and tasks of software developers, and how to use and control software development tools. A process model is therefore a vehicle to better understand and communicate the process. If it is expressed in a formal notation, it can be used to support a variety of activities such as process analysis, process simulation, and process enactment. PSEEs provide automatic support for these activities. They exploit languages based on different paradigms, such as Petri nets and rule-based systems. They include facilities to edit and analyze process models. By enacting the process model, a PSEE provides a variety of services, such as assistance for software developers, automation of routine tasks, invocation and control of software development tools, and enforcement of mandatory rules and practices. Several PSEEs have been developed, both as research projects and as commercial products. The initial deployment and exploitation of this technology have made it possible to produce a significant amount of experiences, comments, evaluations, and feedback. We still lack, however, consistent and comprehensive assessment methods that can be used to collect and organize this information. This article aims at contributing to the definition of such methods, by providing a systematic comparison grid and by accomplishing an initial evaluation of the state of the art in the field. This evaluation takes into account the systems that have been developed by the authors in the past five years, as well as the main characteristics of other well-known environments", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", generalterms = "Human Factors; Languages; Management", journal-URL = "https://dl.acm.org/loi/tosem", keywords = "CASE; enabling technology; process modeling languages; process-centered software engineering environments; software process", subject = "Software --- Software Engineering --- Programming Environments (D.2.6); Computing Milieux --- Management of Computing and Information Systems --- Software Management (K.6.3): {\bf Software development}; Computing Milieux --- Management of Computing and Information Systems --- Software Management (K.6.3): {\bf Software maintenance}; Software --- Software Engineering --- Design Tools and Techniques (D.2.2): {\bf Computer-aided software engineering (CASE)}", } @Article{Petrenko:1997:CRT, author = "Alexandre Petrenko", title = "Comments on {``A reduced test suite for protocol conformance testing''}", journal = j-TOSEM, volume = "6", number = "3", pages = "329--331", month = jul, year = "1997", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Apr 20 08:21:35 MDT 2001", bibsource = "http://www.acm.org/pubs/toc/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", note = "See \cite{Bernhard:1994:RTS}.", URL = "http://www.acm.org/pubs/articles/journals/tosem/1997-6-3/p329-petrenko/p329-petrenko.pdf; http://www.acm.org/pubs/citations/journals/tosem/1997-6-3/p329-petrenko/", abstract = "A previous {\em ACM TOSEM\/} article of Ph. Bernhard (``A Reduced Test Suite of Protocol Conformance Testing,'' {\em ACM Transactions on Software Engineering and Methodology}, Vol. 3, No. 3, July 1994, pages 201--220) describes three new versions of the so-called W-method for solving the protocol-testing problem, i.e., solving the Mealy machine equivalence problem. The author claims that these versions all have the same fault detection capability as the original W-method. In this correspondence we prove that the results of that article are incorrect.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", generalterms = "Reliability; Theory; Verification", journal-URL = "https://dl.acm.org/loi/tosem", subject = "Computer Systems Organization --- Computer-Communication Networks --- Network Protocols (C.2.2): {\bf Protocol verification}; Software --- Software Engineering --- Testing and Debugging (D.2.5): {\bf Testing tools (e.g., data generators, coverage testing)}", } @Article{Zaremski:1997:SMS, author = "Amy Moormann Zaremski and Jeannette M. Wing", title = "Specification matching of software components", journal = j-TOSEM, volume = "6", number = "4", pages = "333--369", month = oct, year = "1997", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Apr 20 08:21:35 MDT 2001", bibsource = "http://www.acm.org/pubs/toc/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "http://www.acm.org/pubs/articles/journals/tosem/1997-6-4/p333-zaremski/p333-zaremski.pdf; http://www.acm.org/pubs/citations/journals/tosem/1997-6-4/p333-zaremski/", abstract = "Specification matching is a way to compare two software components, based on descriptions of the component's behaviors. In the context of software reuse and library retrieval, it can help determine whether one component can be substituted for another or how one can be modified to fit the requirements of the other. In the context of object-oriented programming, it can help determine when one type is a behavioral subtype of another. We use formal specifications to describe the behavior of software components and, hence, to determine whether two components match. We give precise definitions of not just exact match, but, more relevantly, various flavors of relaxed match. These definitions capture the notions of generalization, specialization, and substitutability of software components. Since our formal specifications are pre- and postconditions written as predicates in first-order logic, we rely on theorem proving to determine match and mismatch. We give examples from our implementation of specification matching using the Larch Prover.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", generalterms = "Documentation; Standardization; Theory", journal-URL = "https://dl.acm.org/loi/tosem", subject = "Software --- Software Engineering --- Requirements/Specifications (D.2.1); Software --- Software Engineering --- Design Tools and Techniques (D.2.2): {\bf Software libraries}; Software --- Programming Languages --- Language Constructs and Features (D.3.3): {\bf Modules, packages}; Theory of Computation --- Logics and Meanings of Programs --- Specifying and Verifying and Reasoning about Programs (F.3.1): {\bf Pre- and post-conditions}; Theory of Computation --- Logics and Meanings of Programs --- Specifying and Verifying and Reasoning about Programs (F.3.1): {\bf Specification techniques}; Information Systems --- Information Storage and Retrieval --- Information Search and Retrieval (H.3.3): {\bf Retrieval models}; Information Systems --- Information Storage and Retrieval --- Information Search and Retrieval (H.3.3): {\bf Selection process}", } @Article{Gupta:1997:HSI, author = "Rajiv Gupta and Mary Lou Soffa and John Howard", title = "Hybrid slicing: integrating dynamic information with static analysis", journal = j-TOSEM, volume = "6", number = "4", pages = "370--397", month = oct, year = "1997", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Apr 20 08:21:35 MDT 2001", bibsource = "http://www.acm.org/pubs/toc/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "http://www.acm.org/pubs/articles/journals/tosem/1997-6-4/p370-gupta/p370-gupta.pdf; http://www.acm.org/pubs/citations/journals/tosem/1997-6-4/p370-gupta/", abstract = "Program slicing is an effective technique for narrowing the focus of attention to the relevant parts of a program during the debugging process. However, imprecision is a problem in static slices, since they are based on all possible executions that reach a given program point rather than the specific execution under which the program is being debugged. Dynamic slices, based on the specific execution being debugged, are precise but incur high run-time overhead due to the tracing information that is collected during the program's execution. We present a hybrid slicing technique that integrates dynamic information from a specific execution into a static slice analysis. The {\em hybrid slice\/} produced is more precise that the static slice and less costly that the dynamic slice. The technique exploits dynamic information that is readily available during debugging--namely, breakpoint information and the dynamic call graph. This information is integrated into a static slicing analysis to more accurately estimate the potential paths taken by the program. The breakpoints and call/return points, used as reference points, divide the execution path into intervals. By associating each statement in the slice with an execution interval, hybrid slicing provides information as to when a statement was encountered during execution. Another attractive feature of our approach is that it allows the user to control the cost of hybrid slicing by limiting the amount of dynamic information used in computing the slice. We implemented the hybrid slicing technique to demonstrate the feasibility of our approach.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", generalterms = "Algorithms; Experimentation; Theory", journal-URL = "https://dl.acm.org/loi/tosem", keywords = "breakpoint; dynamic call graph; dynamic slice; hybrid slice; static slice", subject = "Software --- Software Engineering --- Testing and Debugging (D.2.5)", } @Article{Zeller:1997:UVT, author = "Andreas Zeller and Gregor Snelting", title = "Unified versioning through feature logic", journal = j-TOSEM, volume = "6", number = "4", pages = "398--441", month = oct, year = "1997", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Apr 20 08:21:35 MDT 2001", bibsource = "http://www.acm.org/pubs/toc/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "http://www.acm.org/pubs/articles/journals/tosem/1997-6-4/p398-zeller/p398-zeller.pdf; http://www.acm.org/pubs/citations/journals/tosem/1997-6-4/p398-zeller/", abstract = "Software configuration management (SCM) suffers from tight coupling between SCM version-ing models and the imposed SCM processes. In order to adapt SCM tools to SCM processes, rather than vice versa, we propose a unified versioning model, the {\em version set model}. Version sets denote versions, components, and configurations by {\em feature terms}, that is, Boolean terms over ({\em feature: value\/})-attributions. Through {\em feature logic}, we deduce consistency of abstract configurations as well as features of derived components and describe how features propagate in the SCM process; using {\em feature implications}, we integrate change-oriented and version-oriented SCM models. We have implemented the version set model in an SCM system called ICE, for {\em Incremental Configuration Environment}. ICE is based on a {\em featured file system (FFS)}, where version sets are accessed as virtual files and directories. Using the well-known C preprocessor (CPP) representation, users can view and edit multiple versions simultaneously, while only the differences between versions are stored. It turns out that all major SCM models can be realized and integrated efficiently on top of the FFS, demonstrating the flexible and unifying nature of the version set model.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", generalterms = "Management; Standardization; Theory", journal-URL = "https://dl.acm.org/loi/tosem", keywords = "feature logic; version sets", subject = "Software --- Software Engineering --- Programming Environments (D.2.6); Software --- Software Engineering --- Distribution, Maintenance, and Enhancement (D.2.7): {\bf Version control}; Software --- Software Engineering --- Management (D.2.9): {\bf Software configuration management}; Software --- Operating Systems --- File Systems Management (D.4.3); Computing Methodologies --- Artificial Intelligence --- Deduction and Theorem Proving (I.2.3); Computing Methodologies --- Artificial Intelligence --- Knowledge Representation Formalisms and Methods (I.2.4); Software --- Software Engineering --- Management (D.2.9): {\bf Programming teams}", } @Article{Doppke:1998:SPM, author = "John C. Doppke and Dennis Heimbigner and Alexander L. Wolf", title = "Software process modeling and execution within virtual environments", journal = j-TOSEM, volume = "7", number = "1", pages = "1--40", month = jan, year = "1998", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Apr 20 08:21:35 MDT 2001", bibsource = "http://www.acm.org/pubs/toc/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "http://www.acm.org/pubs/articles/journals/tosem/1998-7-1/p1-doppke/p1-doppke.pdf; http://www.acm.org/pubs/citations/journals/tosem/1998-7-1/p1-doppke/", abstract = "In the past, multiuser virtual environments have been developed as venues for entertainment and social interaction. Recent research focuses instead on their utility in carrying out work in the real world. This research has identified the importance of a mapping between the real and the virtual that permits the representation of real tasks in the virtual environment. We investigate the use of virtual environments--in particular, MUDs (Multi-User Dimensions)--in the domain of software process. In so doing, we define a mapping, or {\em metaphor}, that permits the representation of software processes within a MUD. The system resulting from this mapping, called {\em Promo}, permits the modeling and execution of software processes by geographically dispersed agents.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", generalterms = "Design; Management; Theory", journal-URL = "https://dl.acm.org/loi/tosem", keywords = "MOO; MUD; PROMO; software process; tools; virtual environments", subject = "Software --- Software Engineering --- Programming Environments (D.2.6); Computing Milieux --- Management of Computing and Information Systems --- Software Management (K.6.3); Information Systems --- Information Interfaces and Presentation --- Multimedia Information Systems (H.5.1): {\bf Artificial, augmented, and virtual realities}; Software --- Software Engineering --- Management (D.2.9): {\bf Software process models (e.g., CMM, ISO, PSP)}", } @Article{Porter:1998:USV, author = "Adam Porter and Harvey Siy and Audris Mockus and Lawrence Votta", title = "Understanding the sources of variation in software inspections", journal = j-TOSEM, volume = "7", number = "1", pages = "41--79", month = jan, year = "1998", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Apr 20 08:21:35 MDT 2001", bibsource = "http://www.acm.org/pubs/toc/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "http://www.acm.org/pubs/articles/journals/tosem/1998-7-1/p41-porter/p41-porter.pdf; http://www.acm.org/pubs/citations/journals/tosem/1998-7-1/p41-porter/", abstract = "In a previous experiment, we determined how various changes in three structural elements of the software inspection process (team size and the number and sequencing of sessions) altered effectiveness and interval. Our results showed that such changes did not significantly influence the defect detection rate, but that certain combinations of changes dramatically increased the inspection interval. We also observed a large amount of unexplained variance in the data, indicating that other factors must be affecting inspection performance. The nature and extent of these other factors now have to be determined to ensure that they had not biased our earlier results. Also, identifying these other factors might suggest additional ways to improve the efficiency of inspections. Acting on the hypothesis that the ``inputs'' into the inspection process (reviewers, authors, and code units) were significant sources of variation, we modeled their effects on inspection performance. We found that they were responsible for much more variation in detect detection than was process structure. This leads us to conclude that better defect detection techniques, not better process structures, are the key to improving inspection effectiveness. The combined effects of process inputs and process structure on the inspection interval accounted for only a small percentage of the variance in inspection interval. Therefore, there must be other factors which need to be identified.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", generalterms = "Design; Experimentation; Measurement; Performance; Theory", journal-URL = "https://dl.acm.org/loi/tosem", keywords = "empirical studies; software inspection; software process; statistical models", subject = "Software --- Software Engineering --- Testing and Debugging (D.2.5): {\bf Code inspections and walk-throughs}; Software --- Software Engineering --- Management (D.2.9): {\bf Software process models (e.g., CMM, ISO, PSP)}", } @Article{Baresi:1998:TFS, author = "Luciano Baresi and Mauro Pezz{\`e}", title = "Toward formalizing structured analysis", journal = j-TOSEM, volume = "7", number = "1", pages = "80--107", month = jan, year = "1998", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Apr 20 08:21:35 MDT 2001", bibsource = "http://www.acm.org/pubs/toc/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "http://www.acm.org/pubs/articles/journals/tosem/1998-7-1/p80-baresi/p80-baresi.pdf; http://www.acm.org/pubs/citations/journals/tosem/1998-7-1/p80-baresi/", abstract = "Real-time extensions to structured analysis (SA/RT) are popular in industrial practice. Despite the large industrial experience and the attempts to formalize the various ``dialects,'' SA/RT notations are still imprecise and ambiguous. This article tries to identify the semantic problems of the requirements definition notation defined by Hatley and Pirbhai, one of the popular SA/RT ``dialects,'' and discusses possible solutions. As opposed to other articles that give their own interpretation, this article does not propose a specific semantics for the notation. This article identifies imprecisions, i.e., missing or partial information about features of the notation; it discusses ambiguities, i.e., elements of the definition that allow at least two different (``reasonable'') interpretations of features of the notation; and it lists extensions, i.e., features not belonging to the notation, but required by many industrial users and often supported by CASE tools. This article contributes by clarifying whether specific interpretations can be given unique semantics or retain ambiguities of the original definition. The article allows for the evaluation of formal definitions by indicating alternatives and consequences of the specific choices.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", generalterms = "Design; Documentation; Measurement; Performance; Theory", journal-URL = "https://dl.acm.org/loi/tosem", keywords = "Hatley and Pirbhai's requirements definition notation; informal versus formal specifications; structured analysis/real-time", subject = "Software --- Software Engineering --- Requirements/Specifications (D.2.1): {\bf Methodologies (e.g., object-oriented, structured)}; Software --- Software Engineering --- Coding Tools and Techniques (D.2.3): {\bf Structured programming}", } @Article{Bowdidge:1998:SRD, author = "Robert W. Bowdidge and William G. Griswold", title = "Supporting the restructuring of data abstractions through manipulation of a program visualization", journal = j-TOSEM, volume = "7", number = "2", pages = "109--157", month = apr, year = "1998", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Apr 20 08:21:35 MDT 2001", bibsource = "http://www.acm.org/pubs/toc/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "http://www.acm.org/pubs/articles/journals/tosem/1998-7-2/p109-bowdidge/p109-bowdidge.pdf; http://www.acm.org/pubs/citations/journals/tosem/1998-7-2/p109-bowdidge/", abstract = "With a meaning-preserving restructuring tool, a software engineer can change a program's structure to ease future modifications. However, deciding how to restructure the program requires a global understanding of the program's structure, which cannot be derived easily by directly inspecting the source code. We describe a manipulable program visualization--the {\em star diagram\/} --that supports the restructuring task of encapsulating a global data structure. The star diagram graphically displays information pertinent to encapsulation, and direct manipulation of the diagram causes the underlying program to be restructured. The visualization compactly presents all statements in the program that use the given global data structure, helping the programmer to choose the functions that completely encapsulate it. Additionally, the visualization elides code unrelated to the data structure and to the task and collapses similar expressions to help the programmer identify frequently occurring code fragments and manipulate them together. The visualization is mapped directly to the program text, so manipulation of the visualization also restructures the program. We present the star diagram concept and describe an implementation of the star diagram built upon a meaning-preserving restructuring tool for Scheme. We also describe our creation of star diagram generators for C programs, and we test the scalability of the star diagram using large C and MUMPS programs.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", generalterms = "Design", journal-URL = "https://dl.acm.org/loi/tosem", keywords = "meaning-preserving restructuring; semi-automated restructuring; software visualization; star diagram; tool-supported restructuring", subject = "Software --- Software Engineering --- Design Tools and Techniques (D.2.2): {\bf Modules and interfaces}; Software --- Software Engineering --- Design Tools and Techniques (D.2.2): {\bf User interfaces}; Software --- Software Engineering --- Distribution, Maintenance, and Enhancement (D.2.7): {\bf Restructuring, reverse engineering, and reengineering}; Software --- Programming Languages --- Language Constructs and Features (D.3.3): {\bf Abstract data types}", } @Article{Murphy:1998:ESS, author = "Gail C. Murphy and David Notkin and William G. Griswold and Erica S. Lan", title = "An empirical study of static call graph extractors", journal = j-TOSEM, volume = "7", number = "2", pages = "158--191", month = apr, year = "1998", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Apr 20 08:21:35 MDT 2001", bibsource = "http://www.acm.org/pubs/toc/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "http://www.acm.org/pubs/articles/journals/tosem/1998-7-2/p158-murphy/p158-murphy.pdf; http://www.acm.org/pubs/citations/journals/tosem/1998-7-2/p158-murphy/", abstract = "Informally, a call graph represents calls between entities in a given program. The call graphs that compilers compute to determine the applicability of an optimization must typically be conservative: a call may be omitted only if it can never occur in any execution of the program. Numerous software engineering tools also extract call graphs with the expectation that they will help software engineers increase their understanding of a program. The requirements placed on software engineering tools that compute call graphs are typically more relaxed than for compilers. For example, some false negatives--calls that can in fact take place in some execution of the program, but which are omitted from the call graph--may be acceptable, depending on the understanding task at hand. In this article, we empirically show a consequence of this spectrum of requirements by comparing the C call graphs extracted from three software systems (mapmaker, mosaic, and gcc) by nine tools (cflow, cawk, CIA, Field, GCT, Imagix, LSME, Mawk, and Rigiparse). A quantitative analysis of the call graphs extracted for each system shows considerable variation, a result that is counterintuitive to many experienced software engineers. A qualitative analysis of these results reveals a number of reasons for this variation: differing treatments of macros, function pointers, input formats, etc. The fundamental problem is not that variances among the graphs extracted by different tools exist, but that software engineers have little sense of the dimensions of approximation in any particular call graph. In this article, we describe and discuss the study, sketch a design space for static call graph extractors, and discuss the impact of our study on practitioners, tool developers, and researchers. Although this article considers only one kind of information, call graphs, many of the observations also apply to static extractors of other kinds of information, such as inheritance structures, file dependences, and references to global variables.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", generalterms = "Experimentation; Languages", journal-URL = "https://dl.acm.org/loi/tosem", keywords = "call graphs; design space; empirical study; software system analysis; static analysis", subject = "Software --- Programming Languages --- Processors (D.3.4)", } @Article{Hunt:1998:DAE, author = "James J. Hunt and Kiem-Phong Vo and Walter F. Tichy", title = "Delta algorithms an empirical analysis", journal = j-TOSEM, volume = "7", number = "2", pages = "192--214", month = apr, year = "1998", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Apr 20 08:21:35 MDT 2001", bibsource = "http://www.acm.org/pubs/toc/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", note = "See addendum \cite{Hunt:1998:ADA}.", URL = "http://www.acm.org/pubs/articles/journals/tosem/1998-7-2/p192-hunt/p192-hunt.pdf; http://www.acm.org/pubs/citations/journals/tosem/1998-7-2/p192-hunt/", abstract = "Delta algorithms compress data by encoding one file in terms of another. This type of compression is useful in a number of situations: strong multiple versions of data, displaying differences, merging changes, distributing updates, storing backups, transmitting video sequences, and others. This article studies the performance parameters of several delta algorithms, using a benchmark of over 1,300 pairs of files taken from two successive releases of GNU software. Results indicate that modern delta compression algorithms based on Ziv--Lempel techniques significantly outperform {\em diff}, a popular but older delta compressor, in terms of compression ratio. The modern compressors also correlate better with the actual difference between files without sacrificing performance.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", generalterms = "Algorithms; Experimentation; Measurement; Performance", journal-URL = "https://dl.acm.org/loi/tosem", keywords = "benchmark; delta encoding; differencing", subject = "Software --- Software Engineering --- Distribution, Maintenance, and Enhancement (D.2.7): {\bf Version control}; Software --- Software Engineering --- Metrics (D.2.8): {\bf Performance measures}; Data --- Coding and Information Theory (E.4): {\bf Data compaction and compression}; Data --- Files (E.5): {\bf Backup/recovery}", } @Article{Cook:1998:DMS, author = "Jonathan E. Cook and Alexander L. Wolf", title = "Discovering models of software processes from event-based data", journal = j-TOSEM, volume = "7", number = "3", pages = "215--249", month = jul, year = "1998", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Apr 20 08:21:35 MDT 2001", bibsource = "http://www.acm.org/pubs/toc/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "http://www.acm.org/pubs/articles/journals/tosem/1998-7-3/p215-cook/p215-cook.pdf; http://www.acm.org/pubs/citations/journals/tosem/1998-7-3/p215-cook/", abstract = "Many software process methods and tools presuppose the existence of a formal model of a process. Unfortunately, developing a formal model for an on-going, complex process can be difficult, costly, and error prone. This presents a practical barrier to the adoption of process technologies, which would be lowered by automated assistance in creating formal models. To this end, we have developed a data analysis technique that we term {\em process discovery.\/} Under this technique, data describing process events are first captured from an on-going process and then used to generate a formal model of the behavior of that process. In this article we describe a Markov method that we developed specifically for process discovery, as well as describe two additional methods that we adopted from other domains and augmented for our purposes. The three methods range from the purely algorithmic to the purely statistical. We compare the methods and discuss their application in an industrial case study.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", generalterms = "Management", journal-URL = "https://dl.acm.org/loi/tosem", keywords = "Balboa; process discovery; software process; tools", subject = "Software --- Software Engineering --- Programming Environments (D.2.6); Computing Milieux --- Management of Computing and Information Systems --- Software Management (K.6.3): {\bf Software development}; Computing Milieux --- Management of Computing and Information Systems --- Software Management (K.6.3): {\bf Software maintenance}", } @Article{Chen:1998:BWI, author = "Huo Yan Chen and T. H. Tse and F. T. Chan and T. Y. Chen", title = "In black and white: an integrated approach to class-level testing of object-oriented programs", journal = j-TOSEM, volume = "7", number = "3", pages = "250--295", month = jul, year = "1998", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Apr 20 08:21:35 MDT 2001", bibsource = "http://www.acm.org/pubs/toc/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "http://www.acm.org/pubs/articles/journals/tosem/1998-7-3/p250-chen/p250-chen.pdf; http://www.acm.org/pubs/citations/journals/tosem/1998-7-3/p250-chen/", abstract = "Because of the growing importance of object-oriented programming, a number of testing strategies have been proposed. They are based either on pure black-box or white-box techniques. We propose in this article a methodology to integrate the black- and white-box techniques. The black-box technique is used to select test cases. The white-box technique is mainly applied to determine whether two objects resulting from the program execution of a test care are observationally equivalent. It is also used to select test cases in some situations. We define the concept of a fundamental pair as a pair of equivalent terms that are formed by replacing all the variables on both sides of an axiom by normal forms. We prove that an implementation is consistent with respect to all equivalent terms if and only if it is consistent with respect to all fundamental pairs. In other words, the testing coverage of fundamental pairs is as good as that of all possible term rewritings, and hence we need only concentrate on the testing of fundamental pairs. Our strategy is based on mathematical theorems. According to the strategy, we propose an algorithm for selecting a finite set of fundamental pairs as test cases. Given a pair of equivalent terms as a test case, we should then determine whether the objects that result from executing the implemented program are observationally equivalent. We prove, however, that the observational equivalence of objects cannot be determined using a finite set of observable contexts (which are operation sequences ending with an observer function) derived from any black-box technique. Hence we supplement our approach with a ``relevant observable context'' technique, which is a heuristic white-box technique to select a relevant finite subset of the set of observable contexts for determining the observational equivalence. The relevant observable contexts are constructed from a data member relevance graph (DRG), which is an abstraction of the given implementation for a given specification. A semiautomatic tool hass been developed to support this technique.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", generalterms = "Algorithms; Languages; Reliability", journal-URL = "https://dl.acm.org/loi/tosem", keywords = "abstract data types; algebraic specification; object-oriented programming; observational equivalence; software-testing methodologies", subject = "Software --- Software Engineering --- Requirements/Specifications (D.2.1): {\bf Languages}; Software --- Software Engineering --- Testing and Debugging (D.2.5); Software --- Programming Languages --- Language Classifications (D.3.2): {\bf Object-oriented languages}", } @Article{Crow:1998:FSS, author = "Judith Crow and Ben {Di Vito}", title = "Formalizing space shuttle software requirements: four case studies", journal = j-TOSEM, volume = "7", number = "3", pages = "296--332", month = jul, year = "1998", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Apr 20 08:21:35 MDT 2001", bibsource = "http://www.acm.org/pubs/toc/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "http://www.acm.org/pubs/articles/journals/tosem/1998-7-3/p296-crow/p296-crow.pdf; http://www.acm.org/pubs/citations/journals/tosem/1998-7-3/p296-crow/", abstract = "This article describes four case studies in which requirements for new flight software subsystems on NASA's Space Shuttle were analyzed using mechanically supported formal methods. Three of the studies used standard formal specification and verification techniques, and the fourth used state exploration. These applications illustrate two thesis: (1) formal methods complement conventional requirements analysis processes effectively and (2) formal methods confer benefits even when only selectively adopted and applied. The studies also illustrate the interplay of application maturity level and formal methods strategy, especially in areas such as technology transfer, legacy applications, and rapid formalization, and they raise interesting issues in problem domain modeling and in tailoring formal techniques to applications.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", generalterms = "Verification", journal-URL = "https://dl.acm.org/loi/tosem", keywords = "flight software; formal methods; requirements analysis; space shuttle; state exploration; theorem proving", subject = "Software --- Software Engineering --- Requirements/Specifications (D.2.1): {\bf Methodologies (e.g., object-oriented, structured)}; Software --- Software Engineering --- Requirements/Specifications (D.2.1): {\bf Tools}; Theory of Computation --- Logics and Meanings of Programs --- Specifying and Verifying and Reasoning about Programs (F.3.1): {\bf Logics of programs}; Theory of Computation --- Logics and Meanings of Programs --- Specifying and Verifying and Reasoning about Programs (F.3.1): {\bf Mechanical verification}; Theory of Computation --- Logics and Meanings of Programs --- Specifying and Verifying and Reasoning about Programs (F.3.1): {\bf Specification techniques}", } @Article{Allen:1998:EFB, author = "Robert Allen and David Garlan", title = "Errata: {``A formal basis for architectural connection''}", journal = j-TOSEM, volume = "7", number = "3", pages = "333--334", month = jul, year = "1998", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Apr 20 08:21:35 MDT 2001", bibsource = "http://www.acm.org/pubs/toc/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", note = "See \cite{Allen:1997:FBA}.", URL = "http://www.acm.org/pubs/articles/journals/tosem/1998-7-3/p333-allen/p333-allen.pdf; http://www.acm.org/pubs/citations/journals/tosem/1998-7-3/p333-allen/", abstract = "We present corrections to a previously published article which appeared in {\em ACM Transaction on Software Engineering and Methodology\/} 6, 3 (July 1997), pp. 213-249", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", generalterms = "Design; Theory", journal-URL = "https://dl.acm.org/loi/tosem", keywords = "formal models; model-checking; module interconnection; software analysis; WRIGHT", subject = "Software --- Software Engineering --- Requirements/Specifications (D.2.1): {\bf Languages}; Software --- Software Engineering --- Design Tools and Techniques (D.2.2): {\bf Modules and interfaces}; Software --- Software Engineering --- Requirements/Specifications (D.2.1); Theory of Computation --- Logics and Meanings of Programs --- Specifying and Verifying and Reasoning about Programs (F.3.1): {\bf Specification techniques}; Theory of Computation --- Mathematical Logic and Formal Languages --- Formal Languages (F.4.3)", } @Article{Hunter:1998:MIS, author = "Anthony Hunter and Bashar Nuseibeh", title = "Managing inconsistent specifications: reasoning, analysis, and action", journal = j-TOSEM, volume = "7", number = "4", pages = "335--367", month = oct, year = "1998", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Apr 20 08:21:35 MDT 2001", bibsource = "http://www.acm.org/pubs/toc/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "http://www.acm.org/pubs/articles/journals/tosem/1998-7-4/p335-hunter/p335-hunter.pdf; http://www.acm.org/pubs/citations/journals/tosem/1998-7-4/p335-hunter/", abstract = "In previous work, we advocated continued development of specifications in the presence of inconsistency. To support this, we used classical logic to represent partial specifications and to identify inconsistencies between them. We now present an adaptation of classical logic, which we term quasi-classical (QC) logic, that allows continued reasoning in the presence of inconsistency. The adaptation is a weakening of classical logic that prohibits all trivial derivations, but still allows all resolvants of the assumptions to be derived. Furthermore, the connectives behave in a classical manner. We then present a development called labeled QC logic that records and tracks assumptions used in reasoning. This facilitates a logical analysis of inconsistent information. We discuss that application of labeled QC logic in the analysis of multiperspective specifications. Such specifications are developed by multiple participants who hold overlapping, often inconsistent, views of the systems they are developing.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", generalterms = "Design; Languages; Theory; Verification", journal-URL = "https://dl.acm.org/loi/tosem", keywords = "managing inconsistency; paraconsistent logics; requirements specification; viewpoints", subject = "Software --- Software Engineering --- Requirements/Specifications (D.2.1): {\bf Languages}; Software --- Software Engineering --- Design Tools and Techniques (D.2.2): {\bf Computer-aided software engineering (CASE)}; Software --- Software Engineering --- Software/Program Verification (D.2.4): {\bf Validation}; Software --- Software Engineering --- Testing and Debugging (D.2.5): {\bf Error handling and recovery}; Software --- Software Engineering --- Distribution, Maintenance, and Enhancement (D.2.7): {\bf Restructuring, reverse engineering, and reengineering}; Theory of Computation --- Mathematical Logic and Formal Languages --- Mathematical Logic (F.4.1): {\bf Proof theory}; Software --- Software Engineering --- General (D.2.0); Software --- Software Engineering --- Design Tools and Techniques (D.2.2)", } @Article{Jaccheri:1998:ESP, author = "Maria Letizia Jaccheri and Gian Pietro Picco and Patricia Lago", title = "Eliciting software process models with the {E3} language", journal = j-TOSEM, volume = "7", number = "4", pages = "368--410", month = oct, year = "1998", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Apr 20 08:21:35 MDT 2001", bibsource = "http://www.acm.org/pubs/toc/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "http://www.acm.org/pubs/articles/journals/tosem/1998-7-4/p368-jaccheri/p368-jaccheri.pdf; http://www.acm.org/pubs/citations/journals/tosem/1998-7-4/p368-jaccheri/", abstract = "Software processes are complex entities that demand careful understand ing and improvement as they determine the quality of the resulting product. A necessary step toward the improvement of an organization's process is a clear description of the entities involved and of their mutual relationships. Process model {\em elicitation\/} aims at constructing this description under the shape of a software process model. The model is constructed by gathering, from several sources, process information which is often incomplete, inconsistent, and ambiguous. A process modeling language can be used to represent the model being elicited. However, elicitation requires process models to be understandable and well structured. These requirements are often not satisfied by available process modeling languages because of their bias toward process enaction rather than process description. This article presents a process modeling language and a support tool which are conceived especially for process model elicitation. The {\em E\/} 3 language is an object-oriented modeling language with a graphical notation. In {\em E\/} 3, associations are a means to express constraints and facilitate reuse. The {\em E\/} 3 p-draw tool supports the creation and management of {\em E\/} 3 models and provides a view mechanism that enables inspection of models according to different perspectives.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", generalterms = "Documentation; Languages; Management", journal-URL = "https://dl.acm.org/loi/tosem", keywords = "associations; process model elicitation; software process modeling", subject = "Software --- Programming Techniques --- Object-oriented Programming (D.1.5); Software --- Software Engineering --- Requirements/Specifications (D.2.1); Software --- Software Engineering --- Design Tools and Techniques (D.2.2): {\bf Computer-aided software engineering (CASE)}; Software --- Software Engineering --- Management (D.2.9): {\bf Software configuration management}; Computing Milieux --- Management of Computing and Information Systems --- Software Management (K.6.3): {\bf Software development}; Computing Milieux --- Management of Computing and Information Systems --- Software Management (K.6.3): {\bf Software maintenance}", } @Article{Fuggetta:1998:AGI, author = "Alfonso Fuggetta and Luigi Lavazza and Sandro Morasca and Stefano Cinti and Giandomenico Oldano and Elena Orazi", title = "Applying {GQM} in an industrial software factory", journal = j-TOSEM, volume = "7", number = "4", pages = "411--448", month = oct, year = "1998", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Apr 20 08:21:35 MDT 2001", bibsource = "http://www.acm.org/pubs/toc/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "http://www.acm.org/pubs/articles/journals/tosem/1998-7-4/p411-fuggetta/p411-fuggetta.pdf; http://www.acm.org/pubs/citations/journals/tosem/1998-7-4/p411-fuggetta/", abstract = "Goal/Question/Metric (GQM) is a paradigm for the systematic definition, establishment, and exploitation of measurement programs supporting the quantitative evaluation of software processes and products. Although GQM is a quite well-known method, detailed guidelines for establishing a GQM program in an industrial environment are still limited. Also, there are few reported experiences on the application of GQM to industrial cases. Finally, the technological support for GQM is still inadequate. This article describes the experience we have gained in applying GQM at Digital Laboratories in Italy. The procedures, experiences, and technology that have been employed in this study are largely reusable by other industrial organizations willing to introduce a GQM-based measurement program in their development environments.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", generalterms = "Experimentation; Management; Measurement", journal-URL = "https://dl.acm.org/loi/tosem", keywords = "GQM; measurement cost; measurement process", subject = "Software --- Software Engineering --- Design Tools and Techniques (D.2.2): {\bf Computer-aided software engineering (CASE)}; Software --- Software Engineering --- Metrics (D.2.8): {\bf Performance measures}; Software --- Software Engineering --- Management (D.2.9): {\bf Productivity}; Software --- Software Engineering --- Management (D.2.9): {\bf Software quality assurance (SQA)}", } @Article{Hunt:1998:ADA, author = "James J. Hunt and Walter F. Tichy", title = "Addendum to {``Delta algorithms: an empirical analysis''}", journal = j-TOSEM, volume = "7", number = "4", pages = "449--449", month = oct, year = "1998", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Apr 20 08:21:35 MDT 2001", bibsource = "http://www.acm.org/pubs/toc/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", note = "See \cite{Hunt:1998:DAE}.", URL = "http://www.acm.org/pubs/articles/journals/tosem/1998-7-4/p449-hunt/p449-hunt.pdf; http://www.acm.org/pubs/citations/journals/tosem/1998-7-4/p449-hunt/", abstract = "The authors supply machine configurations for experiments reported in ``Delta Algorithms: An Empirical Analysis,'' by Hunt et al. ({\em ACM Trans. Softw. Eng. Methodol.\/} 7, 2 (Apr. 1998), pp. 192-214).", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", keywords = "benchmark; delta encoding; differencing", subject = "Software --- Software Engineering --- Distribution, Maintenance, and Enhancement (D.2.7): {\bf Version control}; Software --- Software Engineering --- Metrics (D.2.8): {\bf Performance measures}; Data --- Coding and Information Theory (E.4): {\bf Data compaction and compression}; Data --- Files (E.5): {\bf Backup/recovery}", } @Article{Ostroff:1999:CRD, author = "Jonathan S. Ostroff", title = "Composition and refinement of discrete real-time systems", journal = j-TOSEM, volume = "8", number = "1", pages = "1--48", month = jan, year = "1999", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Apr 20 08:21:35 MDT 2001", bibsource = "http://www.acm.org/pubs/toc/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "http://www.acm.org/pubs/articles/journals/tosem/1999-8-1/p1-ostroff/p1-ostroff.pdf; http://www.acm.org/pubs/citations/journals/tosem/1999-8-1/p1-ostroff/", abstract = "Reactive systems exhibit ongoing, possibly nonterminating, interaction with the environment. Real-time systems are reactive systems that must satisfy quantitative timing constraints. This paper presents a structured compositional design method for discrete real-time systems that can be used to combat the combinatorial explosion of states in the verification of large systems. A {\em composition rule\/} describes how the correctness of the system can be determined from the correctness of its modules, without knowledge of their internal structure. The advantage of compositional verification is clear. Each module is both simpler and smaller than the system itself. Composition requires the use of both model-checking and deductive techniques. A {\em refinement rule\/} guarantees that specifications of high-level modules are preserved by their implementations. The {\em StateTime\/} toolset is used to automate parts of compositional designs using a combination of model-checking and simulation. The design method is illustrated using a reactor shutdown system that cannot be verified using the StateTime toolset (due to the combinatorial explosion of states) without compositional reasoning. The reactor example also illustrates the use of the refinement rule.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", generalterms = "Design; Verification", journal-URL = "https://dl.acm.org/loi/tosem", keywords = "abstraction; model-checking; modules; refinement; state explosion; temporal logic; timed logic", subject = "Software --- Programming Techniques --- Concurrent Programming (D.1.3); Software --- Software Engineering --- Design** (D.2.10); Software --- Software Engineering --- Requirements/Specifications (D.2.1): {\bf Methodologies (e.g., object-oriented, structured)}; Software --- Software Engineering --- Software/Program Verification (D.2.4): {\bf Model checking}; Software --- Software Engineering --- Design Tools and Techniques (D.2.2): {\bf Modules and interfaces}; Software --- Software Engineering --- Design Tools and Techniques (D.2.2); Software --- Software Engineering --- Requirements/Specifications (D.2.1): {\bf Tools}; Software --- Software Engineering --- Design Tools and Techniques (D.2.2): {\bf State diagrams}; Software --- Software Engineering --- Software/Program Verification (D.2.4)", } @Article{Cheung:1999:CSP, author = "Shing Chi Cheung and Jeff Kramer", title = "Checking safety properties using compositional reachability analysis", journal = j-TOSEM, volume = "8", number = "1", pages = "49--78", month = jan, year = "1999", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Apr 20 08:21:35 MDT 2001", bibsource = "http://www.acm.org/pubs/toc/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "http://www.acm.org/pubs/articles/journals/tosem/1999-8-1/p49-cheung/p49-cheung.pdf; http://www.acm.org/pubs/citations/journals/tosem/1999-8-1/p49-cheung/", abstract = "The software architecture of a distributed program can be represented by a hierarchical composition of subsystems, with interacting processes at the leaves of the hierarchy. Compositional reachability analysis (CRA) is a promising state reduction technique which can be automated and used in stages to derive the overall behavior of a distributed program based on its architecture. CRA is particularly suitable for the analysis of programs that are subject to evolutionary change. When a program evolves, only the behaviors of those subsystems affected by the change need be reevaluated. The technique however has a limitation. The properties available for analysis are constrained by the set of actions that remain globally observable. Properties involving actions encapsulated by subsystems may therefore not be analyzed. In this article, we enhance the CRA technique to check safety properties which may contain actions that are not globally observable. To achieve this, the state machine model is augmented with a special trap state labeled as ?. We propose a scheme to transform, in stages, a property that involves hidden actions to one that involves only globally observable actions. The enhanced technique also includes a mechanism aiming at reducing the debugging effort. The technique is illustrated using a gas station system example.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", generalterms = "Design; Theory; Verification", journal-URL = "https://dl.acm.org/loi/tosem", keywords = "compositional reachability analysis; distributed systems; model checking; safety properties; static analysis", subject = "Software --- Software Engineering --- Requirements/Specifications (D.2.1): {\bf Methodologies (e.g., object-oriented, structured)}; Software --- Software Engineering --- Design Tools and Techniques (D.2.2); Software --- Software Engineering --- Software/Program Verification (D.2.4); Software --- Software Engineering --- Management (D.2.9): {\bf Software quality assurance (SQA)}", } @Article{Ciapessoni:1999:FMF, author = "Emanuele Ciapessoni and Piergiorgio Mirandola and Alberto Coen-Porisini and Dino Mandrioli and Angelo Morzenti", title = "From formal models to formally based methods: an industrial experience", journal = j-TOSEM, volume = "8", number = "1", pages = "79--113", month = jan, year = "1999", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Apr 20 08:21:35 MDT 2001", bibsource = "http://www.acm.org/pubs/toc/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "http://www.acm.org/pubs/articles/journals/tosem/1999-8-1/p79-ciapessoni/p79-ciapessoni.pdf; http://www.acm.org/pubs/citations/journals/tosem/1999-8-1/p79-ciapessoni/", abstract = "We address the problem of increasing the impact of formal methods in the practice of industrial computer applications. We summarize the reasons why formal methods so far did not gain widespead use within the industrial environment despite several promising experiences. We suggest an evolutionary rather than revolutionary attitude in the introduction of formal methods in the practice of industrial applications, and we report on our long-standing experience which involves an academic institution. Politecnico di Milano, two main industrial partners, ENEL and CISE, and occasionally a few other industries. Our approach aims at augmenting an existing and fairly deeply rooted informal industrial methodology with our original formalism, the logic specification language TRIO. On the basis of the experiences we gained we argue that our incremental attitude toward the introduction of formal methods within the industry could be effective largely independently from the chosen formalism.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", generalterms = "Design; Documentation; Verification", journal-URL = "https://dl.acm.org/loi/tosem", keywords = "formal models; industrial applications; object orientation; specification; supervision and control; technology transfer", subject = "Software --- Software Engineering --- Requirements/Specifications (D.2.1): {\bf Methodologies (e.g., object-oriented, structured)}; Software --- Software Engineering --- Design Tools and Techniques (D.2.2); Software --- Software Engineering --- Software/Program Verification (D.2.4)", } @Article{McCann:1999:MMI, author = "Peter J. McCann and Gruia-Catalin Roman", title = "Modeling mobile {IP} in mobile {UNITY}", journal = j-TOSEM, volume = "8", number = "2", pages = "115--146", month = apr, year = "1999", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Apr 20 08:21:35 MDT 2001", bibsource = "http://www.acm.org/pubs/toc/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "http://www.acm.org/pubs/articles/journals/tosem/1999-8-2/p115-mccann/p115-mccann.pdf; http://www.acm.org/pubs/citations/journals/tosem/1999-8-2/p115-mccann/", abstract = "With recent advances in wireless communication technology, mobile computing is an increasingly important area of research. A mobile system is one where independently executing components may migrate through some space during the course of the computation, and where the pattern of connectivity among the components changes as they move in and out of proximity. Mobile UNITY is a notation and proof logic for specifying and reasoning about mobile systems. In this article it is argued that Mobile UNITY contributes to the modular development of system specifications because of the declarative fashion in which coordination among components is specified. The packet-forwarding mechanism at the core of the Mobile IP protocol for routing to mobile hosts is taken as an example. A Mobile UNITY model of packet forwarding and the mobile system in which it must operate is developed. Proofs of correctness properties, including important real-time properties, are outlined, and the role of formal verification in the development of protocols such as Mobile IP is discussed.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", generalterms = "Design; Languages; Reliability; Theory; Verification", journal-URL = "https://dl.acm.org/loi/tosem", keywords = "formal methods; mobile computing; mobile UNITY; shared variables; synchronization; transient interactions; weak consistency", subject = "Computer Systems Organization --- Computer-Communication Networks --- Network Protocols (C.2.2): {\bf IP}; Computer Systems Organization --- Computer-Communication Networks --- Network Architecture and Design (C.2.1): {\bf Wireless communication}; Computer Systems Organization --- Computer-Communication Networks --- Network Protocols (C.2.2): {\bf Protocol verification}", } @Article{Cook:1999:SPV, author = "Jonathan E. Cook and Alexander L. Wolf", title = "Software process validation: quantitatively measuring the correspondence of a process to a model", journal = j-TOSEM, volume = "8", number = "2", pages = "147--176", month = apr, year = "1999", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Apr 20 08:21:35 MDT 2001", bibsource = "http://www.acm.org/pubs/toc/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "http://www.acm.org/pubs/articles/journals/tosem/1999-8-2/p147-cook/p147-cook.pdf; http://www.acm.org/pubs/citations/journals/tosem/1999-8-2/p147-cook/", abstract = "To a great extent, the usefulness of a formal model of a software process lies in its ability to accurately predict the behavior of the executing process. Similarly, the usefulness of an executing process lies largely in its ability to fulfill the requirements embodied in a formal model of the process. When process models and process executions diverge, something significant is happening. We have developed techniques for uncovering and measuring the discrepancies between models and executions, which we call {\em process validation}. Process validation takes a process execution and a process model, and measures the level of correspondence between the two. Our metrics are tailorable and give process engineers control over determining the severity of different types of discrepancies. The techniques provide detailed information once a high-level measurement indicates the presence of a problem. We have applied our processes validation methods in an industrial case study, of which a portion is described in this article.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", generalterms = "Management; Measurement", journal-URL = "https://dl.acm.org/loi/tosem", keywords = "balboa; process validation; software process; tools", subject = "Software --- Software Engineering --- Programming Environments (D.2.6); Computing Milieux --- Management of Computing and Information Systems --- Software Management (K.6.3): {\bf Software development}; Computing Milieux --- Management of Computing and Information Systems --- Software Management (K.6.3): {\bf Software maintenance}; Software --- Software Engineering --- Metrics (D.2.8): {\bf Process metrics}", } @Article{Devanbu:1999:GCF, author = "Premkumar T. Devanbu", title = "{GENOA} --- a customizable, front-end-retargetable source code analysis framework", journal = j-TOSEM, volume = "8", number = "2", pages = "177--212", month = apr, year = "1999", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Apr 20 08:21:35 MDT 2001", bibsource = "http://www.acm.org/pubs/toc/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "http://www.acm.org/pubs/articles/journals/tosem/1999-8-2/p177-devanbu/p177-devanbu.pdf; http://www.acm.org/pubs/citations/journals/tosem/1999-8-2/p177-devanbu/", abstract = "{\em Code analysis\/} tools provide support for such software engineering tasks as program understanding, software metrics, testing, and reengineering. In this article we describe GENOA, the framework underlying application generators such as Aria and GEN++ which have been used to generate a wide range of practical code analysis tools. This experience illustrates {\em front-end retargetability\/} of GENOA; we describe the features of the GENOA framework that allow it to be used with different front ends. While permitting arbitrary parse tree computations, the GENOA specification language has special, compact iteration operators that are tuned for expressing simple, polynomial-time analysis programs; in fact, there is a useful sublanguage of the GENOA language that can express precisely all (and only) {\em polynomial-time\/} (PTIME) analysis programs on parse trees. Thus, we argue that the GENOA language is a simple and convenient vehicle for implementing a range of analysis tools. We also argue that the ``front-and reuse'' approach of GENOA offers an important advantage for tools aimed at large software projects: the reuse of complex, expensive build procedures to run generated tools over large source bases. In this article, we describe the GENOA framework and our experiences with it.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", generalterms = "Languages", journal-URL = "https://dl.acm.org/loi/tosem", keywords = "code inspection; metrics; reverse engineering; source analysis", subject = "Software --- Programming Languages --- Processors (D.3.4); Software --- Software Engineering --- Coding Tools and Techniques (D.2.3); Software --- Software Engineering --- Programming Environments (D.2.6); Software --- Software Engineering --- Software Architectures (D.2.11); Software --- Software Engineering --- Testing and Debugging (D.2.5); Software --- Software Engineering --- Metrics (D.2.8)", } @Article{Damiani:1999:HAA, author = "E. Damiani and M. G. Fugini and C. Bellettini", title = "A hierarchy-aware approach to faceted classification of objected-oriented components", journal = j-TOSEM, volume = "8", number = "3", pages = "215--262", month = jul, year = "1999", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Apr 20 08:21:35 MDT 2001", bibsource = "http://www.acm.org/pubs/toc/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "http://www.acm.org/pubs/articles/journals/tosem/1999-8-3/p215-damiani/p215-damiani.pdf; http://www.acm.org/pubs/citations/journals/tosem/1999-8-3/p215-damiani/", abstract = "This article presents a hierarchy-aware classification schema for obje ct-oriented code, where software components are classified according to their {\em behavioral characteristics}, such as provided services, employed algorithms, and needed data. In the case of reusable application frameworks, these characteristics are constructed from their {\em model}, i.e., from the description of the abstract classes specifying both the framework structure and purpose. In conventional object libraries, the characteristics are extracted semiautomatically from class interfaces. Characteristics are term pairs, weighted to represent ``how well'' they describe component behavior. The set of characteristics associated with a given component forms its {\em software descriptor}. A descriptor base is presented where descriptors are organized on the basis of structured relationships, such as similarity and composition. The classification is supported by a thesaurus acting as a language-independent unified lexicon. The descriptor base is conceived for developers who, besides conventionally browsing the descriptors hierarchy, can query the system, specifying a set of desired functionalities and getting a ranked set of adaptable candidates. User feedback is taken into account in order to progressively ameliorate the quality of the descriptors according to the views of the user community. Feedback is made dependent of the user typology through a {\em user profile}. Experimental results in terms of recall and precision of the retrieval mechanism against a sample code base are reported.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", generalterms = "Documentation", journal-URL = "https://dl.acm.org/loi/tosem", keywords = "code analysis; component repositories; component retrieval; software reuse; user feedback", subject = "Information Systems --- Information Storage and Retrieval --- Information Search and Retrieval (H.3.3)", } @Article{Podgurski:1999:ESR, author = "Andy Podgurski and Wassim Masri and Yolanda McCleese and Francis G. Wolff and Charles Yang", title = "Estimation of software reliability by stratified sampling", journal = j-TOSEM, volume = "8", number = "3", pages = "263--283", month = jul, year = "1999", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Apr 20 08:21:35 MDT 2001", bibsource = "http://www.acm.org/pubs/toc/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "http://www.acm.org/pubs/articles/journals/tosem/1999-8-3/p263-podgurski/p263-podgurski.pdf; http://www.acm.org/pubs/citations/journals/tosem/1999-8-3/p263-podgurski/", abstract = "A new approach to software reliability estimation is presented that combines operational testing with stratified sampling in order to reduce the number of program executions that must be checked manually for conformance to requirements. Automatic cluster analysis is applied to execution profiles in order to stratify captured operational executions. Experimental results are reported that suggest this approach can significantly reduce the cost of estimating reliability.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", generalterms = "Reliability", journal-URL = "https://dl.acm.org/loi/tosem", keywords = "beta testing; cluster analysis; operational testing; software reliability; software testing; statistical testing; stratified sampling", subject = "Software --- Software Engineering --- Design Tools and Techniques (D.2.2): {\bf Software libraries}; Software --- Software Engineering --- Testing and Debugging (D.2.5); Software --- Operating Systems --- Reliability (D.4.5); Software --- Software Engineering --- Design Tools and Techniques (D.2.2)", } @Article{Jezequel:1999:RVC, author = "Jean-Marc J{\'e}z{\'e}quel", title = "Reifying variants in configuration management", journal = j-TOSEM, volume = "8", number = "3", pages = "284--295", month = jul, year = "1999", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Apr 20 08:21:35 MDT 2001", bibsource = "http://www.acm.org/pubs/toc/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "http://www.acm.org/pubs/articles/journals/tosem/1999-8-3/p284-jezequel/p284-jezequel.pdf; http://www.acm.org/pubs/citations/journals/tosem/1999-8-3/p284-jezequel/", abstract = "Using a solid software configuration management (SCM) is mandatory to establish and maintain the integrity of the products of a software project throughout the project's software life cycle. Even with the help of sophisticated tools, handling the various dimensions of SCM can be a daunting (and costly) task for many projects. The contribution of this article is to (1) propose a method (based on the use creational design patterns) to simplify SCM by reifying the {\em variants\/} of an object-oriented software system into language-level objects and (2) show that newly available compilation technology makes this proposal attractive with respect to performance (memory footprint and execution time) by inferring which classes are needed for a specific configuration and optimizing the generated code accordingly.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", generalterms = "Design; Management; Performance", journal-URL = "https://dl.acm.org/loi/tosem", keywords = "compilation technology; Eiffel; Mecure; object-oriented analysis and design; reifying variants; SMDS; software configuration management", subject = "Software --- Software Engineering (D.2); Software --- Software Engineering --- Design Tools and Techniques (D.2.2): {\bf Software libraries}; Software --- Software Engineering --- Management (D.2.9): {\bf Software configuration management}", } @Article{Reiss:1999:DE, author = "Steven P. Reiss", title = "The {Desert} environment", journal = j-TOSEM, volume = "8", number = "4", pages = "297--342", month = oct, year = "1999", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Apr 20 08:21:35 MDT 2001", bibsource = "http://www.acm.org/pubs/toc/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "http://www.acm.org/pubs/articles/journals/tosem/1999-8-4/p297-reiss/p297-reiss.pdf; http://www.acm.org/pubs/citations/journals/tosem/1999-8-4/p297-reiss/", abstract = "The Desert software engineering environment is a suite of tools developed to enhance programmer productivity through increased tool integration. It introduces an inexpensive form of data integration to provide additional tool capabilities and information sharing among tools, uses a common editor to give high-quality semantic feedback and to integrate different types of software artifacts, and builds virtual files on demand to address specific tasks. All this is done in an open and extensible environment capable of handling large software systems.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", generalterms = "Design", journal-URL = "https://dl.acm.org/loi/tosem", keywords = "integrated programming environments; program editors", subject = "Software --- Software Engineering --- Coding Tools and Techniques (D.2.3); Software --- Software Engineering --- Programming Environments (D.2.6)", } @Article{Pohl:1999:PTP, author = "Klaus Pohl and Klaus Weidenhaupt and Ralf D{\"o}mges and Peter Haumer and Matthias Jarke and Ralf Klamma", title = "{PRIME} --- toward process-integrated modeling environments: 1", journal = j-TOSEM, volume = "8", number = "4", pages = "343--410", month = oct, year = "1999", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Apr 20 08:21:35 MDT 2001", bibsource = "http://www.acm.org/pubs/toc/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "http://www.acm.org/pubs/articles/journals/tosem/1999-8-4/p343-pohl/p343-pohl.pdf; http://www.acm.org/pubs/citations/journals/tosem/1999-8-4/p343-pohl/", abstract = "Research in process-centered environments (PCEs) has focused on project management support and has neglected method guidance for the engineers performing the (software) engineering process. It has been dominated by the search for suitable process-modeling languages and enactment mechanisms. The consequences of process orientation on the computer-based engineering environments, i.e., the interactive tools used during process performance, have been studied much less. In this article, we present the PRIME (Process Integrated Modeling Environments) framework which empowers method guidance through process-integrated tools. In contrast to the tools of PCEs, the process-integrated tools of PRIME adjust their behavior according to the current process situation and the method definitions. Process integration of PRIME tools is achieved through (1) the definition of tool models; (2) the integration of the tool models and the method definitions; (3) the interpretation of the integrated environment model by the tools, the process-aware control integration mechanism, and the enactment mechanism; and (4) the synchronization of the tools and the enactment mechanism based on a comprehensive interaction protocol. We sketch the implementation of PRIME as a reusable implementation framework which facilitates the realization of process-integrated tools as well as the process integration of external tools. We define a six-step procedure for building a PRIME-based process-integrated environment (PIE) and illustrate how PRIME facilitates change integration on an easy-to-adapt modeling level.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", generalterms = "Design; Human Factors; Management; Verification", journal-URL = "https://dl.acm.org/loi/tosem", keywords = "method guidance; PRIME; process modeling; process-centered environments; process-integrated environments; process-sensitive tools; tool integration; tool modeling", subject = "Software --- Software Engineering --- Requirements/Specifications (D.2.1): {\bf Tools}; Software --- Software Engineering --- Design Tools and Techniques (D.2.2): {\bf Computer-aided software engineering (CASE)}; Software --- Software Engineering --- Programming Environments (D.2.6): {\bf Interactive environments}; Software --- Programming Languages --- Language Constructs and Features (D.3.3): {\bf Frameworks}; Information Systems --- Information Systems Applications --- Office Automation (H.4.1): {\bf Workflow management}; Computer Applications --- Computer-Aided Engineering (J.6); Computing Milieux --- Management of Computing and Information Systems --- Software Management (K.6.3): {\bf Software process}; Software --- Software Engineering --- Programming Environments (D.2.6): {\bf Integrated environments}", } @Article{Kuhn:1999:FCE, author = "D. Richard Kuhn", title = "Fault classes and error detection capability of specification-based testing", journal = j-TOSEM, volume = "8", number = "4", pages = "411--424", month = oct, year = "1999", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Apr 20 08:21:35 MDT 2001", bibsource = "http://www.acm.org/pubs/toc/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "http://www.acm.org/pubs/articles/journals/tosem/1999-8-4/p411-kuhn/p411-kuhn.pdf; http://www.acm.org/pubs/citations/journals/tosem/1999-8-4/p411-kuhn/", abstract = "Some varieties of specification-based testing rely upon methods for generating test cases from predicates in a software specification. These methods derive various test conditions from logic expressions, with the aim of detecting different types of faults. Some authors have presented empirical results on the ability of specification-based test generation methods to detect failures. This article describes a method for computing the conditions that must be covered by a test set for the test set to guarantee detection of the particular fault class. It is shown that there is a coverage hierarchy to fault classes that is consistent with, and may therefore explain, experimental results on fault-based testing. The method is also shown to be effective for computing MCDC-adequate tests.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", generalterms = "Experimentation; Theory; Verification", journal-URL = "https://dl.acm.org/loi/tosem", keywords = "testing", subject = "Software --- Software Engineering --- Software/Program Verification (D.2.4); Software --- Software Engineering --- Requirements/Specifications (D.2.1); Software --- Software Engineering --- Testing and Debugging (D.2.5)", } @Article{Damiani:1999:CHA, author = "E. Damiani and M. G. Fugini and C. Bellettini", title = "Corrigenda: a hierarchy-aware approach to faceted classification of object-oriented components", journal = j-TOSEM, volume = "8", number = "4", pages = "425--472", month = oct, year = "1999", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Apr 20 08:21:35 MDT 2001", bibsource = "http://www.acm.org/pubs/toc/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "http://www.acm.org/pubs/articles/journals/tosem/1999-8-4/p425-damiani/p425-damiani.pdf; http://www.acm.org/pubs/citations/journals/tosem/1999-8-4/p425-damiani/", abstract = "This article presents a hierarchy-aware classification schema for object-oriented code, where software components are classified according to their {\em behavioral characteristics}, such as provided services, employed algorithms, and needed data. In the case of reusable application frameworks, these characteristics are constructed from their {\em model}, i.e., from the description of the abstract classes specifying both the framework structure and purpose. In conventional object libraries, the characteristics are extracted semiautomatically from class interfaces. Characteristics are term pairs, weighted to represent ``how well'' they describe component behavior. The set of characteristics associated with a given component forms its {\em software descriptor}. A descriptor base is presented where descriptors are organized on the basis of structured relationships, such as similarity and composition. The classification is supported by a thesaurus acting as a language-independent unified lexicon. The descriptor base is conceived for developers who, besides conventionally browsing the descriptors hierarchy, can query the system, specifying a set of desired functionalities and getting a ranked set of adaptable candidates. User feedback is taken into account in order to progressively ameliorate the quality of the descriptors according to the views of the user community. Feedback is made dependent of the user typology through a {\em user profile}. Experimental results in terms of recall and precision of the retrieval mechanism against a sample code base are reported.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", subject = "Information Systems --- Information Storage and Retrieval --- Information Search and Retrieval (H.3.3): {\bf Information filtering}", } @Article{Bultan:2000:CMC, author = "Tevfik Bultan and Richard Gerber and Christopher League", title = "Composite model-checking: verification with type-specific symbolic representations", journal = j-TOSEM, volume = "9", number = "1", pages = "3--50", month = jan, year = "2000", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Apr 20 08:21:35 MDT 2001", bibsource = "http://www.acm.org/pubs/toc/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "http://www.acm.org/pubs/articles/journals/tosem/2000-9-1/p3-bultan/p3-bultan.pdf; http://www.acm.org/pubs/citations/journals/tosem/2000-9-1/p3-bultan/", abstract = "There has been a surge of progress in automated verification methods based on state exploration. In areas like hardware design, these technologies are rapidly augmenting key phases of testing and validation. To date, one of the most successful of these methods has been symbolic model-checking, in which large finite-state machines are encoded into compact data structures such as Binary Decision Diagrams (BDDs), and are then checked for safety and liveness properties. However, these techniques have not realized the same success on software systems. One limitation is their inability to deal with infinite-state programs, even those with a single unbounded integer. A second problem is that of finding efficient representations for various variable types. We recently proposed a model-checker for integer-based systems that uses arithmetic constraints as the underlying state representation. While this approach easily verified some subtle, infinite-state concurrency problems, it proved inefficient in its treatment of boolean and (unordered) enumerated types--which are not efficiently representable using arithmetic constraints. In this article we present a new technique that combines the strengths of both BDD and arithmetic constraint representations. Our composite model merges multiple type-specific symbolic representations in a single model-checker. A system's transitions and fixpoint computations are encoded using both BDD (for boolean and enumerated types) and arithmetic constraints (for integers) representations, where the choice depends on the variable types. Our composite model-checking strategy can be extended to other symbolic representations provided that they support operations such as intersection, union, complement, equivalence checking, and relational image computation. We also present conservative approximation techniques for composite representations to address the undecidability of model-checking on infinite-state systems. We demonstrate the effectiveness of our approach by analyzing two example software specifications which include a mixture of booleans, integers, and enumerated types. One of them is a requirements specification for the control software of a nuclear reactor's cooling system, and the other one is a protocol specification.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", keywords = "binary decision diagrams; Presburger arithmetic; symbolic model-checking", subject = "Software --- Software Engineering --- Software/Program Verification (D.2.4): {\bf Formal methods}; Software --- Software Engineering --- Software/Program Verification (D.2.4): {\bf Model checking}; Theory of Computation --- Logics and Meanings of Programs --- Specifying and Verifying and Reasoning about Programs (F.3.1); Theory of Computation --- Logics and Meanings of Programs --- Specifying and Verifying and Reasoning about Programs (F.3.1): {\bf Invariants}; Theory of Computation --- Logics and Meanings of Programs --- Specifying and Verifying and Reasoning about Programs (F.3.1): {\bf Mechanical verification}; Theory of Computation --- Logics and Meanings of Programs --- Specifying and Verifying and Reasoning about Programs (F.3.1): {\bf Pre- and post-conditions}; Software --- Software Engineering --- Requirements/Specifications (D.2.1); Software --- Software Engineering --- Requirements/Specifications (D.2.1): {\bf Tools}", } @Article{Corbett:2000:USA, author = "James C. Corbett", title = "Using shape analysis to reduce finite-state models of concurrent {Java} programs", journal = j-TOSEM, volume = "9", number = "1", pages = "51--93", month = jan, year = "2000", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Apr 20 08:21:35 MDT 2001", bibsource = "http://www.acm.org/pubs/toc/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "http://www.acm.org/pubs/articles/journals/tosem/2000-9-1/p51-corbett/p51-corbett.pdf; http://www.acm.org/pubs/citations/journals/tosem/2000-9-1/p51-corbett/", abstract = "Finite-state verification (e.g., model checking) provides a powerful means to detect concurrency errors, which are often subtle and difficult to reproduce. Nevertheless, widespread use of this technology by developers is unlikely until tools provide automated support for extracting the required finite-state models directly from program source. Unfortunately, the dynamic features of modern languages such as Java complicate the construction of compact finite-state models for verification. In this article, we show how shape analysis, which has traditionally been used for computing alias information in optimizers, can be used to greatly reduce the size of finite-state models of concurrent Java programs by determining which heap-allocated variables are accessible only by a single thread, and which shared variables are protected by locks. We also provide several other state-space reductions based on the semantics of Java monitors. A prototype of the reductions demonstrates their effectiveness.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", keywords = "concurrent systems; finite-state verification; Java; model extraction; modeling; shape analysis; state-space reductions", subject = "Software --- Software Engineering --- Software/Program Verification (D.2.4)", } @Article{Gunter:2000:ADB, author = "Carl A. Gunter", title = "Abstracting dependencies between software configuration items", journal = j-TOSEM, volume = "9", number = "1", pages = "94--131", month = jan, year = "2000", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Apr 20 08:21:35 MDT 2001", bibsource = "http://www.acm.org/pubs/toc/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "http://www.acm.org/pubs/articles/journals/tosem/2000-9-1/p94-gunter/p94-gunter.pdf; http://www.acm.org/pubs/citations/journals/tosem/2000-9-1/p94-gunter/", abstract = "This article studies an abstract model of dependencies between software configuration items based on a theory of concurrent computation over a class of Petri nets called {\em production\/} nets. A general theory of build optimizations and their correctness is developed based on a form of abstract interpretation called a {\em build abstraction\/}; these are created during a build and are used to optimize subsequent builds. Various examples of such optimizations are discussed. The theory is used to show how properties can be characterized and proved, and how optimizations can be composed and compared.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", keywords = "abstract interpretation; mathematical models of build dependencies; Petri nets; software configuration management", subject = "Software --- Software Engineering --- Software/Program Verification (D.2.4); Software --- Software Engineering --- Distribution, Maintenance, and Enhancement (D.2.7): {\bf Restructuring, reverse engineering, and reengineering}; Software --- Software Engineering --- Distribution, Maintenance, and Enhancement (D.2.7); Theory of Computation --- Logics and Meanings of Programs --- Semantics of Programming Languages (F.3.2)", } @Article{Sistla:2000:SSB, author = "A. Prasad Sistla and Viktor Gyuris and E. Allen Emerson", title = "{SMC}: a symmetry-based model checker for verification of safety and liveness properties", journal = j-TOSEM, volume = "9", number = "2", pages = "133--166", month = apr, year = "2000", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Apr 20 08:21:35 MDT 2001", bibsource = "http://www.acm.org/pubs/toc/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "http://www.acm.org/pubs/articles/journals/tosem/2000-9-2/p133-sistla/p133-sistla.pdf; http://www.acm.org/pubs/citations/journals/tosem/2000-9-2/p133-sistla/", abstract = "The article presents the SMC system. SMC can be used for checking safety and liveness properties of concurrent programs under different fairness assumptions. It is based on explicit state enumeration. It combats the state explosion by exploiting symmetries of the input concurrent program, usually present in the form of identical processes, in two different ways. Firstly, it reduces the number of explored states by identifying those states that are equivalent under the symmetries of the system; this is called {\em process symmetry}. Secondly, it reduces the number of edges explored from each state, in0 the reduced state graph, by exploiting the symmetry of a single state; this is called {\em state symmetry}. SMC works in an {\em on-the-fly\/} manner; it constructs the reduced state graph as and when it is needed. This method facilitates early termination, speeds up model checking, and reduces memory requirements. We employed SMC to check the correctness of, among other standard examples, the Link Layer part of the IEEE Standard 1394 ``Firewire'' high-speed serial bus protocol. SMC found deadlocks in the protocol. SMC was also to check certain liveness properties. A report on the case study is included in the article.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", generalterms = "Algorithms; Performance; Standardization; Verification", journal-URL = "https://dl.acm.org/loi/tosem", keywords = "automata; model checking", subject = "Software --- Software Engineering --- Software/Program Verification (D.2.4): {\bf Model checking}; Software --- Software Engineering --- Software/Program Verification (D.2.4): {\bf Formal methods}; Theory of Computation --- Logics and Meanings of Programs --- Specifying and Verifying and Reasoning about Programs (F.3.1): {\bf Mechanical verification}; Software --- Programming Techniques --- Concurrent Programming (D.1.3)", } @Article{Ciancarini:2000:UCL, author = "P. Ciancarini and F. Franz{\'e} and C. Mascolo", title = "Using a coordination language to specify and analyze systems containing mobile components", journal = j-TOSEM, volume = "9", number = "2", pages = "167--198", month = apr, year = "2000", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Apr 20 08:21:35 MDT 2001", bibsource = "http://www.acm.org/pubs/toc/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "http://www.acm.org/pubs/articles/journals/tosem/2000-9-2/p167-ciancarini/p167-ciancarini.pdf; http://www.acm.org/pubs/citations/journals/tosem/2000-9-2/p167-ciancarini/", abstract = "New computing paradigms for network-aware applications need specification languages able to deal with the features of mobile code-based systems. A coordination language provides a formal framework in which the interaction of active entities can be expressed. A coordination language deals with the creation and destruction of code or complex agents, their communication activities, as well as their distribution and mobility in space. We show how the coordination language PoliS offers a flexible basis for the description and the automatic analysis of architectures of systems including mobile entities. Polis is based on multiple tuple spaces and offers a basis for defining, studying, and controlling mobility as it allows decoupling mobile entities from their environments both in space and in time. The pattern-matching mechanism adopted for communication helps in abstracting from addressing issues. We have developed a model-checking technique for the automatic analysis of PoliS specifications. In the article we show how this technique can be applied to mobile code-based systems", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", generalterms = "Design; Languages; Verification", journal-URL = "https://dl.acm.org/loi/tosem", subject = "Software --- Software Engineering --- Requirements/Specifications (D.2.1); Software --- Software Engineering --- Software/Program Verification (D.2.4): {\bf Model checking}; Software --- Programming Languages --- Formal Definitions and Theory (D.3.1): {\bf Semantics}; Software --- Programming Languages --- Language Classifications (D.3.2): {\bf Concurrent, distributed, and parallel languages}", } @Article{Louridas:2000:GMR, author = "Panagiotis Louridas and Pericles Loucopoulos", title = "A generic model for reflective design", journal = j-TOSEM, volume = "9", number = "2", pages = "199--237", month = apr, year = "2000", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Apr 20 08:21:35 MDT 2001", bibsource = "http://www.acm.org/pubs/toc/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "http://www.acm.org/pubs/articles/journals/tosem/2000-9-2/p199-louridas/p199-louridas.pdf; http://www.acm.org/pubs/citations/journals/tosem/2000-9-2/p199-louridas/", abstract = "Rapid technological change has had an impact on the nature of software. This has led to new exigencies and to demands for software engineering that pay particular attention to meeting them. We advocate that such demands can be met, at least in large parts, through the adoption of software engineering processes that are founded on a reflective stance. To this end, we turn our attention to the field of Design Rationale. We analyze and characterize Design Rationale approaches and show that despite surface differences between different approaches, they all tend to be variants of a relatively small set of static and dynamic affinities. We use the synthesis of static and dynamic affinities to develop a generic model for reflective design. The model is nonprescriptive and affects minimally the design process. It is context-independent and is intended to be used as a facilitator in participative design, supporting group communication and deliberation. The potential utility of the model is demonstrated through two examples, one from the world of business design and the other from programming language design", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", keywords = "design aids; design rationale; development; participative; reflective", subject = "Software --- Software Engineering --- Requirements/Specifications (D.2.1): {\bf Elicitation methods (e.g., rapid prototyping, interviews, JAD)}; Software --- Software Engineering --- Design Tools and Techniques (D.2.2)", } @Article{Inverardi:2000:SCS, author = "Paola Inverardi and Alexander L. Wolf and Daniel Yankelevich", title = "Static checking of system behaviors using derived component assumptions", journal = j-TOSEM, volume = "9", number = "3", pages = "239--272", month = jul, year = "2000", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Apr 20 08:21:35 MDT 2001", bibsource = "http://www.acm.org/pubs/toc/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "http://www.acm.org/pubs/articles/journals/tosem/2000-9-3/p239-inverardi/p239-inverardi.pdf; http://www.acm.org/pubs/citations/journals/tosem/2000-9-3/p239-inverardi/", abstract = "A critical challenge faced by the developer of a software system is to understand whether the system's components correctly integrate. While type theory has provided substantial help in detecting and preventing errors in mismatched static properties, much work remains in the area of dynamics. In particular, components make assumptions about their behavioral interaction with other components, but currently we have only limited ways in which to state those assumptions and to analyze those assumptions for correctness. We have formulated a method that begins to address this problem. The method operates at the architectural level so that behavioral integration errors, such as deadlock, can be revealed early and at a high level. For each component, a specification is given of its interaction behavior. Form this specification, assumptions that the component makes about the corresponding interaction behavior of the external context are automatically derived. We have defined an algorithm that performs compatibility checks between finite representations of a component's context assumptions and the actual interaction behaviors of the components with which it is intended to interact. A configuration of a system is possible if and only if a successful way of matching actual behaviors with assumptions can be found. The state-space complexity of this algorithm is significantly less than that of comparable approaches, and in the worst case, the time complexity is comparable to the worst case of standard reachability analysis.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", generalterms = "Design; Theory; Verification", journal-URL = "https://dl.acm.org/loi/tosem", keywords = "assumptions; chemical abstract machine model; component-based systems; static analysis", subject = "Software --- Software Engineering (D.2); Software --- Software Engineering --- Design Tools and Techniques (D.2.2): {\bf Modules and interfaces}; Software --- Software Engineering --- Design Tools and Techniques (D.2.2): {\bf State diagrams}; Software --- Software Engineering --- Software/Program Verification (D.2.4): {\bf Assertion checkers}; Software --- Software Engineering --- Software/Program Verification (D.2.4): {\bf Formal methods}; Software --- Software Engineering --- Software Architectures (D.2.11): {\bf Languages (e.g., description, interconnection, definition)}; Theory of Computation --- Logics and Meanings of Programs (F.3); Theory of Computation --- Logics and Meanings of Programs --- Specifying and Verifying and Reasoning about Programs (F.3.1): {\bf Assertions}; Theory of Computation --- Logics and Meanings of Programs --- Specifying and Verifying and Reasoning about Programs (F.3.1): {\bf Mechanical verification}; Theory of Computation --- Logics and Meanings of Programs --- Specifying and Verifying and Reasoning about Programs (F.3.1): {\bf Specification techniques}", } @Article{Minsky:2000:LGI, author = "Naftaly H. Minsky and Victoria Ungureanu", title = "Law-governed interaction: a coordination and control mechanism for heterogeneous distributed systems", journal = j-TOSEM, volume = "9", number = "3", pages = "273--305", month = jul, year = "2000", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Apr 20 08:21:35 MDT 2001", bibsource = "http://www.acm.org/pubs/toc/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "http://www.acm.org/pubs/articles/journals/tosem/2000-9-3/p273-minsky/p273-minsky.pdf; http://www.acm.org/pubs/citations/journals/tosem/2000-9-3/p273-minsky/", abstract = "Software technology is undergoing a transition form monolithic systems, constructed according to a single overall design, into conglomerates of semiautonomous, heterogeneous, and independently designed subsystems, constructed and managed by different organizations, with little, if any, knowledge of each other. Among the problems inherent in such conglomerates, none is more serious than the difficulty to {\em control\/} the activities of the disparate agents operating in it, and the difficulty for such agents to {\em coordinate\/} their activities with each other. We argue that the nature of coordination and control required for such systems calls for the following principles to be satisfied: (1) coordination policies need to be enforced: (2) the enforcement needs to be decentralized; and (3) coordination policies need to be formulated explicitly--rather than being implicit in the code of the agents involved--and they should be enforced by means of a generic, broad spectrum mechanism; and (4) it should be possible to deploy and enforce a policy incrementally, without exacting any cost from agents and activities not subject to it. We describe a mechanism called law-governed interaction (LGI), currently implemented by the Moses toolkit, which has been designed to satisfy these principles. We show that LGI is at least as general as a conventional centralized coordination mechanism (CCM), and that it is more scalable, and generally more efficient, then CCM.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", generalterms = "Design; Performance; Security", journal-URL = "https://dl.acm.org/loi/tosem", keywords = "coordination of heterogeneous agents; policy enforcement; scalability", subject = "Software --- Software Engineering --- Software Architectures (D.2.11); Software --- Software Engineering --- Design Tools and Techniques (D.2.2); Computer Systems Organization --- Computer-Communication Networks --- Distributed Systems (C.2.4); Information Systems --- Information Interfaces and Presentation --- Group and Organization Interfaces (H.5.3); Computer Applications --- Computers in Other Systems (J.7): {\bf Command and control}", } @Article{Mills:2000:KBM, author = "Kevin L. Mills and Hassan Gomaa", title = "A knowledge-based method for inferring semantic concepts from visual models of system behavior", journal = j-TOSEM, volume = "9", number = "3", pages = "306--337", month = jul, year = "2000", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Apr 20 08:21:35 MDT 2001", bibsource = "http://www.acm.org/pubs/toc/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "http://www.acm.org/pubs/articles/journals/tosem/2000-9-3/p306-mills/p306-mills.pdf; http://www.acm.org/pubs/citations/journals/tosem/2000-9-3/p306-mills/", abstract = "Software designers use visual models, such as data flow/control flow diagrams or object collaboration diagrams, to express system behavior in a form that can be understood easily by users and by programmers, and from which designers can generate a software architecture. The research described in this paper is motivated by a desire to provide an automated designer's assistant that can generate software architectures for concurrent systems directly from behavioral models expressed visually as flow diagrams. To achieve this goal, an automated designer's assistant must be capable of interpreting flow diagrams in semantic, rather than syntactic, terms. While semantic concepts can be attached manually to diagrams using labels, such as stereotypes in the Unified Model Language (UML), this paper considers the possibility of providing automated assistance to infer appropriate tags for symbols on a flow diagram. The approach relies upon constructing an underlying metamodel that defines semantic concepts based upon (1) syntactic relationships among visual symbols and (2) inheritance relationships among semantic concepts. Given such a metamodel, a rule-based inference engine can, in many situations, infer the presence of semantic concepts on flow diagram, and can tag symbols accordingly. Futher, an object-oriented query system can compare semantic tags on digram instances for conformance with their definition in the metamodel. To illustrate the approach, the paper describes a metamodel for data flow/control flow diagrams used in the context of a specific software modeling method, Concurrent Object-Based Real-time Analysis (COBRA). The metamodel is implemented using an expert-system shell, CLIPS V6.0, which integrates an object-oriented language with a rule-based inference engine. \par The paper applies the implemented metamodel to design software for an automobile cruise-control system and provides an evaluation of the approach based upon results from four case studies. For the case studies, the implemented metamodel recognized, automatically and correctly, the existence of 86\% of all COBRA semantic concepts within the flow diagrams. Varying degrees of human assistance were used to correctly identify the remaining semantic concepts within the diagrams: in two percent of the cases the implemented metamodel reached tentative classifications that a designer was asked to confirm or override; in four percent of the cases a designer was asked to provide additional information before a concept was classified; in the remaining eight percent of the cases the designer was asked to identify the concept.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", generalterms = "Design; Experimentation; Measurement", journal-URL = "https://dl.acm.org/loi/tosem", keywords = "concept classification systems; concurrent systems; knowledge-based software engineering; semantic data modeling; software design methods; visual modeling", subject = "Software --- Software Engineering --- Design Tools and Techniques (D.2.2)", } @Article{Wallach:2000:SSM, author = "Dan S. Wallach and Andrew W. Appel and Edward W. Felten", title = "{SAFKASI}: a security mechanism for language-based systems", journal = j-TOSEM, volume = "9", number = "4", pages = "341--378", month = oct, year = "2000", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Apr 20 08:21:35 MDT 2001", bibsource = "http://www.acm.org/pubs/toc/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "http://www.acm.org/pubs/articles/journals/tosem/2000-9-4/p341-wallach/p341-wallach.pdf; http://www.acm.org/pubs/citations/journals/tosem/2000-9-4/p341-wallach/", abstract = "In order to run untrusted code in the same process as trusted code, there must be a mechanism to allow dangerous calls to determine if their caller is authorized to exercise the privilege of using the dangerous routine. Java systems have adopted a technique called stack inspection to address this concern. But its original definition, in terms of searching stack frames, had an unclear relationship to the actual achievement of security, overconstrained the implementation of a Java system, limited many desirable optimizations such as method inlining and tail recursion, and generally interfered with interprocedural optimization. We present a new semantics for stack inspection based on a belief logic and its implementation using the calculus of {\em security-passing style\/} which addresses the concerns of traditional stack inspection. With security-passing style, we can efficiently represent the security context for any method activation, and we can build a new implementation strictly by rewriting the Java bytecodes before they are loaded by the system. No changes to the JVM or bytecode semantics are necessary. With a combination of static analysis and runtime optimizations, our prototype implementation shows reasonable performance (although traditional stack inspection is still faster), and is easier to consider for languages beyond Java. We call our system SAFKASI (the Security Architecture Formerly Known as Stack Inspection).", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", generalterms = "Design; Languages; Security", journal-URL = "https://dl.acm.org/loi/tosem", keywords = "access control; applets; Internet; Java; security-passing style; stack inspection; WWW", subject = "Software --- Programming Techniques --- Object-oriented Programming (D.1.5); Software --- Software Engineering --- General (D.2.0): {\bf Protection mechanisms}; Software --- Programming Languages --- Language Classifications (D.3.2): {\bf Object-oriented languages}; Software --- Operating Systems --- Security and Protection (D.4.6): {\bf Access controls}; Software --- Operating Systems --- Security and Protection (D.4.6): {\bf Authentication}", } @Article{Fong:2000:PLM, author = "Philip W. L. Fong and Robert D. Cameron", title = "Proof linking: modular verification of mobile programs in the presence of lazy, dynamic linking", journal = j-TOSEM, volume = "9", number = "4", pages = "379--409", month = oct, year = "2000", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Apr 20 08:21:35 MDT 2001", bibsource = "http://www.acm.org/pubs/toc/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "http://www.acm.org/pubs/articles/journals/tosem/2000-9-4/p379-fong/p379-fong.pdf; http://www.acm.org/pubs/citations/journals/tosem/2000-9-4/p379-fong/", abstract = "Although mobile code systems typically employ link-time code verifiers to protect host computers from potentially malicious code, implementation flaws in the verifiers may still leave the host system vulnerable to attack. Compounding the inherent complexity of the verification algorithms themselves, the need to support lazy, dynamic linking in mobile code systems typically leads to architectures that exhibit strong interdependencies between the loader, the verifier, and the linker. To simplify verifier construction and provide improved assurances of verifier integrity, we propose a modular architecture based on the concept of proof linking. This architecture encapsulates the verification process and removes dependencies between the loader, the verifier, and the linker. We also formally model the process of proof linking and establish properties to which correct implementations must conform. As an example, we instantiate our architecture for the problem of Java bytecode verification and assess the correctness of this instantiation. Finally, we briefly discuss alternative mobile code verification architectures enabled by the proof-linking concept.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", generalterms = "Design; Languages; Security; Verification", journal-URL = "https://dl.acm.org/loi/tosem", keywords = "correctness conditions; dynamic linking; Java; mobile code; modularity; proof linking; safety; verification protocol; virtual machine architecture", subject = "Software --- Software Engineering --- Software/Program Verification (D.2.4): {\bf Correctness proofs}; Software --- Software Engineering --- Software/Program Verification (D.2.4): {\bf Formal methods}; Software --- Software Engineering --- Requirements/Specifications (D.2.1); Software --- Programming Languages --- Processors (D.3.4): {\bf Run-time environments}", } @Article{Myers:2000:PPU, author = "Andrew C. Myers and Barbara Liskov", title = "Protecting privacy using the decentralized label model", journal = j-TOSEM, volume = "9", number = "4", pages = "410--442", month = oct, year = "2000", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Apr 20 08:21:35 MDT 2001", bibsource = "http://www.acm.org/pubs/toc/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "http://www.acm.org/pubs/articles/journals/tosem/2000-9-4/p410-myers/p410-myers.pdf; http://www.acm.org/pubs/citations/journals/tosem/2000-9-4/p410-myers/", abstract = "Stronger protection is needed for the confidentiality and integrity of data, because programs containing untrusted code are the rule rather than the exception. Information flow control allows the enforcement of end-to-end security policies, but has been difficult to put into practice. This article describes the decentralized label model, a new label model for control of information flow in systems with mutual distrust and decentralized authority. The model improves on existing multilevel security models by allowing users to declassify information in a decentralized way, and by improving support for fine-grained data sharing. It supports static program analysis of information flow, so that programs can be certified to permit only acceptable information flows, while largely avoiding the overhead of run-time checking. The article introduces the language Jif, an extension to Java that provides static checking of information flow using the decentralized label model.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", generalterms = "Languages; Security", journal-URL = "https://dl.acm.org/loi/tosem", keywords = "confidentiality; declassification; downgrading; end-to-end; information flow controls; integrity; lattice; policies; principals; roles; type checking", subject = "Software --- Operating Systems --- Security and Protection (D.4.6): {\bf Information flow controls}", } @Article{Clarke:2000:VSP, author = "E. M. Clarke and S. Jha and W. Marrero", title = "Verifying security protocols with {Brutus}", journal = j-TOSEM, volume = "9", number = "4", pages = "443--487", month = oct, year = "2000", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Apr 20 08:21:35 MDT 2001", bibsource = "http://www.acm.org/pubs/toc/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "http://www.acm.org/pubs/articles/journals/tosem/2000-9-4/p443-clarke/p443-clarke.pdf; http://www.acm.org/pubs/citations/journals/tosem/2000-9-4/p443-clarke/", abstract = "Due to the rapid growth of the ``Internet'' and the ``World Wide Web'' security has become a very important concern in the design and implementation of software systems. Since security has become an important issue, the number of protocols in this domain has become very large. These protocols are very diverse in nature. If a software architect wants to deploy some of these protocols in a system, they have to be sure that the protocol has the right properties as dictated by the requirements of the system. In this article we present BRUTUS, a tool for verifying properties of security protocols. This tool can be viewed as a special-purpose model checker for security protocols. We also present reduction techniques that make the tool efficient. Experimental results are provided to demonstrate the efficiency of BRUTUS.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", generalterms = "Security; Verification", journal-URL = "https://dl.acm.org/loi/tosem", keywords = "authentication and secure payment protocols; formal methods; model-checking", subject = "Software --- Software Engineering --- Software/Program Verification (D.2.4): {\bf Model checking}; Software --- Operating Systems --- Security and Protection (D.4.6): {\bf Verification**}", } @Article{Durante:2000:CAC, author = "Antonio Durante and Riccardo Focardi and Roberto Gorrieri", title = "A compiler for analyzing cryptographic protocols using noninterference", journal = j-TOSEM, volume = "9", number = "4", pages = "488--528", month = oct, year = "2000", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Apr 20 08:21:35 MDT 2001", bibsource = "http://www.acm.org/pubs/toc/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "http://www.acm.org/pubs/articles/journals/tosem/2000-9-4/p488-durante/p488-durante.pdf; http://www.acm.org/pubs/citations/journals/tosem/2000-9-4/p488-durante/", abstract = "The Security Process Algebra (SPA) is a CCS-like specification language where actions belong to two different levels of confidentiality. It has been used to define several noninterference-like security properties whose verification has been automated by the tool CoSeC. In recent years, a method for analyzing security protocols using SPA and CoSeC has been developed. Even if it has been useful in analyzing small security protocols, this method has shown to be error-prone, as it requires the protocol description and its environment to be written by hand. This problem has been solved by defining a protocol specification language more abstract than SPA, called VSP, and a compiler CVS that automatically generates the SPA specification for a given protocol described in VSP. The VSP/CVS technology is very powerful, and its usefulness is shown with some case studies: the Woo-Lam one-way authentication protocol, for which a new attack to authentication is found, and the Wide Mouthed Frog protocol, where different kinds of attack are detected and analyzed.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", generalterms = "Security; Verification", journal-URL = "https://dl.acm.org/loi/tosem", keywords = "automatic verification; cryptographic protocols; noninterference; process algebra; verification tool", subject = "Computer Systems Organization --- Computer-Communication Networks --- General (C.2.0): {\bf Security and protection (e.g., firewalls)}; Computer Systems Organization --- Computer-Communication Networks --- Network Protocols (C.2.2): {\bf Protocol verification}; Software --- Software Engineering --- Software/Program Verification (D.2.4): {\bf Formal methods}; Software --- Software Engineering --- Software/Program Verification (D.2.4): {\bf Model checking}; Software --- Software Engineering --- Software/Program Verification (D.2.4): {\bf Validation}; Theory of Computation --- Logics and Meanings of Programs --- Semantics of Programming Languages (F.3.2): {\bf Operational semantics}; Theory of Computation --- Logics and Meanings of Programs --- Semantics of Programming Languages (F.3.2): {\bf Process models}", } @Article{Tip:2001:SBA, author = "F. Tip and T. B. Dinesh", title = "A slicing-based approach for locating type errors", journal = j-TOSEM, volume = "10", number = "1", pages = "5--55", month = jan, year = "2001", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Apr 20 08:21:35 MDT 2001", bibsource = "http://www.acm.org/pubs/toc/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "http://www.acm.org/pubs/articles/journals/tosem/2001-10-1/p5-tip/p5-tip.pdf; http://www.acm.org/pubs/citations/journals/tosem/2001-10-1/p5-tip/", abstract = "The effectiveness of a type-checking tool strongly depends on the accuracy of the positional information that is associated with type errors. We present an approach where the location associated with an error message {\em e\/} is defined as a {\em slice\/} {\em P e\/} of the program {\em P\/} being type-checked. We show that this approach yields highly accurate positional information: {\em P e\/} is a program that contains precisely those program constructs in {\em P\/} that caused error {\em e}. Semantically, we have the interesting property that type-checking {\em P e\/} is guaranteed to produce the same error {\em e}. Our approach is completely language-independent and has been implemented for a significant subset of Pascal. We also report on experiments with object-oriented type systems, and with a subset of ML.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", keywords = "abstract interpretation; program slicing; semantics-based tool generation; static semantics; type-checking", subject = "Software --- Programming Languages --- Processors (D.3.4): {\bf Translator writing systems and compiler generators}; Software --- Software Engineering --- Requirements/Specifications (D.2.1): {\bf Languages}; Theory of Computation --- Logics and Meanings of Programs --- Specifying and Verifying and Reasoning about Programs (F.3.1): {\bf Specification techniques}", } @Article{Chen:2001:TMO, author = "Huo Yan Chen and T. H. Tse and T. Y. Chen", title = "{TACCLE}: a methodology for object-oriented software testing at the class and cluster levels", journal = j-TOSEM, volume = "10", number = "1", pages = "56--109", month = jan, year = "2001", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Apr 20 08:21:35 MDT 2001", bibsource = "http://www.acm.org/pubs/toc/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "http://www.acm.org/pubs/articles/journals/tosem/2001-10-1/p56-chen/p56-chen.pdf; http://www.acm.org/pubs/citations/journals/tosem/2001-10-1/p56-chen/", abstract = "Object-oriented programming consists of several different levels of abstraction, namely, the algorithmic level, class level, cluster level, and system level. The testing of object-oriented software at the algorithmic and system levels is similar to conventional program testing. Testing at the class and cluster levels poses new challenges. Since methods and objects may interact with one another with unforeseen combinations and invocations, they are much more complex to simulate and test than the hierarchy of functional calls in conventional programs. In this paper, we propose a methodology for object-oriented software testing at the class and cluster levels. In class-level testing, it is essential to determine whether objects produced from the execution of implemented systems would preserve the properties defined by the specification, such as behavioral equivalence and nonequivalence. Our class-level testing methodology addresses both of these aspects. For the testing of behavioral equivalence, we propose to select fundamental pairs of equivalent ground terms as test cases using a black-box technique based on algebraic specifications, and then determine by means of a white-box technique whether the objects resulting from executing such test cases are observationally equivalent. To address the testing of behavioral nonequivalence, we have identified and analyzed several nontrivial problems in the current literature. We propose to classify term equivalence into four types, thereby setting up new concepts and deriving important properties. Based on these results, we propose an approach to deal with the problems in the generation of nonequivalent ground terms as test cases. Relatively little research has contributed to cluster-level testing. In this paper, we also discuss black-box testing at the cluster level. We illustrate the feasibility of using contract, a formal specification language for the behavioral dependencies and interactions among cooperating objects of different classes in a given cluster. We propose an approach to test the interactions among different classes using every individual message-passing rule in the given Contract specification. We also present an approach to examine the interactions among composite message-passing sequences. We have developed four testing tools to support our methodology.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", generalterms = "Languages; Reliability", journal-URL = "https://dl.acm.org/loi/tosem", keywords = "algebraic specifications; contact specifications; message passing; object-oriented programming; software testing", subject = "Software --- Software Engineering --- Requirements/Specifications (D.2.1): {\bf Languages}; Software --- Software Engineering --- Testing and Debugging (D.2.5): {\bf Testing tools (e.g., data generators, coverage testing)}; Software --- Programming Languages --- Language Classifications (D.3.2): {\bf Object-oriented languages}", } @Article{Rothermel:2001:MTS, author = "Gregg Rothermel and Margaret Burnett and Lixin Li and Christopher Dupuis and Andrei Sheretov", title = "A methodology for testing spreadsheets", journal = j-TOSEM, volume = "10", number = "1", pages = "110--147", month = jan, year = "2001", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Apr 20 08:21:35 MDT 2001", bibsource = "http://www.acm.org/pubs/toc/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "http://www.acm.org/pubs/articles/journals/tosem/2001-10-1/p110-rothermel/p110-rothermel.pdf; http://www.acm.org/pubs/citations/journals/tosem/2001-10-1/p110-rothermel/", abstract = "Spreadsheet languages, which include commercial spreadsheets and various research systems, have had a substantial impact on end-user computing. Research shows, however, that spreadsheets often contain faults; thus, we would like to provide at least some of the benefits of formal testing methodologies to the creators of spreadsheets. This article presents a testing methodology that adapts data flow adequacy criteria and coverage monitoring to the task of testing spreadsheets. To accommodate the evaluation model used with spreadsheets, and the interactive process by which they are created, our methodology is incremental. To accommodate the users of spreadsheet languages, we provide an interface to our methodology that does not require an understanding of testing theory. We have implemented our testing methodology in the context of the Froms/3 visual spreadsheet language. We report on the methodology, its time and space costs, and the mapping from the testing strategy to the user interfaces. In an empirical study, we found that test suites created according to our methodology detected, on average, 81\% of the faults in a set of faulty spreadsheets, significantly outperforming randomly generated test suites.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", generalterms = "Algorithms; Languages; Verification", journal-URL = "https://dl.acm.org/loi/tosem", keywords = "software testing; spreadsheets", subject = "Software --- Software Engineering --- Testing and Debugging (D.2.5); Software --- Software Engineering --- Programming Environments (D.2.6); Information Systems --- Information Systems Applications --- Office Automation (H.4.1); Software --- Programming Techniques --- Visual Programming (D.1.7)", } @Article{Bible:2001:CSC, author = "John Bible and Gregg Rothermel and David S. Rosenblum", title = "A comparative study of coarse- and fine-grained safe regression test-selection techniques", journal = j-TOSEM, volume = "10", number = "2", pages = "149--183", month = apr, year = "2001", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Apr 20 08:21:35 MDT 2001", bibsource = "http://www.acm.org/pubs/toc/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "http://www.acm.org/pubs/articles/journals/tosem/2001-10-2/p149-bible/p149-bible.pdf; http://www.acm.org/pubs/citations/journals/tosem/2001-10-2/p149-bible/", abstract = "{\em Regression test-selection techniques\/} reduce the cost of regression testing by selecting a subset of an existing test suite to use in retesting a modified program. Over the past two decades, numerous regression test-selection techniques have been described in the literature. Initial empirical studies of some of these techniques have suggested that they can indeed benefit testers, but so far, few studies have empirically compared different techniques. In this paper, we present the results of a comparative empirical study of two safe regression test-selection techniques. The techniques we studied have been implemented as the tools DejaVu and TestTube; we compared these tools in terms of a cost model incorporating {\em precision\/} (ability to eliminate unnecessary test cases), {\em analysis cost}, and {\em test execution cost}. Our results indicate, that in many instances, despite its relative lack of precision, TestTube can reduce the time required for regression testing as much as the more precise DejaVu. In other instances, particularly where the time required to execute test cases is long, DejaVu's superior precision gives it a clear advantage over TestTube. Such variations in relative performance can complicate a tester's choice of which tool to use. Our experimental results suggest that a hybrid regression test-selection tool that combines features of TestTube and DejaVu may be an answer to these complications; we present an initial case study that demonstrates the potential benefit of such a tool.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", generalterms = "Algorithms; Verification", journal-URL = "https://dl.acm.org/loi/tosem", keywords = "regression test selection; regression testing", subject = "Software --- Software Engineering --- Testing and Debugging (D.2.5)", } @Article{Graves:2001:ESR, author = "Todd L. Graves and Mary Jean Harrold and Jung-Min Kim and Adam Porter and Gregg Rothermel", title = "An empirical study of regression test selection techniques", journal = j-TOSEM, volume = "10", number = "2", pages = "184--208", month = apr, year = "2001", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Apr 20 08:21:35 MDT 2001", bibsource = "http://www.acm.org/pubs/toc/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "http://www.acm.org/pubs/articles/journals/tosem/2001-10-2/p184-graves/p184-graves.pdf; http://www.acm.org/pubs/citations/journals/tosem/2001-10-2/p184-graves/", abstract = "Regression testing is the process of validating modified software to detect whether new errors have been introduced into previously tested code and to provide confidence that modifications are correct. Since regression testing is an expensive process, researchers have proposed regression test selection techniques as a way to reduce some of this expense. These techniques attempt to reduce costs by selecting and running only a subset of the test cases in a program's existing test suite. Although there have been some analytical and empirical evaluations of individual techniques, to our knowledge only one comparative study, focusing on one aspect of two of these techniques, has been reported in the literature. We conducted an experiment to examine the relative costs and benefits of several regression test selection techniques. The experiment examined five techniques for reusing test cases, focusing on their relative abilities to reduce regression testing effort and uncover faults in modified programs. Our results highlight several differences between the techniques, and expose essential trade-offs that should be considered when choosing a technique for practical application.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", keywords = "empirical study; regression testing; selective retest", subject = "Software --- Software Engineering --- Testing and Debugging (D.2.5): {\bf Testing tools (e.g., data generators, coverage testing)}; Software --- Software Engineering --- Testing and Debugging (D.2.5): {\bf Debugging aids}", } @Article{Sinha:2001:ICD, author = "Saurabh Sinha and Mary Jean Harrold and Gregg Rothermel", title = "Interprocedural control dependence", journal = j-TOSEM, volume = "10", number = "2", pages = "209--254", month = apr, year = "2001", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Apr 20 08:21:35 MDT 2001", bibsource = "http://www.acm.org/pubs/toc/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "http://www.acm.org/pubs/articles/journals/tosem/2001-10-2/p209-sinha/p209-sinha.pdf; http://www.acm.org/pubs/citations/journals/tosem/2001-10-2/p209-sinha/", abstract = "Program-dependence information is useful for a variety of applications, such as software testing and maintenance tasks, and code optimization. Properly defined, control and data dependences can be used to identify semantic dependences. To function effectively on whole programs, tools that utilize dependence information require information about interprocedural dependences: dependences that are identified by analyzing the interactions among procedures. Many techniques for computing interprocedural data dependences exist; however, virtually no attention has been paid to interprocedural control dependence. Analysis techniques that fail to account for interprocedural control dependences can suffer unnecessary imprecision and loss of safety. This article presents a definition of interprocedural control dependence that supports the relationship of control and data dependence to semantic dependence. The article presents two approaches for computing interprocedural control dependences, and empirical results pertaining to the use of those approaches.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", generalterms = "Algorithms; Languages; Theory", journal-URL = "https://dl.acm.org/loi/tosem", keywords = "interprocedural analysis; interprocedural control dependence; program slicing; semantic dependence; software maintenance", subject = "Software --- Software Engineering --- Testing and Debugging (D.2.5): {\bf Debugging aids}; Software --- Software Engineering --- Distribution, Maintenance, and Enhancement (D.2.7): {\bf Restructuring, reverse engineering, and reengineering}; Software --- Programming Languages --- Language Constructs and Features (D.3.3): {\bf Control structures}; Software --- Programming Languages --- Processors (D.3.4): {\bf Compilers}; Software --- Programming Languages --- Processors (D.3.4): {\bf Optimization}; Computing Methodologies --- Symbolic and Algebraic Manipulation --- Algorithms (I.1.2): {\bf Analysis of algorithms}; Software --- Software Engineering --- Testing and Debugging (D.2.5): {\bf Testing tools (e.g., data generators, coverage testing)}", } @Article{Gargantini:2001:ADR, author = "Angelo Gargantini and Angelo Morzenti", title = "Automated deductive requirements analysis of critical systems", journal = j-TOSEM, volume = "10", number = "3", pages = "255--307", month = jul, year = "2001", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Feb 19 14:55:16 MST 2002", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Perry:2001:PCL, author = "Dewayne E. Perry and Harvey P. Siy and Lawrence G. Votta", title = "Parallel changes in large-scale software development: an observational case study", journal = j-TOSEM, volume = "10", number = "3", pages = "308--337", month = jul, year = "2001", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Feb 19 14:55:16 MST 2002", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Picco:2001:RAC, author = "Gian Pietro Picco and Gruia-Catalin Roman and Peter J. McCann", title = "Reasoning about code mobility with mobile {UNITY}", journal = j-TOSEM, volume = "10", number = "3", pages = "338--395", month = jul, year = "2001", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Feb 19 14:55:16 MST 2002", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Beauvais:2001:MSA, author = "J.-R. Beauvais and E. Rutten and T. Gautier and R. Houdebine and P. Le Guernic and Y.-M. Tang", title = "Modeling statecharts and activitycharts as signal equations", journal = j-TOSEM, volume = "10", number = "4", pages = "397--451", month = oct, year = "2001", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Feb 19 14:55:16 MST 2002", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Bonifati:2001:DDM, author = "Angela Bonifati and Fabiano Cattaneo and Stefano Ceri and Alfonso Fuggetta and Stefano Paraboschi", title = "Designing data marts for data warehouses", journal = j-TOSEM, volume = "10", number = "4", pages = "452--483", month = oct, year = "2001", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Feb 19 14:55:16 MST 2002", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Medvidovic:2002:MSA, author = "Nenad Medvidovic and David S. Rosenblum and David F. Redmiles and Jason E. Robbins", title = "Modeling software architectures in the {Unified Modeling Language}", journal = j-TOSEM, volume = "11", number = "1", pages = "2--57", month = jan, year = "2002", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Feb 19 14:55:16 MST 2002", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Tsuchiya:2002:FCE, author = "Tatsuhiro Tsuchiya and Tohru Kikuno", title = "On fault classes and error detection capability of specification-based testing", journal = j-TOSEM, volume = "11", number = "1", pages = "58--62", month = jan, year = "2002", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Feb 19 14:55:16 MST 2002", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Keidar:2002:IBT, author = "Idit Keidar and Roger Khazan and Nancy Lynch and Alex Shvartsman", title = "An inheritance-based technique for building simulation proofs incrementally", journal = j-TOSEM, volume = "11", number = "1", pages = "63--91", month = jan, year = "2002", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Feb 19 14:55:16 MST 2002", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Schrefl:2002:BCS, author = "Michael Schrefl and Markus Stumptner", title = "Behavior-consistent specialization of object life cycles", journal = j-TOSEM, volume = "11", number = "1", pages = "92--148", month = jan, year = "2002", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Feb 19 14:55:16 MST 2002", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Felder:2002:FDN, author = "Miguel Felder and Mauro Pezz{\`e}", title = "A formal design notation for real-time systems", journal = j-TOSEM, volume = "11", number = "2", pages = "149--190", year = "2002", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Thu Aug 7 10:57:17 MDT 2003", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Batory:2002:AET, author = "Don Batory and Clay Johnson and Bob Macdonald and Dale Von Heeder", title = "Achieving extensibility through product-lines and domain-specific languages: a case study", journal = j-TOSEM, volume = "11", number = "2", pages = "191--214", year = "2002", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Thu Aug 7 10:57:17 MDT 2003", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Smaragdakis:2002:MLO, author = "Yannis Smaragdakis and Don Batory", title = "Mixin layers: an object-oriented implementation technique for refinements and collaboration-based designs", journal = j-TOSEM, volume = "11", number = "2", pages = "215--255", year = "2002", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Thu Aug 7 10:57:17 MDT 2003", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Jackson:2002:ALO, author = "Daniel Jackson", title = "{Alloy}: a lightweight object modelling notation", journal = j-TOSEM, volume = "11", number = "2", pages = "256--290", year = "2002", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Thu Aug 7 10:57:17 MDT 2003", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Pons:2002:TAC, author = "Alexander P. Pons", title = "Temporal abstract classes and virtual temporal specifications for real-time systems", journal = j-TOSEM, volume = "11", number = "3", pages = "291--308", year = "2002", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Thu Aug 7 10:57:17 MDT 2003", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Mockus:2002:TCS, author = "Audris Mockus and Roy T. Fielding and James D. Herbsleb", title = "Two case studies of open source software development: {Apache} and {Mozilla}", journal = j-TOSEM, volume = "11", number = "3", pages = "309--346", year = "2002", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Thu Aug 7 10:57:17 MDT 2003", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Liang:2002:EAA, author = "Donglin Liang and Mary Jean Harrold", title = "Equivalence analysis and its application in improving the efficiency of program slicing", journal = j-TOSEM, volume = "11", number = "3", pages = "347--383", year = "2002", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Thu Aug 7 10:57:17 MDT 2003", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Anonymous:2002:OOJ, author = "Anonymous", title = "Obituary: {Ole-Johan Dahl, 1931--2002; Edsger Wybe Dijkstra, 1930--2002; Kristen Nygaard, 1926--2002}", journal = j-TOSEM, volume = "11", number = "4", pages = "385--385", year = "2002", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Thu Aug 7 10:57:18 MDT 2003", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Bernardo:2002:AFS, author = "Marco Bernardo and Paolo Ciancarini and Lorenzo Donatiello", title = "Architecting families of software systems with process algebras", journal = j-TOSEM, volume = "11", number = "4", pages = "386--426", year = "2002", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Thu Aug 7 10:57:18 MDT 2003", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Hierons:2002:CTS, author = "R. M. Hierons", title = "Comparing test sets and criteria in the presence of test hypotheses and fault domains", journal = j-TOSEM, volume = "11", number = "4", pages = "427--448", year = "2002", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Thu Aug 7 10:57:18 MDT 2003", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Egyed:2002:AAC, author = "Alexander Egyed", title = "Automated abstraction of class diagrams", journal = j-TOSEM, volume = "11", number = "4", pages = "449--491", year = "2002", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Thu Aug 7 10:57:18 MDT 2003", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Ghezzi:2003:E, author = "Carlo Ghezzi and Jeffrey N. Magee and Dieter Rombach and Mary Lou Soffa", title = "Editorial", journal = j-TOSEM, volume = "12", number = "1", pages = "1--2", year = "2003", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Thu Aug 7 10:57:18 MDT 2003", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Felty:2003:FSA, author = "Amy P. Felty and Kedar S. Namjoshi", title = "Feature specification and automated conflict detection", journal = j-TOSEM, volume = "12", number = "1", pages = "3--27", year = "2003", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Thu Aug 7 10:57:18 MDT 2003", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Nentwich:2003:FCC, author = "Christian Nentwich and Wolfgang Emmerich and Anthony Finkelstein and Ernst Ellmer", title = "Flexible consistency checking", journal = j-TOSEM, volume = "12", number = "1", pages = "28--63", year = "2003", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Thu Aug 7 10:57:18 MDT 2003", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Lopes:2003:HOA, author = "Ant{\'o}nia Lopes and Michel Wermelinger and Jos{\'e} Luiz Fiadeiro", title = "Higher-order architectural connectors", journal = j-TOSEM, volume = "12", number = "1", pages = "64--104", year = "2003", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Thu Aug 7 10:57:18 MDT 2003", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Staff:2003:R, author = "{ACM Transactions on Software Engineering and Methodology staff}", title = "Reviewers 2002", journal = j-TOSEM, volume = "12", number = "1", pages = "105--105", year = "2003", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Thu Aug 7 10:57:18 MDT 2003", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Coen-Porisini:2003:FAD, author = "Alberto Coen-Porisini and Matteo Pradella and Matteo Rossi and Dino Mandrioli", title = "A formal approach for designing {CORBA}-based applications", journal = j-TOSEM, volume = "12", number = "2", pages = "107--151", month = apr, year = "2003", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Oct 31 06:06:37 MST 2003", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{VanDenBrand:2003:TRT, author = "Mark G. J. {Van Den Brand} and Paul Klint and Jurgen J. Vinju", title = "Term rewriting with traversal functions", journal = j-TOSEM, volume = "12", number = "2", pages = "152--190", month = apr, year = "2003", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Oct 31 06:06:37 MST 2003", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Robillard:2003:SAS, author = "Martin P. Robillard and Gail C. Murphy", title = "Static analysis to support the evolution of exception structure in object-oriented systems", journal = j-TOSEM, volume = "12", number = "2", pages = "191--221", month = apr, year = "2003", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Oct 31 06:06:37 MST 2003", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Durante:2003:ATE, author = "Luca Durante and Riccardo Sisto and Adriano Valenzano", title = "Automatic testing equivalence verification of spi calculus specifications", journal = j-TOSEM, volume = "12", number = "2", pages = "222--284", month = apr, year = "2003", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Oct 31 06:06:37 MST 2003", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Cohen:2003:AHQ, author = "Yossi Cohen and Yishai A. Feldman", title = "Automatic high-quality reengineering of database programs by abstraction, transformation and reimplementation", journal = j-TOSEM, volume = "12", number = "3", pages = "285--316", month = jul, year = "2003", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sat Dec 13 18:40:57 MST 2003", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Zambonelli:2003:DMS, author = "Franco Zambonelli and Nicholas R. Jennings and Michael Wooldridge", title = "Developing multiagent systems: {The Gaia} methodology", journal = j-TOSEM, volume = "12", number = "3", pages = "317--370", month = jul, year = "2003", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sat Dec 13 18:40:57 MST 2003", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Chechik:2003:MVS, author = "Marsha Chechik and Benet Devereux and Steve Easterbrook and Arie Gurfinkel", title = "Multi-valued symbolic model-checking", journal = j-TOSEM, volume = "12", number = "4", pages = "371--408", month = oct, year = "2003", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Thu Nov 4 07:55:52 MST 2004", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Miller:2003:FTS, author = "Tim Miller and Paul Strooper", title = "A framework and tool support for the systematic testing of model-based specifications", journal = j-TOSEM, volume = "12", number = "4", pages = "409--439", month = oct, year = "2003", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Thu Nov 4 07:55:52 MST 2004", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Ferrari:2003:MCV, author = "Gian-Luigi Ferrari and Stefania Gnesi and Ugo Montanari and Marco Pistore", title = "A model-checking verification environment for mobile processes", journal = j-TOSEM, volume = "12", number = "4", pages = "440--473", month = oct, year = "2003", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Thu Nov 4 07:55:52 MST 2004", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Zave:2004:ATT, author = "Pamela Zave", title = "Address translation in telecommunication features", journal = j-TOSEM, volume = "13", number = "1", pages = "1--36", month = jan, year = "2004", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Thu Nov 4 07:55:52 MST 2004", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Uchitel:2004:IES, author = "Sebastian Uchitel and Jeff Kramer and Jeff Magee", title = "Incremental elaboration of scenario-based specifications and behavior models using implied scenarios", journal = j-TOSEM, volume = "13", number = "1", pages = "37--85", month = jan, year = "2004", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Thu Nov 4 07:55:52 MST 2004", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Venkatasubramanian:2004:FMR, author = "Nalini Venkatasubramanian and Carolyn Talcott and Gul A. Agha", title = "A formal model for reasoning about adaptive {QoS}-enabled middleware", journal = j-TOSEM, volume = "13", number = "1", pages = "86--147", month = jan, year = "2004", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Thu Nov 4 07:55:52 MST 2004", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Akgul:2004:AIL, author = "Tankut Akgul and Vincent J. {Mooney III}", title = "Assembly instruction level reverse execution for debugging", journal = j-TOSEM, volume = "13", number = "2", pages = "149--198", month = apr, year = "2004", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Thu Nov 4 07:55:52 MST 2004", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Orso:2004:CDD, author = "Alessandro Orso and Saurabh Sinha and Mary Jean Harrold", title = "Classifying data dependences in the presence of pointers for program comprehension, testing, and debugging", journal = j-TOSEM, volume = "13", number = "2", pages = "199--239", month = apr, year = "2004", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Thu Nov 4 07:55:52 MST 2004", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Roshandel:2004:MSM, author = "Roshanak Roshandel and Andr{\'e} {Van Der Hoek} and Marija Mikic-Rakic and Nenad Medvidovic", title = "{Mae}---a system model and environment for managing architectural evolution", journal = j-TOSEM, volume = "13", number = "2", pages = "240--276", month = apr, year = "2004", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Thu Nov 4 07:55:52 MST 2004", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Rothermel:2004:TSC, author = "Gregg Rothermel and Sebastian Elbaum and Alexey G. Malishevsky and Praveen Kallakuri and Xuemei Qiu", title = "On test suite composition and cost-effective regression testing", journal = j-TOSEM, volume = "13", number = "3", pages = "277--331", month = jul, year = "2004", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Thu Nov 4 07:55:52 MST 2004", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Kramer:2004:CCM, author = "Stefan Kramer and Hermann Kaindl", title = "Coupling and cohesion metrics for knowledge-based systems using frames and rules", journal = j-TOSEM, volume = "13", number = "3", pages = "332--358", month = jul, year = "2004", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Thu Nov 4 07:55:52 MST 2004", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Dwyer:2004:FAV, author = "Matthew B. Dwyer and Lori A. Clarke and Jamieson M. Cobleigh and Gleb Naumovich", title = "Flow analysis for verifying properties of concurrent software systems", journal = j-TOSEM, volume = "13", number = "4", pages = "359--430", month = oct, year = "2004", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Thu Apr 14 10:42:21 MDT 2005", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Costagliola:2004:FMI, author = "Gennaro Costagliola and Vincenzo Deufemia and Giuseppe Polese", title = "A framework for modeling and implementing visual notations with applications to software engineering", journal = j-TOSEM, volume = "13", number = "4", pages = "431--487", month = oct, year = "2004", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Thu Apr 14 10:42:21 MDT 2005", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Milanova:2005:POS, author = "Ana Milanova and Atanas Rountev and Barbara G. Ryder", title = "Parameterized object sensitivity for points-to analysis for {Java}", journal = j-TOSEM, volume = "14", number = "1", pages = "1--41", month = jan, year = "2005", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Thu Apr 14 10:42:22 MDT 2005", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Baresi:2005:FID, author = "Luciano Baresi and Mauro Pezz{\`e}", title = "Formal interpreters for diagram notations", journal = j-TOSEM, volume = "14", number = "1", pages = "42--84", month = jan, year = "2005", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Thu Apr 14 10:42:22 MDT 2005", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Sommerville:2005:ESI, author = "Ian Sommerville and Jane Ransom", title = "An empirical study of industrial requirements engineering process assessment and improvement", journal = j-TOSEM, volume = "14", number = "1", pages = "85--117", month = jan, year = "2005", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Thu Apr 14 10:42:22 MDT 2005", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Ghezzi:2005:E, author = "Carlo Ghezzi", title = "Editorial", journal = j-TOSEM, volume = "14", number = "2", pages = "119--123", month = apr, year = "2005", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon May 2 11:17:01 MDT 2005", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Berstel:2005:SFM, author = "Jean Berstel and Stefano Crespi Reghizzi and Gilles Roussel and Pierluigi San Pietro", title = "A scalable formal method for design and automatic checking of user interfaces", journal = j-TOSEM, volume = "14", number = "2", pages = "124--167", month = apr, year = "2005", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon May 2 11:17:01 MDT 2005", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Erwig:2005:SRS, author = "Martin Erwig and Zhe Fu", title = "Software reuse for scientific computing through program generation", journal = j-TOSEM, volume = "14", number = "2", pages = "168--198", month = apr, year = "2005", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon May 2 11:17:01 MDT 2005", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Dashofy:2005:CAD, author = "Eric M. Dashofy and Andr{\'e} van der Hoek and Richard N. Taylor", title = "A comprehensive approach for the development of modular software architecture description languages", journal = j-TOSEM, volume = "14", number = "2", pages = "199--245", month = apr, year = "2005", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon May 2 11:17:01 MDT 2005", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Staff:2005:AR, author = "{ACM Transactions on Software Engineering and Methodology staff}", title = "Acknowledgement of referees 2004", journal = j-TOSEM, volume = "14", number = "2", pages = "246--246", month = apr, year = "2005", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon May 2 11:17:01 MDT 2005", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Lau:2005:EFC, author = "Man F. Lau and Yuen T. Yu", title = "An extended fault class hierarchy for specification-based testing", journal = j-TOSEM, volume = "14", number = "3", pages = "247--276", month = jul, year = "2005", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/1072997.1072998", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sat Jul 23 15:50:12 MDT 2005", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Gervasi:2005:RAI, author = "Vincenzo Gervasi and Didar Zowghi", title = "Reasoning about inconsistencies in natural language requirements", journal = j-TOSEM, volume = "14", number = "3", pages = "277--330", month = jul, year = "2005", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/1072997.1072999", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sat Jul 23 15:50:12 MDT 2005", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Klint:2005:TED, author = "Paul Klint and Ralf L{\"a}mmel and Chris Verhoef", title = "Toward an engineering discipline for grammarware", journal = j-TOSEM, volume = "14", number = "3", pages = "331--380", month = jul, year = "2005", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/1072997.1073000", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sat Jul 23 15:50:12 MDT 2005", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Osterweil:2005:E, author = "Leon Osterweil and Carlo Ghezzi and Jeff Kramer and Alexander Wolf", title = "Editorial", journal = j-TOSEM, volume = "14", number = "4", pages = "381--382", month = oct, year = "2005", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Nov 25 05:58:01 MST 2005", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Estublier:2005:ISE, author = "Jacky Estublier and David Leblang and Andr{\'e} van der Hoek and Reidar Conradi and Geoffrey Clemm and Walter Tichy and Darcy Wiborg-Weber", title = "Impact of software engineering research on the practice of software configuration management", journal = j-TOSEM, volume = "14", number = "4", pages = "383--430", month = oct, year = "2005", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Nov 25 05:58:01 MST 2005", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Ryder:2005:ISE, author = "Barbara G. Ryder and Mary Lou Soffa and Margaret Burnett", title = "The impact of software engineering research on modern programming languages", journal = j-TOSEM, volume = "14", number = "4", pages = "431--477", month = oct, year = "2005", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Nov 25 05:58:01 MST 2005", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Frias:2005:RAS, author = "Marcelo F. Frias and Carlos G. L{\'o}pez Pombo and Gabriel A. Baum and Nazareno M. Aguirre and Thomas S. E. Maibaum", title = "Reasoning about static and dynamic properties in alloy: a purely relational approach", journal = j-TOSEM, volume = "14", number = "4", pages = "478--526", month = oct, year = "2005", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Nov 25 05:58:01 MST 2005", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Eshuis:2006:SMC, author = "Rik Eshuis", title = "Symbolic model checking of {UML} activity diagrams", journal = j-TOSEM, volume = "15", number = "1", pages = "1--38", month = jan, year = "2006", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/1125808.1125809", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sat Apr 22 06:14:53 MDT 2006", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Basin:2006:MDS, author = "David Basin and J{\"u}rgen Doser and Torsten Lodderstedt", title = "Model driven security: {From UML} models to access control infrastructures", journal = j-TOSEM, volume = "15", number = "1", pages = "39--91", month = jan, year = "2006", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/1125808.1125810", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Jul 04 08:41:19 2008", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Snook:2006:UBF, author = "Colin Snook and Michael Butler", title = "{UML-B}: {Formal} modeling and design aided by {UML}", journal = j-TOSEM, volume = "15", number = "1", pages = "92--122", month = jan, year = "2006", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/1125808.1125811", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sat Apr 22 06:14:53 MDT 2006", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Counsell:2006:IUT, author = "Steve Counsell and Stephen Swift and Jason Crampton", title = "The interpretation and utility of three cohesion metrics for object-oriented design", journal = j-TOSEM, volume = "15", number = "2", pages = "123--149", month = apr, year = "2006", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/1131421.1131422", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri May 12 07:34:50 MDT 2006", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Fisher:2006:IAT, author = "Marc {Fisher II} and Gregg Rothermel and Darren Brown and Mingming Cao and Curtis Cook and Margaret Burnett", title = "Integrating automated test generation into the {WYSIWYT} spreadsheet testing methodology", journal = j-TOSEM, volume = "15", number = "2", pages = "150--194", month = apr, year = "2006", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/1131421.1131423", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri May 12 07:34:50 MDT 2006", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Zhao:2006:STS, author = "Wei Zhao and Lu Zhang and Yin Liu and Jiasu Sun and Fuqing Yang", title = "{SNIAFL}: {Towards} a static noninteractive approach to feature location", journal = j-TOSEM, volume = "15", number = "2", pages = "195--226", month = apr, year = "2006", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/1131421.1131424", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri May 12 07:34:50 MDT 2006", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Hierons:2006:ACC, author = "R. M. Hierons", title = "Avoiding coincidental correctness in boundary value analysis", journal = j-TOSEM, volume = "15", number = "3", pages = "227--241", month = jul, year = "2006", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Aug 29 05:26:07 MDT 2006", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Sinha:2006:HMB, author = "Avik Sinha and Carol Smidts", title = "{HOTTest}: a model-based test design technique for enhanced testing of domain-specific applications", journal = j-TOSEM, volume = "15", number = "3", pages = "242--278", month = jul, year = "2006", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Aug 29 05:26:07 MDT 2006", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Murphy:2006:LCM, author = "Amy L. Murphy and Gian Pietro Picco and Gruia-Catalin Roman", title = "{LIME}: a coordination model and middleware supporting mobility of hosts and agents", journal = j-TOSEM, volume = "15", number = "3", pages = "279--328", month = jul, year = "2006", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Aug 29 05:26:07 MDT 2006", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Thiran:2006:WBE, author = "Philippe Thiran and Jean-Luc Hainaut and Geert-Jan Houben and Djamal Benslimane", title = "Wrapper-based evolution of legacy information systems", journal = j-TOSEM, volume = "15", number = "4", pages = "329--359", month = oct, year = "2006", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Nov 15 06:42:33 MST 2006", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Brambilla:2006:PMW, author = "Marco Brambilla and Stefano Ceri and Piero Fraternali and Ioana Manolescu", title = "Process modeling in {Web} applications", journal = j-TOSEM, volume = "15", number = "4", pages = "360--409", month = oct, year = "2006", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Nov 15 06:42:33 MST 2006", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Snelting:2006:EPC, author = "Gregor Snelting and Torsten Robschink and Jens Krinke", title = "Efficient path conditions in dependence graphs for software safety analysis", journal = j-TOSEM, volume = "15", number = "4", pages = "410--457", month = oct, year = "2006", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Nov 15 06:42:33 MST 2006", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Notkin:2007:Ea, author = "David Notkin", title = "Editorial", journal = j-TOSEM, volume = "16", number = "1", pages = "1:1--1:??", month = feb, year = "2007", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/1189748.1189749", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon Jun 16 11:11:50 MDT 2008", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "1", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Ghezzi:2007:E, author = "Carlo Ghezzi", title = "Editorial", journal = j-TOSEM, volume = "16", number = "1", pages = "2:1--2:??", month = feb, year = "2007", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/1189748.1189750", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon Jun 16 11:11:50 MDT 2008", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "2", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Robillard:2007:RCS, author = "Martin P. Robillard and Gail C. Murphy", title = "Representing concerns in source code", journal = j-TOSEM, volume = "16", number = "1", pages = "3:1--3:??", month = feb, year = "2007", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/1189748.1189751", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon Jun 16 11:11:50 MDT 2008", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "A software modification task often addresses several concerns. A concern is anything a stakeholder may want to consider as a conceptual unit, including features, nonfunctional requirements, and design idioms. In many cases, the source code implementing a concern is not encapsulated in a single programming language module, and is instead scattered and tangled throughout a system. Inadequate separation of concerns increases the difficulty of evolving software in a correct and cost-effective manner. To make it easier to modify concerns that are not well modularized, we propose an approach in which the implementation of concerns is documented in artifacts, called concern graphs. Concern graphs are abstract models that describe which parts of the source code are relevant to different concerns. We present a formal model for concern graphs and the tool support we developed to enable software developers to create and use concern graphs during software evolution tasks. We report on five empirical studies, providing evidence that concern graphs support views and operations that facilitate the task of modifying the code implementing scattered concerns, are cost-effective to create and use, and robust enough to be used with different versions of a software system.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "3", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", keywords = "aspect-oriented software development; concern modeling; Java; Separation of concerns; software evolution", } @Article{Xie:2007:DCA, author = "Qing Xie and Atif M. Memon", title = "Designing and comparing automated test oracles for {GUI}-based software applications", journal = j-TOSEM, volume = "16", number = "1", pages = "4:1--4:??", month = feb, year = "2007", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/1189748.1189752", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon Jun 16 11:11:50 MDT 2008", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Test designers widely believe that the overall effectiveness and cost of software testing depends largely on the type and number of test cases executed on the software. This article shows that the test oracle, a mechanism that determines whether a software is executed correctly for a test case, also significantly impacts the fault detection effectiveness and cost of a test case. Graphical user interfaces (GUIs), which have become ubiquitous for interacting with today's software, have created new challenges for test oracle development. Test designers manually ``assert'' the expected values of specific properties of certain GUI widgets in each test case; during test execution, these assertions are used as test oracles to determine whether the GUI executed correctly. Since a test case for a GUI is a sequence of events, a test designer must decide: (1) what to assert; and (2) how frequently to check an assertion, for example, after each event in the test case or after the entire test case has completed execution. Variations of these two factors significantly impact the fault-detection ability and cost of a GUI test case. A technique to declaratively specify different types of automated GUI test oracles is described. Six instances of test oracles are developed and compared in an experiment on four software systems. The results show that test oracles do affect the fault detection ability of test cases in different and interesting ways: (1) Test cases significantly lose their fault detection ability when using ``weak'' test oracles; (2) in many cases, invoking a ``thorough'' oracle at the end of test case execution yields the best cost-benefit ratio; (3) certain test cases detect faults only if the oracle is invoked during a small ``window of opportunity'' during test execution; and (4) using thorough and frequently-executing test oracles can compensate for not having long test cases.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "4", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", keywords = "graphical user interfaces; GUI state; GUI testing; Test oracles; user interfaces; widgets", } @Article{Broy:2007:FMS, author = "Manfred Broy and Ingolf H. Kr{\"u}ger and Michael Meisinger", title = "A formal model of services", journal = j-TOSEM, volume = "16", number = "1", pages = "5:1--5:??", month = feb, year = "2007", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/1189748.1189753", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon Jun 16 11:11:50 MDT 2008", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Service-oriented software systems rapidly gain importance across application domains: They emphasize functionality (services), rather structural entities (components), as the basic building block for system composition. More specifically, services coordinate the interplay of components to accomplish specific tasks. In this article, we establish a foundation of service orientation: Based on the Focus theory of distributed systems (see Broy and St{\o}len [2001]), we introduce a theory and formal model of services. In Focus, systems are composed of interacting components. A component is a total behavior. We introduce a formal model of services where, in contrast, a service is a partial behavior. For services and components, we work out foundational specification techniques and outline methodological development steps. We show how services can be structured and how software architectures can be composed of services and components. Although our emphasis is on a theoretical foundation of the notion of services, we demonstrate utility of the concepts we introduce by means of a running example from the automotive domain.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "5", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", keywords = "assumption/commitment specifications; Components; service engineering; services; software architecture", } @Article{Notkin:2007:Eb, author = "David Notkin", title = "Editorial", journal = j-TOSEM, volume = "16", number = "2", pages = "6:1--6:??", month = apr, year = "2007", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/1217295.1237801", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon Jun 16 11:12:13 MDT 2008", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "6", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Krishnamurthi:2007:FIA, author = "Shriram Krishnamurthi and Kathi Fisler", title = "Foundations of incremental aspect model-checking", journal = j-TOSEM, volume = "16", number = "2", pages = "7:1--7:??", month = apr, year = "2007", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/1217295.1217296", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon Jun 16 11:12:13 MDT 2008", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Programs are increasingly organized around features, which are encapsulated using aspects and other linguistic mechanisms. Despite their growing popularity amongst developers, there is a dearth of techniques for computer-aided verification of programs that employ these mechanisms. We present the theoretical underpinnings for applying model checking to programs (expressed as state machines) written using these mechanisms. The analysis is incremental, examining only components that change rather than verifying the entire system every time one part of it changes. Our technique assumes that the set of pointcut designators is known statically, but the actual advice can vary. It handles both static and dynamic pointcut designators. We present the algorithm, prove it sound, and address several subtleties that arise, including cascading advice application and problems of circular reasoning.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "7", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", keywords = "aspect-oriented programming; feature-oriented software; Incremental verification; model checking; modular verification", } @Article{Binkley:2007:ESS, author = "David Binkley and Nicolas Gold and Mark Harman", title = "An empirical study of static program slice size", journal = j-TOSEM, volume = "16", number = "2", pages = "8:1--8:??", month = apr, year = "2007", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/1217295.1217297", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon Jun 16 11:12:13 MDT 2008", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "This article presents results from a study of all slices from 43 programs, ranging up to 136,000 lines of code in size. The study investigates the effect of five aspects that affect slice size. Three slicing algorithms are used to study two algorithmic aspects: calling-context treatment and slice granularity. The remaining three aspects affect the upstream dependencies considered by the slicer. These include collapsing structure fields, removal of dead code, and the influence of points-to analysis.\par The results show that for the most precise slicer, the average slice contains just under one-third of the program. Furthermore, ignoring calling context causes a 50\% increase in slice size, and while (coarse-grained) function-level slices are 33\% larger than corresponding statement-level slices, they may be useful predictors of the (finer-grained) statement-level slice size. Finally, upstream analyses have an order of magnitude less influence on slice size.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "8", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", keywords = "Program slicing; slice size", } @Article{Gamatie:2007:PDE, author = "Abdoulaye Gamati{\'e} and Thierry Gautier and Paul {Le Guernic} and Jean-Pierre Talpin", title = "Polychronous design of embedded real-time applications", journal = j-TOSEM, volume = "16", number = "2", pages = "9:1--9:??", month = apr, year = "2007", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/1217295.1217298", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon Jun 16 11:12:13 MDT 2008", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Embedded real-time systems consist of hardware and software that controls the behavior of a device or plant. They are ubiquitous in today's technological landscape and found in domains such as telecommunications, nuclear power, avionics, and medical technology. These systems are difficult to design and build because they must satisfy both functional and timing requirements to work correctly in their intended environment. Furthermore, embedded systems are often critical systems, where failure can lead to loss of life, loss of mission, or serious financial consequences. Because of the difficulty in creating these systems and the consequences of failure, they require rigorous and reliable design approaches. The synchronous approach is one possible answer to this demand. Its mathematical basis provides formal concepts that favor the trusted design of embedded real-time systems. The multiclock or polychronous model stands out from other synchronous specification models by its capability to enable the design of systems where each component holds its own activation clock as well as single-clocked systems in a uniform way. A great advantage is its convenience for component-based design approaches that enable modular development of increasingly complex modern systems. The expressiveness of its underlying semantics allows dealing with several issues of real-time design. This article exposes insights gained during recent years from the design of real-time applications within the polychronous framework. In particular, it shows promising results about the design of applications from the avionics domain.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "9", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", keywords = "Avionics; IMA; Signal; Synchronous approach", } @Article{Kapoor:2007:TCF, author = "Kalpesh Kapoor and Jonathan P. Bowen", title = "Test conditions for fault classes in {Boolean} specifications", journal = j-TOSEM, volume = "16", number = "3", pages = "10:1--10:??", month = jul, year = "2007", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/1243987.1243988", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon Jun 16 11:12:41 MDT 2008", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Fault-based testing of software checks the software implementation for a set of faults. Two previous papers on fault-based testing [Kuhn 1999; Tsuchiya and Kikuno 2002] represent the required behavior of the software as a Boolean specification represented in Disjunctive Normal Form (DNF) and then show that faults may be organized in a hierarchy. This article extends these results by identifying necessary and sufficient conditions for fault-based testing. Unlike previous solutions, the formal analysis used to derive these conditions imposes no restrictions (such as DNF) on the form of the Boolean specification.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "10", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", keywords = "Boolean specification; fault classes; Fault-based testing", } @Article{Paige:2007:MBM, author = "Richard F. Paige and Phillip J. Brooke and Jonathan S. Ostroff", title = "Metamodel-based model conformance and multiview consistency checking", journal = j-TOSEM, volume = "16", number = "3", pages = "11:1--11:??", month = jul, year = "2007", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/1243987.1243989", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon Jun 16 11:12:41 MDT 2008", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Model-driven development, using languages such as UML and BON, often makes use of multiple diagrams (e.g., class and sequence diagrams) when modeling systems. These diagrams, presenting different views of a system of interest, may be inconsistent. A metamodel provides a unifying framework in which to ensure and check consistency, while at the same time providing the means to distinguish between valid and invalid models, that is, conformance. Two formal specifications of the metamodel for an object-oriented modeling language are presented, and it is shown how to use these specifications for model conformance and multiview consistency checking. Comparisons are made in terms of completeness and the level of automation each provide for checking multiview consistency and model conformance. The lessons learned from applying formal techniques to the problems of metamodeling, model conformance, and multiview consistency checking are summarized.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "11", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", keywords = "automated verification; formal methods; Metamodeling; multiview consistency", } @Article{Basu:2007:MCJ, author = "Samik Basu and Scott A. Smolka", title = "Model checking the {Java} metalocking algorithm", journal = j-TOSEM, volume = "16", number = "3", pages = "12:1--12:??", month = jul, year = "2007", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/1243987.1243990", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon Jun 16 11:12:41 MDT 2008", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "We report on our efforts to use the XMC model checker to model and verify the Java metalocking algorithm. XMC [Ramakrishna et al. 1997] is a versatile and efficient model checker for systems specified in XL, a highly expressive value-passing language. Metalocking [Agesen et al. 1999] is a highly-optimized technique for ensuring mutually exclusive access by threads to object monitor queues and, therefore; plays an essential role in allowing Java to offer concurrent access to objects. Metalocking can be viewed as a two-tiered scheme. At the upper level, the metalock level, a thread waits until it can enqueue itself on an object's monitor queue in a mutually exclusive manner. At the lower level, the monitor-lock level, enqueued threads race to obtain exclusive access to the object. Our abstract XL specification of the metalocking algorithm is fully parameterized, both on the number of threads M, and the number of objects N. It also captures a sophisticated optimization of the basic metalocking algorithm known as extra-fast locking and unlocking of uncontended objects. Using XMC, we show that for a variety of values of M and N, the algorithm indeed provides mutual exclusion and freedom from deadlock and lockout at the metalock level. We also show that, while the monitor-lock level of the protocol preserves mutual exclusion and deadlock-freedom, it is not lockout-free because the protocol's designers chose to give equal preference to awaiting threads and newly arrived threads.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "12", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", keywords = "Java; metalocking; monitor queues; mutual exclusion; synchronized methods; XMC", } @Article{DeLucia:2007:RTL, author = "Andrea {De Lucia} and Fausto Fasano and Rocco Oliveto and Genoveffa Tortora", title = "Recovering traceability links in software artifact management systems using information retrieval methods", journal = j-TOSEM, volume = "16", number = "4", pages = "13:1--13:??", month = sep, year = "2007", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/1276933.1276934", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon Jun 16 11:12:55 MDT 2008", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "The main drawback of existing software artifact management systems is the lack of automatic or semi-automatic traceability link generation and maintenance. We have improved an artifact management system with a traceability recovery tool based on Latent Semantic Indexing (LSI), an information retrieval technique. We have assessed LSI to identify strengths and limitations of using information retrieval techniques for traceability recovery and devised the need for an incremental approach. The method and the tool have been evaluated during the development of seventeen software projects involving about 150 students. We observed that although tools based on information retrieval provide a useful support for the identification of traceability links during software development, they are still far to support a complete semi-automatic recovery of all links. The results of our experience have also shown that such tools can help to identify quality problems in the textual description of traced artifacts.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "13", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", keywords = "impact analysis; latent semantic indexing; Software artifact management; traceability management", } @Article{Wassermann:2007:SCD, author = "Gary Wassermann and Carl Gould and Zhendong Su and Premkumar Devanbu", title = "Static checking of dynamically generated queries in database applications", journal = j-TOSEM, volume = "16", number = "4", pages = "14:1--14:??", month = sep, year = "2007", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/1276933.1276935", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon Jun 16 11:12:55 MDT 2008", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Many data-intensive applications dynamically construct queries in response to client requests and execute them. Java servlets, for example, can create strings that represent SQL queries and then send the queries, using JDBC, to a database server for execution. The servlet programmer enjoys static checking via Java's strong type system. However, the Java type system does little to check for possible errors in the dynamically generated SQL query strings. Thus, a type error in a generated selection query (e.g., comparing a string attribute with an integer) can result in an SQL runtime exception. Currently, such defects must be rooted out through careful testing, or (worse) might be found by customers at runtime. In this article, we present a sound, static program analysis technique to verify that dynamically generated query strings do not contain type errors. We describe our analysis technique and provide soundness results for our static analysis algorithm. We also describe the details of a prototype tool based on the algorithm and present several illustrative defects found in senior software-engineering student-team projects, online tutorial examples, and a real-world purchase order system written by one of the authors.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "14", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", keywords = "context-free language reachability; database queries; JDBC; Static checking", } @Article{Baresi:2007:TES, author = "Luciano Baresi and Sandro Morasca", title = "Three empirical studies on estimating the design effort of {Web} applications", journal = j-TOSEM, volume = "16", number = "4", pages = "15:1--15:??", month = sep, year = "2007", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/1276933.1276936", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon Jun 16 11:12:55 MDT 2008", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Our research focuses on the effort needed for designing modern Web applications. The design effort is an important part of the total development effort, since the implementation can be partially automated by tools.\par We carried out three empirical studies with students of advanced university classes enrolled in engineering and communication sciences curricula. The empirical studies are based on the use of W2000, a special-purpose design notation for the design of Web applications, but the hypotheses and results may apply to a wider class of modeling notations (e.g., OOHDM, WebML, or UWE). We started by investigating the relative importance of each design activity. We then assessed the accuracy of a priori design effort predictions and the influence of a few process-related factors on the effort needed for each design activity. We also analyzed the impact of attributes like the size and complexity of W2000 design artifacts on the total effort needed to design the user experience of web applications. In addition, we carried out a finer-grain analysis, by studying which of these attributes impact the effort devoted to the steps of the design phase that are followed when using W2000.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "15", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", keywords = "effort estimation; empirical study; W2000; Web application design", } @Article{Notkin:2007:Ec, author = "David Notkin", title = "Editorial", journal = j-TOSEM, volume = "17", number = "1", pages = "1:1--1:2", month = dec, year = "2007", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/1314493.1314494", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon Jun 16 11:13:04 MDT 2008", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Meyers:2007:ESS, author = "Timothy M. Meyers and David Binkley", title = "An empirical study of slice-based cohesion and coupling metrics", journal = j-TOSEM, volume = "17", number = "1", pages = "2:1--2:27", month = dec, year = "2007", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/1314493.1314495", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon Jun 16 11:13:04 MDT 2008", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Software reengineering is a costly endeavor, due in part to the ambiguity of where to focus reengineering effort. Coupling and Cohesion metrics, particularly quantitative cohesion metrics, have the potential to aid in this identification and to measure progress. The most extensive work on such metrics is with slice-based cohesion metrics. While their use of semantic dependence information should make them an excellent choice for cohesion measurement, their wide spread use has been impeded in part by a lack of empirical study.\par Recent advances in software tools make, for the first time, a large-scale empirical study of slice-based cohesion and coupling metrics possible. Four results from such a study are presented. First, ``head-to-head'' qualitative and quantitative comparisons of the metrics identify which metrics provide similar views of a program and which provide unique views of a program. This study includes statistical analysis showing that slice-based metrics are not proxies for simple size-based metrics such as lines of code. Second, two longitudinal studies show that slice-based metrics quantify the deterioration of a program as it ages. This serves to validate the metrics: the metrics quantify the degradation that exists during development; turning this around, the metrics can be used to measure the progress of a reengineering effort. Third, baseline values for slice-based metrics are provided. These values act as targets for reengineering efforts with modules having values outside the expected range being the most in need of attention. Finally, slice-based coupling is correlated and compared with slice-based cohesion.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", keywords = "cohesion; coupling; reengineering; Slicing; software intervention", } @Article{Marin:2007:ICC, author = "Marius Marin and Arie {Van Deursen} and Leon Moonen", title = "Identifying {Crosscutting Concerns Using Fan-In Analysis}", journal = j-TOSEM, volume = "17", number = "1", pages = "3:1--3:37", month = dec, year = "2007", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/1314493.1314496", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon Jun 16 11:13:04 MDT 2008", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Aspect mining is a reverse engineering process that aims at finding crosscutting concerns in existing systems. This article proposes an aspect mining approach based on determining methods that are called from many different places, and hence have a high fan-in, which can be seen as a symptom of crosscutting functionality. The approach is semiautomatic, and consists of three steps: metric calculation, method filtering, and call site analysis. Carrying out these steps is an interactive process supported by an Eclipse plug-in called FINT. Fan-in analysis has been applied to three open source Java systems, totaling around 200,000 lines of code. The most interesting concerns identified are discussed in detail, which includes several concerns not previously discussed in the aspect-oriented literature. The results show that a significant number of crosscutting concerns can be recognized using fan-in analysis, and each of the three steps can be supported by tools.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", keywords = "Aspect-oriented programming; crosscutting concerns; fan-in metric; reverse engineering", } @Article{Frias:2007:EAD, author = "Marcelo F. Frias and Carlos G. Lopez Pombo and Juan P. Galeotti and Nazareno M. Aguirre", title = "Efficient {Analysis} of {DynAlloy Specifications}", journal = j-TOSEM, volume = "17", number = "1", pages = "4:1--4:34", month = dec, year = "2007", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/1314493.1314497", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon Jun 16 11:13:04 MDT 2008", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "DynAlloy is an extension of Alloy to support the definition of actions and the specification of assertions regarding execution traces. In this article we show how we can extend the Alloy tool so that DynAlloy specifications can be automatically analyzed in an efficient way. We also demonstrate that DynAlloy's semantics allows for a sound technique that we call program atomization, which improves the analyzability of properties regarding execution traces by considering certain programs as atomic steps in a trace.\par We present the foundations, case studies, and empirical results indicating that the analysis of DynAlloy specifications can be performed efficiently.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", keywords = "Alloy; dynamic logic; software specification; software validation", } @Article{Notkin:2008:Ea, author = "David Notkin", title = "Editorial", journal = j-TOSEM, volume = "17", number = "2", pages = "5:1--5:??", month = apr, year = "2008", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/1348250.1348251", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon Jun 16 11:13:13 MDT 2008", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "5", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Notkin:2008:ISS, author = "David Notkin and Mauro Pezz{\`e}", title = "Introduction to the special section from the {ACM} international symposium on software testing and analysis {(ISSTA 2006)}", journal = j-TOSEM, volume = "17", number = "2", pages = "6:1--6:??", month = apr, year = "2008", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/1348250.1348252", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon Jun 16 11:13:13 MDT 2008", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "6", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Cobleigh:2008:BHD, author = "Jamieson M. Cobleigh and George S. Avrunin and Lori A. Clarke", title = "Breaking up is hard to do: an evaluation of automated assume-guarantee reasoning", journal = j-TOSEM, volume = "17", number = "2", pages = "7:1--7:??", month = apr, year = "2008", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/1348250.1348253", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon Jun 16 11:13:13 MDT 2008", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Finite-state verification techniques are often hampered by the state-explosion problem. One proposed approach for addressing this problem is assume-guarantee reasoning, where a system under analysis is partitioned into subsystems and these subsystems are analyzed individually. By composing the results of these analyses, it can be determined whether or not the system satisfies a property. Because each subsystem is smaller than the whole system, analyzing each subsystem individually may reduce the overall cost of verification. Often the behavior of a subsystem is dependent on the subsystems with which it interacts, and thus it is usually necessary to provide assumptions about the environment in which a subsystem executes. Because developing assumptions has been a difficult manual task, the evaluation of assume-guarantee reasoning has been limited. Using recent advances for automatically generating assumptions, we undertook a study to determine if assume-guarantee reasoning provides an advantage over monolithic verification. In this study, we considered all two-way decompositions for a set of systems and properties, using two different verifiers, FLAVERS and LTSA. By increasing the number of repeated tasks in these systems, we evaluated the decompositions as they were scaled. We found that in only a few cases can assume-guarantee reasoning verify properties on larger systems than monolithic verification can, and in these cases the systems that can be analyzed are only a few sizes larger. Although these results are discouraging, they provide insight about research directions that should be pursued and highlight the importance of experimental evaluation in this area.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "7", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", keywords = "Assume-guarantee reasoning", } @Article{Csallner:2008:DCH, author = "Christoph Csallner and Yannis Smaragdakis and Tao Xie", title = "{DSD-Crasher}: a hybrid analysis tool for bug finding", journal = j-TOSEM, volume = "17", number = "2", pages = "8:1--8:??", month = apr, year = "2008", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/1348250.1348254", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon Jun 16 11:13:13 MDT 2008", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "DSD-Crasher is a bug finding tool that follows a three-step approach to program analysis:\par D. Capture the program's intended execution behavior with dynamic invariant detection. The derived invariants exclude many unwanted values from the program's input domain.\par S. Statically analyze the program within the restricted input domain to explore many paths.\par D. Automatically generate test cases that focus on reproducing the predictions of the static analysis. Thereby confirmed results are feasible.\par This three-step approach yields benefits compared to past two-step combinations in the literature. In our evaluation with third-party applications, we demonstrate higher precision over tools that lack a dynamic step and higher efficiency over tools that lack a static step.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "8", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", keywords = "Automatic testing; bug finding; dynamic analysis; dynamic invariant detection; extended static checking; false positives; static analysis; test case generation; usability", } @Article{Fink:2008:ETV, author = "Stephen J. Fink and Eran Yahav and Nurit Dor and G. Ramalingam and Emmanuel Geay", title = "Effective typestate verification in the presence of aliasing", journal = j-TOSEM, volume = "17", number = "2", pages = "9:1--9:??", month = apr, year = "2008", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/1348250.1348255", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon Jun 16 11:13:13 MDT 2008", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "This article addresses the challenge of sound typestate verification, with acceptable precision, for real-world Java programs. We present a novel framework for verification of typestate properties, including several new techniques to precisely treat aliases without undue performance costs. In particular, we present a flow-sensitive, context-sensitive, integrated verifier that utilizes a parametric abstract domain combining typestate and aliasing information. To scale to real programs without compromising precision, we present a staged verification system in which faster verifiers run as early stages which reduce the workload for later, more precise, stages.\par We have evaluated our framework on a number of real Java programs, checking correct API usage for various Java standard libraries. The results show that our approach scales to hundreds of thousands of lines of code, and verifies correctness for 93\% of the potential points of failure.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "9", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", keywords = "Alias analysis; program verification; typestate", } @Article{Siegel:2008:CSE, author = "Stephen F. Siegel and Anastasia Mironova and George S. Avrunin and Lori A. Clarke", title = "Combining symbolic execution with model checking to verify parallel numerical programs", journal = j-TOSEM, volume = "17", number = "2", pages = "10:1--10:??", month = apr, year = "2008", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/1348250.1348256", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon Jun 16 11:13:13 MDT 2008", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "We present a method to verify the correctness of parallel programs that perform complex numerical computations, including computations involving floating-point arithmetic. This method requires that a sequential version of the program be provided, to serve as the specification for the parallel one. The key idea is to use model checking, together with symbolic execution, to establish the equivalence of the two programs. In this approach the path condition from symbolic execution of the sequential program is used to constrain the search through the parallel program. To handle floating-point operations, three different types of equivalence are supported. Several examples are presented, demonstrating the approach and actual errors that were found. Limitations and directions for future research are also described.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "10", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", keywords = "concurrency; Finite-state verification; floating-point; high performance computing; Message Passing Interface; model checking; MPI; numerical program; parallel programming; Spin; symbolic execution", } @Article{Tiwana:2008:ICD, author = "Amrit Tiwana", title = "Impact of classes of development coordination tools on software development performance: a multinational empirical study", journal = j-TOSEM, volume = "17", number = "2", pages = "11:1--11:??", month = apr, year = "2008", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/1348250.1348257", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon Jun 16 11:13:13 MDT 2008", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Although a diverse variety of software development coordination tools are widely used in practice, considerable debate surrounds their impact on software development performance. No large-scale field research has systematically examined their impact on software development performance. This paper reports the results of a multinational field study of software projects in 209 software development organizations to empirically examine the influence of six key classes of development coordination tools on the efficiency (reduction of development rework, budget compliance) and effectiveness (defect reduction) of software development performance.\par Based on an in-depth field study, the article conceptualizes six holistic classes of development coordination tools. The results provide nuanced insights---some counter to prevailing beliefs---into the relationships between the use of various classes of development coordination tools and software development performance. The overarching finding is that the performance benefits of development coordination tools are contingent on the salient types of novelty in a project. The dimension of development performance---efficiency or effectiveness---that each class of tools is associated with varies systematically with whether a project involves conceptual novelty, process novelty, multidimensional novelty (both process and conceptual novelty), or neither. Another noteworthy insight is that the use of some classes of tools introduces an efficiency-effectiveness tradeoff. Collectively, the findings are among the first to offer empirical support for the varied performance impacts of various classes of development coordination tools and have important implications for software development practice. The paper also identifies several promising areas for future research.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "11", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", keywords = "collaborative software engineering. Software outsourcing; coordination; development coordination tools; development tools; efficiency effectiveness tradeoff; empirical study; field study; knowledge integration; knowledge management; outsourcing; project management; regression analysis; Software development", } @Article{Notkin:2008:Eb, author = "David Notkin", title = "Editorial", journal = j-TOSEM, volume = "17", number = "3", pages = "12:1--12:??", month = jun, year = "2008", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/1363102.1363103", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Jun 25 08:43:45 MDT 2008", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "12", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Mohagheghi:2008:EIS, author = "Parastoo Mohagheghi and Reidar Conradi", title = "An empirical investigation of software reuse benefits in a large telecom product", journal = j-TOSEM, volume = "17", number = "3", pages = "13:1--13:??", month = jun, year = "2008", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/1363102.1363104", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Jun 25 08:43:45 MDT 2008", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "{\em Background}. This article describes a case study on the benefits of software reuse in a large telecom product. The reused components were developed in-house and shared in a product-family approach. {\em Methods}. Quantitative data mined from company repositories are combined with other quantitative data and qualitative observations. {\em Results}. We observed significantly lower fault density and less modified code between successive releases of the reused components. Reuse and standardization of software architecture and processes allowed easier transfer of development when organizational changes happened. {\em Conclusions}. The study adds to the evidence of quality benefits of large-scale reuse programs and explores organizational motivations and outcomes.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "13", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", keywords = "fault density; product family; risks; software reuse; standardization", } @Article{Henkel:2008:DDA, author = "Johannes Henkel and Christoph Reichenbach and Amer Diwan", title = "Developing and debugging algebraic specifications for {Java} classes", journal = j-TOSEM, volume = "17", number = "3", pages = "14:1--14:??", month = jun, year = "2008", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/1363102.1363105", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Jun 25 08:43:45 MDT 2008", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Modern programs make extensive use of reusable software libraries. For example, a study of a number of large Java applications shows that between 17\% and 30\% of the classes in those applications use container classes defined in the {\tt java.util} package. Given this extensive code reuse in Java programs, it is important for the interfaces of reusable classes to be well documented. An interface is well documented if it satisfies the following requirements: (1) the documentation completely describes how to use the interface; (2) the documentation is clear; (3) the documentation is unambiguous; and (4) any deviation between the documentation and the code is machine detectable. Unfortunately, documentation in natural language, which is the norm, does not satisfy the above requirements. Formal specifications can satisfy them but they are difficult to develop, requiring significant effort on the part of programmers.\par To address the practical difficulties with formal specifications, we describe and evaluate a tool to help programmers write and debug algebraic specifications. Given an algebraic specification of a class, our interpreter generates a prototype that can be used within an application like a regular Java class. When running an application that uses the prototype, the interpreter prints error messages that tell the developer in which way the specification is incomplete or inconsistent with a hand-coded implementation of the class. We use case studies to demonstrate the usefulness of our system.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "14", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", keywords = "algebraic interpretation; algebraic specifications; specification discovery", } @Article{Gencel:2008:FSM, author = "Cigdem Gencel and Onur Demirors", title = "Functional size measurement revisited", journal = j-TOSEM, volume = "17", number = "3", pages = "15:1--15:??", month = jun, year = "2008", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/1363102.1363106", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Jun 25 08:43:45 MDT 2008", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "There are various approaches to software size measurement. Among these, the metrics and methods based on measuring the functionality attribute have become widely used since the original method was introduced in 1979. Although functional size measurement methods have gone a long way, they still provide challenges for software managers. This article identifies improvement opportunities based on empirical studies we performed on ongoing projects. We also compare our findings with the extended dataset provided by the International Software Benchmarking Standards Group (ISBSG).", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "15", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", keywords = "COSMIC FFP; functional size measurement; MkII FPA; software benchmarking; software estimation", } @Article{Chen:2008:UBS, author = "Tsong Yueh Chen and Robert Merkel", title = "An upper bound on software testing effectiveness", journal = j-TOSEM, volume = "17", number = "3", pages = "16:1--16:??", month = jun, year = "2008", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/1363102.1363107", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Jun 25 08:43:45 MDT 2008", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Failure patterns describe typical ways in which inputs revealing program failure are distributed across the input domain --- in many cases, clustered together in contiguous regions. Based on these observations several debug testing methods have been developed. We examine the upper bound of debug testing effectiveness improvements possible through making assumptions about the shape, size and orientation of failure patterns. We consider the bounds for testing strategies with respect to minimizing the F-measure, maximizing the P-measure, and maximizing the E-measure. Surprisingly, we find that the empirically measured effectiveness of some existing methods that are not based on these assumptions is close to the theoretical upper bound of these strategies. The assumptions made to obtain the upper bound, and its further implications, are also examined.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "16", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", keywords = "adaptive random testing; failure patterns; failure-causing inputs; random testing; software testing; testing effectiveness metrics", } @Article{Jalote:2008:PRR, author = "Pankaj Jalote and Brendan Murphy and Vibhu Saujanya Sharma", title = "Post-release reliability growth in software products", journal = j-TOSEM, volume = "17", number = "4", pages = "17:1--17:??", month = aug, year = "2008", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/13487689.13487690", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Aug 20 14:07:07 MDT 2008", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Most software reliability growth models work under the assumption that reliability of software grows due to the removal of bugs that cause failures. However, another phenomenon has often been observed --- the failure rate of a software product following its release decreases with time even if no bugs are corrected. In this article we present a simple model to represent this phenomenon. We introduce the concept of initial transient failure rate of the product and assume that it decays with a factor $ \alpha $ per unit time thereby increasing the product reliability with time. When the transient failure rate decays away, the product displays a steady state failure rate. We discuss how the parameters in this model --- initial transient failure rate, decay factor, and steady state failure rate --- can be determined from the failure and sales data of a product. We also describe how, using the model, we can determine the product stabilization time --- a product quality metric that describes how long it takes a product to reach close to its stable failure rate. We provide many examples where this model has been applied to data from released products.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "17", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", keywords = "post-release reliability growth; product stabilization time", } @Article{Robillard:2008:TAS, author = "Martin P. Robillard", title = "Topology analysis of software dependencies", journal = j-TOSEM, volume = "17", number = "4", pages = "18:1--18:??", month = aug, year = "2008", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/13487689.13487691", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Aug 20 14:07:07 MDT 2008", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Before performing a modification task, a developer usually has to investigate the source code of a system to understand how to carry out the task. Discovering the code relevant to a change task is costly because it is a human activity whose success depends on a large number of unpredictable factors, such as intuition and luck. Although studies have shown that effective developers tend to explore a program by following structural dependencies, no methodology is available to guide their navigation through the thousands of dependency paths found in a nontrivial program. We describe a technique to automatically propose and rank program elements that are potentially interesting to a developer investigating source code. Our technique is based on an analysis of the topology of structural dependencies in a program. It takes as input a set of program elements of interest to a developer and produces a fuzzy set describing other elements of potential interest. Empirical evaluation of our technique indicates that it can help developers quickly select program elements worthy of investigation while avoiding less interesting ones.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "18", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", keywords = "feature location; program understanding; separation of concerns; software change; software evolution; software navigation; static analysis", } @Article{Emmerich:2008:IRD, author = "Wolfgang Emmerich and Mikio Aoyama and Joe Sventek", title = "The impact of research on the development of middleware technology", journal = j-TOSEM, volume = "17", number = "4", pages = "19:1--19:??", month = aug, year = "2008", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/13487689.13487692", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Aug 20 14:07:07 MDT 2008", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "The middleware market represents a sizable segment of the overall Information and Communication Technology market. In 2005, the annual middleware license revenue was reported by Gartner to be in the region of \$8.5 billion. In this article we address the question whether research had any involvement in the creation of the technology that is being sold in this market? We attempt a scholarly discourse. We present the research method that we have applied to answer this question. We then present a brief introduction into the key middleware concepts that provide the foundation for this market. It would not be feasible to investigate any possible impact that research might have had. Instead we select a few very successful technologies that are representative for the middleware market as a whole and show the existence of impact of research results in the creation of these technologies. We investigate the origins of Web services middleware, distributed transaction processing middleware, message-oriented middleware, distributed object middleware and remote procedure call systems. For each of these technologies we are able to show ample influence of research and conclude that without the research conducted by PhD students and researchers in university computer science labs at Brown, CMU, Cambridge, Newcastle, MIT, Vrije, and University of Washington as well as research in industrial labs at APM, AT\&T Bell Labs, DEC Systems Research, HP Labs, IBM Research, and Xerox PARC we would not have middleware technology in its current form. We summarise the article by distilling lessons that can be learnt from this evidenced impact for future technology transfer undertakings.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "19", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Gruschke:2008:ROF, author = "Tanja M. Gruschke and Magne J{\o}rgensen", title = "The role of outcome feedback in improving the uncertainty assessment of software development effort estimates", journal = j-TOSEM, volume = "17", number = "4", pages = "20:1--20:??", month = aug, year = "2008", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/13487689.13487693", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Aug 20 14:07:07 MDT 2008", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Previous studies report that software developers are over-confident in the accuracy of their effort estimates. Aim: This study investigates the role of outcome feedback, that is, feedback about the discrepancy between the estimated and the actual effort, in improving the uncertainty assessments. Method: We conducted two in-depth empirical studies on uncertainty assessment learning. Study 1 included five student developers and Study 2, 10 software professionals. In each study the developers repeatedly assessed the uncertainty of their effort estimates of a programming task, solved the task, and received estimation accuracy outcome feedback. Results: We found that most, but not all, developers were initially over-confident in the accuracy of their effort estimates and remained over-confident in spite of repeated and timely outcome feedback. One important, but not sufficient, condition for improvement based on outcome feedback seems to be the use of explicitly formulated, instead of purely intuition-based, uncertainty assessment strategies.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "20", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", keywords = "cost estimation; effort prediction intervals; judgment-based uncertainty assessment; overconfidence; software cost estimation; software development management", } @Article{Karam:2008:ULT, author = "Marcel R. Karam and Trevor J. Smedley and Sergiu M. Dascalu", title = "Unit-level test adequacy criteria for visual dataflow languages and a testing methodology", journal = j-TOSEM, volume = "18", number = "1", pages = "1:1--1:??", month = sep, year = "2008", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon Oct 6 15:14:19 MDT 2008", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Visual dataflow languages (VDFLs), which include commercial and research systems, have had a substantial impact on end-user programming. Like any other programming languages, whether visual or textual, VDFLs often contain faults. A desire to provide programmers of these languages with some of the benefits of traditional testing methodologies has been the driving force behind our effort in this work. In this article we introduce, in the context of Prograph, a testing methodology for VDFLs based on structural test adequacy criteria and coverage. This article also reports on the results of two empirical studies. The first study was conducted to obtain meaningful information about, in particular, the effectiveness of our all-Dus criteria in detecting a reasonable percentage of faults in VDFLs. The second study was conducted to evaluate, under the same criterion, the effectiveness of our methodology in assisting users to visually localize faults by reducing their search space. Both studies were conducted using a testing system that we have implemented in Prograph's IDE.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "1", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Louridas:2008:PLS, author = "Panagiotis Louridas and Diomidis Spinellis and Vasileios Vlachos", title = "Power laws in software", journal = j-TOSEM, volume = "18", number = "1", pages = "2:1--2:??", month = sep, year = "2008", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon Oct 6 15:14:19 MDT 2008", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "A single statistical framework, comprising power law distributions and scale-free networks, seems to fit a wide variety of phenomena. There is evidence that power laws appear in software at the class and function level. We show that distributions with long, fat tails in software are much more pervasive than previously established, appearing at various levels of abstraction, in diverse systems and languages. The implications of this phenomenon cover various aspects of software engineering research and practice.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "2", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Lhotak:2008:EBC, author = "Ond{\v{r}}ej Lhot{\'a}k and Laurie Hendren", title = "Evaluating the benefits of context-sensitive points-to analysis using a {BDD}-based implementation", journal = j-TOSEM, volume = "18", number = "1", pages = "3:1--3:??", month = sep, year = "2008", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon Oct 6 15:14:19 MDT 2008", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "We present Paddle, a framework of BDD-based context-sensitive points-to and call graph analyses for Java, as well as client analyses that use their results. Paddle supports several variations of context-sensitive analyses, including call site strings and object sensitivity, and context-sensitively specializes both pointer variables and the heap abstraction. We empirically evaluate the precision of these context-sensitive analyses on significant Java programs. We find that object-sensitive analyses are more precise than comparable variations of the other approaches, and that specializing the heap abstraction improves precision more than extending the length of context strings.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "3", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Memon:2008:ARE, author = "Atif M. Memon", title = "Automatically repairing event sequence-based {GUI} test suites for regression testing", journal = j-TOSEM, volume = "18", number = "2", pages = "4:1--4:??", month = nov, year = "2008", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/1416563.1416564", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Nov 11 15:45:20 MST 2008", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Although graphical user interfaces (GUIs) constitute a large part of the software being developed today and are typically created using rapid prototyping, there are no effective regression testing techniques for GUIs. The needs of GUI regression testing differ from those of traditional software. When the structure of a GUI is modified, test cases from the original GUI's suite are either reusable or unusable on the modified GUI. Because GUI test case generation is expensive, our goal is to make the unusable test cases usable, thereby helping to retain the suite's event coverage. The idea of reusing these unusable ({\em obsolete\/}) test cases has not been explored before. This article shows that a large number of test cases become unusable for GUIs. It presents a new GUI regression testing technique that first automatically determines the usable and unusable test cases from a test suite after a GUI modification, then determines the unusable test cases that can be repaired so that they can execute on the modified GUI, and finally uses {\em repairing transformations\/} to repair the test cases. This regression testing technique along with four repairing transformations has been implemented. An empirical study for four open-source applications demonstrates that (1) this approach is effective in that many of the test cases can be repaired, and is practical in terms of its time performance, (2) certain types of test cases are more prone to becoming unusable, and (3) certain types of ``dominator'' events, when modified, make a large number of test cases unusable.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "4", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", keywords = "Graphical user interfaces; regression testing; repairing test cases; test case management; test maintenance", } @Article{Breaux:2008:SPP, author = "Travis D. Breaux and Annie I. Ant{\'o}n and Jon Doyle", title = "Semantic parameterization: a process for modeling domain descriptions", journal = j-TOSEM, volume = "18", number = "2", pages = "5:1--5:??", month = nov, year = "2008", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/1416563.1416565", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Nov 11 15:45:20 MST 2008", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Software engineers must systematically account for the broad scope of environmental behavior, including nonfunctional requirements, intended to coordinate the actions of stakeholders and software systems. The Inquiry Cycle Model (ICM) provides engineers with a strategy to acquire and refine these requirements by having domain experts answer six questions: who, what, where, when, how, and why. Goal-based requirements engineering has led to the formalization of requirements to answer the ICM questions about {\em when}, {\em how}, and {\em why\/} goals are achieved, maintained, or avoided. In this article, we present a systematic process called {\em Semantic Parameterization\/} for expressing natural language domain descriptions of goals as specifications in description logic. The formalization of goals in description logic allows engineers to automate inquiries using {\em who}, {\em what}, and {\em where\/} questions, completing the formalization of the ICM questions. The contributions of this approach include new theory to conceptually compare and disambiguate goal specifications that enables querying goals and organizing goals into specialization hierarchies. The artifacts in the process include a dictionary that aligns the domain lexicon with unique concepts, distinguishing between synonyms and polysemes, and several natural language patterns that aid engineers in mapping common domain descriptions to formal specifications. Semantic Parameterization has been empirically validated in three case studies on policy and regulatory descriptions that govern information systems in the finance and health-care domains.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "5", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", keywords = "description logic; domain knowledge; formal specification; Natural language", } @Article{Huang:2008:DSL, author = "Shan Shan Huang and David Zook and Yannis Smaragdakis", title = "Domain-specific languages and program generation with {meta-AspectJ}", journal = j-TOSEM, volume = "18", number = "2", pages = "6:1--6:??", month = nov, year = "2008", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/1416563.1416566", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Nov 11 15:45:20 MST 2008", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Meta-AspectJ (MAJ) is a language for generating AspectJ programs using code templates. MAJ itself is an extension of Java, so users can interleave arbitrary Java code with AspectJ code templates. MAJ is a structured metaprogramming tool: a well-typed generator implies a syntactically correct generated program. MAJ promotes a methodology that combines aspect-oriented and generative programming. A valuable application is in implementing small domain-specific language extensions as generators using unobtrusive annotations for syntax extension and AspectJ as a back-end. The advantages of this approach are twofold. First, the generator integrates into an existing software application much as a regular API or library, instead of as a language extension. Second, a mature language implementation is easy to achieve with little effort since AspectJ takes care of the low-level issues of interfacing with the base Java language.\par In addition to its practical value, MAJ offers valuable insights to metaprogramming tool designers. It is a mature metaprogramming tool for AspectJ (and, by extension, Java): a lot of emphasis has been placed on context-sensitive parsing and error reporting. As a result, MAJ minimizes the number of metaprogramming (quote/unquote) operators and uses type inference to reduce the need to remember type names for syntactic entities.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "6", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", keywords = "domain-specific languages; language extensions; Metaprogramming; program synthesis; program transformation; program verification", } @Article{Xie:2008:UPS, author = "Qing Xie and Atif M. Memon", title = "Using a pilot study to derive a {GUI} model for automated testing", journal = j-TOSEM, volume = "18", number = "2", pages = "7:1--7:??", month = nov, year = "2008", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/1416563.1416567", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Nov 11 15:45:20 MST 2008", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Graphical user interfaces (GUIs) are one of the most commonly used parts of today's software. Despite their ubiquity, testing GUIs for functional correctness remains an understudied area. A typical GUI gives many degrees of freedom to an end-user, leading to an enormous {\em input event interaction space\/} that needs to be tested. GUI test designers generate and execute test cases (modeled as sequences of user {\em events\/}) to traverse its parts; targeting a subspace in order to maximize fault detection is a nontrivial task. In this vein, in previous work, we used informal GUI code examination and personal intuition to develop an {\em event-interaction graph\/} (EIG). In this article we empirically derive the EIG model via a pilot study, and the resulting EIG validates our intuition used in previous work; the empirical derivation process also allows for model evolution as our understanding of GUI faults improves. Results of the pilot study show that events interact in complex ways; a GUI's response to an event may vary depending on the {\em context\/} established by preceding events and their execution order. The EIG model helps testers to understand the nature of interactions between GUI events when executed in test cases and why certain events detect faults, so that they can better traverse the event space. New test adequacy criteria are defined for the EIG; new algorithms use these criteria and EIG to systematically generate test cases that are shown to be effective on four fielded open-source applications.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "7", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", keywords = "Graphical user interfaces; model-based testing; test minimization; test suite management", } @Article{Notkin:2009:E, author = "David Notkin", title = "Editorial", journal = j-TOSEM, volume = "18", number = "3", pages = "8:1--8:??", month = may, year = "2009", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/1525880.1525881", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Jun 3 16:34:58 MDT 2009", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "8", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Bauer:2009:CER, author = "Lujo Bauer and Jay Ligatti and David Walker", title = "Composing expressive runtime security policies", journal = j-TOSEM, volume = "18", number = "3", pages = "9:1--9:??", month = may, year = "2009", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/1525880.1525882", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Jun 3 16:34:58 MDT 2009", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Program monitors enforce security policies by interposing themselves into the control flow of untrusted software whenever that software attempts to execute security-relevant actions. At the point of interposition, a monitor has authority to permit or deny (perhaps conditionally) the untrusted software's attempted action. Program monitors are common security enforcement mechanisms and integral parts of operating systems, virtual machines, firewalls, network auditors, and antivirus and antispyware tools.\par Unfortunately, the runtime policies we require program monitors to enforce grow more complex, both as the monitored software is given new capabilities and as policies are refined in response to attacks and user feedback. We propose dealing with policy complexity by organizing policies in such a way as to make them composable, so that complex policies can be specified more simply as compositions of smaller subpolicy modules. We present a fully implemented language and system called Polymer that allows security engineers to specify and enforce composable policies on Java applications. We formalize the central workings of Polymer by defining an unambiguous semantics for our language. Using this formalization, we state and prove an uncircumventability theorem which guarantees that monitors will intercept all security-relevant actions of untrusted software.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "9", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", keywords = "Policy composition; policy enforcement; policy-specification language", } @Article{Hall:2009:SRT, author = "Tracy Hall and Nathan Baddoo and Sarah Beecham and Hugh Robinson and Helen Sharp", title = "A systematic review of theory use in studies investigating the motivations of software engineers", journal = j-TOSEM, volume = "18", number = "3", pages = "10:1--10:??", month = may, year = "2009", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/1525880.1525883", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Jun 3 16:34:58 MDT 2009", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Motivated software engineers make a critical contribution to delivering successful software systems. Understanding the motivations of software engineers and the impact of motivation on software engineering outcomes could significantly affect the industry's ability to deliver good quality software systems. Understanding the motivations of people generally in relation to their work is underpinned by eight classic motivation theories from the social sciences. We would expect these classic motivation theories to play an important role in developing a rigorous understanding of the specific motivations of software engineers. In this article we investigate how this theoretical basis has been exploited in previous studies of software engineering. We analyzed 92 studies of motivation in software engineering that were published in the literature between 1980 and 2006. Our main findings are that many studies of software engineers' motivations are not explicitly underpinned by reference to the classic motivation theories. Furthermore, the findings presented in these studies are often not explicitly interpreted in terms of those theories, despite the fact that in many cases there is a relationship between those findings and the theories. Our conclusion is that although there has been a great deal of previous work looking at motivation in software engineering, the lack of reference to classic theories of motivation means that the current body of work in the area is weakened and our understanding of motivation in software engineering is not as rigorous as it may at first appear. This weakness in the current state of knowledge highlights important areas for future researchers to contribute towards developing a rigorous and usable body of knowledge in motivating software engineers.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "10", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", keywords = "Motivation; software engineering", } @Article{McMinn:2009:EEN, author = "Phil McMinn and David Binkley and Mark Harman", title = "Empirical evaluation of a nesting testability transformation for evolutionary testing", journal = j-TOSEM, volume = "18", number = "3", pages = "11:1--11:??", month = may, year = "2009", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/1525880.1525884", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Jun 3 16:34:58 MDT 2009", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Evolutionary testing is an approach to automating test data generation that uses an evolutionary algorithm to search a test object's input domain for test data. Nested predicates can cause problems for evolutionary testing, because information needed for guiding the search only becomes available as each nested conditional is satisfied. This means that the search process can overfit to early information, making it harder, and sometimes near impossible, to satisfy constraints that only become apparent later in the search. The article presents a testability transformation that allows the evaluation of all nested conditionals at once. Two empirical studies are presented. The first study shows that the form of nesting handled is prevalent in practice. The second study shows how the approach improves evolutionary test data generation.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "11", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", keywords = "Evolutionary testing; search-based software engineering; test data generation; testability transformation", } @Article{Hamlet:2009:TES, author = "Dick Hamlet", title = "Tools and experiments supporting a testing-based theory of component composition", journal = j-TOSEM, volume = "18", number = "3", pages = "12:1--12:??", month = may, year = "2009", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/1525880.1525885", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Jun 3 16:34:58 MDT 2009", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Development of software using off-the-shelf components seems to offer a chance for improving product quality and developer productivity. This article reviews a foundational testing-based theory of component composition, describes tools that implement the theory, and presents experiments with functional and nonfunctional component/system properties that validate the theory and illuminate issues in component composition.\par The context for this work is an ideal form of Component-Based Software Development (CBSD) supported by tools. Component developers describe their components by measuring approximations to functional and nonfunctional behavior on a finite collection of subdomains. Systems designers describe an application-system structure by the component connections that form it. From measured component descriptions and a system structure, a CAD tool synthesizes the system properties, predicting how the system will behave. The system is not built, nor are any test executions performed. Neither the component sources nor executables are needed by systems designers. From CAD calculations a designer can learn (approximately) anything that could be learned by testing an actual system implementation. The CAD tool is often more efficient than it would be to assemble and execute an actual system.\par Using tools that support an ideal separation between component- and system development, experiments were conducted to investigate two related questions: (1) To what extent can unit (that is, component) testing replace system testing? (2) What properties of software and subdomains influence the quality of subdomain testing?", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "12", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", keywords = "CAD tool support for CBSD; component-based software development (CBSD); Experiments with composition of software components; synthesis of system properties", } @Article{Goel:2009:IPC, author = "Ankit Goel and Abhik Roychoudhury and P. S. Thiagarajan", title = "Interacting process classes", journal = j-TOSEM, volume = "18", number = "4", pages = "13:1--13:??", month = jul, year = "2009", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/1538942.1538943", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Aug 11 19:18:32 MDT 2009", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Many reactive control systems consist of classes of active objects involving both intraclass interactions (i.e., objects belonging to the same class interacting with each other) and interclass interactions. Such reactive control systems appear in domains such as telecommunication, transportation and avionics. In this article, we propose a modeling and simulation technique for interacting process classes. Our modeling style uses standard notations to capture behavior. In particular, the control flow of a process class is captured by a labeled transition system, unit interactions between process objects are described as {\em transactions}, and the structural relations are captured via class diagrams. The key feature of our approach is that our execution semantics leads to an {\em abstract\/} simulation technique which involves (i) grouping together active objects into equivalence classes according their potential futures, and (ii) keeping track of the number of objects in an equivalence class rather than their identities. Our simulation strategy is both time and memory efficient and we demonstrate this on well-studied nontrivial examples of reactive systems. We also present a case study involving a weather-update controller from NASA to demonstrate the use of our simulator for debugging realistic designs.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "13", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", keywords = "Abstract execution; active objects; message sequence charts; Unified Modeling Language (UML)", } @Article{Hierons:2009:VFT, author = "Robert M. Hierons", title = "Verdict functions in testing with a fault domain or test hypotheses", journal = j-TOSEM, volume = "18", number = "4", pages = "14:1--14:??", month = jul, year = "2009", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/1538942.1538944", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Aug 11 19:18:32 MDT 2009", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "In state-based testing, it is common to include verdicts within test cases, the result of the test case being the verdict reached by the test run. In addition, approaches that reason about test effectiveness or produce tests that are guaranteed to find certain classes of faults are often based on either a fault domain or a set of test hypotheses. This article considers how the presence of a fault domain or test hypotheses affects our notion of a test verdict. The analysis reveals the need for new verdicts that provide more information than the current verdicts and for verdict functions that return a verdict based on a set of test runs rather than a single test run. The concepts are illustrated in the contexts of testing from a nondeterministic finite state machine and the testing of a datatype specified using an algebraic specification language but are potentially relevant whenever fault domains or test hypotheses are used.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "14", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", keywords = "fault domains; test hypotheses; Test verdicts", } @Article{Mamei:2009:PPM, author = "Marco Mamei and Franco Zambonelli", title = "Programming pervasive and mobile computing applications: {The TOTA} approach", journal = j-TOSEM, volume = "18", number = "4", pages = "15:1--15:??", month = jul, year = "2009", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/1538942.1538945", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Aug 11 19:18:32 MDT 2009", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Pervasive and mobile computing call for suitable middleware and programming models to support the activities of complex software systems in dynamic network environments. In this article we present TOTA (``Tuples On The Air''), a novel middleware and programming approach for supporting adaptive context-aware activities in pervasive and mobile computing scenarios. The key idea in TOTA is to rely on spatially distributed tuples, adaptively propagated across a network on the basis of application-specific rules, for both representing contextual information and supporting uncoupled interactions between application components. TOTA promotes a simple way of programming that facilitates access to distributed information, navigation in complex environments, and the achievement of complex coordination tasks in a fully distributed and adaptive way, mostly freeing programmers and system managers from the need to take care of low-level issues related to network dynamics. This article includes both application examples to clarify concepts and performance figures to show the feasibility of the approach", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "15", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", keywords = "coordination; middleware; mobile computing; Pervasive computing; self-adaptation; self-organization; tuple spaces", } @Article{Tilevich:2009:JOE, author = "Eli Tilevich and Yannis Smaragdakis", title = "{J-Orchestra}: {Enhancing} {Java} programs with distribution capabilities", journal = j-TOSEM, volume = "19", number = "1", pages = "1:1--1:??", month = aug, year = "2009", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/1555392.1555394", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Aug 11 19:18:39 MDT 2009", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "J-Orchestra is a system that enhances centralized Java programs with distribution capabilities. Operating at the bytecode level, J-Orchestra transforms a centralized Java program (i.e., running on a single Java Virtual Machine (JVM)) into a distributed one (i.e., running across multiple JVMs). This transformation effectively separates distribution concerns from the core functionality of a program. J-Orchestra follows a semiautomatic transformation process. Through a GUI, the user selects program elements (at class granularity) and assigns them to network locations. Based on the user's input, the J-Orchestra backend {\em automatically partitions\/} the program through compiler-level techniques, without changes to the JVM or to the Java Runtime Environment (JRE) classes. By means of bytecode engineering and code generation, J-Orchestra substitutes method calls with remote method calls, direct object references with proxy references, etc. It also translates Java language features (e.g., static methods and fields, inheritance, inner classes, new object construction, etc.) for efficient distributed execution.\par We detail the main technical issues that J-Orchestra addresses, including its mechanism for program transformation in the presence of unmodifiable code (e.g., in JRE classes) and the translation of concurrency and synchronization constructs to work correctly over the network. We further discuss a case study of transforming a large, commercial, third-party application for efficient execution in a client server environment and outline the architectural characteristics of centralized programs that are amenable to automated distribution with J-Orchestra.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "1", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", keywords = "bytecode engineering; distributed computing; Java; middleware; RMI; Separation of concerns", } @Article{Ouyang:2009:BPM, author = "Chun Ouyang and Marlon Dumas and Wil M. P. {Van Der Aalst} and Arthur H. M. {Ter Hofstede} and Jan Mendling", title = "From business process models to process-oriented software systems", journal = j-TOSEM, volume = "19", number = "1", pages = "2:1--2:??", month = aug, year = "2009", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/1555392.1555395", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Aug 11 19:18:39 MDT 2009", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Several methods for enterprise systems analysis rely on flow-oriented representations of business operations, otherwise known as business process models. The Business Process Modeling Notation (BPMN) is a standard for capturing such models. BPMN models facilitate communication between domain experts and analysts and provide input to software development projects. Meanwhile, there is an emergence of methods for enterprise software development that rely on detailed process definitions that are executed by process engines. These process definitions refine their counterpart BPMN models by introducing data manipulation, application binding, and other implementation details. The de facto standard for defining executable processes is the Business Process Execution Language (BPEL). Accordingly, a standards-based method for developing process-oriented systems is to start with BPMN models and to translate these models into BPEL definitions for subsequent refinement. However, instrumenting this method is challenging because BPMN models and BPEL definitions are structurally very different. Existing techniques for translating BPMN to BPEL only work for limited classes of BPMN models. This article proposes a translation technique that does not impose structural restrictions on the source BPMN model. At the same time, the technique emphasizes the generation of readable (block-structured) BPEL code. An empirical evaluation conducted over a large collection of process models shows that the resulting BPEL definitions are largely block-structured. Beyond its direct relevance in the context of BPMN and BPEL, the technique presented in this article addresses issues that arise when translating from graph-oriented to block-structure flow definition languages.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "2", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", keywords = "BPEL; BPMN; Business process modeling; Web services", } @Article{Rajan:2009:UAO, author = "Hridesh Rajan and Kevin J. Sullivan", title = "Unifying aspect- and object-oriented design", journal = j-TOSEM, volume = "19", number = "1", pages = "3:1--3:??", month = aug, year = "2009", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/1555392.1555396", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Aug 11 19:18:39 MDT 2009", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "The contribution of this work is the design and evaluation of a programming language model that unifies aspects and classes as they appear in AspectJ-like languages. We show that our model preserves the capabilities of AspectJ-like languages, while improving the conceptual integrity of the language model and the compositionality of modules. The improvement in conceptual integrity is manifested by the reduction of specialized constructs in favor of uniform orthogonal constructs. The enhancement in compositionality is demonstrated by better modularization of integration and higher-order crosscutting concerns.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "3", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", keywords = "aspect-oriented programming; binding; Classpect; Eos; first class aspect instances; instance-level advising; unified aspect language model", } @Article{Tan:2009:CDM, author = "Hee Beng Kuan Tan and Yuan Zhao and Hongyu Zhang", title = "Conceptual data model-based software size estimation for information systems", journal = j-TOSEM, volume = "19", number = "2", pages = "4:1--4:??", month = oct, year = "2009", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/1571629.1571630", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Oct 9 20:39:35 MDT 2009", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Size estimation plays a key role in effort estimation that has a crucial impact on software projects in the software industry. Some information required by existing software sizing methods is difficult to predict in the early stage of software development. A conceptual data model is widely used in the early stage of requirements analysis for information systems. Lines of code (LOC) is a commonly used software size measure. This article proposes a novel LOC estimation method for information systems from their conceptual data models through using a multiple linear regression model. We have validated the proposed method using samples from both the software industry and open-source systems.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "4", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", keywords = "conceptual data model; line of code (LOC); multiple linear regression model; Software sizing", } @Article{Masri:2009:MSI, author = "Wes Masri and Andy Podgurski", title = "Measuring the strength of information flows in programs", journal = j-TOSEM, volume = "19", number = "2", pages = "5:1--5:??", month = oct, year = "2009", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/1571629.1571631", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Oct 9 20:39:35 MDT 2009", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "{\em Dynamic information flow analysis\/} (DIFA) was devised to enable the flow of information among variables in an executing program to be monitored and possibly regulated. It is related to techniques like {\em dynamic slicing\/} and {\em dynamic impact analysis}. To better understand the basis for DIFA, we conducted an empirical study in which we measured the {\em strength\/} of information flows identified by DIFA, using information theoretic and correlation-based methods. The results indicate that in most cases the occurrence of a chain of dynamic program dependences between two variables does {\em not\/} indicate a measurable information flow between them. We also explored the relationship between the strength of an information flow and the {\em length\/} of the corresponding dependence chain, and we obtained results indicating that no consistent relationship exists between the length of an information flow and its strength. Finally, we investigated whether data dependence and control dependence makes equal or unequal contributions to flow strength. The results indicate that flows due to data dependences alone are stronger, on average, than flows due to control dependences alone. We present the details of our study and consider the implications of the results for applications of DIFA and related techniques.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "5", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", keywords = "correlation; Dynamic information flow analysis; dynamic slicing; entropy; information flow length; information flow strength; information leakage; program dependence", } @Article{Desai:2009:AMM, author = "Nirmit Desai and Amit K. Chopra and Munindar P. Singh", title = "{Amoeba}: a methodology for modeling and evolving cross-organizational business processes", journal = j-TOSEM, volume = "19", number = "2", pages = "6:1--6:??", month = oct, year = "2009", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/1571629.1571632", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Oct 9 20:39:35 MDT 2009", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Business service engagements involve processes that extend across two or more autonomous organizations. Because of regulatory and competitive reasons, requirements for cross-organizational business processes often evolve in subtle ways. The changes may concern the business transactions supported by a process, the organizational structure of the parties participating in the process, or the contextual policies that apply to the process. Current business process modeling approaches handle such changes in an ad hoc manner, and lack a principled means for determining what needs to be changed and where. Cross-organizational settings exacerbate the shortcomings of traditional approaches because changes in one organization can potentially affect the workings of another.\par This article describes Amoeba, a methodology for business processes that is based on {\em business protocols}. Protocols capture the business meaning of interactions among autonomous parties via commitments. Amoeba includes guidelines for (1) specifying cross-organizational processes using business protocols, and (2) handling the evolution of requirements via a novel application of protocol composition. This article evaluates Amoeba using enhancements of a real-life business scenario of auto-insurance claim processing, and an aerospace case study.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "6", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", keywords = "Business process modeling; business protocols; requirements evolution", } @Article{Notkin:2010:E, author = "David Notkin", title = "Editorial", journal = j-TOSEM, volume = "19", number = "3", pages = "7:1--7:??", month = jan, year = "2010", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon Mar 15 13:32:11 MDT 2010", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "7", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Whittle:2010:SHS, author = "Jon Whittle and Praveen K. Jayaraman", title = "Synthesizing hierarchical state machines from expressive scenario descriptions", journal = j-TOSEM, volume = "19", number = "3", pages = "8:1--8:??", month = jan, year = "2010", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon Mar 15 13:32:11 MDT 2010", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "8", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Xu:2010:PCC, author = "Chang Xu and S. C. Cheung and W. K. Chan and Chunyang Ye", title = "Partial constraint checking for context consistency in pervasive computing", journal = j-TOSEM, volume = "19", number = "3", pages = "9:1--9:??", month = jan, year = "2010", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon Mar 15 13:32:11 MDT 2010", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "9", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Brogi:2010:DIS, author = "Antonio Brogi and Razvan Popescu and Matteo Tanca", title = "Design and implementation of {Sator}: a {Web} service aggregator", journal = j-TOSEM, volume = "19", number = "3", pages = "10:1--10:??", month = jan, year = "2010", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon Mar 15 13:32:11 MDT 2010", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "10", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Ponge:2010:AAT, author = "Julien Ponge and Boualem Benatallah and Fabio Casati and Farouk Toumani", title = "Analysis and applications of timed service protocols", journal = j-TOSEM, volume = "19", number = "4", pages = "11:1--11:??", month = apr, year = "2010", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/1734229.1734230", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Apr 21 11:41:14 MDT 2010", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Web services are increasingly gaining acceptance as a framework for facilitating application-to-application interactions within and across enterprises. It is commonly accepted that a service description should include not only the interface, but also the business protocol supported by the service. The present work focuses on the formalization of an important category of protocols that includes time-related constraints (called {\em timed protocols\/}), and the impact of time on compatibility and replaceability analysis. We formalized the following timing constraints: C-Invoke constraints define time windows within which a service operation can be invoked while M-Invoke constraints define expiration deadlines. We extended techniques for compatibility and replaceability analysis between timed protocols by using a semantic-preserving mapping between timed protocols and timed automata, leading to the identification of a novel class of timed automata, called {\em protocol timed automata\/} (PTA). PTA exhibit a particular kind of silent transition that strictly increase the expressiveness of the model, yet they are closed under complementation, making every type of compatibility or replaceability analysis decidable. Finally, we implemented our approach in the context of a larger project called ServiceMosaic, a model-driven framework for Web service life-cycle management.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "11", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", keywords = "compatibility and replaceability analysis; timed automata; timed business protocols; Web services", } @Article{Payton:2010:SSA, author = "Jamie Payton and Christine Julien and Gruia-Catalin Roman and Vasanth Rajamani", title = "Semantic self-assessment of query results in dynamic environments", journal = j-TOSEM, volume = "19", number = "4", pages = "12:1--12:??", month = apr, year = "2010", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/1734229.1734231", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Apr 21 11:41:14 MDT 2010", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Queries are convenient abstractions for the discovery of information and services, as they offer content-based information access. In distributed settings, query semantics are well-defined, for example, queries are often designed to satisfy ACID transactional properties. When query processing is introduced in a dynamic network setting, achieving transactional semantics becomes complex due to the open and unpredictable environment. In this article, we propose a query processing model for mobile ad hoc and sensor networks that is suitable for expressing a wide range of query semantics; the semantics differ in the degree of consistency with which query results reflect the state of the environment during query execution. We introduce several distinct notions of consistency and formally express them in our model. A practical and significant contribution of this article is a protocol for query processing that automatically assesses and adaptively provides an achievable degree of consistency given the operational environment throughout its execution. The protocol attaches an assessment of the achieved guarantee to returned query results, allowing precise reasoning about a query with a range of possible semantics. We evaluate the performance of this protocol and demonstrate the benefits accrued to applications through examples drawn from an industrial application.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "12", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", keywords = "consistency; mobile computing; Query processing", } @Article{Chen:2010:VSI, author = "Chunqing Chen and Jin Song Dong and Jun Sun and Andrew Martin", title = "A verification system for interval-based specification languages", journal = j-TOSEM, volume = "19", number = "4", pages = "13:1--13:??", month = apr, year = "2010", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/1734229.1734232", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Apr 21 11:41:14 MDT 2010", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Interval-based specification languages have been used to formally model and rigorously reason about real-time computing systems. This usually involves logical reasoning and mathematical computation with respect to continuous or discrete time. When these systems are complex, analyzing their models by hand becomes error-prone and difficult. In this article, we develop a verification system to facilitate the formal analysis of interval-based specification languages with machine-assisted proof support. The verification system is developed using a generic theorem prover, Prototype Verification System (PVS). Our system elaborately encodes a highly expressive set-based notation, Timed Interval Calculus (TIC), and can rigorously carry out the verification of TIC models at an interval level. We validated all TIC reasoning rules and discovered subtle flaws in the original rules. We also apply TIC to model Duration Calculus (DC), which is a popular interval-based specification language, and thus expand the capacity of the verification system. We can check the correctness of DC axioms, and execute DC proofs in a manner similar to the corresponding pencil-and-paper DC arguments.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "13", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", keywords = "Formal specification languages; real-time systems; theorem proving", } @Article{Steimann:2010:TMI, author = "Friedrich Steimann and Thomas Pawlitzki and Sven Apel and Christian K{\"a}stner", title = "Types and modularity for implicit invocation with implicit announcement", journal = j-TOSEM, volume = "20", number = "1", pages = "1:1--1:??", month = jun, year = "2010", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/1767751.1767752", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Jul 6 16:17:49 MDT 2010", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Through implicit invocation, procedures are called without explicitly referencing them. Implicit announcement adds to this implicitness by not only keeping implicit which procedures are called, but also where or when --- under implicit invocation with implicit announcement, the call site contains no signs of that, or what it calls. Recently, aspect-oriented programming has popularized implicit invocation with implicit announcement as a possibility to separate concerns that lead to interwoven code if conventional programming techniques are used. However, as has been noted elsewhere, as currently implemented it establishes strong implicit dependencies between components, hampering independent software development and evolution. To address this problem, we present a type-based modularization of implicit invocation with implicit announcement that is inspired by how interfaces and exceptions are realized in Java. By extending an existing compiler and by rewriting several programs to make use of our proposed language constructs, we found that the imposed declaration clutter tends to be moderate; in particular, we found that, for general applications of implicit invocation with implicit announcement, fears that programs utilizing our form of modularization become unreasonably verbose are unjustified.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "1", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", keywords = "aspect-oriented programming; event-driven programming; Implicit invocation; modularity; publish/subscribe; typing", } @Article{Conboy:2010:MDC, author = "Kieran Conboy and Brian Fitzgerald", title = "Method and developer characteristics for effective agile method tailoring: a study of {XP} expert opinion", journal = j-TOSEM, volume = "20", number = "1", pages = "2:1--2:??", month = jun, year = "2010", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/1767751.1767753", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Jul 6 16:17:49 MDT 2010", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "It has long been acknowledged that software methods should be tailored if they are to achieve optimum effect. However comparatively little research has been carried out to date on this topic in general, and more notably, on agile methods in particular. This dearth of evidence in the case of agile methods is especially significant in that it is reasonable to expect that such methods would particularly lend themselves to tailoring. In this research, we present a framework based on interviews with 20 senior software development researchers and a review of the extant literature. The framework is comprised of two sets of factors --- characteristics of the method, and developer practices --- that can improve method tailoring effectiveness. Drawing on the framework, we then interviewed 16 expert XP practitioners to examine the current state and effectiveness of XP tailoring efforts, and to shed light on issues the framework identified as being important. The article concludes with a set of recommendations for research and practice that would advance our understanding of the method tailoring area.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "2", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", keywords = "agile method; contingency; engineering; expert opinion; Extreme programming; software development; tailoring; XP", } @Article{Duala-Ekoko:2010:CRD, author = "Ekwa Duala-Ekoko and Martin P. Robillard", title = "Clone region descriptors: {Representing} and tracking duplication in source code", journal = j-TOSEM, volume = "20", number = "1", pages = "3:1--3:??", month = jun, year = "2010", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/1767751.1767754", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Jul 6 16:17:49 MDT 2010", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Source code duplication, commonly known as {\em code cloning}, is considered an obstacle to software maintenance because changes to a cloned region often require consistent changes to other regions of the source code. Research has provided evidence that the elimination of clones may not always be practical, feasible, or cost-effective. We present a clone management approach that describes clone regions in a robust way that is independent from the exact text of clone regions or their location in a file, and that provides support for tracking clones in evolving software. Our technique relies on the concept of abstract {\em clone region descriptors\/} (CRDs), which describe clone regions using a combination of their syntactic, structural, and lexical information. We present our definition of CRDs, and describe a clone tracking system capable of producing CRDs from the output of different clone detection tools, notifying developers of modifications to clone regions, and supporting updates to the documented clone relationships. We evaluated the performance and usefulness of our approach across three clone detection tools and five subject systems, and the results indicate that CRDs are a practical and robust representation for tracking code clones in evolving software.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "3", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", keywords = "clone detection; clone management; code clones; refactoring; Source code duplication", } @Article{Ko:2010:EAW, author = "Andrew J. Ko and Brad A. Myers", title = "Extracting and answering why and why not questions about {Java} program output", journal = j-TOSEM, volume = "20", number = "2", pages = "4:1--4:??", month = aug, year = "2010", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/1824760.1824761", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Sep 8 18:47:44 MDT 2010", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "When software developers want to understand the reason for a program's behavior, they must translate their questions about the behavior into a series of questions about code, speculating about the causes in the process. The Whyline is a new kind of debugging tool that avoids such speculation by instead enabling developers to select a question about program output from a set of ``why did and why didn't'' questions extracted from the program's code and execution. The tool then finds one or more possible explanations for the output in question. These explanations are derived using a static and dynamic slicing, precise call graphs, reachability analyses, and new algorithms for determining potential sources of values. Evaluations of the tool on two debugging tasks showed that developers with the Whyline were three times more successful and twice as fast at debugging, compared to developers with traditional breakpoint debuggers. The tool has the potential to simplify debugging and program understanding in many software development contexts.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "4", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", keywords = "debugging; questions; Whyline", } @Article{Sullivan:2010:MAO, author = "Kevin Sullivan and William G. Griswold and Hridesh Rajan and Yuanyuan Song and Yuanfang Cai and Macneil Shonle and Nishit Tewari", title = "Modular aspect-oriented design with {XPIs}", journal = j-TOSEM, volume = "20", number = "2", pages = "5:1--5:??", month = aug, year = "2010", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/1824760.1824762", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Sep 8 18:47:44 MDT 2010", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "The emergence of aspect-oriented programming (AOP) languages has provided software designers with new mechanisms and strategies for decomposing programs into modules and composing modules into systems. What we do not yet fully understand is how best to use such mechanisms consistent with common modularization objectives such as the comprehensibility of programming code, its parallel development, dependability, and ease of change. The main contribution of this work is a new form of information-hiding interface for AOP that we call the crosscut programming interface, or XPI. XPIs abstract crosscutting behaviors and make these abstractions explicit. XPIs can be used, albeit with limited enforcement of interface rules, with existing AOP languages, such as AspectJ. To evaluate our notion of XPIs, we have applied our XPI-based design methodology to a medium-sized network overlay application called Hypercast. A qualitative and quantitative analysis of existing AO design methods and XPI-based design method shows that our approach produces improvements in program comprehensibility, in opportunities for parallel development, and in the ease when code can be developed and changed.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "5", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", keywords = "Aspect-oriented programming; design rules; options", } @Article{Singh:2010:SWE, author = "Param Vir Singh", title = "The small-world effect: {The} influence of macro-level properties of developer collaboration networks on open-source project success", journal = j-TOSEM, volume = "20", number = "2", pages = "6:1--6:??", month = aug, year = "2010", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/1824760.1824763", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Sep 8 18:47:44 MDT 2010", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "In this study we investigate the impact of community-level networks --- relationships that exist among developers in an OSS community --- on the productivity of member developers. Specifically, we argue that OSS community networks characterized by {\em small-world\/} properties would positively influence the productivity of the member developers by providing them with speedy and reliable access to more quantity and variety of information and knowledge resources. Specific hypotheses are developed and tested using longitudinal data on a large panel of 4,279 projects from 15 different OSS communities hosted at Sourceforge. Our results suggest that significant variation exists in small-world properties of OSS communities at Sourceforge. After accounting for project, foundry, and time-specific observed and unobserved effects, we found a statistically significant relationship between small-world properties of a community and the technical and commercial success of the software produced by its members. In contrast to the findings of prior research, we also found the lack of a significant relationship between closeness and betweenness centralities of the project teams and their success. These results were robust to a number of controls and model specifications.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "6", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", keywords = "collaborative software development; online community; Open source software development; productivity; small world networks; social networks; team formation", } @Article{Dyer:2010:SDA, author = "Robert Dyer and Hridesh Rajan", title = "Supporting dynamic aspect-oriented features", journal = j-TOSEM, volume = "20", number = "2", pages = "7:1--7:??", month = aug, year = "2010", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/1824760.1824764", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Sep 8 18:47:44 MDT 2010", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Dynamic aspect-oriented (AO) features have important software engineering benefits such as allowing unanticipated software evolution and maintenance. It is thus important to efficiently support these features in language implementations. Current implementations incur unnecessary design-time and runtime overhead due to the lack of support in underlying intermediate language (IL) models. To address this problem, we present a flexible and dynamic IL model that we call {\em Nu}. The {\em Nu\/} model provides a higher level of abstraction compared to traditional object-oriented ILs, making it easier to efficiently support dynamic AO features. We demonstrate these benefits by providing an industrial-strength VM implementation for {\em Nu}, by showing translation strategies from dynamic source-level constructs to {\em Nu\/} and by analyzing the performance of the resulting IL code.\par {\em Nu\/}'s VM extends the Sun Hotspot VM interpreter and uses a novel caching mechanism to significantly reduce the amortized costs of join point dispatch. Our evaluation using standard benchmarks shows that the overhead of supporting a dynamic deployment model can be reduced to as little as $ \approx $1.5\%. {\em Nu\/} provides an improved compilation target for dynamic deployment features, which makes it easier to support such features with corresponding software engineering benefits in software evolution and maintenance and in runtime verification.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "7", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", keywords = "aspect-oriented intermediate-languages; aspect-oriented virtual machines; invocation; Nu; weaving", } @Article{Miles:2011:PMD, author = "Simon Miles and Paul Groth and Steve Munroe and Luc Moreau", title = "{PrIMe}: a methodology for developing provenance-aware applications", journal = j-TOSEM, volume = "20", number = "3", pages = "8:1--8:??", month = aug, year = "2011", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/2000791.2000792", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Aug 23 18:32:12 MDT 2011", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Provenance refers to the past processes that brought about a given (version of an) object, item or entity. By knowing the provenance of data, users can often better understand, trust, reproduce, and validate it. A provenance-aware application has the functionality to answer questions regarding the provenance of the data it produces, by using documentation of past processes. PrIMe is a software engineering technique for adapting application designs to enable them to interact with a provenance middleware layer, thereby making them provenance-aware.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "8", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Chen:2011:TDB, author = "Jinjun Chen and Yun Yang", title = "Temporal dependency-based checkpoint selection for dynamic verification of temporal constraints in scientific workflow systems", journal = j-TOSEM, volume = "20", number = "3", pages = "9:1--9:??", month = aug, year = "2011", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/2000791.2000793", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Aug 23 18:32:12 MDT 2011", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "In a scientific workflow system, a checkpoint selection strategy is used to select checkpoints along scientific workflow execution for verifying temporal constraints so that we can identify any temporal violations and handle them in time in order to ensure overall temporal correctness of the execution that is often essential for the usefulness of execution results. The problem of existing representative strategies is that they do not differentiate temporal constraints as, once a checkpoint is selected, they verify all temporal constraints. However, such a checkpoint does not need to be taken for those constraints whose consistency can be deduced from others. The corresponding verification of such constraints is consequently unnecessary and can severely impact overall temporal verification efficiency while the efficiency determines whether temporal violations can be identified quickly for handling in time.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "9", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Anvik:2011:REB, author = "John Anvik and Gail C. Murphy", title = "Reducing the effort of bug report triage: Recommenders for development-oriented decisions", journal = j-TOSEM, volume = "20", number = "3", pages = "10:1--10:??", month = aug, year = "2011", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/2000791.2000794", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Aug 23 18:32:12 MDT 2011", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "A key collaborative hub for many software development projects is the bug report repository. Although its use can improve the software development process in a number of ways, reports added to the repository need to be triaged. A triager determines if a report is meaningful. Meaningful reports are then organized for integration into the project's development process. To assist triagers with their work, this article presents a machine learning approach to create recommenders that assist with a variety of decisions aimed at streamlining the development process. The recommenders created with this approach are accurate; for instance, recommenders for which developer to assign a report that we have created using this approach have a precision between 70\% and 98\% over five open source projects.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "10", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Naish:2011:MSB, author = "Lee Naish and Hua Jie Lee and Kotagiri Ramamohanarao", title = "A model for spectra-based software diagnosis", journal = j-TOSEM, volume = "20", number = "3", pages = "11:1--11:??", month = aug, year = "2011", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/2000791.2000795", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Aug 23 18:32:12 MDT 2011", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "This article presents an improved approach to assist diagnosis of failures in software (fault localisation) by ranking program statements or blocks in accordance with to how likely they are to be buggy. We present a very simple single-bug program to model the problem. By examining different possible execution paths through this model program over a number of test cases, the effectiveness of different proposed spectral ranking methods can be evaluated in idealised conditions. The results are remarkably consistent to those arrived at empirically using the Siemens test suite and Space benchmarks. The model also helps identify groups of metrics that are equivalent for ranking.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "11", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Binkley:2011:FTT, author = "David W. Binkley and Mark Harman and Kiran Lakhotia", title = "{FlagRemover}: a testability transformation for transforming loop-assigned flags", journal = j-TOSEM, volume = "20", number = "3", pages = "12:1--12:??", month = aug, year = "2011", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/2000791.2000796", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Aug 23 18:32:12 MDT 2011", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Search-Based Testing is a widely studied technique for automatically generating test inputs, with the aim of reducing the cost of software engineering activities that rely upon testing. However, search-based approaches degenerate to random testing in the presence of flag variables, because flags create spikes and plateaux in the fitness landscape. Both these features are known to denote hard optimization problems for all search-based optimization techniques. Several authors have studied flag removal transformations and fitness function refinements to address the issue of flags, but the problem of loop-assigned flags remains unsolved. This article introduces a testability transformation along with a tool that transforms programs with loop-assigned flags into flag-free equivalents, so that existing search-based test data generation approaches can successfully be applied.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "12", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Chen:2011:RFC, author = "Zhenyu Chen and Tsong Yueh Chen and Baowen Xu", title = "A revisit of fault class hierarchies in general {Boolean} specifications", journal = j-TOSEM, volume = "20", number = "3", pages = "13:1--13:??", month = aug, year = "2011", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/2000791.2000797", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Aug 23 18:32:12 MDT 2011", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Recently, Kapoor and Bowen [2007] have extended the works by Kuhn [1999], Tsuchiya and Kikuno [2002], and Lau and Yu [2005]. However, their proofs overlook the possibility that a mutant of the Boolean specifications under test may be equivalent. Hence, each of their fault relationships is either incorrect or has an incorrect proof. In this article, we give counterexamples to the incorrect fault relationships and provide new proofs for the valid fault relationships. Furthermore, a co-stronger fault relation is introduced to establish a new fault class hierarchy for general Boolean specifications.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "13", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Bauer:2011:RVL, author = "Andreas Bauer and Martin Leucker and Christian Schallhart", title = "Runtime Verification for {LTL} and {TLTL}", journal = j-TOSEM, volume = "20", number = "4", pages = "14:1--14:??", month = sep, year = "2011", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/2000799.2000800", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon Sep 26 17:32:55 MDT 2011", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "This article studies runtime verification of properties expressed either in lineartime temporal logic (LTL) or timed lineartime temporal logic (TLTL). It classifies runtime verification in identifying its distinguishing features to model checking and testing, respectively. It introduces a three-valued semantics (with truth values true, false, inconclusive) as an adequate interpretation as to whether a partial observation of a running system meets an LTL or TLTL property. For LTL, a conceptually simple monitor generation procedure is given, which is optimal in two respects: First, the size of the generated deterministic monitor is minimal, and, second, the monitor identifies a continuously monitored trace as either satisfying or falsifying a property as early as possible.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "14", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Nie:2011:MFC, author = "Changhai Nie and Hareton Leung", title = "The Minimal Failure-Causing Schema of Combinatorial Testing", journal = j-TOSEM, volume = "20", number = "4", pages = "15:1--15:??", month = sep, year = "2011", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/2000799.2000801", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon Sep 26 17:32:55 MDT 2011", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Combinatorial Testing (CT) involves the design of a small test suite to cover the parameter value combinations so as to detect failures triggered by the interactions among these parameters. To make full use of CT and to extend its advantages, this article first gives a model of CT and then presents a theory of the Minimal Failure-causing Schema (MFS), including the concept of the MFS, proof of its existence, some of its properties, and a method of finding the MFS. Then we propose a methodology for CT based on this MFS theory and the existing research. Our MFS-based methodology emphasizes that CT should work on accurate testing requirements, and has the following advantages: (1) Detect failure to the greatest degree with the least cost.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "15", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Gandhi:2011:DMC, author = "R. A. Gandhi and S. W. Lee", title = "Discovering Multidimensional Correlations among Regulatory Requirements to Understand Risk", journal = j-TOSEM, volume = "20", number = "4", pages = "16:1--16:??", month = sep, year = "2011", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/2000799.2000802", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon Sep 26 17:32:55 MDT 2011", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Security breaches most often occur due to a cascading effect of failure among security constraints that collectively contribute to overall secure system behavior in a socio-technical environment. Therefore, during security certification activities, analysts must systematically take into account the nexus of causal chains that exist among security constraints imposed by regulatory requirements. Numerous regulatory requirements specified in natural language documents or listed in spreadsheets/databases do not facilitate such analysis. The work presented in this article outlines a stepwise methodology to discover and understand the multidimensional correlations among regulatory requirements for the purpose of understanding the potential for risk due to noncompliance during system operation.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "16", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Dehlinger:2011:GPP, author = "Josh Dehlinger and Robyn R. Lutz", title = "{Gaia-PL}: a Product Line Engineering Approach for Efficiently Designing Multiagent Systems", journal = j-TOSEM, volume = "20", number = "4", pages = "17:1--17:??", month = sep, year = "2011", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/2000799.2000803", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon Sep 26 17:32:55 MDT 2011", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Agent-oriented software engineering (AOSE) has provided powerful and natural, high-level abstractions in which software developers can understand, model and develop complex, distributed systems. Yet, the realization of AOSE partially depends on whether agent-based software systems can achieve reductions in development time and cost similar to other reuse-conscious development methods. Specifically, AOSE does not adequately address requirements specifications as reusable assets. Software product line engineering is a reuse technology that supports the systematic development of a set of similar software systems through understanding, controlling, and managing their common, core characteristics and their differing variation points. In this article, we present an extension to the Gaia AOSE methodology, named Gaia-PL (Gaia-Product Line), for agent-based distributed software systems that enables requirements specifications to be easily reused.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "17", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Maoz:2011:CMS, author = "Shahar Maoz and David Harel and Asaf Kleinbort", title = "A Compiler for Multimodal Scenarios: Transforming {LSCs} into {AspectJ}", journal = j-TOSEM, volume = "20", number = "4", pages = "18:1--18:??", month = sep, year = "2011", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/2000799.2000804", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon Sep 26 17:32:55 MDT 2011", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "We exploit the main similarity between the aspect-oriented programming paradigm and the inter-object, scenario-based approach to specification, in order to construct a new way of executing systems based on the latter. Specifically, we transform multimodal scenario-based specifications, given in the visual language of live sequence charts (LSC), into what we call scenario aspects, implemented in AspectJ. Unlike synthesis approaches, which attempt to take the inter-object scenarios and construct intra-object state-based per-object specifications or a single controller automaton, we follow the ideas behind the LSC play-out algorithm to coordinate the simultaneous monitoring and direct execution of the specified scenarios. Thus, the structure of the specification is reflected in the structure of the generated code; the high-level inter-object requirements and their structure are not lost in the translation.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "18", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Dagenais:2011:RAC, author = "Barth{\'e}l{\'e}my Dagenais and Martin P. Robillard", title = "Recommending Adaptive Changes for Framework Evolution", journal = j-TOSEM, volume = "20", number = "4", pages = "19:1--19:??", month = sep, year = "2011", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/2000799.2000805", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon Sep 26 17:32:55 MDT 2011", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "In the course of a framework's evolution, changes ranging from a simple refactoring to a complete rearchitecture can break client programs. Finding suitable replacements for framework elements that were accessed by a client program and deleted as part of the framework's evolution can be a challenging task. We present a recommendation system, SemDiff, that suggests adaptations to client programs by analyzing how a framework was adapted to its own changes. In a study of the evolution of one open source framework and three client programs, our approach recommended relevant adaptive changes with a high level of precision.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "19", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Ebnenasir:2011:FSD, author = "Ali Ebnenasir and Sandeep S. Kulkarni", title = "Feasibility of Stepwise Design of Multitolerant Programs", journal = j-TOSEM, volume = "21", number = "1", pages = "1:1--1:??", month = dec, year = "2011", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/2063239.2063240", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Dec 20 18:31:08 MST 2011", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "The complexity of designing programs that simultaneously tolerate multiple classes of faults, called multitolerant programs, is in part due to the conflicting nature of the fault tolerance requirements that must be met by a multitolerant program when different types of faults occur. To facilitate the design of multitolerant programs, we present sound and (deterministically) complete algorithms for stepwise design of two families of multitolerant programs in a high atomicity program model, where a process can read and write all program variables in an atomic step. We illustrate that if one needs to design failsafe (respectively, nonmasking) fault tolerance for one class of faults and masking fault tolerance for another class of faults, then a multitolerant program can be designed in separate polynomial-time (in the state space of the fault-intolerant program) steps regardless of the order of addition.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "1", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Arnold:2011:QER, author = "Matthew Arnold and Martin Vechev and Eran Yahav", title = "{QVM}: An Efficient Runtime for Detecting Defects in Deployed Systems", journal = j-TOSEM, volume = "21", number = "1", pages = "2:1--2:??", month = dec, year = "2011", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/2063239.2063241", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Dec 20 18:31:08 MST 2011", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Coping with software defects that occur in the post-deployment stage is a challenging problem: bugs may occur only when the system uses a specific configuration and only under certain usage scenarios. Nevertheless, halting production systems until the bug is tracked and fixed is often impossible. Thus, developers have to try to reproduce the bug in laboratory conditions. Often, the reproduction of the bug takes most of the debugging effort. In this paper we suggest an approach to address this problem by using a specialized runtime environment called Quality Virtual Machine (QVM). QVM efficiently detects defects by continuously monitoring the execution of the application in a production setting.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "2", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Tilevich:2011:EEP, author = "Eli Tilevich and Sriram Gopal", title = "Expressive and Extensible Parameter Passing for Distributed Object Systems", journal = j-TOSEM, volume = "21", number = "1", pages = "3:1--3:??", month = dec, year = "2011", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/2063239.2063242", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Dec 20 18:31:08 MST 2011", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "In modern distributed object systems, reference parameters to a remote method are passed according to their runtime type. This design choice limits the expressiveness, readability, and maintainability of distributed applications. Further, to extend the built-in set of parameter passing semantics of a distributed object system, the programmer has to understand and modify the underlying middleware implementation. To address these design shortcomings, this article presents (i) a declarative and extensible approach to remote parameter passing that decouples parameter passing semantics from parameter types, and (ii) a plugin-based framework, DeXteR, which enables the programmer to extend the built-in set of remote parameter passing semantics, without having to understand or modify the underlying middleware implementation.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "3", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Sim:2011:HWD, author = "Susan Elliott Sim and Medha Umarji and Sukanya Ratanotayanon and Cristina V. Lopes", title = "How Well Do Search Engines Support Code Retrieval on the {Web}?", journal = j-TOSEM, volume = "21", number = "1", pages = "4:1--4:??", month = dec, year = "2011", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/2063239.2063243", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Dec 20 18:31:08 MST 2011", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Software developers search the Web for various kinds of source code for diverse reasons. In a previous study, we found that searches varied along two dimensions: the size of the search target (e.g., block, subsystem, or system) and the motivation for the search (e.g., reference example or as-is reuse). Would each of these kinds of searches require different search technologies? To answer this question, we conducted an experiment with 36 participants to evaluate three diverse approaches (general purpose information retrieval, source code search, and component reuse), as represented by five Web sites (Google, Koders, Krugle, Google Code Search, and SourceForge). The independent variables were search engine, size of search target, and motivation for search.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "4", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Diep:2011:LBS, author = "Madeline M. Diep and Matthew B. Dwyer and Sebastian Elbaum", title = "Lattice-Based Sampling for Path Property Monitoring", journal = j-TOSEM, volume = "21", number = "1", pages = "5:1--5:??", month = dec, year = "2011", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/2063239.2063244", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Dec 20 18:31:08 MST 2011", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Runtime monitoring can provide important insights about a program's behavior and, for simple properties, it can be done efficiently. Monitoring properties describing sequences of program states and events, however, can result in significant runtime overhead. This is particularly critical when monitoring programs deployed at user sites that have low tolerance for overhead. In this paper we present a novel approach to reducing the cost of runtime monitoring of path properties. A set of original properties are composed to form a single integrated property that is then systematically decomposed into a set of properties that encode necessary conditions for property violations. The resulting set of properties forms a lattice whose structure is exploited to select a sample of properties that can lower monitoring cost, while preserving violation detection power relative to the original properties.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "5", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Erwig:2011:CCR, author = "Martin Erwig and Eric Walkingshaw", title = "The Choice Calculus: a Representation for Software Variation", journal = j-TOSEM, volume = "21", number = "1", pages = "6:1--6:??", month = dec, year = "2011", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/2063239.2063245", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Dec 20 18:31:08 MST 2011", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Many areas of computer science are concerned with some form of variation in software---from managing changes to software over time to supporting families of related artifacts. We present the choice calculus, a fundamental representation for software variation that can serve as a common language of discourse for variation research, filling a role similar to the lambda calculus in programming language research. We also develop an associated theory of software variation, including sound transformations of variation artifacts, the definition of strategic normal forms, and a design theory for variation structures, which will support the development of better algorithms and tools.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "6", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Notkin:2012:E, author = "David Notkin", title = "Editorial", journal = j-TOSEM, volume = "21", number = "2", pages = "7:1--7:??", month = mar, year = "2012", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/2089116.2089117", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon Mar 19 17:14:21 MDT 2012", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "7", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{AlDallal:2012:PMM, author = "Jehad {Al Dallal} and Lionel C. Briand", title = "A Precise Method-Method Interaction-Based Cohesion Metric for Object-Oriented Classes", journal = j-TOSEM, volume = "21", number = "2", pages = "8:1--8:??", month = mar, year = "2012", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/2089116.2089118", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon Mar 19 17:14:21 MDT 2012", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "The building of highly cohesive classes is an important objective in object-oriented design. Class cohesion refers to the relatedness of the class members, and it indicates one important aspect of the class design quality. A meaningful class cohesion metric helps object-oriented software developers detect class design weaknesses and refactor classes accordingly. Several class cohesion metrics have been proposed in the literature. Most of these metrics are applicable based on low-level design information such as attribute references in methods. Some of these metrics capture class cohesion by counting the number of method pairs that share common attributes. A few metrics measure cohesion more precisely by considering the degree of interaction, through attribute references, between each pair of methods. However, the formulas applied by these metrics to measure the degree of interaction cause the metrics to violate important mathematical properties, thus undermining their construct validity and leading to misleading cohesion measurement. In this paper, we propose a formula that precisely measures the degree of interaction between each pair of methods, and we use it as a basis to introduce a low-level design class cohesion metric (LSCC). We verify that the proposed formula does not cause the metric to violate important mathematical properties. In addition, we provide a mechanism to use this metric as a useful indicator for refactoring weakly cohesive classes, thus showing its usefulness in improving class cohesion. Finally, we empirically validate LSCC. Using four open source software systems and eleven cohesion metrics, we investigate the relationship between LSCC, other cohesion metrics, and fault occurrences in classes. Our results show that LSCC is one of three metrics that explains more accurately the presence of faults in classes. LSCC is the only one among the three metrics to comply with important mathematical properties, and statistical analysis shows it captures a measurement dimension of its own. This suggests that LSCC is a better alternative, when taking into account both theoretical and empirical results, as a measure to guide the refactoring of classes. From a more general standpoint, the results suggest that class quality, as measured in terms of fault occurrences, can be more accurately explained by cohesion metrics that account for the degree of interaction between each pair of methods.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "8", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Fischbein:2012:WAM, author = "Dario Fischbein and Nicolas D'Ippolito and Greg Brunet and Marsha Chechik and Sebastian Uchitel", title = "Weak Alphabet Merging of Partial Behavior Models", journal = j-TOSEM, volume = "21", number = "2", pages = "9:1--9:??", month = mar, year = "2012", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/2089116.2089119", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon Mar 19 17:14:21 MDT 2012", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Constructing comprehensive operational models of intended system behavior is a complex and costly task, which can be mitigated by the construction of partial behavior models, providing early feedback and subsequently elaborating them iteratively. However, how should partial behavior models with different viewpoints covering different aspects of behavior be composed? How should partial models of component instances of the same type be put together? In this article, we propose model merging of modal transition systems (MTSs) as a solution to these questions. MTS models are a natural extension of labelled transition systems that support explicit modeling of what is currently unknown about system behavior. We formally define model merging based on weak alphabet refinement, which guarantees property preservation, and show that merging consistent models is a process that should result in a minimal common weak alphabet refinement (MCR). In this article, we provide theoretical results and algorithms that support such a process. Finally, because in practice MTS merging is likely to be combined with other operations over MTSs such as parallel composition, we also study the algebraic properties of merging and apply these, together with the algorithms that support MTS merging, in a case study.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "9", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Mattsson:2012:AMA, author = "Anders Mattsson and Brian Fitzgerald and Bj{\"o}rn Lundell and Brian Lings", title = "An Approach for Modeling Architectural Design Rules in {UML} and its Application to Embedded Software", journal = j-TOSEM, volume = "21", number = "2", pages = "10:1--10:??", month = mar, year = "2012", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/2089116.2089120", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon Mar 19 17:14:21 MDT 2012", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Current techniques for modeling software architecture do not provide sufficient support for modeling architectural design rules. This is a problem in the context of model-driven development in which it is assumed that major design artifacts are represented as formal or semi-formal models. This article addresses this problem by presenting an approach to modeling architectural design rules in UML at the abstraction level of the meaning of the rules. The high abstraction level and the use of UML makes the rules both amenable to automation and easy to understand for both architects and developers, which is crucial to deployment in an organization. To provide a proof-of-concept, a tool was developed that validates a system model against the architectural rules in a separate UML model. To demonstrate the feasibility of the approach, the architectural design rules of an existing live industrial-strength system were modeled according to the approach.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "10", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Kulkarni:2012:GPF, author = "Devdatta Kulkarni and Tanvir Ahmed and Anand Tripathi", title = "A Generative Programming Framework for Context-Aware {CSCW} Applications", journal = j-TOSEM, volume = "21", number = "2", pages = "11:1--11:??", month = mar, year = "2012", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/2089116.2089121", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon Mar 19 17:14:21 MDT 2012", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "We present a programming framework based on the paradigm of generative application development for building context-aware collaborative applications. In this approach, context-aware applications are implemented using a domain-specific design model, and their execution environment is generated and maintained by the middleware. The key features of this design model include support for context-based service discovery and binding, context-based access control, context-based multiuser coordination, and context-triggered automated task executions. The middleware uses the technique of policy-based specialization for generating application-specific middleware components from the generic middleware components. Through a case-study example, we demonstrate this approach and present the evaluations of the design model and the middleware.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "11", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Roychoudhury:2012:SMS, author = "Abhik Roychoudhury and Ankit Goel and Bikram Sengupta", title = "Symbolic Message Sequence Charts", journal = j-TOSEM, volume = "21", number = "2", pages = "12:1--12:??", month = mar, year = "2012", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/2089116.2089122", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon Mar 19 17:14:21 MDT 2012", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Message sequence charts (MSCs) are a widely used visual formalism for scenario-based specifications of distributed reactive systems. In its conventional usage, an MSC captures an interaction snippet between concrete objects in the system. This leads to voluminous specifications when the system contains several objects that are behaviorally similar. MSCs also play an important role in the model-based testing of reactive systems, where they may be used for specifying (partial) system behaviors, describing test generation criteria, or representing test cases. However, since the number of processes in a MSC specification are fixed, model-based testing of systems consisting of process classes may involve a significant amount of rework: for example, reconstructing system models, or regenerating test cases for systems differing only in the number of processes of various types. In this article we propose a scenario-based notation, called symbolic message sequence charts (SMSCs), for modeling, simulation, and testing of process classes. SMSCs are a lightweight syntactic and semantic extension of MSCs where, unlike MSCs, a SMSC lifeline can denote some/all objects from a collection. Our extensions give us substantially more modeling power. Moreover, we present an abstract execution semantics for (structured collections of) SMSCs. This allows us to validate MSC-based system models capturing interactions between large, or even unbounded, number of objects. Finally, we describe a SMSC-based testing methodology for process classes, which allows generation of test cases for new object configurations with minimal rework. Since our SMSC extensions are only concerned with MSC lifelines, we believe that they can be integrated into existing standards such as UML 2.0. We illustrate our SMSC-based framework for modeling, simulation, and testing of process classes using a weather-update controller case-study from NASA.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "12", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Queralt:2012:VVU, author = "Anna Queralt and Ernest Teniente", title = "Verification and Validation of {UML} Conceptual Schemas with {OCL} Constraints", journal = j-TOSEM, volume = "21", number = "2", pages = "13:1--13:??", month = mar, year = "2012", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/2089116.2089123", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon Mar 19 17:14:21 MDT 2012", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "To ensure the quality of an information system, it is essential that the conceptual schema that represents the knowledge about its domain is semantically correct. The semantic correctness of a conceptual schema can be seen from two different perspectives. On the one hand, from the point of view of its definition, a conceptual schema must be right. This is ensured by means of verification techniques that check whether the schema satisfies several correctness properties. On the other hand, from the point of view of the requirements that the information system should satisfy, a schema must also be the right one. This is ensured by means of validation techniques, which help the designer understand the exact meaning of a schema and to see whether it corresponds to the requirements. In this article we propose an approach to verify and validate UML conceptual schemas, with arbitrary constraints formalized in OCL. We have also implemented our approach to show its feasibility.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "13", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Kastner:2012:TCA, author = "Christian K{\"a}stner and Sven Apel and Thomas Th{\"u}m and Gunter Saake", title = "Type checking annotation-based product lines", journal = j-TOSEM, volume = "21", number = "3", pages = "14:1--14:??", month = jun, year = "2012", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/2211616.2211617", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Jun 29 18:08:30 MDT 2012", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Software product line engineering is an efficient means of generating a family of program variants for a domain from a single code base. However, because of the potentially high number of possible program variants, it is difficult to test them all and ensure properties like type safety for the entire product line. We present a product-line-aware type system that can type check an entire software product line without generating each variant in isolation. Specifically, we extend the Featherweight Java calculus with feature annotations for product-line development and prove formally that all program variants generated from a well typed product line are well typed. Furthermore, we present a solution to the problem of typing mutually exclusive features. We discuss how results from our formalization helped implement our own product-line tool CIDE for full Java and report of our experience with detecting type errors in four existing software product line implementations.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "14", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Shonle:2012:FCR, author = "Macneil Shonle and William G. Griswold and Sorin Lerner", title = "A framework for the checking and refactoring of crosscutting concepts", journal = j-TOSEM, volume = "21", number = "3", pages = "15:1--15:??", month = jun, year = "2012", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/2211616.2211618", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Jun 29 18:08:30 MDT 2012", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Programmers employ crosscutting concepts, such as design patterns and other programming idioms, when their design ideas cannot be efficiently or effectively modularized in the underlying programming language. As a result, implementations of these crosscutting concepts can be hard to change even when the code is well structured. In this article, we describe Arcum, a system that supports the modular maintenance of crosscutting concepts. Arcum can be used to both check essential constraints of crosscutting concepts and to substitute crosscutting concept implementations with alternative implementations. Arcum is complementary to existing refactoring systems that focus on meaning-preserving program transformations at the programming-language-semantics level, because Arcum focuses on transformations at the conceptual level. We present the underpinnings of the Arcum approach and show how Arcum can be used to address several classical software engineering problems.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "15", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Fantechi:2012:LVM, author = "Alessandro Fantechi and Stefania Gnesi and Alessandro Lapadula and Franco Mazzanti and Rosario Pugliese and Francesco Tiezzi", title = "A logical verification methodology for service-oriented computing", journal = j-TOSEM, volume = "21", number = "3", pages = "16:1--16:??", month = jun, year = "2012", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/2211616.2211619", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Jun 29 18:08:30 MDT 2012", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "We introduce a logical verification methodology for checking behavioral properties of service-oriented computing systems. Service properties are described by means of SocL, a branching-time temporal logic that we have specifically designed for expressing in an effective way distinctive aspects of services, such as, acceptance of a request, provision of a response, correlation among service requests and responses, etc. Our approach allows service properties to be expressed in such a way that they can be independent of service domains and specifications. We show an instantiation of our general methodology that uses the formal language COWS to conveniently specify services and the expressly developed software tool CMC to assist the user in the task of verifying SocL formulas over service specifications. We demonstrate the feasibility and effectiveness of our methodology by means of the specification and analysis of a case study in the automotive domain.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "16", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Strecker:2012:ADC, author = "Jaymie Strecker and Atif M. Memon", title = "Accounting for defect characteristics in evaluations of testing techniques", journal = j-TOSEM, volume = "21", number = "3", pages = "17:1--17:??", month = jun, year = "2012", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/2211616.2211620", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Jun 29 18:08:30 MDT 2012", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "As new software-testing techniques are developed, before they can achieve widespread acceptance, their effectiveness at detecting defects must be evaluated. The most common way of evaluating testing techniques is with empirical studies, in which one or more techniques are tried out on software with known defects. However, the defects used can affect the performance of the techniques. To complicate matters, it is not even clear how to effectively describe or characterize defects. To address these problems, this article describes an experiment architecture for empirically evaluating testing techniques which takes both defect and test-suite characteristics into account. As proof of concept, an experiment on GUI-testing techniques is conducted. It provides evidence that the defect characteristics proposed do help explain defect detection, at least for GUI testing, and it explores the relationship between the coverage of defective code and the detection of defects.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "17", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Jennings:2012:TPA, author = "Paul Jennings and Arka P. Ghosh and Samik Basu", title = "A two-phase approximation for model checking probabilistic unbounded until properties of probabilistic systems", journal = j-TOSEM, volume = "21", number = "3", pages = "18:1--18:??", month = jun, year = "2012", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/2211616.2211621", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Jun 29 18:08:30 MDT 2012", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "We have developed a new approximate probabilistic model-checking method for untimed properties in probabilistic systems, expressed in a probabilistic temporal logic (PCTL, CSL). This method, in contrast to the existing ones, does not require the untimed until properties to be bounded a priori, where the bound refers to the number of discrete steps in the system required to verify the until property. The method consists of two phases. In the first phase, a suitable system- and property-dependent bound $ k_0 $ is obtained automatically. In the second phase, the probability of satisfying the $ k_0$-bounded until property is computed as the estimate of the probability of satisfying the original unbounded until property. Both phases require only verification of bounded until properties, which can be effectively performed by simulation-based methods. We prove the correctness of the proposed two-phase method and present its optimized implementation in the widely used PRISM model-checking engine. We compare this implementation with sampling-based model-checking techniques implemented in two tools: PRISM and MRMC. We show that for several models these existing tools fail to compute the result, while the two-phase method successfully computes the result efficiently with respect to time and space.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "18", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Qi:2012:DAD, author = "Dawei Qi and Abhik Roychoudhury and Zhenkai Liang and Kapil Vaswani", title = "{DARWIN}: an approach to debugging evolving programs", journal = j-TOSEM, volume = "21", number = "3", pages = "19:1--19:??", month = jun, year = "2012", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/2211616.2211622", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Jun 29 18:08:30 MDT 2012", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Bugs in programs are often introduced when programs evolve from a stable version to a new version. In this article, we propose a new approach called DARWIN for automatically finding potential root causes of such bugs. Given two programs --- a reference program and a modified program --- and an input that fails on the modified program, our approach uses symbolic execution to automatically synthesize a new input that (a) is very similar to the failing input and (b) does not fail. We find the potential cause(s) of failure by comparing control-flow behavior of the passing and failing inputs and identifying code fragments where the control flows diverge. A notable feature of our approach is that it handles hard-to-explain bugs, like code missing errors, by pointing to code in the reference program. We have implemented this approach and conducted experiments using several real-world applications, such as the Apache Web server, libPNG (a library for manipulating PNG images), and TCPflow (a program for displaying data sent through TCP connections). In each of these applications, DARWIN was able to localize bugs with high accuracy. Even though these applications contain several thousands of lines of code, DARWIN could usually narrow down the potential root cause(s) to less than ten lines. In addition, we find that the inputs synthesized by DARWIN provide additional value by revealing other undiscovered errors.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "19", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Holmes:2012:SPS, author = "Reid Holmes and Robert J. Walker", title = "Systematizing pragmatic software reuse", journal = j-TOSEM, volume = "21", number = "4", pages = "20:1--20:??", month = nov, year = "2012", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/2377656.2377657", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sat Feb 2 06:46:47 MST 2013", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Many software reuse tasks involve reusing source code that was not designed in a manner conducive to those tasks, requiring that ad hoc modifications be applied. Such pragmatic reuse tasks are a reality in disciplined industrial practice; they arise for a variety of organizational and technical reasons. To investigate a pragmatic reuse task, a developer must navigate through, and reason about, source code dependencies in order to identify program elements that are relevant to the task and to decide how those elements should be reused. The developer must then convert his mental model of the task into a set of actions that he can perform. These steps are poorly supported by modern development tools and practices. We provide a model for the process involved in performing a pragmatic reuse task, including the need to capture (mentally or otherwise) the developer's decisions about how each program element should be treated: this is a pragmatic-reuse plan. We provide partial support for this model via a tool suite, called Gilligan; other parts of the model are supported via standard IDE tools. Using a pragmatic-reuse plan, Gilligan can semiautomatically transform the selected source code from its originating system and integrate it into the developer's system. We have evaluated Gilligan through a series of case studies and experiments (each involving industrial developers) using a variety of source systems and tasks; we report in particular on a previously unpublished, formal experiment. The results show that pragmatic-reuse plans are a robust metaphor for capturing pragmatic reuse intent and that, relative to standard IDE tools, Gilligan can (1) significantly decrease the time that developers require to perform pragmatic reuse tasks, (2) increase the likelihood that developers will successfully complete pragmatic reuse tasks, (3) decrease the time required by developers to identify infeasible reuse tasks, and (4) improve developers' sense of their ability to manage the risk in such tasks.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "20", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Cai:2012:FMA, author = "Yuanfang Cai and Kevin Sullivan", title = "A formal model for automated software modularity and evolvability analysis", journal = j-TOSEM, volume = "21", number = "4", pages = "21:1--21:??", month = nov, year = "2012", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/2377656.2377658", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sat Feb 2 06:46:47 MST 2013", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Neither the nature of modularity in software design, characterized as a property of the structure of dependencies among design decisions, or its economic value are adequately well understood. One basic problem is that we do not even have a sufficiently clear definition of what it means for one design decision to depend on another. The main contribution of this work is one possible mathematically precise definition of dependency based on an augmented constraint network model. The model provides an end-to-end account of the connection between modularity and its value in terms of options to make adaptive changes in uncertain and changing design spaces. We demonstrate the validity and theoretical utility of the model, showing that it is consistent with, and provides new insights into, several previously published results in design theory.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "21", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Cimatti:2012:VRH, author = "Alessandro Cimatti and Marco Roveri and Angelo Susi and Stefano Tonetta", title = "Validation of requirements for hybrid systems: a formal approach", journal = j-TOSEM, volume = "21", number = "4", pages = "22:1--22:??", month = nov, year = "2012", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/2377656.2377659", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sat Feb 2 06:46:47 MST 2013", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Flaws in requirements may have unacceptable consequences in the development of safety-critical applications. Formal approaches may help with a deep analysis that takes care of the precise semantics of the requirements. However, the proposed solutions often disregard the problem of integrating the formalization with the analysis, and the underlying logical framework lacks either expressive power, or automation. We propose a new, comprehensive approach for the validation of functional requirements of hybrid systems, where discrete components and continuous components are tightly intertwined. The proposed solution allows to tackle problems of conversion from informal to formal, traceability, automation, user acceptance, and scalability. We build on a new language, othello which is expressive enough to represent various domains of interest, yet allowing efficient procedures for checking the satisfiability. Around this, we propose a structured methodology where: informal requirements are fragmented and categorized according to their role; each fragment is formalized based on its category; specialized formal analysis techniques, optimized for requirements analysis, are finally applied. The approach was the basis of an industrial project aiming at the validation of the European Train Control System (ETCS) requirements specification. During the project a realistic subset of the ETCS specification was formalized and analyzed. The approach was positively assessed by domain experts.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "22", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Poshyvanyk:2012:CLU, author = "Denys Poshyvanyk and Malcom Gethers and Andrian Marcus", title = "Concept location using formal concept analysis and information retrieval", journal = j-TOSEM, volume = "21", number = "4", pages = "23:1--23:??", month = nov, year = "2012", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/2377656.2377660", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sat Feb 2 06:46:47 MST 2013", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "The article addresses the problem of concept location in source code by proposing an approach that combines Formal Concept Analysis and Information Retrieval. In the proposed approach, Latent Semantic Indexing, an advanced Information Retrieval approach, is used to map textual descriptions of software features or bug reports to relevant parts of the source code, presented as a ranked list of source code elements. Given the ranked list, the approach selects the most relevant attributes from the best ranked documents, clusters the results, and presents them as a concept lattice, generated using Formal Concept Analysis. The approach is evaluated through a large case study on concept location in the source code on six open-source systems, using several hundred features and bugs. The empirical study focuses on the analysis of various configurations of the generated concept lattices and the results indicate that our approach is effective in organizing different concepts and their relationships present in the subset of the search results. In consequence, the proposed concept location method has been shown to outperform a standalone Information Retrieval based concept location technique by reducing the number of irrelevant search results across all the systems and lattice configurations evaluated, potentially reducing the programmers' effort during software maintenance tasks involving concept location.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "23", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Meneely:2012:VSM, author = "Andrew Meneely and Ben Smith and Laurie Williams", title = "Validating software metrics: a spectrum of philosophies", journal = j-TOSEM, volume = "21", number = "4", pages = "24:1--24:??", month = nov, year = "2012", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/2377656.2377661", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sat Feb 2 06:46:47 MST 2013", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Context. Researchers proposing a new metric have the burden of proof to demonstrate to the research community that the metric is acceptable in its intended use. This burden of proof is provided through the multi-faceted, scientific, and objective process of software metrics validation. Over the last 40 years, however, researchers have debated what constitutes a ``valid'' metric. Aim. The debate over what constitutes a valid metric centers on software metrics validation criteria. The objective of this article is to guide researchers in making sound contributions to the field of software engineering metrics by providing a practical summary of the metrics validation criteria found in the academic literature. Method. We conducted a systematic literature review that began with 2,288 papers and ultimately focused on 20 papers. After extracting 47 unique validation criteria from these 20 papers, we performed a comparative analysis to explore the relationships amongst the criteria. Results. Our 47 validation criteria represent a diverse view of what constitutes a valid metric. We present an analysis of the criteria's categorization, conflicts, common themes, and philosophical motivations behind the validation criteria. Conclusions. Although the 47 validation criteria are not conflict-free, the diversity of motivations and philosophies behind the validation criteria indicates that metrics validation is complex. Researchers proposing new metrics should consider the applicability of the validation criteria in terms of our categorization and analysis. Rather than arbitrarily choosing validation criteria for each metric, researchers should choose criteria that can confirm that the metric is appropriate for its intended use. We conclude that metrics validation criteria provide answers to questions that researchers have about the merits and limitations of a metric.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "24", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Kiezun:2012:HSW, author = "Adam Kiezun and Vijay Ganesh and Shay Artzi and Philip J. Guo and Pieter Hooimeijer and Michael D. Ernst", title = "{HAMPI}: a solver for word equations over strings, regular expressions, and context-free grammars", journal = j-TOSEM, volume = "21", number = "4", pages = "25:1--25:??", month = nov, year = "2012", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/2377656.2377662", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sat Feb 2 06:46:47 MST 2013", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Many automatic testing, analysis, and verification techniques for programs can be effectively reduced to a constraint-generation phase followed by a constraint-solving phase. This separation of concerns often leads to more effective and maintainable software reliability tools. The increasing efficiency of off-the-shelf constraint solvers makes this approach even more compelling. However, there are few effective and sufficiently expressive off-the-shelf solvers for string constraints generated by analysis of string-manipulating programs, so researchers end up implementing their own ad-hoc solvers. To fulfill this need, we designed and implemented Hampi, a solver for string constraints over bounded string variables. Users of Hampi specify constraints using regular expressions, context-free grammars, equality between string terms, and typical string operations such as concatenation and substring extraction. Hampi then finds a string that satisfies all the constraints or reports that the constraints are unsatisfiable. We demonstrate Hampi's expressiveness and efficiency by applying it to program analysis and automated testing. We used Hampi in static and dynamic analyses for finding SQL injection vulnerabilities in Web applications with hundreds of thousands of lines of code. We also used Hampi in the context of automated bug finding in C programs using dynamic systematic testing (also known as concolic testing). We then compared Hampi with another string solver, CFGAnalyzer, and show that Hampi is several times faster. Hampi's source code, documentation, and experimental data are available at \path=http://people.csail.mit.edu/akiezun/hampi=", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "25", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Notkin:2013:ELB, author = "David Notkin", title = "Editorial --- looking back", journal = j-TOSEM, volume = "22", number = "1", pages = "1:1--1:??", month = feb, year = "2013", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/2430536.2431201", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sat Mar 2 09:22:48 MST 2013", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "1", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Rosenblum:2013:ELF, author = "David S. Rosenblum", title = "Editorial --- looking forward", journal = j-TOSEM, volume = "22", number = "1", pages = "2:1--2:??", month = feb, year = "2013", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/2430536.2431202", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sat Mar 2 09:22:48 MST 2013", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "2", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Sun:2013:MVH, author = "Jun Sun and Yang Liu and Jin Song Dong and Yan Liu and Ling Shi and {\'E}tienne Andr{\'e}", title = "Modeling and verifying hierarchical real-time systems using stateful timed {CSP}", journal = j-TOSEM, volume = "22", number = "1", pages = "3:1--3:??", month = feb, year = "2013", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/2430536.2430537", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sat Mar 2 09:22:48 MST 2013", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Modeling and verifying complex real-time systems are challenging research problems. The de facto approach is based on Timed Automata, which are finite state automata equipped with clock variables. Timed Automata are deficient in modeling hierarchical complex systems. In this work, we propose a language called Stateful Timed CSP and an automated approach for verifying Stateful Timed CSP models. Stateful Timed CSP is based on Timed CSP and is capable of specifying hierarchical real-time systems. Through dynamic zone abstraction, finite-state zone graphs can be generated automatically from Stateful Timed CSP models, which are subject to model checking. Like Timed Automata, Stateful Timed CSP models suffer from Zeno runs, that is, system runs that take infinitely many steps within finite time. Unlike Timed Automata, model checking with non-Zenoness in Stateful Timed CSP can be achieved based on the zone graphs. We extend the PAT model checker to support system modeling and verification using Stateful Timed CSP and show its usability/scalability via verification of real-world systems.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "3", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Demsky:2013:VSF, author = "Brian Demsky and Patrick Lam", title = "Views: {Synthesizing} fine-grained concurrency control", journal = j-TOSEM, volume = "22", number = "1", pages = "4:1--4:??", month = feb, year = "2013", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/2430536.2430538", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sat Mar 2 09:22:48 MST 2013", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Fine-grained locking is often necessary to increase concurrency. Correctly implementing fine-grained locking with today's concurrency primitives can be challenging-race conditions often plague programs with sophisticated locking schemes. We present views, a new approach to concurrency control. Views ease the task of implementing sophisticated locking schemes and provide static checks to automatically detect many data races. A view of an object declares a partial interface, consisting of fields and methods, to the object that the view protects. A view also contains an incompatibility declaration, which lists views that may not be simultaneously held by other threads. A set of view annotations specify which code regions hold a view of an object. Our view compiler performs simple static checks that identify many data races. We pair the basic approach with an inference algorithm that can infer view incompatibility specifications for many applications. We have ported four benchmark applications to use views: portions of Vuze, a BitTorrent client; Mailpuccino, a graphical email client; jphonelite, a VoIP softphone implementation; and TupleSoup, a database. Our experience indicates that views are easy to use, make implementing sophisticated locking schemes simple, and can help eliminate concurrency bugs. We have evaluated the performance of a view implementation of a red-black tree and found that views can significantly improve performance over that of the lock-based implementation.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "4", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Yue:2013:FTU, author = "Tao Yue and Lionel C. Briand and Yvan Labiche", title = "Facilitating the transition from use case models to analysis models: Approach and experiments", journal = j-TOSEM, volume = "22", number = "1", pages = "5:1--5:??", month = feb, year = "2013", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/2430536.2430539", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sat Mar 2 09:22:48 MST 2013", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Use case modeling, including use case diagrams and use case specifications (UCSs), is commonly applied to structure and document requirements. UCSs are usually structured but unrestricted textual documents complying with a certain use case template. However, because Use Case Models (UCMods) remain essentially textual, ambiguity is inevitably introduced. In this article, we propose a use case modeling approach, called Restricted Use Case Modeling (RUCM), which is composed of a set of well-defined restriction rules and a modified use case template. The goal is two-fold: (1) restrict the way users can document UCSs in order to reduce ambiguity and (2) facilitate the manual derivation of initial analysis models which, when using the Unified Modeling Language (UML), are typically composed of class diagrams, sequence diagrams, and possibly other types of diagrams. Though the proposed restriction rules and template are based on a clear rationale, two main questions need to be investigated. First, do users find them too restrictive or impractical in certain situations? In other words, can users express the same requirements with RUCM as with unrestricted use cases? Second, do the rules and template have a positive, significant impact on the quality of the constructed analysis models? To investigate these questions, we performed and report on two controlled experiments, which evaluate the restriction rules and use case template in terms of (1) whether they are easy to apply while developing UCMods and facilitate the understanding of UCSs, and (2) whether they help users manually derive higher quality analysis models than what can be generated when they are not used, in terms of correctness, completeness, and redundancy. This article reports on the first controlled experiments that evaluate the applicability of restriction rules on use case modeling and their impact on the quality of analysis models. The measures we have defined to characterize restriction rules and the quality of analysis class and sequence diagrams can be reused to perform similar experiments in the future, either with RUCM or other approaches. Results show that the restriction rules are overall easy to apply and that RUCM results into significant improvements over traditional approaches (i.e., with standard templates, without restrictions) in terms of class correctness and class diagram completeness, message correctness and sequence diagram completeness, and understandability of UCSs.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "5", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Hemmati:2013:ASM, author = "Hadi Hemmati and Andrea Arcuri and Lionel Briand", title = "Achieving scalable model-based testing through test case diversity", journal = j-TOSEM, volume = "22", number = "1", pages = "6:1--6:??", month = feb, year = "2013", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/2430536.2430540", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sat Mar 2 09:22:48 MST 2013", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "The increase in size and complexity of modern software systems requires scalable, systematic, and automated testing approaches. Model-based testing (MBT), as a systematic and automated test case generation technique, is being successfully applied to verify industrial-scale systems and is supported by commercial tools. However, scalability is still an open issue for large systems, as in practice there are limits to the amount of testing that can be performed in industrial contexts. Even with standard coverage criteria, the resulting test suites generated by MBT techniques can be very large and expensive to execute, especially for system level testing on real deployment platforms and network facilities. Therefore, a scalable MBT technique should be flexible regarding the size of the generated test suites and should be easily accommodated to fit resource and time constraints. Our approach is to select a subset of the generated test suite in such a way that it can be realistically executed and analyzed within the time and resource constraints, while preserving the fault revealing power of the original test suite to a maximum extent. In this article, to address this problem, we introduce a family of similarity-based test case selection techniques for test suites generated from state machines. We evaluate 320 different similarity-based selection techniques and then compare the effectiveness of the best similarity-based selection technique with other common selection techniques in the literature. The results based on two industrial case studies, in the domain of embedded systems, show significant benefits and a large improvement in performance when using a similarity-based approach. We complement these analyses with further studies on the scalability of the technique and the effects of failure rate on its effectiveness. We also propose a method to identify optimal tradeoffs between the number of test cases to run and fault detection.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "6", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Monperrus:2013:DMM, author = "Martin Monperrus and Mira Mezini", title = "Detecting missing method calls as violations of the majority rule", journal = j-TOSEM, volume = "22", number = "1", pages = "7:1--7:??", month = feb, year = "2013", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/2430536.2430541", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sat Mar 2 09:22:48 MST 2013", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "When using object-oriented frameworks it is easy to overlook certain important method calls that are required at particular places in code. In this article, we provide a comprehensive set of empirical facts on this problem, starting from traces of missing method calls in a bug repository. We propose a new system that searches for missing method calls in software based on the other method calls that are observable. Our key insight is that the voting theory concept of majority rule holds for method calls: a call is likely to be missing if there is a majority of similar pieces of code where this call is present. The evaluation shows that the system predictions go further missing method calls and often reveal different kinds of code smells (e.g., violations of API best practices).", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "7", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Huang:2013:SPA, author = "Jeff Huang and Jinguo Zhou and Charles Zhang", title = "Scaling predictive analysis of concurrent programs by removing trace redundancy", journal = j-TOSEM, volume = "22", number = "1", pages = "8:1--8:??", month = feb, year = "2013", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/2430536.2430542", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sat Mar 2 09:22:48 MST 2013", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Predictive trace analysis (PTA) of concurrent programs is powerful in finding concurrency bugs unseen in past program executions. Unfortunately, existing PTA solutions face considerable challenges in scaling to large traces. In this article, we identify that a large percentage of events in the trace are redundant for presenting useful analysis results to the end user. Removing them from the trace can significantly improve the scalability of PTA without affecting the quality of the results. We present a trace redundancy theorem that specifies a redundancy criterion and the soundness guarantee that the PTA results are preserved after removing the redundancy. Based on this criterion, we design and implement TraceFilter, an efficient algorithm that automatically removes redundant events from a trace for the PTA of general concurrency access anomalies. We evaluated TraceFilter on a set of popular concurrent benchmarks as well as real world large server programs. Our experimental results show that TraceFilter is able to significantly improve the scalability of PTA by orders of magnitude, without impairing the analysis result.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "8", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Dippolito:2013:SNE, author = "Nicol{\'a}s D'ippolito and Victor Braberman and Nir Piterman and Sebasti{\'a}n Uchitel", title = "Synthesizing nonanomalous event-based controllers for liveness goals", journal = j-TOSEM, volume = "22", number = "1", pages = "9:1--9:??", month = feb, year = "2013", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/2430536.2430543", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sat Mar 2 09:22:48 MST 2013", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "We present SGR(1), a novel synthesis technique and methodological guidelines for automatically constructing event-based behavior models. Our approach works for an expressive subset of liveness properties, distinguishes between controlled and monitored actions, and differentiates system goals from environment assumptions. We show that assumptions must be modeled carefully in order to avoid synthesizing anomalous behavior models. We characterize nonanomalous models and propose assumption compatibility, a sufficient condition, as a methodological guideline.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "9", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Zhang:2013:CDC, author = "Wei Zhang and Chong Sun and Junghee Lim and Shan Lu and Thomas Reps", title = "{ConMem}: Detecting Crash-Triggering Concurrency Bugs through an Effect-Oriented Approach", journal = j-TOSEM, volume = "22", number = "2", pages = "10:1--10:??", month = mar, year = "2013", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/2430545.2430546", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Mar 27 05:43:25 MDT 2013", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Multicore technology is making concurrent programs increasingly pervasive. Unfortunately, it is difficult to deliver reliable concurrent programs, because of the huge and nondeterministic interleaving space. In reality, without the resources to thoroughly check the interleaving space, critical concurrency bugs can slip into production versions and cause failures in the field. Approaches to making the best use of the limited resources and exposing severe concurrency bugs before software release would be desirable. Unlike previous work that focuses on bugs caused by specific interleavings (e.g., races and atomicity violations), this article targets concurrency bugs that result in one type of severe effect: program crashes. Our study of the error-propagation process of real-world concurrency bugs reveals a common pattern (50\% in our nondeadlock concurrency bug set) that is highly correlated with program crashes. We call this pattern concurrency-memory bugs: buggy interleavings directly cause memory bugs (NULL-pointer-dereferences, dangling-pointers, buffer-overflows, uninitialized-reads) on shared memory objects. Guided by this study, we built ConMem to monitor program execution, analyze memory accesses and synchronizations, and predictively detect these common and severe concurrency-memory bugs. We also built a validator,ConMem-v, to automatically prune false positives by enforcing potential bug-triggering interleavings. We evaluated ConMem using 7 open-source programs with 10 real-world concurrency bugs. ConMem detects more tested bugs (9 out of 10 bugs) than a lock-set-based race detector and an unserializable-interleaving detector, which detect 4 and 6 bugs, respectively, with a false-positive rate about one tenth of the compared tools. ConMem-v further prunes out all the false positives. ConMem has reasonable overhead suitable for development usage.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "10", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Rosa:2013:BPM, author = "Marcello {La Rosa} and Marlon Dumas and Reina Uba and Remco Dijkman", title = "Business Process Model Merging: An Approach to Business Process Consolidation", journal = j-TOSEM, volume = "22", number = "2", pages = "11:1--11:??", month = mar, year = "2013", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/2430545.2430547", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Mar 27 05:43:25 MDT 2013", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "This article addresses the problem of constructing consolidated business process models out of collections of process models that share common fragments. The article considers the construction of unions of multiple models (called merged models ) as well as intersections (called digests ). Merged models are intended for analysts who wish to create a model that subsumes a collection of process models --- typically representing variants of the same underlying process --- with the aim of replacing the variants with the merged model. Digests, on the other hand, are intended for analysts who wish to identify the most recurring fragments across a collection of process models, so that they can focus their efforts on optimizing these fragments. The article presents an algorithm for computing merged models and an algorithm for extracting digests from a merged model. The merging and digest extraction algorithms have been implemented and tested against collections of process models taken from multiple application domains. The tests show that the merging algorithm produces compact models and scales up to process models containing hundreds of nodes. Furthermore, a case study conducted in a large insurance company has demonstrated the usefulness of the merging and digest extraction operators in a practical setting.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "11", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Zheng:2013:PRP, author = "Zibin Zheng and Michael R. Lyu", title = "Personalized Reliability Prediction of {Web} Services", journal = j-TOSEM, volume = "22", number = "2", pages = "12:1--12:??", month = mar, year = "2013", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/2430545.2430548", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Mar 27 05:43:25 MDT 2013", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Service Oriented Architecture (SOA) is a business-centric IT architectural approach for building distributed systems. Reliability of service-oriented systems heavily depends on the remote Web services as well as the unpredictable Internet connections. Designing efficient and effective reliability prediction approaches of Web services has become an important research issue. In this article, we propose two personalized reliability prediction approaches of Web services, that is, neighborhood-based approach and model-based approach. The neighborhood-based approach employs past failure data of similar neighbors (either service users or Web services) to predict the Web service reliability. On the other hand, the model-based approach fits a factor model based on the available Web service failure data and use this factor model to make further reliability prediction. Extensive experiments are conducted with our real-world Web service datasets, which include about 23 millions invocation results on more than 3,000 real-world Web services. The experimental results show that our proposed reliability prediction approaches obtain better reliability prediction accuracy than other competing approaches.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "12", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Walkinshaw:2013:ACS, author = "Neil Walkinshaw and Kirill Bogdanov", title = "Automated Comparison of State-Based Software Models in Terms of Their Language and Structure", journal = j-TOSEM, volume = "22", number = "2", pages = "13:1--13:??", month = mar, year = "2013", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/2430545.2430549", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Mar 27 05:43:25 MDT 2013", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "State machines capture the sequential behavior of software systems. Their intuitive visual notation, along with a range of powerful verification and testing techniques render them an important part of the model-driven software engineering process. There are several situations that require the ability to identify and quantify the differences between two state machines (e.g. to evaluate the accuracy of state machine inference techniques is measured by the similarity of a reverse-engineered model to its reference model). State machines can be compared from two complementary perspectives: (1) In terms of their language --- the externally observable sequences of events that are permitted or not, and (2) in terms of their structure --- the actual states and transitions that govern the behavior. This article describes two techniques to compare models in terms of these two perspectives. It shows how the difference can be quantified and measured by adapting existing binary classification performance measures for the purpose. The approaches have been implemented by the authors, and the implementation is openly available. Feasibility is demonstrated via a case study to compare two real state machine inference approaches. Scalability and accuracy are assessed experimentally with respect to a large collection of randomly synthesized models.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "13", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Fleming:2013:IFT, author = "Scott D. Fleming and Chris Scaffidi and David Piorkowski and Margaret Burnett and Rachel Bellamy and Joseph Lawrance and Irwin Kwan", title = "An Information Foraging Theory Perspective on Tools for Debugging, Refactoring, and Reuse Tasks", journal = j-TOSEM, volume = "22", number = "2", pages = "14:1--14:??", month = mar, year = "2013", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/2430545.2430551", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Mar 27 05:43:25 MDT 2013", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Theories of human behavior are an important but largely untapped resource for software engineering research. They facilitate understanding of human developers' needs and activities, and thus can serve as a valuable resource to researchers designing software engineering tools. Furthermore, theories abstract beyond specific methods and tools to fundamental principles that can be applied to new situations. Toward filling this gap, we investigate the applicability and utility of Information Foraging Theory (IFT) for understanding information-intensive software engineering tasks, drawing upon literature in three areas: debugging, refactoring, and reuse. In particular, we focus on software engineering tools that aim to support information-intensive activities, that is, activities in which developers spend time seeking information. Regarding applicability, we consider whether and how the mathematical equations within IFT can be used to explain why certain existing tools have proven empirically successful at helping software engineers. Regarding utility, we applied an IFT perspective to identify recurring design patterns in these successful tools, and consider what opportunities for future research are revealed by our IFT perspective.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "14", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Chaki:2013:VAI, author = "Sagar Chaki and Christian Schallhart and Helmut Veith", title = "Verification across Intellectual Property Boundaries", journal = j-TOSEM, volume = "22", number = "2", pages = "15:1--15:??", month = mar, year = "2013", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/2430545.2430550", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Mar 27 05:43:25 MDT 2013", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "In many industries, the importance of software components provided by third-party suppliers is steadily increasing. As the suppliers seek to secure their intellectual property (IP) rights, the customer usually has no direct access to the suppliers' source code, and is able to enforce the use of verification tools only by legal requirements. In turn, the supplier has no means to convince the customer about successful verification without revealing the source code. This article presents an approach to resolve the conflict between the IP interests of the supplier and the quality interests of the customer. We introduce a protocol in which a dedicated server (called the ``amanat'') is controlled by both parties: the customer controls the verification task performed by the amanat, while the supplier controls the communication channels of the amanat to ensure that the amanat does not leak information about the source code. We argue that the protocol is both practically useful and mathematically sound. As the protocol is based on well-known (and relatively lightweight) cryptographic primitives, it allows a straightforward implementation on top of existing verification tool chains. To substantiate our security claims, we establish the correctness of the protocol by cryptographic reduction proofs.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "15", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Rosenblum:2013:MDN, author = "David S. Rosenblum", title = "In memoriam: {David Notkin} (1955--2013)", journal = j-TOSEM, volume = "22", number = "3", pages = "16:1--16:??", month = jul, year = "2013", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/2491509.2491510", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sat Jul 27 08:26:00 MDT 2013", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "16", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Xu:2013:PML, author = "Guoqing Xu and Atanas Rountev", title = "Precise memory leak detection for {Java} software using container profiling", journal = j-TOSEM, volume = "22", number = "3", pages = "17:1--17:??", month = jul, year = "2013", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/2491509.2491511", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sat Jul 27 08:26:00 MDT 2013", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/java2010.bib; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "A memory leak in a Java program occurs when object references that are no longer needed are unnecessarily maintained. Such leaks are difficult to detect because static analysis typically cannot precisely identify these redundant references, and existing dynamic leak detection tools track and report fine-grained information about individual objects, producing results that are usually hard to interpret and lack precision. In this article we introduce a novel container-based heap-tracking technique, based on the fact that many memory leaks in Java programs occur due to incorrect uses of containers, leading to containers that keep references to unused data entries. The novelty of the described work is twofold: (1) instead of tracking arbitrary objects and finding leaks by analyzing references to unused objects, the technique tracks only containers and directly identifies the source of the leak, and (2) the technique computes a confidence value for each container based on a combination of its memory consumption and its elements' staleness (time since last retrieval), while previous approaches do not consider such combined metrics. Our experimental results show that the reports generated by the proposed technique can be very precise: for two bugs reported by Sun, a known bug in SPECjbb 2000, and an example bug from IBM developerWorks, the top containers in the reports include the containers that leak memory.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "17", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Le:2013:MDF, author = "Wei Le and Mary Lou Soffa", title = "{Marple}: {Detecting} faults in path segments using automatically generated analyses", journal = j-TOSEM, volume = "22", number = "3", pages = "18:1--18:??", month = jul, year = "2013", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/2491509.2491512", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sat Jul 27 08:26:00 MDT 2013", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Generally, a fault is a property violation at a program point along some execution path. To obtain the path where a fault occurs, we can either run the program or manually identify the execution paths through code inspection. In both of the cases, only a very limited number of execution paths can be examined for a program. This article presents a static framework, Marple, that automatically detects path segments where a fault occurs at a whole program scale. An important contribution of the work is the design of a demand-driven analysis that effectively addresses scalability challenges faced by traditional path-sensitive fault detection. The techniques are made general via a specification language and an algorithm that automatically generates path-based analyses from specifications. The generality is achieved in handling both data- and control-centric faults as well as both liveness and safety properties, enabling the exploitation of fault interactions for diagnosis and efficiency. Our experimental results demonstrate the effectiveness of our techniques in detecting path segments of buffer overflows, integer violations, null-pointer dereferences, and memory leaks. Because we applied an interprocedural, path-sensitive analysis, our static fault detectors generally report better precision than the tools available for comparison. Our demand-driven analyses are shown scalable to deployed applications such as apache, putty, and ffmpeg.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "18", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Yoo:2013:FLP, author = "Shin Yoo and Mark Harman and David Clark", title = "Fault localization prioritization: Comparing information-theoretic and coverage-based approaches", journal = j-TOSEM, volume = "22", number = "3", pages = "19:1--19:??", month = jul, year = "2013", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/2491509.2491513", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sat Jul 27 08:26:00 MDT 2013", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Test case prioritization techniques seek to maximize early fault detection. Fault localization seeks to use test cases already executed to help find the fault location. There is a natural interplay between the two techniques; once a fault is detected, we often switch focus to fault fixing, for which localization may be a first step. In this article we introduce the Fault Localization Prioritization (FLP) problem, which combines prioritization and localization. We evaluate three techniques: a novel FLP technique based on information theory, FLINT (Fault Localization using INformation Theory), that we introduce in this article, a standard Test Case Prioritization (TCP) technique, and a ``test similarity technique'' used in previous work. Our evaluation uses five different releases of four software systems. The results indicate that FLP and TCP can statistically significantly reduce fault localization costs for 73\% and 76\% of cases, respectively, and that FLINT significantly outperforms similarity-based localization techniques in 52\% of the cases considered in the study.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "19", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Pradella:2013:BSC, author = "Matteo Pradella and Angelo Morzenti and Pierluigi {San Pietro}", title = "Bounded satisfiability checking of metric temporal logic specifications", journal = j-TOSEM, volume = "22", number = "3", pages = "20:1--20:??", month = jul, year = "2013", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/2491509.2491514", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sat Jul 27 08:26:00 MDT 2013", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "We introduce bounded satisfiability checking, a verification technique that extends bounded model checking by allowing also the analysis of a descriptive model, consisting of temporal logic formulae, instead of the more customary operational model, consisting of a state transition system. We define techniques for encoding temporal logic formulae into Boolean logic that support the use of bi-infinite time domain and of metric time operators. In the framework of bounded satisfiability checking, we show how a descriptive model can be refined into an operational one, and how the correctness of such a refinement can be verified for the bounded case, setting the stage for a stepwise system development method based on a bounded model refinement. Finally, we show how the adoption of a modular approach can make the bounded refinement process more manageable and efficient. All introduced concepts are extensively applied to a set of case studies, and thoroughly experimented through Zot, our SAT solver-based verification toolset.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "20", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Falessi:2013:VDR, author = "Davide Falessi and Lionel C. Briand and Giovanni Cantone and Rafael Capilla and Philippe Kruchten", title = "The value of design rationale information", journal = j-TOSEM, volume = "22", number = "3", pages = "21:1--21:??", month = jul, year = "2013", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/2491509.2491515", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sat Jul 27 08:26:00 MDT 2013", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "A complete and detailed (full) Design Rationale Documentation (DRD) could support many software development activities, such as an impact analysis or a major redesign. However, this is typically too onerous for systematic industrial use as it is not cost effective to write, maintain, or read. The key idea investigated in this article is that DRD should be developed only to the extent required to support activities particularly difficult to execute or in need of significant improvement in a particular context. The aim of this article is to empirically investigate the customization of the DRD by documenting only the information items that will probably be required for executing an activity. This customization strategy relies on the hypothesis that the value of a specific DRD information item depends on its category (e.g., assumptions, related requirements, etc.) and on the activity it is meant to support. We investigate this hypothesis through two controlled experiments involving a total of 75 master students as experimental subjects. Results show that the value of a DRD information item significantly depends on its category and, within a given category, on the activity it supports. Furthermore, on average among activities, documenting only the information items that have been required at least half of the time (i.e., the information that will probably be required in the future) leads to a customized DRD containing about half the information items of a full documentation. We expect that such a significant reduction in DRD information should mitigate the effects of some inhibitors that currently prevent practitioners from documenting design decision rationale.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "21", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Hoffman:2013:TOM, author = "Kevin Hoffman and Patrick Eugster", title = "Trading obliviousness for modularity with cooperative aspect-oriented programming", journal = j-TOSEM, volume = "22", number = "3", pages = "22:1--22:??", month = jul, year = "2013", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/2491509.2491516", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sat Jul 27 08:26:00 MDT 2013", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "The potential of aspect-oriented programming to adequately capture crosscutting concerns has yet to be fully realized. For example, authors have detailed significant challenges in creating reusable aspect component libraries. One proposed solution is to introduce Explicit Join Points (EJPs) to increase modularity by reducing obliviousness, enabling a Cooperative Aspect-Oriented Programming (Co-AOP) methodology where base code and aspects synergistically collaborate. This article explores the trade-offs between obliviousness and modularity. We briefly introduce EJPs and Co-AOP, and hypothesize how to balance obliviousness and modularity using Co-AOP. We build upon a prior empirical study to refactor three real-life Java applications to implement the exception handling concern using three distinct strategies: (1) using fully oblivious aspects in AspectJ, (2) using EJPs in a fully explicit fashion, and (3) using EJPs while following the Co-AOP methodology. We study other crosscutting concerns by refactoring a fourth application, JHotDraw. The differences in terms of common code metrics are analyzed, and the impact on modularity is assessed using design structure matrices. Results indicate that the Co-AOP methodology can in many cases significantly improve code quality attributes versus fully oblivious or fully explicit approaches. We conclude with guiding principles on the proper use of EJPs within the Co-AOP methodology.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "22", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Zhu:2013:ADP, author = "Hong Zhu and Ian Bayley", title = "An algebra of design patterns", journal = j-TOSEM, volume = "22", number = "3", pages = "23:1--23:??", month = jul, year = "2013", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/2491509.2491517", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sat Jul 27 08:26:00 MDT 2013", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "In a pattern-oriented software design process, design decisions are made by selecting and instantiating appropriate patterns, and composing them together. In our previous work, we enabled these decisions to be formalized by defining a set of operators on patterns with which instantiations and compositions can be represented. In this article, we investigate the algebraic properties of these operators. We provide and prove a complete set of algebraic laws so that equivalence between pattern expressions can be proven. Furthermore, we define an always-terminating normalization of pattern expression to a canonical form which is unique modulo equivalence in first-order logic. By a case study, the pattern-oriented design of an extensible request-handling framework, we demonstrate two practical applications of the algebraic framework. First, we can prove the correctness of a finished design with respect to the design decisions made and the formal specification of the patterns. Second, we can even derive the design from these components.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "23", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Balaban:2013:FSU, author = "Mira Balaban and Azzam Maraee", title = "Finite satisfiability of {UML} class diagrams with constrained class hierarchy", journal = j-TOSEM, volume = "22", number = "3", pages = "24:1--24:??", month = jul, year = "2013", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/2491509.2491518", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sat Jul 27 08:26:00 MDT 2013", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Models lie at the heart of the emerging model-driven engineering approach. In order to guarantee precise, consistent, and correct models, there is a need for efficient powerful methods for verifying model correctness. Class diagram is the central language within UML. Its correctness problems involve issues of contradiction, namely the consistency problem, and issues of finite instantiation, namely the finite satisfiability problem. This article analyzes the problem of finite satisfiability of class diagrams with class hierarchy constraints and generalization-set constraints. The article introduces the FiniteSat algorithm for efficient detection of finite satisfiability in such class diagrams, and analyzes its limitations in terms of complex hierarchy structures. FiniteSat is strengthened in two directions. First, an algorithm for identification of the cause for a finite satisfiability problem is introduced. Second, a method for propagation of generalization-set constraints in a class diagram is introduced. The propagation method serves as a preprocessing step that improves FiniteSat performance, and helps developers in clarifying intended constraints. These algorithms are implemented in the FiniteSatUSE tool [BGU Modeling Group 2011b], as part of our ongoing effort for constructing a model-level integrated development environment [BGU Modeling Group 2010a].", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "24", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{DeCaso:2013:EBP, author = "Guido {De Caso} and Victor Braberman and Diego Garbervetsky and Sebastian Uchitel", title = "Enabledness-based program abstractions for behavior validation", journal = j-TOSEM, volume = "22", number = "3", pages = "25:1--25:??", month = jul, year = "2013", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/2491509.2491519", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sat Jul 27 08:26:00 MDT 2013", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Code artifacts that have nontrivial requirements with respect to the ordering in which their methods or procedures ought to be called are common and appear, for instance, in the form of API implementations and objects. This work addresses the problem of validating if API implementations provide their intended behavior when descriptions of this behavior are informal, partial, or nonexistent. The proposed approach addresses this problem by generating abstract behavior models which resemble typestates. These models are statically computed and encode all admissible sequences of method calls. The level of abstraction at which such models are constructed has shown to be useful for validating code artifacts and identifying findings which led to the discovery of bugs, adjustment of the requirements expected by the engineer to the requirements implicit in the code, and the improvement of available documentation.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "25", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Marin:2013:UFS, author = "Beatriz Mar{\'\i}n and Giovanni Giachetti and Oscar Pastor and Tanja E. J. Vos and Alain Abran", title = "Using a functional size measurement procedure to evaluate the quality of models in {MDD} environments", journal = j-TOSEM, volume = "22", number = "3", pages = "26:1--26:??", month = jul, year = "2013", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/2491509.2491520", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sat Jul 27 08:26:00 MDT 2013", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Models are key artifacts in Model-Driven Development (MDD) methods. To produce high-quality software by using MDD methods, quality assurance of models is of paramount importance. To evaluate the quality of models, defect detection is considered a suitable approach and is usually applied using reading techniques. However, these reading techniques have limitations and constraints, and new techniques are required to improve the efficiency at finding as many defects as possible. This article presents a case study that has been carried out to evaluate the use of a Functional Size Measurement (FSM) procedure in the detection of defects in models of an MDD environment. To do this, we compare the defects and the defect types found by an inspection group with the defects and the defect types found by the FSM procedure. The results indicate that the FSM is useful since it finds all the defects related to a specific defect type, it finds different defect types than an inspection group, and it finds defects related to the correctness and the consistency of the models.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "26", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Sinnig:2013:UCT, author = "Daniel Sinnig and Patrice Chalin and Ferhat Khendek", title = "Use case and task models: an integrated development methodology and its formal foundation", journal = j-TOSEM, volume = "22", number = "3", pages = "27:1--27:??", month = jul, year = "2013", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/2491509.2491521", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sat Jul 27 08:26:00 MDT 2013", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "User Interface (UI) development methods are poorly integrated with standard software engineering practice. The differences in terms of artifacts involved, development philosophies, and lifecycles can often result in inconsistent system and UI specifications leading to duplication of effort and increased maintenance costs. To address such shortcomings, we propose an integrated development methodology for use case and task models. Use cases are generally used to capture functional requirements whereas task models specify the detailed user interactions with the UI. Our methodology can assist practitioners in developing software processes which allow these two kinds of artifacts to be developed in a codependent and integrated manner. We present our methodology, describe its semantic foundations along with a set of formal conformance relations, and introduce an automated verification tool.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "27", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Denaro:2013:TAA, author = "Giovanni Denaro and Mauro Pezz{\`e} and Davide Tosi", title = "Test-and-adapt: an approach for improving service interchangeability", journal = j-TOSEM, volume = "22", number = "4", pages = "28:1--28:??", month = oct, year = "2013", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/2522920.2522921", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Oct 30 12:18:03 MDT 2013", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Service-oriented applications do not fully benefit from standard APIs yet, and many applications fail to use interchangeably all the services that implement a standard service API. This article presents an approach to develop adaptation strategies that improve service interchangeability for service-oriented applications based on standard APIs. In our approach, an adaptation strategy consists of sets of parametric adaptation plans (called test-and-adapt plans), which execute test cases to reveal the occurrence of interchangeability problems, and activate runtime adaptors according to the test results. Throughout this article, we formalize the structure of the parametric test-and-adapt plans and of their execution semantics, present an algorithm for identifying correct execution orders through sets of test-and-adapt plans, provide empirical evidence of the occurrence of interchangeability problems for sample applications and services, and discuss the effectiveness of the approach in terms of avoided failures, runtime overheads and development costs.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "28", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Martignoni:2013:MTC, author = "Lorenzo Martignoni and Roberto Paleari and Alessandro Reina and Giampaolo Fresi Roglia and Danilo Bruschi", title = "A methodology for testing {CPU} emulators", journal = j-TOSEM, volume = "22", number = "4", pages = "29:1--29:??", month = oct, year = "2013", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/2522920.2522922", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Oct 30 12:18:03 MDT 2013", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "A CPU emulator is a software system that simulates a hardware CPU. Emulators are widely used by computer scientists for various kind of activities (e.g., debugging, profiling, and malware analysis). Although no theoretical limitation prevents developing an emulator that faithfully emulates a physical CPU, writing a fully featured emulator is a very challenging and error prone task. Modern CISC architectures have a very rich instruction set, some instructions lack proper specifications, and others may have undefined effects in corner cases. This article presents a testing methodology specific for CPU emulators, based on fuzzing. The emulator is ``stressed'' with specially crafted test cases, to verify whether the CPU is properly emulated or not. Improper behaviors of the emulator are detected by running the same test case concurrently on the emulated and on the physical CPUs and by comparing the state of the two after the execution. Differences in the final state testify defects in the code of the emulator. We implemented this methodology in a prototype (named as EmuFuzzer), analyzed five state-of-the-art IA-32 emulators (QEMU, Valgrind, Pin, BOCHS, and JPC), and found several defects in each of them, some of which can prevent proper execution of programs.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "29", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Chang:2013:EHH, author = "Herv{\'e} Chang and Leonardo Mariani and Mauro Pezz{\`e}", title = "Exception handlers for healing component-based systems", journal = j-TOSEM, volume = "22", number = "4", pages = "30:1--30:??", month = oct, year = "2013", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/2522920.2522923", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Oct 30 12:18:03 MDT 2013", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "To design effective exception handlers, developers must predict at design time the exceptional events that may occur at runtime, and must implement the corresponding handlers on the basis of their predictions. Designing exception handlers for component-based software systems is particularly difficult because the information required to build handlers is distributed between component and application developers. Component developers know the internal details of the components but ignore the applications, while application developers own the applications but cannot access the details required to implement handlers in components. This article addresses the problem of automatically healing the infield failures that are caused by faulty integration of OTS components. In the article, we propose a technique and a methodology to decouple the tasks of component and application developers, who will be able to share information asynchronously and independently, and communicate implicitly by developing and deploying what we call healing connectors. Component developers implement healing connectors on the basis of information about the integration problems frequently experienced by application developers. Application developers easily and safely install healing connectors in their applications without knowing the internal details of the connectors. Healing connectors heal failures activated by exceptions raised in the OTS components actually deployed in the system. The article defines healing connectors, introduces a methodology to develop and deploy healing connectors, and presents several case studies that indicate that healing connectors are effective, reusable and efficient.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "30", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Xie:2013:TAR, author = "Xiaoyuan Xie and Tsong Yueh Chen and Fei-Ching Kuo and Baowen Xu", title = "A theoretical analysis of the risk evaluation formulas for spectrum-based fault localization", journal = j-TOSEM, volume = "22", number = "4", pages = "31:1--31:??", month = oct, year = "2013", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/2522920.2522924", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Oct 30 12:18:03 MDT 2013", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "An important research area of Spectrum-Based Fault Localization (SBFL) is the effectiveness of risk evaluation formulas. Most previous studies have adopted an empirical approach, which can hardly be considered as sufficiently comprehensive because of the huge number of combinations of various factors in SBFL. Though some studies aimed at overcoming the limitations of the empirical approach, none of them has provided a completely satisfactory solution. Therefore, we provide a theoretical investigation on the effectiveness of risk evaluation formulas. We define two types of relations between formulas, namely, equivalent and better. To identify the relations between formulas, we develop an innovative framework for the theoretical investigation. Our framework is based on the concept that the determinant for the effectiveness of a formula is the number of statements with risk values higher than the risk value of the faulty statement. We group all program statements into three disjoint sets with risk values higher than, equal to, and lower than the risk value of the faulty statement, respectively. For different formulas, the sizes of their sets are compared using the notion of subset. We use this framework to identify the maximal formulas which should be the only formulas to be used in SBFL.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "31", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Qi:2013:PEB, author = "Dawei Qi and Hoang D. T. Nguyen and Abhik Roychoudhury", title = "Path exploration based on symbolic output", journal = j-TOSEM, volume = "22", number = "4", pages = "32:1--32:??", month = oct, year = "2013", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/2522920.2522925", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Oct 30 12:18:03 MDT 2013", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Efficient program path exploration is important for many software engineering activities such as testing, debugging, and verification. However, enumerating all paths of a program is prohibitively expensive. In this article, we develop a partitioning of program paths based on the program output. Two program paths are placed in the same partition if they derive the output similarly, that is, the symbolic expression connecting the output with the inputs is the same in both paths. Our grouping of paths is gradually created by a smart path exploration. Our experiments show the benefits of the proposed path exploration in test-suite construction. Our path partitioning produces a semantic signature of a program-describing all the different symbolic expressions that the output can assume along different program paths. To reason about changes between program versions, we can therefore analyze their semantic signatures. In particular, we demonstrate the applications of our path partitioning in testing and debugging of software regressions.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "32", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Tateishi:2013:PIS, author = "Takaaki Tateishi and Marco Pistoia and Omer Tripp", title = "Path- and index-sensitive string analysis based on monadic second-order logic", journal = j-TOSEM, volume = "22", number = "4", pages = "33:1--33:??", month = oct, year = "2013", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/2522920.2522926", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Oct 30 12:18:03 MDT 2013", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/string-matching.bib; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "We propose a novel technique for statically verifying the strings generated by a program. The verification is conducted by encoding the program in Monadic Second-order Logic (M2L). We use M2L to describe constraints among program variables and to abstract built-in string operations. Once we encode a program in M2L, a theorem prover for M2L, such as MONA, can automatically check if a string generated by the program satisfies a given specification, and if not, exhibit a counterexample. With this approach, we can naturally encode relationships among strings, accounting also for cases in which a program manipulates strings using indices. In addition, our string analysis is path sensitive in that it accounts for the effects of string and Boolean comparisons, as well as regular-expression matches. We have implemented our string analysis algorithm, and used it to augment an industrial security analysis for Web applications by automatically detecting and verifying sanitizers --- methods that eliminate malicious patterns from untrusted strings, making these strings safe to use in security-sensitive operations. On the 8 benchmarks we analyzed, our string analyzer discovered 128 previously unknown sanitizers, compared to 71 sanitizers detected by a previously presented string analysis.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "33", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Vouillon:2013:SCC, author = "J{\'e}r{\^o}me Vouillon and Roberto {Di Cosmo}", title = "On software component co-installability", journal = j-TOSEM, volume = "22", number = "4", pages = "34:1--34:??", month = oct, year = "2013", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/2522920.2522927", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Oct 30 12:18:03 MDT 2013", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Modern software systems are built by composing components drawn from large repositories, whose size and complexity is increasing at a very fast pace. A fundamental challenge for the maintainability and the scalability of such software systems is the ability to quickly identify the components that can or cannot be installed together: this is the co-installability problem, which is related to boolean satisfiability and is known to be algorithmically hard. This article develops a novel theoretical framework, based on formally certified semantic preserving graph-theoretic transformations, that allows us to associate to each concrete component repository a much smaller one with a simpler structure, that we call strongly flat, with equivalent co-installability properties. This flat repository can be displayed in a way that provides a concise view of the co-installability issues in the original repository, or used as a basis for various algorithms related to co-installability, like the efficient computation of strong conflicts between components. The proofs contained in this work have been machine checked using the Coq proof assistant.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "34", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Minku:2013:SEE, author = "Leandro L. Minku and Xin Yao", title = "Software effort estimation as a multiobjective learning problem", journal = j-TOSEM, volume = "22", number = "4", pages = "35:1--35:??", month = oct, year = "2013", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/2522920.2522928", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Oct 30 12:18:03 MDT 2013", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Ensembles of learning machines are promising for software effort estimation (SEE), but need to be tailored for this task to have their potential exploited. A key issue when creating ensembles is to produce diverse and accurate base models. Depending on how differently different performance measures behave for SEE, they could be used as a natural way of creating SEE ensembles. We propose to view SEE model creation as a multiobjective learning problem. A multiobjective evolutionary algorithm (MOEA) is used to better understand the tradeoff among different performance measures by creating SEE models through the simultaneous optimisation of these measures. We show that the performance measures behave very differently, presenting sometimes even opposite trends. They are then used as a source of diversity for creating SEE ensembles. A good tradeoff among different measures can be obtained by using an ensemble of MOEA solutions. This ensemble performs similarly or better than a model that does not consider these measures explicitly. Besides, MOEA is also flexible, allowing emphasis of a particular measure if desired. In conclusion, MOEA can be used to better understand the relationship among performance measures and has shown to be very effective in creating SEE models.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "35", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Lizcano:2013:WCA, author = "David Lizcano and Fernando Alonso and Javier Soriano and Genoveva Lopez", title = "A web-centred approach to end-user software engineering", journal = j-TOSEM, volume = "22", number = "4", pages = "36:1--36:??", month = oct, year = "2013", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/2522920.2522929", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Oct 30 12:18:03 MDT 2013", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "This article addresses one of the major end-user software engineering (EUSE) challenges, namely, how to motivate end users to apply unfamiliar software engineering techniques and activities to achieve their goal: translate requirements into software that meets their needs. EUSE activities are secondary to the goal that the program is helping to achieve and end-user programming is opportunistic. The challenge is then to find ways to incorporate EUSE activities into the existing workflow without users having to make substantial changes to the type of work they do or their priorities. In this article, we set out an approach to EUSE for web-based applications. We also propose a software lifecycle that is consistent with the conditions and priorities of end users without programming skills and is well-aligned with EUSE's characteristic informality, ambiguity and opportunisticness. Users applying this lifecycle manage to find solutions that they would otherwise be unable to identify. They also develop quality products. Users of this approach will not have to be acquainted with software engineering, as a framework will take them through the web-centred EUSE lifecycle step-by-step. We also report a statistical experiment in which users develop web software with and without a framework to guide them through the lifecycle. Its aim is to validate the applicability of our framework-driven lifecycle.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "36", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Mcmillan:2013:PSR, author = "Collin Mcmillan and Denys Poshyvanyk and Mark Grechanik and Qing Xie and Chen Fu", title = "{Portfolio}: Searching for relevant functions and their usages in millions of lines of code", journal = j-TOSEM, volume = "22", number = "4", pages = "37:1--37:??", month = oct, year = "2013", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/2522920.2522930", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Oct 30 12:18:03 MDT 2013", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/pagerank.bib; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Different studies show that programmers are more interested in finding definitions of functions and their uses than variables, statements, or ordinary code fragments. Therefore, developers require support in finding relevant functions and determining how these functions are used. Unfortunately, existing code search engines do not provide enough of this support to developers, thus reducing the effectiveness of code reuse. We provide this support to programmers in a code search system called Portfolio that retrieves and visualizes relevant functions and their usages. We have built Portfolio using a combination of models that address surfing behavior of programmers and sharing related concepts among functions. We conducted two experiments: first, an experiment with 49 C/C++ programmers to compare Portfolio to Google Code Search and Koders using a standard methodology for evaluating information-retrieval-based engines; and second, an experiment with 19 Java programmers to compare Portfolio to Koders. The results show with strong statistical significance that users find more relevant functions with higher precision with Portfolio than with Google Code Search and Koders. We also show that by using PageRank, Portfolio is able to rank returned relevant functions more efficiently.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "37", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", keywords = "PageRank algorithm", } @Article{Wursch:2013:EQF, author = "Michael W{\"u}rsch and Emanuel Giger and Harald C. Gall", title = "Evaluating a query framework for software evolution data", journal = j-TOSEM, volume = "22", number = "4", pages = "38:1--38:??", month = oct, year = "2013", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/2522920.2522931", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Oct 30 12:18:03 MDT 2013", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "With the steady advances in tooling to support software engineering, mastering all the features of modern IDEs, version control systems, and project trackers is becoming increasingly difficult. Answering even the most common developer questions can be surprisingly tedious and difficult. In this article we present a user study with 35 subjects to evaluate our quasi-natural language interface that provides access to various facets of the evolution of a software system but requires almost zero learning effort. Our approach is tightly woven into the Eclipse IDE and allows developers to answer questions related to source code, development history, or bug and issue management. The results of our evaluation show that our query interface can outperform classical software engineering tools in terms of correctness, while yielding significant time savings to its users and greatly advancing the state of the art in terms of usability and learnability.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "38", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Rosenblum:2014:Ea, author = "David S. Rosenblum", title = "Editorial", journal = j-TOSEM, volume = "23", number = "1", pages = "1:1--1:??", month = feb, year = "2014", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/2559939", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sat Feb 15 11:14:44 MST 2014", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "1", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Haesevoets:2014:ACS, author = "Robrecht Haesevoets and Danny Weyns and Tom Holvoet", title = "Architecture-centric support for adaptive service collaborations", journal = j-TOSEM, volume = "23", number = "1", pages = "2:1--2:??", month = feb, year = "2014", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/2559937", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sat Feb 15 11:14:44 MST 2014", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "In today's volatile business environments, collaboration between information systems, both within and across company borders, has become essential to success. An efficient supply chain, for example, requires the collaboration of distributed and heterogeneous systems of multiple companies. Developing such collaborative applications and building the supporting information systems poses several engineering challenges. A key challenge is to manage the ever-growing design complexity. In this article, we argue that software architecture should play a more prominent role in the development of collaborative applications. This can help to better manage design complexity by modularizing collaborations and separating concerns. State-of-the-art solutions, however, often lack proper abstractions for modeling collaborations at architectural level or do not reify these abstractions at detailed design and implementation level. Developers, on the other hand, rely on middleware, business process management, and Web services, techniques that mainly focus on low-level infrastructure. To address the problem of managing the design complexity of collaborative applications, we present Macodo. Macodo consists of three complementary parts: (1) a set of abstractions for modeling adaptive collaborations, (2) a set of architectural views, the main contribution of this article, that reify these abstractions at architectural level, and (3) a proof-of-concept middleware infrastructure that supports the architectural abstractions at design and implementation level. We evaluate the architectural views in a controlled experiment. Results show that the use of Macodo can reduce fault density and design complexity, and improve reuse and productivity. The main contributions of this article are illustrated in a supply chain management case.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "2", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Tappenden:2014:ACC, author = "Andrew F. Tappenden and James Miller", title = "Automated cookie collection testing", journal = j-TOSEM, volume = "23", number = "1", pages = "3:1--3:??", month = feb, year = "2014", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/2559936", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sat Feb 15 11:14:44 MST 2014", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Cookies are used by over 80\% of Web applications utilizing dynamic Web application frameworks. Applications deploying cookies must be rigorously verified to ensure that the application is robust and secure. Given the intense time-to-market pressures faced by modern Web applications, testing strategies that are low cost and automatable are required. Automated Cookie Collection Testing (CCT) is presented, and is empirically demonstrated to be a low-cost and highly effective automated testing solution for modern Web applications. Automatable test oracles and evaluation metrics specifically designed for Web applications are presented, and are shown to be significant diagnostic tests. Automated CCT is shown to detect faults within five real-world Web applications. A case study of over 580 test results for a single application is presented demonstrating that automated CCT is an effective testing strategy. Moreover, CCT is found to detect security bugs in a Web application released into full production.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "3", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Bavota:2014:ISM, author = "Gabriele Bavota and Malcom Gethers and Rocco Oliveto and Denys Poshyvanyk and Andrea de Lucia", title = "Improving software modularization via automated analysis of latent topics and dependencies", journal = j-TOSEM, volume = "23", number = "1", pages = "4:1--4:??", month = feb, year = "2014", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/2559935", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sat Feb 15 11:14:44 MST 2014", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Oftentimes, during software maintenance the original program modularization decays, thus reducing its quality. One of the main reasons for such architectural erosion is suboptimal placement of source-code classes in software packages. To alleviate this issue, we propose an automated approach to help developers improve the quality of software modularization. Our approach analyzes underlying latent topics in source code as well as structural dependencies to recommend (and explain) refactoring operations aiming at moving a class to a more suitable package. The topics are acquired via Relational Topic Models (RTM), a probabilistic topic modeling technique. The resulting tool, coined as R 3 (Rational Refactoring via RTM), has been evaluated in two empirical studies. The results of the first study conducted on nine software systems indicate that R 3 provides a coupling reduction from 10\% to 30\% among the software modules. The second study with 62 developers confirms that R 3 is able to provide meaningful recommendations (and explanations) for move class refactoring. Specifically, more than 70\% of the recommendations were considered meaningful from a functional point of view.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "4", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Liu:2014:DWN, author = "Xiao Liu and Yun Yang and Dong Yuan and Jinjun Chen", title = "Do we need to handle every temporal violation in scientific workflow systems?", journal = j-TOSEM, volume = "23", number = "1", pages = "5:1--5:??", month = feb, year = "2014", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/2559938", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sat Feb 15 11:14:44 MST 2014", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Scientific processes are usually time constrained with overall deadlines and local milestones. In scientific workflow systems, due to the dynamic nature of the underlying computing infrastructures such as grid and cloud, execution delays often take place and result in a large number of temporal violations. Since temporal violation handling is expensive in terms of both monetary costs and time overheads, an essential question aroused is ``do we need to handle every temporal violation in scientific workflow systems?'' The answer would be ``true'' according to existing works on workflow temporal management which adopt the philosophy similar to the handling of functional exceptions, that is, every temporal violation should be handled whenever it is detected. However, based on our observation, the phenomenon of self-recovery where execution delays can be automatically compensated for by the saved execution time of subsequent workflow activities has been entirely overlooked. Therefore, considering the nonfunctional nature of temporal violations, our answer is ``not necessarily true.'' To take advantage of self-recovery, this article proposes a novel adaptive temporal violation handling point selection strategy where this phenomenon is effectively utilised to avoid unnecessary temporal violation handling. Based on simulations of both real-world scientific workflows and randomly generated test cases, the experimental results demonstrate that our strategy can significantly reduce the cost on temporal violation handling by over 96\% while maintaining extreme low violation rate under normal circumstances.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "5", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Mari:2014:MBS, author = "Federico Mari and Igor Melatti and Ivano Salvo and Enrico Tronci", title = "Model-based synthesis of control software from system-level formal specifications", journal = j-TOSEM, volume = "23", number = "1", pages = "6:1--6:??", month = feb, year = "2014", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/2559934", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sat Feb 15 11:14:44 MST 2014", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Many embedded systems are indeed software-based control systems, that is, control systems whose controller consists of control software running on a microcontroller device. This motivates investigation on formal model-based design approaches for automatic synthesis of embedded systems control software. We present an algorithm, along with a tool QKS implementing it, that from a formal model (as a discrete-time linear hybrid system ) of the controlled system ( plant ), implementation specifications (that is, number of bits in the Analog-to-Digital, AD, conversion) and system-level formal specifications (that is, safety and liveness requirements for the closed loop system ) returns correct-by-construction control software that has a Worst-Case Execution Time (WCET) linear in the number of AD bits and meets the given specifications. We show feasibility of our approach by presenting experimental results on using it to synthesize control software for a buck DC-DC converter, a widely used mixed-mode analog circuit, and for the inverted pendulum.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "6", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Bodden:2014:JPI, author = "Eric Bodden and {\'E}ric Tanter and Milton Inostroza", title = "Join point interfaces for safe and flexible decoupling of aspects", journal = j-TOSEM, volume = "23", number = "1", pages = "7:1--7:??", month = feb, year = "2014", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/2559933", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sat Feb 15 11:14:44 MST 2014", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "In current aspect-oriented systems, aspects usually carry, through their pointcuts, explicit references to the base code. Those references are fragile and hinder important software engineering properties such as modular reasoning and independent evolution of aspects and base code. In this work, we introduce a novel abstraction called Join Point Interface, which, by design, aids modular reasoning and independent evolution by decoupling aspects from base code and by providing a modular type-checking algorithm. Join point interfaces can be used both with implicit announcement through pointcuts, and with explicit announcement, using closure join points. Join point interfaces further offer polymorphic dispatch on join points, with an advice-dispatch semantics akin to multimethods. To support flexible join point matching, we incorporate into our language an earlier proposal for generic advice, and introduce a mechanism for controlled global quantification. We motivate each language feature in detail, showing that it is necessary to obtain a language design that is both type safe and flexible enough to support typical aspect-oriented programming idioms. We have implemented join point interfaces as an open-source extension to AspectJ. A case study on existing aspect-oriented programs supports our design, and in particular shows the necessity of both generic interfaces and some mechanism for global quantification.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "7", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Masri:2014:PCC, author = "Wes Masri and Rawad Abou Assi", title = "Prevalence of coincidental correctness and mitigation of its impact on fault localization", journal = j-TOSEM, volume = "23", number = "1", pages = "8:1--8:??", month = feb, year = "2014", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/2559932", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sat Feb 15 11:14:44 MST 2014", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Researchers have argued that for failure to be observed the following three conditions must be met: $ C_R $ = the defect was reached; $ C_I $ = the program has transitioned into an infectious state; and $ C_P $ = the infection has propagated to the output. Coincidental Correctness (CC) arises when the program produces the correct output while condition $ C_R $ is met but not $ C_P $. We recognize two forms of coincidental correctness, weak and strong. In weak CC, $ C_R $ is met, whereas $ C_I $ might or might not be met, whereas in strong CC, both $ C_R $ and $ C_I $ are met. In this work we first show that CC is prevalent in both of its forms and demonstrate that it is a safety reducing factor for Coverage-Based Fault Localization (CBFL). We then propose two techniques for cleansing test suites from coincidental correctness to enhance CBFL, given that the test cases have already been classified as failing or passing. We evaluated the effectiveness of our techniques by empirically quantifying their accuracy in identifying weak CC tests. The results were promising, for example, the better performing technique, using 105 test suites and statement coverage, exhibited 9\% false negatives, 30\% false positives, and no false negatives nor false positives in 14.3\% of the test suites. Also using 73 test suites and more complex coverage, the numbers were 12\%, 19\%, and 15\%, respectively.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "8", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Briand:2014:TSD, author = "Lionel Briand and Davide Falessi and Shiva Nejati and Mehrdad Sabetzadeh and Tao Yue", title = "Traceability and {SysML} design slices to support safety inspections: a controlled experiment", journal = j-TOSEM, volume = "23", number = "1", pages = "9:1--9:??", month = feb, year = "2014", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/2559978", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sat Feb 15 11:14:44 MST 2014", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Certifying safety-critical software and ensuring its safety requires checking the conformance between safety requirements and design. Increasingly, the development of safety-critical software relies on modeling, and the System Modeling Language (SysML) is now commonly used in many industry sectors. Inspecting safety conformance by comparing design models against safety requirements requires safety inspectors to browse through large models and is consequently time consuming and error-prone. To address this, we have devised a mechanism to establish traceability between (functional) safety requirements and SysML design models to extract design slices (model fragments) that filter out irrelevant details but keep enough context information for the slices to be easy to inspect and understand. In this article, we report on a controlled experiment assessing the impact of the traceability and slicing mechanism on inspectors' conformance decisions and effort. Results show a significant decrease in effort and an increase in decisions' correctness and level of certainty.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "9", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Zhou:2014:DSP, author = "Yuming Zhou and Baowen Xu and Hareton Leung and Lin Chen", title = "An in-depth study of the potentially confounding effect of class size in fault prediction", journal = j-TOSEM, volume = "23", number = "1", pages = "10:1--10:??", month = feb, year = "2014", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/2556777", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sat Feb 15 11:14:44 MST 2014", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Background. The extent of the potentially confounding effect of class size in the fault prediction context is not clear, nor is the method to remove the potentially confounding effect, or the influence of this removal on the performance of fault-proneness prediction models. Objective. We aim to provide an in-depth understanding of the effect of class size on the true associations between object-oriented metrics and fault-proneness. Method. We first employ statistical methods to examine the extent of the potentially confounding effect of class size in the fault prediction context. After that, we propose a linear regression-based method to remove the potentially confounding effect. Finally, we empirically investigate whether this removal could improve the prediction performance of fault-proneness prediction models. Results. Based on open-source software systems, we found: (a) the confounding effect of class size on the associations between object-oriented metrics and fault-proneness in general exists; (b) the proposed linear regression-based method can effectively remove the confounding effect; and (c) after removing the confounding effect, the prediction performance of fault prediction models with respect to both ranking and classification can in general be significantly improved. Conclusion. We should remove the confounding effect of class size when building fault prediction models.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "10", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Rosenblum:2014:Eb, author = "David S. Rosenblum", title = "Editorial", journal = j-TOSEM, volume = "23", number = "2", pages = "11:1--11:??", month = mar, year = "2014", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/2581373", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Apr 2 16:21:37 MDT 2014", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "11", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Pan:2014:GTG, author = "Kai Pan and Xintao Wu and Tao Xie", title = "Guided test generation for database applications via synthesized database interactions", journal = j-TOSEM, volume = "23", number = "2", pages = "12:1--12:??", month = mar, year = "2014", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/2491529", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Apr 2 16:21:37 MDT 2014", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Testing database applications typically requires the generation of tests consisting of both program inputs and database states. Recently, a testing technique called Dynamic Symbolic Execution (DSE) has been proposed to reduce manual effort in test generation for software applications. However, applying DSE to generate tests for database applications faces various technical challenges. For example, the database application under test needs to physically connect to the associated database, which may not be available for various reasons. The program inputs whose values are used to form the executed queries are not treated symbolically, posing difficulties for generating valid database states or appropriate database states for achieving high coverage of query-result-manipulation code. To address these challenges, in this article, we propose an approach called SynDB that synthesizes new database interactions to replace the original ones from the database application under test. In this way, we bridge various constraints within a database application: query-construction constraints, query constraints, database schema constraints, and query-result-manipulation constraints. We then apply a state-of-the-art DSE engine called Pex for .NET from Microsoft Research to generate both program inputs and database states. The evaluation results show that tests generated by our approach can achieve higher code coverage than existing test generation approaches for database applications.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "12", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Scanniello:2014:IUA, author = "Giuseppe Scanniello and Carmine Gravino and Marcela Genero and Jose' A. Cruz-Lemus and Genoveffa Tortora", title = "On the impact of {UML} analysis models on source-code comprehensibility and modifiability", journal = j-TOSEM, volume = "23", number = "2", pages = "13:1--13:??", month = mar, year = "2014", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/2491912", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Apr 2 16:21:37 MDT 2014", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "We carried out a family of experiments to investigate whether the use of UML models produced in the requirements analysis process helps in the comprehensibility and modifiability of source code. The family consists of a controlled experiment and 3 external replications carried out with students and professionals from Italy and Spain. 86 participants with different abilities and levels of experience with UML took part. The results of the experiments were integrated through the use of meta-analysis. The results of both the individual experiments and meta-analysis indicate that UML models produced in the requirements analysis process influence neither the comprehensibility of source code nor its modifiability.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "13", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Fritz:2014:DKM, author = "Thomas Fritz and Gail C. Murphy and Emerson Murphy-Hill and Jingwen Ou and Emily Hill", title = "Degree-of-knowledge: Modeling a developer's knowledge of code", journal = j-TOSEM, volume = "23", number = "2", pages = "14:1--14:??", month = mar, year = "2014", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/2512207", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Apr 2 16:21:37 MDT 2014", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "As a software system evolves, the system's codebase constantly changes, making it difficult for developers to answer such questions as who is knowledgeable about particular parts of the code or who needs to know about changes made. In this article, we show that an externalized model of a developer's individual knowledge of code can make it easier for developers to answer such questions. We introduce a degree-of-knowledge model that computes automatically, for each source-code element in a codebase, a real value that represents a developer's knowledge of that element based on a developer's authorship and interaction data. We present evidence that shows that both authorship and interaction data of the code are important in characterizing a developer's knowledge of code. We report on the usage of our model in case studies on expert finding, knowledge transfer, and identifying changes of interest. We show that our model improves upon an existing expertise-finding approach and can accurately identify changes for which a developer should likely be aware. We discuss how our model may provide a starting point for knowledge transfer but that more refinement is needed. Finally, we discuss the robustness of the model across multiple development sites.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "14", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Lu:2014:RBS, author = "Lunjin Lu and Dae-Kyoo Kim", title = "Required behavior of sequence diagrams: Semantics and conformance", journal = j-TOSEM, volume = "23", number = "2", pages = "15:1--15:??", month = mar, year = "2014", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/2523108", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Apr 2 16:21:37 MDT 2014", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Many reusable software artifacts such as design patterns and design aspects make use of UML sequence diagrams to describe interaction behaviors. When a pattern or an aspect is reused in an application, it is important to ensure that the sequence diagrams for the application conform to the corresponding sequence diagrams for the pattern or aspect. Reasoning about conformance relationship between sequence diagrams has not been addressed adequately in literature. In this article, we focus on required behaviors specified by a UML sequence diagram and provide a semantic-based formalization of conformance relationships between sequence diagrams. A novel trace semantics is first given that captures precisely required behaviors. A refinement relation between sequence diagrams is then defined based on the semantics. The refinement relation allows a sequence diagram to be refined by changing its structure so long as its required behaviors are preserved. A conformance relation between sequence diagrams is finally given that includes the refinement relation as a special case. It allows one to introduce and rename lifelines, messages, and system variables when reusing sequence diagrams. Properties of the semantics, refinement, and conformance relations are studied. Two case studies are provided to illustrate the efficacy of semantic-based conformance reasoning.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "15", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Unterkalmsteiner:2014:TRE, author = "M. Unterkalmsteiner and R. Feldt and T. Gorschek", title = "A taxonomy for requirements engineering and software test alignment", journal = j-TOSEM, volume = "23", number = "2", pages = "16:1--16:??", month = mar, year = "2014", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/2523088", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Apr 2 16:21:37 MDT 2014", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Requirements Engineering and Software Testing are mature areas and have seen a lot of research. Nevertheless, their interactions have been sparsely explored beyond the concept of traceability. To fill this gap, we propose a definition of requirements engineering and software test (REST) alignment, a taxonomy that characterizes the methods linking the respective areas, and a process to assess alignment. The taxonomy can support researchers to identify new opportunities for investigation, as well as practitioners to compare alignment methods and evaluate alignment, or lack thereof. We constructed the REST taxonomy by analyzing alignment methods published in literature, iteratively validating the emerging dimensions. The resulting concept of an information dyad characterizes the exchange of information required for any alignment to take place. We demonstrate use of the taxonomy by applying it on five in-depth cases and illustrate angles of analysis on a set of thirteen alignment methods. In addition, we developed an assessment framework (REST-bench), applied it in an industrial assessment, and showed that it, with a low effort, can identify opportunities to improve REST alignment. Although we expect that the taxonomy can be further refined, we believe that the information dyad is a valid and useful construct to understand alignment.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "16", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Ganesan:2014:AED, author = "Dharmalingam Ganesan and Mikael Lindvall", title = "{ADAM}: External dependency-driven architecture discovery and analysis of quality attributes", journal = j-TOSEM, volume = "23", number = "2", pages = "17:1--17:??", month = mar, year = "2014", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/2529998", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Apr 2 16:21:37 MDT 2014", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "This article introduces the Architecture Discovery and Analysis Method (ADAM). ADAM supports the discovery of module and runtime views as well as the analysis of quality attributes, such as testability, performance, and maintainability, of software systems. The premise of ADAM is that the implementation constructs, architecture constructs, concerns, and quality attributes are all influenced by the external entities (e.g., libraries, frameworks, COTS software) used by the system under analysis. The analysis uses such external dependencies to identify, classify, and review a minimal set of key source-code files supported by a knowledge base of the external entities. Given the benefits of analyzing external dependencies as a way to discover architectures and potential risks, it is demonstrated that dependencies to external entities are useful not only for architecture discovery but also for analysis of quality attributes. ADAM is evaluated using the NASA's Space Network Access System (SNAS). The results show that this method offers systematic guidelines for discovering the architecture and locating potential risks (e.g., low testability and decreased performance) that are hidden deep inside the system implementation. Some generally applicable lessons for developers and analysts, as well as threats to validity are also discussed.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "17", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Stol:2014:KFA, author = "Klaas-Jan Stol and Paris Avgeriou and Muhammad Ali Babar and Yan Lucas and Brian Fitzgerald", title = "Key factors for adopting inner source", journal = j-TOSEM, volume = "23", number = "2", pages = "18:1--18:??", month = mar, year = "2014", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/2533685", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Apr 2 16:21:37 MDT 2014", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "A number of organizations have adopted Open Source Software (OSS) development practices to support or augment their software development processes, a phenomenon frequently referred to as Inner Source. However the adoption of Inner Source is not a straightforward issue. Many organizations are struggling with the question of whether Inner Source is an appropriate approach to software development for them in the first place. This article presents a framework derived from the literature on Inner Source, which identifies nine important factors that need to be considered when implementing Inner Source. The framework can be used as a probing instrument to assess an organization on these nine factors so as to gain an understanding of whether or not Inner Source is suitable. We applied the framework in three case studies at Philips Healthcare, Neopost Technologies, and Rolls-Royce, which are all large organizations that have either adopted Inner Source or were planning to do so. Based on the results presented in this article, we outline directions for future research.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "18", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Harman:2014:ESS, author = "Mark Harman and Jens Krinke and Inmaculada Medina-Bulo and Francisco Palomo-Lozano and Jian Ren and Shin Yoo", title = "Exact scalable sensitivity analysis for the next release problem", journal = j-TOSEM, volume = "23", number = "2", pages = "19:1--19:??", month = mar, year = "2014", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/2537853", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Apr 2 16:21:37 MDT 2014", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "The nature of the requirements analysis problem, based as it is on uncertain and often inaccurate estimates of costs and effort, makes sensitivity analysis important. Sensitivity analysis allows the decision maker to identify those requirements and budgets that are particularly sensitive to misestimation. However, finding scalable sensitivity analysis techniques is not easy because the underlying optimization problem is NP-hard. This article introduces an approach to sensitivity analysis based on exact optimization. We implemented this approach as a tool, O ATSAC, which allowed us to experimentally evaluate the scalability and applicability of Requirements Sensitivity Analysis (RSA). Our results show that OATSAC scales sufficiently well for practical applications in Requirements Sensitivity Analysis. We also show how the sensitivity analysis can yield insights into difficult and otherwise obscure interactions between budgets, requirements costs, and estimate inaccuracies using a real-world case study.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "19", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Moscato:2014:DTV, author = "Mariano M. Moscato and Carlos G. Lopez Pombo and Marcelo F. Frias", title = "{Dynamite}: a tool for the verification of alloy models based on {PVS}", journal = j-TOSEM, volume = "23", number = "2", pages = "20:1--20:??", month = mar, year = "2014", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/2544136", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Apr 2 16:21:37 MDT 2014", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Automatic analysis of Alloy models is supported by the Alloy Analyzer, a tool that translates an Alloy model to a propositional formula that is then analyzed using off-the-shelf SAT solvers. The translation requires user-provided bounds on the sizes of data domains. The analysis is limited by the bounds and is therefore partial. Thus, the Alloy Analyzer may not be appropriate for the analysis of critical applications where more conclusive results are necessary. Dynamite is an extension of PVS that embeds a complete calculus for Alloy. It also includes extensions to PVS that allow one to improve the proof effort by, for instance, automatically analyzing new hypotheses with the aid of the Alloy Analyzer. Since PVS sequents may get cluttered with unnecessary formulas, we use the Alloy unsat-core extraction feature in order to refine proof sequents. An internalization of Alloy's syntax as an Alloy specification allows us to use the Alloy Analyzer for producing witnesses for proving existentially quantified formulas. Dynamite complements the partial automatic analysis offered by the Alloy Analyzer with semi-automatic verification through theorem proving. It also improves the theorem proving experience by using the Alloy Analyzer for early error detection, sequent refinement, and witness generation.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "20", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Islam:2014:GTC, author = "Mainul Islam and Christoph Csallner", title = "Generating Test Cases for Programs that Are Coded against Interfaces and Annotations", journal = j-TOSEM, volume = "23", number = "3", pages = "21:1--21:??", month = may, year = "2014", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/2544135", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Oct 7 19:00:52 MDT 2014", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Automatic test case generation for software programs is very powerful but suffers from a key limitation. That is, most current test case generation techniques fail to cover testee code when covering that code requires additional pieces of code not yet part of the program under test. To address some of these cases, the Pex state-of-the-art test case generator can generate basic mock code. However, current test case generators cannot handle cases in which the code under test uses multiple interfaces, annotations, or reflection. To cover such code in an object-oriented setting, we describe a novel technique for generating test cases and mock classes. The technique consists of collecting constraints on interfaces, annotations, and reflection, combining them with program constraints collected during dynamic symbolic execution, encoding them in a constraint system, solving them with an off-the-shelf constraint solver, and mapping constraint solutions to test cases and custom mock classes. We demonstrate the value of this technique on open-source applications. Our approach covered such third-party code with generated mock classes, while competing approaches failed to cover the code and sometimes produced unintended side-effects such as filling the screen with dialog boxes and writing into the file system.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "21", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Layman:2014:MER, author = "Lucas Layman and Victor R. Basili and Marvin V. Zelkowitz", title = "A Methodology for Exposing Risk in Achieving Emergent System Properties", journal = j-TOSEM, volume = "23", number = "3", pages = "22:1--22:??", month = may, year = "2014", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/2560048", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Oct 7 19:00:52 MDT 2014", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Determining whether systems achieve desired emergent properties, such as safety or reliability, requires an analysis of the system as a whole, often in later development stages when changes are difficult and costly to implement. In this article we propose the Process Risk Indicator (PRI) methodology for analyzing and evaluating emergent properties early in the development cycle. A fundamental assumption of system engineering is that risk mitigation processes reduce system risks, yet these processes may also be a source of risk: (1) processes may not be appropriate for achieving the desired emergent property; or (2) processes may not be followed appropriately. PRI analyzes development process artifacts (e.g., designs pertaining to reliability or safety analysis reports) to quantify process risks that may lead to higher system risk. We applied PRI to the hazard analysis processes of a network-centric, Department of Defense system-of-systems and two NASA spaceflight projects to assess the risk of not achieving one such emergent property, software safety, during the early stages of the development lifecycle. The PRI methodology was used to create measurement baselines for process indicators of software safety risk, to identify risks in the hazard analysis process, and to provide feedback to projects for reducing these risks.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "22", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Xu:2014:SRB, author = "Guoqing Xu and Nick Mitchell and Matthew Arnold and Atanas Rountev and Edith Schonberg and Gary Sevitsky", title = "Scalable Runtime Bloat Detection Using Abstract Dynamic Slicing", journal = j-TOSEM, volume = "23", number = "3", pages = "23:1--23:??", month = may, year = "2014", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/2560047", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Oct 7 19:00:52 MDT 2014", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Many large-scale Java applications suffer from runtime bloat. They execute large volumes of methods and create many temporary objects, all to execute relatively simple operations. There are large opportunities for performance optimizations in these applications, but most are being missed by existing optimization and tooling technology. While JIT optimizations struggle for a few percent improvement, performance experts analyze deployed applications and regularly find gains of 2$ \times $ or more. Finding such big gains is difficult, for both humans and compilers, because of the diffuse nature of runtime bloat. Time is spread thinly across calling contexts, making it difficult to judge how to improve performance. Our experience shows that, in order to identify large performance bottlenecks in a program, it is more important to understand its dynamic dataflow than traditional performance metrics, such as running time. This article presents a general framework for designing and implementing scalable analysis algorithms to find causes of bloat in Java programs. At the heart of this framework is a generalized form of runtime dependence graph computed by abstract dynamic slicing, a semantics-aware technique that achieves high scalability by performing dynamic slicing over bounded abstract domains. The framework is instantiated to create two independent dynamic analyses, copy profiling and cost-benefit analysis, that help programmers identify performance bottlenecks by identifying, respectively, high-volume copy activities and data structures that have high construction cost but low benefit for the forward execution. We have successfully applied these analyses to large-scale and long-running Java applications. We show that both analyses are effective at detecting inefficient operations that can be optimized for better performance. We also demonstrate that the general framework is flexible enough to be instantiated for dynamic analyses in a variety of application domains.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "23", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{deFrancesco:2014:GTE, author = "Nicoletta de Francesco and Giuseppe Lettieri and Antonella Santone and Gigliola Vaglini", title = "{GreASE}: a Tool for Efficient {``Nonequivalence''} Checking", journal = j-TOSEM, volume = "23", number = "3", pages = "24:1--24:??", month = may, year = "2014", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/2560563", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Oct 7 19:00:52 MDT 2014", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Equivalence checking plays a crucial role in formal verification to ensure the correctness of concurrent systems. However, this method cannot be scaled as easily with the increasing complexity of systems due to the state explosion problem. This article presents an efficient procedure, based on heuristic search, for checking Milner's strong and weak equivalence; to achieve higher efficiency, we actually search for a difference between two processes to be discovered as soon as possible, thus the heuristics aims to find a counterexample, even if not the minimum one, to prove nonequivalence. The presented algorithm builds the system state graph on-the-fly, during the checking, and the heuristics promotes the construction of the more promising subgraph. The heuristic function is syntax based, but the approach can be applied to different specification languages such as CCS, LOTOS, and CSP, provided that the language semantics is based on the concept of transition. The algorithm to explore the search space of the problem is based on a greedy technique; GreASE (Greedy Algorithm for System Equivalence), the tool supporting the approach, is used to evaluate the achieved reduction of both state-space size and time with respect to other verification environments.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "24", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Behjati:2014:ALC, author = "Razieh Behjati and Shiva Nejati and Lionel C. Briand", title = "Architecture-Level Configuration of Large-Scale Embedded Software Systems", journal = j-TOSEM, volume = "23", number = "3", pages = "25:1--25:??", month = may, year = "2014", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/2581376", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Oct 7 19:00:52 MDT 2014", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Configuration in the domain of Integrated Control Systems (ICS) is largely manual, laborious, and error prone. In this article, we propose a model-based configuration approach that provides automation support for reducing configuration effort and the likelihood of configuration errors in the ICS domain. We ground our approach on component-based specifications of ICS families. We then develop a configuration algorithm using constraint satisfaction techniques over finite domains to generate products that are consistent with respect to their ICS family specifications. We reason about the termination and consistency of our configuration algorithm analytically. We evaluate the effectiveness of our configuration approach by applying it to a real subsea oil production system. Specifically, we have rebuilt a number of existing verified product configurations of our industry partner. Our experience shows that our approach can automatically infer up to 50\% of the configuration decisions, and reduces the complexity of making configuration decisions.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "25", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Stolee:2014:SSS, author = "Kathryn T. Stolee and Sebastian Elbaum and Daniel Dobos", title = "Solving the Search for Source Code", journal = j-TOSEM, volume = "23", number = "3", pages = "26:1--26:??", month = may, year = "2014", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/2581377", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Oct 7 19:00:52 MDT 2014", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Programmers frequently search for source code to reuse using keyword searches. The search effectiveness in facilitating reuse, however, depends on the programmer's ability to specify a query that captures how the desired code may have been implemented. Further, the results often include many irrelevant matches that must be filtered manually. More semantic search approaches could address these limitations, yet existing approaches are either not flexible enough to find approximate matches or require the programmer to define complex specifications as queries. We propose a novel approach to semantic code search that addresses several of these limitations and is designed for queries that can be described using a concrete input/output example. In this approach, programmers write lightweight specifications as inputs and expected output examples. Unlike existing approaches to semantic search, we use an SMT solver to identify programs or program fragments in a repository, which have been automatically transformed into constraints using symbolic analysis, that match the programmer-provided specification. We instantiated and evaluated this approach in subsets of three languages, the Java String library, Yahoo! Pipes mashup language, and SQL select statements, exploring its generality, utility, and trade-offs. The results indicate that this approach is effective at finding relevant code, can be used on its own or to filter results from keyword searches to increase search precision, and is adaptable to find approximate matches and then guide modifications to match the user specifications when exact matches do not already exist. These gains in precision and flexibility come at the cost of performance, for which underlying factors and mitigation strategies are identified.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "26", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Rosenblum:2014:E, author = "David S. Rosenblum", title = "Editorial", journal = j-TOSEM, volume = "23", number = "4", pages = "27:1--27:??", month = aug, year = "2014", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/2656368", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Oct 7 19:00:54 MDT 2014", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "27", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Murphy:2014:ISI, author = "Gail C. Murphy and Mauro Pezz{\'e}", title = "Introduction to the Special Issue {International Conference on Software Engineering (ICSE 2012)}", journal = j-TOSEM, volume = "23", number = "4", pages = "28:1--28:??", month = aug, year = "2014", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/2658849", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Oct 7 19:00:54 MDT 2014", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "28", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Moller:2014:ADC, author = "Anders M{\o}ller and Mathias Schwarz", title = "Automated Detection of Client-State Manipulation Vulnerabilities", journal = j-TOSEM, volume = "23", number = "4", pages = "29:1--29:??", month = aug, year = "2014", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/2531921", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Oct 7 19:00:54 MDT 2014", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Web application programmers must be aware of a wide range of potential security risks. Although the most common pitfalls are well described and categorized in the literature, it remains a challenging task to ensure that all guidelines are followed. For this reason, it is desirable to construct automated tools that can assist the programmers in the application development process by detecting weaknesses. Many vulnerabilities are related to Web application code that stores references to application state in the generated HTML documents to work around the statelessness of the HTTP protocol. In this article, we show that such client-state manipulation vulnerabilities are amenable to tool-supported detection. We present a static analysis for the widely used frameworks Java Servlets, JSP, and Struts. Given a Web application archive as input, the analysis identifies occurrences of client state and infers the information flow between the client state and the shared application state on the server. This makes it possible to check how client-state manipulation performed by malicious users may affect the shared application state and cause leakage or modifications of sensitive information. The warnings produced by the tool help the application programmer identify vulnerabilities before deployment. The inferred information can also be applied to configure a security filter that automatically guards against attacks at runtime. Experiments on a collection of open-source Web applications indicate that the static analysis is able to effectively help the programmer prevent client-state manipulation vulnerabilities. The analysis detects a total of 4,802 client-state parameters in ten applications, whereof 4,437 are classified as safe and 241 reveal exploitable vulnerabilities.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "29", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Nguyen:2014:DDI, author = "Thanhvu Nguyen and Deepak Kapur and Westley Weimer and Stephanie Forrest", title = "{DIG}: a Dynamic Invariant Generator for Polynomial and Array Invariants", journal = j-TOSEM, volume = "23", number = "4", pages = "30:1--30:??", month = aug, year = "2014", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/2556782", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Oct 7 19:00:54 MDT 2014", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "This article describes and evaluates DIG, a dynamic invariant generator that infers invariants from observed program traces, focusing on numerical and array variables. For numerical invariants, DIG supports both nonlinear equalities and inequalities of arbitrary degree defined over numerical program variables. For array invariants, DIG generates nested relations among multidimensional array variables. These properties are nontrivial and challenging for current static and dynamic invariant analysis methods. The key difference between DIG and existing dynamic methods is its generative technique, which infers invariants directly from traces, instead of using traces to filter out predefined templates. To generate accurate invariants, DIG employs ideas and tools from the mathematical and formal methods domains, including equation solving, polyhedra construction, and theorem proving; for example, DIG represents and reasons about polynomial invariants using geometric shapes. Experimental results on 27 mathematical algorithms and an implementation of AES encryption provide evidence that DIG is effective at generating invariants for these programs.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "30", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Maalej:2014:CPC, author = "Walid Maalej and Rebecca Tiarks and Tobias Roehm and Rainer Koschke", title = "On the Comprehension of Program Comprehension", journal = j-TOSEM, volume = "23", number = "4", pages = "31:1--31:??", month = aug, year = "2014", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/2622669", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Oct 7 19:00:54 MDT 2014", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Research in program comprehension has evolved considerably over the past decades. However, only little is known about how developers practice program comprehension in their daily work. This article reports on qualitative and quantitative research to comprehend the strategies, tools, and knowledge used for program comprehension. We observed 28 professional developers, focusing on their comprehension behavior, strategies followed, and tools used. In an online survey with 1,477 respondents, we analyzed the importance of certain types of knowledge for comprehension and where developers typically access and share this knowledge. We found that developers follow pragmatic comprehension strategies depending on context. They try to avoid comprehension whenever possible and often put themselves in the role of users by inspecting graphical interfaces. Participants confirmed that standards, experience, and personal communication facilitate comprehension. The team size, its distribution, and open-source experience influence their knowledge sharing and access behavior. While face-to-face communication is preferred for accessing knowledge, knowledge is frequently shared in informal comments. Our results reveal a gap between research and practice, as we did not observe any use of comprehension tools and developers seem to be unaware of them. Overall, our findings call for reconsidering the research agendas towards context-aware tool support.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "31", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Zhang:2014:ATV, author = "Pingyu Zhang and Sebastian Elbaum", title = "Amplifying Tests to Validate Exception Handling Code: an Extended Study in the Mobile Application Domain", journal = j-TOSEM, volume = "23", number = "4", pages = "32:1--32:??", month = aug, year = "2014", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/2652483", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Oct 7 19:00:54 MDT 2014", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Validating code handling exceptional behavior is difficult, particularly when dealing with external resources that may be noisy and unreliable, as it requires (1) systematic exploration of the space of exceptions that may be thrown by the external resources, and (2) setup of the context to trigger specific patterns of exceptions. In this work, we first present a study quantifying the magnitude of the problem by inspecting the bug repositories of a set of popular applications in the increasingly relevant domain of Android mobile applications. The study revealed that 22\% of the confirmed and fixed bugs have to do with poor exceptional handling code, and half of those correspond to interactions with external resources. We then present an approach that addresses this challenge by performing an systematic amplification of the program space explored by a test by manipulating the behavior of external resources. Each amplification attempts to expose a program's exception handling constructs to new behavior by mocking an external resource so that it returns normally or throws an exception following a predefined set of patterns. Our assessment of the approach indicates that it can be fully automated, is powerful enough to detect 67\% of the faults reported in the bug reports of this kind, and is precise enough that 78\% of the detected anomalies are fixed, and it has a great potential to assist developers.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "32", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Hall:2014:SCS, author = "Tracy Hall and Min Zhang and David Bowes and Yi Sun", title = "Some Code Smells Have a Significant but Small Effect on Faults", journal = j-TOSEM, volume = "23", number = "4", pages = "33:1--33:??", month = aug, year = "2014", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/2629648", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Oct 7 19:00:54 MDT 2014", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "We investigate the relationship between faults and five of Fowler et al.'s least-studied smells in code: Data Clumps, Switch Statements, Speculative Generality, Message Chains, and Middle Man. We developed a tool to detect these five smells in three open-source systems: Eclipse, ArgoUML, and Apache Commons. We collected fault data from the change and fault repositories of each system. We built Negative Binomial regression models to analyse the relationships between smells and faults and report the McFadden effect size of those relationships. Our results suggest that Switch Statements had no effect on faults in any of the three systems; Message Chains increased faults in two systems; Message Chains which occurred in larger files reduced faults; Data Clumps reduced faults in Apache and Eclipse but increased faults in ArgoUML; Middle Man reduced faults only in ArgoUML, and Speculative Generality reduced faults only in Eclipse. File size alone affects faults in some systems but not in all systems. Where smells did significantly affect faults, the size of that effect was small (always under 10 percent). Our findings suggest that some smells do indicate fault-prone code in some circumstances but that the effect that these smells have on faults is small. Our findings also show that smells have different effects on different systems. We conclude that arbitrary refactoring is unlikely to significantly reduce fault-proneness and in some cases may increase fault-proneness.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "33", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Li:2014:SSA, author = "Yueqi Li and S. C. Cheung and Xiangyu Zhang and Yepang Liu", title = "Scaling Up Symbolic Analysis by Removing $z$-Equivalent States", journal = j-TOSEM, volume = "23", number = "4", pages = "34:1--34:??", month = aug, year = "2014", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/2652484", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Oct 7 19:00:54 MDT 2014", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Path explosion is a major issue in applying path-sensitive symbolic analysis to large programs. We observe that many symbolic states generated by the symbolic analysis of a procedure are indistinguishable to its callers. It is, therefore, possible to keep only one state from each set of equivalent symbolic states without affecting the analysis result. Based on this observation, we propose an equivalence relation called z-equivalence, which is weaker than logical equivalence, to relate a large number of z-equivalent states. We prove that z-equivalence is strong enough to guarantee that paths to be traversed by the symbolic analysis of two z-equivalent states are identical, giving the same solutions to satisfiability and validity queries. We propose a sound linear algorithm to detect z-equivalence. Our experiments show that the symbolic analysis that leverages z-equivalence is able to achieve more than ten orders of magnitude reduction in terms of search space. The reduction significantly alleviates the path explosion problem, enabling us to apply symbolic analysis in large programs such as Hadoop and Linux Kernel.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "34", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Rigby:2014:PRO, author = "Peter C. Rigby and Daniel M. German and Laura Cowen and Margaret-Anne Storey", title = "Peer Review on Open-Source Software Projects: Parameters, Statistical Models, and Theory", journal = j-TOSEM, volume = "23", number = "4", pages = "35:1--35:??", month = aug, year = "2014", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/2594458", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Oct 7 19:00:54 MDT 2014", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Peer review is seen as an important quality-assurance mechanism in both industrial development and the open-source software (OSS) community. The techniques for performing inspections have been well studied in industry; in OSS development, software peer reviews are not as well understood. To develop an empirical understanding of OSS peer review, we examine the review policies of 25 OSS projects and study the archival records of six large, mature, successful OSS projects. We extract a series of measures based on those used in traditional inspection experiments. We measure the frequency of review, the size of the contribution under review, the level of participation during review, the experience and expertise of the individuals involved in the review, the review interval, and the number of issues discussed during review. We create statistical models of the review efficiency, review interval, and effectiveness, the issues discussed during review, to determine which measures have the largest impact on review efficacy. We find that OSS peer reviews are conducted asynchronously by empowered experts who focus on changes that are in their area of expertise. Reviewers provide timely, regular feedback on small changes. The descriptive statistics clearly show that OSS review is drastically different from traditional inspection.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "35", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Ricca:2014:AES, author = "Filippo Ricca and Giuseppe Scanniello and Marco Torchiano and Gianna Reggio and Egidio Astesiano", title = "Assessing the Effect of Screen Mockups on the Comprehension of Functional Requirements", journal = j-TOSEM, volume = "24", number = "1", pages = "1:1--1:??", month = sep, year = "2014", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/2629457", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Oct 7 19:00:56 MDT 2014", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Over the last few years, the software engineering community has proposed a number of modeling methods to represent functional requirements. Among them, use cases are recognized as an easy to use and intuitive way to capture and define such requirements. Screen mockups (also called user-interface sketches or user interface-mockups) have been proposed as a complement to use cases for improving the comprehension of functional requirements. In this article, we aim at quantifying the benefits achievable by augmenting use cases with screen mockups in the comprehension of functional requirements with respect to effectiveness, effort, and efficiency. For this purpose, we conducted a family of four controlled experiments, involving 139 participants having different profiles. The experiments involved comprehension tasks performed on the requirements documents of two desktop applications. Independently from the participants' profile, we found a statistically significant large effect of the presence of screen mockups on both comprehension effectiveness and comprehension task efficiency. No significant effect was observed on the effort to complete tasks. The main pragmatic lesson is that the screen mockups addition to use cases is able to almost double the efficiency of comprehension tasks.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "1", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Banach:2014:CAM, author = "Richard Banach and Huibiao Zhu and Wen Su and Xiaofeng Wu", title = "A Continuous {ASM} Modelling Approach to Pacemaker Sensing", journal = j-TOSEM, volume = "24", number = "1", pages = "2:1--2:??", month = sep, year = "2014", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/2610375", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Oct 7 19:00:56 MDT 2014", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "The cardiac pacemaker system, proposed as a problem topic in the Verification Grand Challenge, offers a range of difficulties to address for formal specification, development, and verification technologies. We focus on the sensing problem, the question of whether the heart has produced a spontaneous heartbeat or not. This question is plagued by uncertainties arising from the often unpredictable environment that a real pacemaker finds itself in. We develop a time domain tracking approach to this problem, as a complement to the usual frequency domain approach most frequently used. We develop our case study in the continuous ASM (Abstract State Machine) formalism, which is briefly summarised, through a series of refinement and retrenchment steps, each adding new levels of complexity to the model.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "2", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Yang:2014:DIS, author = "Guowei Yang and Suzette Person and Neha Rungta and Sarfraz Khurshid", title = "Directed Incremental Symbolic Execution", journal = j-TOSEM, volume = "24", number = "1", pages = "3:1--3:??", month = sep, year = "2014", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/2629536", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Oct 7 19:00:56 MDT 2014", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "The last few years have seen a resurgence of interest in the use of symbolic execution-a program analysis technique developed more than three decades ago to analyze program execution paths. Scaling symbolic execution to real systems remains challenging despite recent algorithmic and technological advances. An effective approach to address scalability is to reduce the scope of the analysis. For example, in regression analysis, differences between two related program versions are used to guide the analysis. While such an approach is intuitive, finding efficient and precise ways to identify program differences, and characterize their impact on how the program executes has proved challenging in practice. In this article, we present Directed Incremental Symbolic Execution (DiSE), a novel technique for detecting and characterizing the impact of program changes to scale symbolic execution. The novelty of DiSE is to combine the efficiencies of static analysis techniques to compute program difference information with the precision of symbolic execution to explore program execution paths and generate path conditions affected by the differences. DiSE complements other reduction and bounding techniques for improving symbolic execution. Furthermore, DiSE does not require analysis results to be carried forward as the software evolves-only the source code for two related program versions is required. An experimental evaluation using our implementation of DiSE illustrates its effectiveness at detecting and characterizing the effects of program changes.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "3", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Santhiar:2014:MUT, author = "Anirudh Santhiar and Omesh Pandita and Aditya Kanade", title = "Mining Unit Tests for Discovery and Migration of Math {APIs}", journal = j-TOSEM, volume = "24", number = "1", pages = "4:1--4:??", month = sep, year = "2014", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/2629506", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Oct 7 19:00:56 MDT 2014", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Today's programming languages are supported by powerful third-party APIs. For a given application domain, it is common to have many competing APIs that provide similar functionality. Programmer productivity therefore depends heavily on the programmer's ability to discover suitable APIs both during an initial coding phase, as well as during software maintenance. The aim of this work is to support the discovery and migration of math APIs. Math APIs are at the heart of many application domains ranging from machine learning to scientific computations. Our approach, called MathFinder, combines executable specifications of mathematical computations with unit tests (operational specifications) of API methods. Given a math expression, MathFinder synthesizes pseudo-code comprised of API methods to compute the expression by mining unit tests of the API methods. We present a sequential version of our unit test mining algorithm and also design a more scalable data-parallel version. We perform extensive evaluation of MathFinder (1) for API discovery, where math algorithms are to be implemented from scratch and (2) for API migration, where client programs utilizing a math API are to be migrated to another API. We evaluated the precision and recall of MathFinder on a diverse collection of math expressions, culled from algorithms used in a wide range of application areas such as control systems and structural dynamics. In a user study to evaluate the productivity gains obtained by using MathFinder for API discovery, the programmers who used MathFinder finished their programming tasks twice as fast as their counterparts who used the usual techniques like web and code search, IDE code completion, and manual inspection of library documentation. For the problem of API migration, as a case study, we used MathFinder to migrate Weka, a popular machine learning library. Overall, our evaluation shows that MathFinder is easy to use, provides highly precise results across several math APIs and application domains even with a small number of unit tests per method, and scales to large collections of unit tests.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "4", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Hierons:2014:CCD, author = "Robert M. Hierons", title = "Combining Centralised and Distributed Testing", journal = j-TOSEM, volume = "24", number = "1", pages = "5:1--5:??", month = sep, year = "2014", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/2661296", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Oct 7 19:00:56 MDT 2014", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Many systems interact with their environment at distributed interfaces (ports) and sometimes it is not possible to place synchronised local testers at the ports of the system under test (SUT). There are then two main approaches to testing: having independent local testers or a single centralised tester that interacts asynchronously with the SUT. The power of using independent testers has been captured using implementation relation dioco. In this article, we define implementation relation diococ for the centralised approach and prove that dioco and dioco$_c$ are incomparable. This shows that the frameworks detect different types of faults and so we devise a hybrid framework and define an implementation relation diocos for this. We prove that the hybrid framework is more powerful than the distributed and centralised approaches. We then prove that the Oracle problem is NP-complete for diococ and diocos but can be solved in polynomial time if we place an upper bound on the number of ports. Finally, we consider the problem of deciding whether there is a test case that is guaranteed to force a finite state model into a particular state or to distinguish two states, proving that both problems are undecidable for the centralised and hybrid frameworks.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "5", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Sahin:2014:CSD, author = "Dilan Sahin and Marouane Kessentini and Slim Bechikh and Kalyanmoy Deb", title = "Code-Smell Detection as a Bilevel Problem", journal = j-TOSEM, volume = "24", number = "1", pages = "6:1--6:??", month = sep, year = "2014", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/2675067", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Oct 14 17:48:15 MDT 2014", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Code smells represent design situations that can affect the maintenance and evolution of software. They make the system difficult to evolve. Code smells are detected, in general, using quality metrics that represent some symptoms. However, the selection of suitable quality metrics is challenging due to the absence of consensus in identifying some code smells based on a set of symptoms and also the high calibration effort in determining manually the threshold value for each metric. In this article, we propose treating the generation of code-smell detection rules as a bilevel optimization problem. Bilevel optimization problems represent a class of challenging optimization problems, which contain two levels of optimization tasks. In these problems, only the optimal solutions to the lower-level problem become possible feasible candidates to the upper-level problem. In this sense, the code-smell detection problem can be treated as a bilevel optimization problem, but due to lack of suitable solution techniques, it has been attempted to be solved as a single-level optimization problem in the past. In our adaptation here, the upper-level problem generates a set of detection rules, a combination of quality metrics, which maximizes the coverage of the base of code-smell examples and artificial code smells generated by the lower level. The lower level maximizes the number of generated artificial code smells that cannot be detected by the rules produced by the upper level. The main advantage of our bilevel formulation is that the generation of detection rules is not limited to some code-smell examples identified manually by developers that are difficult to collect, but it allows the prediction of new code-smell behavior that is different from those of the base of examples. The statistical analysis of our experiments over 31 runs on nine open-source systems and one industrial project shows that seven types of code smells were detected with an average of more than 86\% in terms of precision and recall. The results confirm the outperformance of our bilevel proposal compared to state-of-art code-smell detection techniques. The evaluation performed by software engineers also confirms the relevance of detected code smells to improve the quality of software systems.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "6", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Li:2014:RIP, author = "Kaituo Li and Christoph Reichenbach and Christoph Csallner and Yannis Smaragdakis", title = "Residual Investigation: Predictive and Precise Bug Detection", journal = j-TOSEM, volume = "24", number = "2", pages = "7:1--7:??", month = dec, year = "2014", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/2656201", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Jan 7 15:27:31 MST 2015", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "We introduce the concept of residual investigation for program analysis. A residual investigation is a dynamic check installed as a result of running a static analysis that reports a possible program error. The purpose is to observe conditions that indicate whether the statically predicted program fault is likely to be realizable and relevant. The key feature of a residual investigation is that it has to be much more precise (i.e., with fewer false warnings) than the static analysis alone, yet significantly more general (i.e., reporting more errors) than the dynamic tests in the program's test suite that are pertinent to the statically reported error. That is, good residual investigations encode dynamic conditions that, when considered in conjunction with the static error report, increase confidence in the existence or severity of an error without needing to directly observe a fault resulting from the error. We enhance the static analyzer FindBugs with several residual investigations appropriately tuned to the static error patterns in FindBugs, and apply it to nine large open-source systems and their native test suites. The result is an analysis with a low occurrence of false warnings (false positives) while reporting several actual errors that would not have been detected by mere execution of a program's test suite.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "7", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Fraser:2014:LSE, author = "Gordon Fraser and Andrea Arcuri", title = "A Large-Scale Evaluation of Automated Unit Test Generation Using {EvoSuite}", journal = j-TOSEM, volume = "24", number = "2", pages = "8:1--8:??", month = dec, year = "2014", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/2685612", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Jan 7 15:27:31 MST 2015", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Research on software testing produces many innovative automated techniques, but because software testing is by necessity incomplete and approximate, any new technique faces the challenge of an empirical assessment. In the past, we have demonstrated scientific advance in automated unit test generation with the E VOSUITE tool by evaluating it on manually selected open-source projects or examples that represent a particular problem addressed by the underlying technique. However, demonstrating scientific advance is not necessarily the same as demonstrating practical value; even if VOSUITE worked well on the software projects we selected for evaluation, it might not scale up to the complexity of real systems. Ideally, one would use large ``real-world'' software systems to minimize the threats to external validity when evaluating research tools. However, neither choosing such software systems nor applying research prototypes to them are trivial tasks. In this article we present the results of a large experiment in unit test generation using the VOSUITE tool on 100 randomly chosen open-source projects, the 10 most popular open-source projects according to the SourceForge Web site, seven industrial projects, and 11 automatically generated software projects. The study confirms that VOSUITE can achieve good levels of branch coverage (on average, 71\% per class) in practice. However, the study also exemplifies how the choice of software systems for an empirical study can influence the results of the experiments, which can serve to inform researchers to make more conscious choices in the selection of software system subjects. Furthermore, our experiments demonstrate how practical limitations interfere with scientific advances, branch coverage on an unbiased sample is affected by predominant environmental dependencies. The surprisingly large effect of such practical engineering problems in unit testing will hopefully lead to a larger appreciation of work in this area, thus supporting transfer of knowledge from software testing research to practice.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "8", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{ElKholy:2014:CCR, author = "Warda {El Kholy} and Jamal Bentahar and Mohamed {El Menshawy} and Hongyang Qu and Rachida Dssouli", title = "Conditional Commitments: Reasoning and Model Checking", journal = j-TOSEM, volume = "24", number = "2", pages = "9:1--9:??", month = dec, year = "2014", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/2685613", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Jan 7 15:27:31 MST 2015", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "While modeling interactions using social commitments provides a fundamental basis for capturing flexible and declarative interactions and helps in addressing the challenge of ensuring compliance with specifications, the designers of the system cannot guarantee that an agent complies with its commitments as it is supposed to, or at least an agent doesn't want to violate its commitments. They may still wish to develop efficient and scalable algorithms by which model checking conditional commitments, a natural and universal frame of social commitments, is feasible at design time. However, distinguishing between different but related types of conditional commitments, and developing dedicated algorithms to tackle the problem of model checking conditional commitments, is still an active research topic. In this article, we develop the temporal logic CTL$^{cc}$ that extends Computation Tree Logic (CTL) with new modalities which allow representing and reasoning about two types of communicating conditional commitments and their fulfillments using the formalism of interpreted systems. We introduce a set of rules to reason about conditional commitments and their fulfillments. The verification technique is based on developing a new symbolic model checking algorithm to address this verification problem. We analyze the computational complexity and present the full implementation of the developed algorithm on top of the MCMAS model checker. We also evaluate the algorithm's effectiveness and scalability by verifying the compliance of the NetBill protocol, taken from the business domain, and the process of breast cancer diagnosis and treatment, taken from the health-care domain, with specifications expressed in CTL$^{cc}$. We finally compare the experimental results with existing proposals.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "9", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Hao:2014:UTC, author = "Dan Hao and Lingming Zhang and Lu Zhang and Gregg Rothermel and Hong Mei", title = "A Unified Test Case Prioritization Approach", journal = j-TOSEM, volume = "24", number = "2", pages = "10:1--10:??", month = dec, year = "2014", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/2685614", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Jan 7 15:27:31 MST 2015", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Test case prioritization techniques attempt to reorder test cases in a manner that increases the rate at which faults are detected during regression testing. Coverage-based test case prioritization techniques typically use one of two overall strategies: a total strategy or an additional strategy. These strategies prioritize test cases based on the total number of code (or code-related) elements covered per test case and the number of additional (not yet covered) code (or code-related) elements covered per test case, respectively. In this article, we present a unified test case prioritization approach that encompasses both the total and additional strategies. Our unified test case prioritization approach includes two models ( basic and extended ) by which a spectrum of test case prioritization techniques ranging from a purely total to a purely additional technique can be defined by specifying the value of a parameter referred to as the $ f_p $ value. To evaluate our approach, we performed an empirical study on 28 Java objects and 40 C objects, considering the impact of three internal factors (model type, choice of $ f_p $ value, and coverage type) and three external factors (coverage granularity, test case granularity, and programming/testing paradigm), all of which can be manipulated by our approach. Our results demonstrate that a wide range of techniques derived from our basic and extended models with uniform $ f_p $ values can outperform purely total techniques and are competitive with purely additional techniques. Considering the influence of each internal and external factor studied, the results demonstrate that various values of each factor have nontrivial influence on test case prioritization techniques.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "10", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Eldib:2014:FVS, author = "Hassan Eldib and Chao Wang and Patrick Schaumont", title = "Formal Verification of Software Countermeasures against Side-Channel Attacks", journal = j-TOSEM, volume = "24", number = "2", pages = "11:1--11:??", month = dec, year = "2014", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/2685616", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Jan 7 15:27:31 MST 2015", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "A common strategy for designing countermeasures against power-analysis-based side-channel attacks is using random masking techniques to remove the statistical dependency between sensitive data and side-channel emissions. However, this process is both labor intensive and error prone and, currently, there is a lack of automated tools to formally assess how secure a countermeasure really is. We propose the first SMT-solver-based method for formally verifying the security of a masking countermeasure against such attacks. In addition to checking whether the sensitive data are masked by random variables, we also check whether they are perfectly masked, that is, whether the intermediate computation results in the implementation of a cryptographic algorithm are independent of the secret key. We encode this verification problem using a series of quantifier-free first-order logic formulas, whose satisfiability can be decided by an off-the-shelf SMT solver. We have implemented the proposed method in a software verification tool based on the LLVM compiler frontend and the Yices SMT solver. Our experiments on a set of recently proposed masking countermeasures for cryptographic algorithms such as AES and MAC-Keccak show the method is both effective in detecting power side-channel leaks and scalable for practical use.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "11", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{DeLara:2014:WHU, author = "Juan {De Lara} and Esther Guerra and Jes{\'u}s S{\'a}nchez Cuadrado", title = "When and How to Use Multilevel Modelling", journal = j-TOSEM, volume = "24", number = "2", pages = "12:1--12:??", month = dec, year = "2014", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/2685615", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Jan 7 15:27:31 MST 2015", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Model-Driven Engineering (MDE) promotes models as the primary artefacts in the software development process, from which code for the final application is derived. Standard approaches to MDE (like those based on MOF or EMF) advocate a two-level metamodelling setting where Domain-Specific Modelling Languages (DSMLs) are defined through a metamodel that is instantiated to build models at the metalevel below. Multilevel modelling (also called deep metamodelling ) extends the standard approach to metamodelling by enabling modelling at an arbitrary number of metalevels, not necessarily two. Proposers of multilevel modelling claim this leads to simpler model descriptions in some situations, although its applicability has been scarcely evaluated. Thus, practitioners may find it difficult to discern when to use it and how to implement multilevel solutions in practice. In this article, we discuss those situations where the use of multilevel modelling is beneficial, and identify recurring patterns and idioms. Moreover, in order to assess how often the identified patterns arise in practice, we have analysed a wide range of existing two-level DSMLs from different sources and domains, to detect when their elements could be rearranged in more than two metalevels. The results show this scenario is not uncommon, while in some application domains (like software architecture and enterprise/process modelling) pervasive, with a high average number of pattern occurrences per metamodel.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "12", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Yue:2015:AAF, author = "Tao Yue and Lionel C. Briand and Yvan Labiche", title = "{aToucan}: an Automated Framework to Derive {UML} Analysis Models from Use Case Models", journal = j-TOSEM, volume = "24", number = "3", pages = "13:1--13:??", month = may, year = "2015", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/2699697", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed May 13 18:25:46 MDT 2015", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "The transition from an informal requirements specification in natural language to a structured, precise specification is an important challenge in practice. It is particularly so for object-oriented methods, defined in the context of the OMG's Model Driven Architecture (MDA), where a key step is to transition from a use case model to an analysis model. However, providing automated support for this transition is challenging, mostly because, in practice, requirements are expressed in natural language and are much less structured than other kinds of development artifacts. Such an automated transformation would enable at least the generation of an initial, likely incomplete, analysis model and enable automated traceability from requirements to code, through various intermediate models. In this article, we propose a method and a tool called aToucan, building on existing work, to automatically generate a UML analysis model comprising class, sequence and activity diagrams from a use case model and to automatically establish traceability links between model elements of the use case model and the generated analysis model. Note that our goal is to save effort through automated support, not to replace human abstraction and decision making. Seven (six) case studies were performed to compare class (sequence) diagrams generated by aToucan to the ones created by experts, Masters students, and trained, fourth-year undergraduate students. Results show that aToucan performs well regarding consistency (e.g., 88\% class diagram consistency) and completeness (e.g., 80\% class completeness) when comparing generated class diagrams with reference class diagrams created by experts and Masters students. Similarly, sequence diagrams automatically generated by aToucan are highly consistent with the ones devised by experts and are also rather complete, for instance, 91\% and 97\% message consistency and completeness, respectively. Further, statistical tests show that aToucan significantly outperforms fourth-year engineering students in this respect, thus demonstrating the value of automation. We also conducted two industrial case studies demonstrating the applicability of aToucan in two different industrial domains. Results showed that the vast majority of model elements generated by aToucan are correct and that therefore, in practice, such models would be good initial models to refine and augment so as to converge towards to correct and complete analysis models. A performance analysis shows that the execution time of aToucan (when generating class and sequence diagrams) is dependent on the number of simple sentences contained in the use case model and remains within a range of a few minutes. Five different software system descriptions (18 use cases altogether) were performed to evaluate the generation of activity diagrams. Results show that aToucan can generate 100\% complete and correct control flow information of activity diagrams and on average 85\% data flAow information completeness. Moreover, we show that aToucan outperforms three commercial tools in terms of activity diagram generation.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "13", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Scanniello:2015:DDP, author = "Giuseppe Scanniello and Carmine Gravino and Michele Risi and Genoveffa Tortora and Gabriella Dodero", title = "Documenting Design-Pattern Instances: a Family of Experiments on Source-Code Comprehensibility", journal = j-TOSEM, volume = "24", number = "3", pages = "14:1--14:??", month = may, year = "2015", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/2699696", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed May 13 18:25:46 MDT 2015", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Design patterns are recognized as a means to improve software maintenance by furnishing an explicit specification of class and object interactions and their underlying intent [Gamma et al. 1995]. Only a few empirical investigations have been conducted to assess whether the kind of documentation for design patterns implemented in source code affects its comprehensibility. To investigate this aspect, we conducted a family of four controlled experiments with 88 participants having different experience (i.e., professionals and Bachelor, Master, and PhD students). In each experiment, the participants were divided into three groups and asked to comprehend a nontrivial chunk of an open-source software system. Depending on the group, each participant was, or was not, provided with graphical or textual representations of the design patterns implemented within the source code. We graphically documented design-pattern instances with UML class diagrams. Textually documented instances are directly reported source code as comments. Our results indicate that documenting design-pattern instances yields an improvement in correctness of understanding source code for those participants with an adequate level of experience.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "14", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Sherman:2015:DTB, author = "Elena Sherman and Brady J. Garvin and Matthew B. Dwyer", title = "Deciding Type-Based Partial-Order Constraints for Path-Sensitive Analysis", journal = j-TOSEM, volume = "24", number = "3", pages = "15:1--15:??", month = may, year = "2015", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/2755971", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed May 13 18:25:46 MDT 2015", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/java2010.bib; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "The precision and scalability of path-sensitive program analyses depend on their ability to distinguish feasible and infeasible program paths. Analyses express path feasibility as the satisfiability of conjoined branch conditions, which is then decided by cooperating decision procedures such as those in satisfiability modulo theory (SMT) solvers. Consequently, efficient underlying decision procedures are key to precise, scalable program analyses. When we investigate the branch conditions accumulated by inter-procedural path-sensitive analyses of object-oriented programs, we find that many relate to an object's dynamic type. These conditions arise from explicit type tests and the branching implicit in dynamic dispatch and type casting. These conditions share a common form that comprises a fragment of the theory of partial orders, which we refer to as type-based partial orders (TPO). State-of-the-art SMT solvers can heuristically instantiate the quantified formulae that axiomatize partial orders, and thereby support TPO constraints. We present two custom decision procedures with significantly better performance. On benchmarks that reflect inter-procedural path-sensitive analyses applied to significant Java systems, the custom procedures run three orders of magnitude faster. The performance of the two decision procedures varies across benchmarks, which suggests that a portfolio approach may be beneficial for solving constraints generated by program analyses.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "15", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Carzaniga:2015:AWE, author = "Antonio Carzaniga and Alessandra Gorla and Nicol{\`o} Perino and Mauro Pezz{\`e}", title = "Automatic Workarounds: Exploiting the Intrinsic Redundancy of {Web} Applications", journal = j-TOSEM, volume = "24", number = "3", pages = "16:1--16:??", month = may, year = "2015", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/2755970", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed May 13 18:25:46 MDT 2015", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Despite the best intentions, the competence, and the rigorous methods of designers and developers, software is often delivered and deployed with faults. To cope with imperfect software, researchers have proposed the concept of self-healing for software systems. The ambitious goal is to create software systems capable of detecting and responding ``autonomically'' to functional failures, or perhaps even preempting such failures, to maintain a correct functionality, possibly with acceptable degradation. We believe that self-healing can only be an expression of some form of redundancy, meaning that, to automatically fix a faulty behavior, the correct behavior must be already present somewhere, in some form, within the software system either explicitly or implicitly. One approach is to deliberately design and develop redundant systems, and in fact this kind of deliberate redundancy is the essential ingredient of many fault tolerance techniques. However, this type of redundancy is also generally expensive and does not always satisfy the time and cost constraints of many software projects. With this article we take a different approach. We observe that modern software systems naturally acquire another type of redundancy that is not introduced deliberately but rather arises intrinsically as a by-product of modern modular software design. We formulate this notion of intrinsic redundancy and we propose a technique to exploit it to achieve some level of self-healing. We first demonstrate that software systems are indeed intrinsically redundant. Then we develop a way to express and exploit this redundancy to tolerate faults with automatic workarounds. In essence, a workaround amounts to replacing some failing operations with alternative operations that are semantically equivalent in their intended effect, but that execute different code and ultimately avoid the failure. The technique we propose finds such workarounds automatically. We develop this technique in the context of Web applications. In particular, we implement this technique within a browser extension, which we then use in an evaluation with several known faults and failures of three popular Web libraries. The evaluation demonstrates that automatic workarounds are effective: out of the nearly 150 real faults we analyzed, 100 could be overcome with automatic workarounds, and half of these workarounds found automatically were not publicly known before.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "16", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Mkaouer:2015:MOS, author = "Wiem Mkaouer and Marouane Kessentini and Adnan Shaout and Patrice Koligheu and Slim Bechikh and Kalyanmoy Deb and Ali Ouni", title = "Many-Objective Software Remodularization Using {NSGA-III}", journal = j-TOSEM, volume = "24", number = "3", pages = "17:1--17:??", month = may, year = "2015", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/2729974", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed May 13 18:25:46 MDT 2015", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Software systems nowadays are complex and difficult to maintain due to continuous changes and bad design choices. To handle the complexity of systems, software products are, in general, decomposed in terms of packages/modules containing classes that are dependent. However, it is challenging to automatically remodularize systems to improve their maintainability. The majority of existing remodularization work mainly satisfy one objective which is improving the structure of packages by optimizing coupling and cohesion. In addition, most of existing studies are limited to only few operation types such as move class and split packages. Many other objectives, such as the design semantics, reducing the number of changes and maximizing the consistency with development change history, are important to improve the quality of the software by remodularizing it. In this article, we propose a novel many-objective search-based approach using NSGA-III. The process aims at finding the optimal remodularization solutions that improve the structure of packages, minimize the number of changes, preserve semantics coherence, and reuse the history of changes. We evaluate the efficiency of our approach using four different open-source systems and one automotive industry project, provided by our industrial partner, through a quantitative and qualitative study conducted with software engineers.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "17", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Yi:2015:SCC, author = "Jooyong Yi and Dawei Qi and Shin Hwei Tan and Abhik Roychoudhury", title = "Software Change Contracts", journal = j-TOSEM, volume = "24", number = "3", pages = "18:1--18:??", month = may, year = "2015", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/2729973", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed May 13 18:25:46 MDT 2015", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/java2010.bib; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Software errors often originate from incorrect changes, including incorrect program fixes, incorrect feature updates, and so on. Capturing the intended program behavior explicitly via contracts is thus an attractive proposition. In our recent work, we had espoused the notion of ``change contracts'' to express the intended program behavior changes across program versions. Change contracts differ from program contracts in that they do not require the programmer to describe the intended behavior of those program features which are unchanged across program versions. In this work, we present the formal semantics of our change contract language built on top of the Java modeling language (JML). Our change contract language can describe behavioral as well as structural changes. We evaluate the expressivity of the change contract language via a survey given to final-year undergraduate students. The survey results enable to understand the usability of our change contract language for purposes of writing contracts, comprehending written contracts, and modifying programs according to given change contracts. Finally, we develop both dynamic and static checkers for change contracts, and show how they can be used in maintaining software changes. We use our dynamic checker to automatically suggest tests that manifest violations of change contracts. Meanwhile, we use our static checker to verify that a program is changed as specified in its change contract. Apart from verification, our static checker also performs various other software engineering tasks, such as localizing the buggy method, detecting/debugging regression errors, and classifying the cause for a test failure as either error in production code or error in test code.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "18", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Murukannaiah:2015:PAL, author = "Pradeep K. Murukannaiah and Munindar P. Singh", title = "{Platys}: an Active Learning Framework for Place-Aware Application Development and Its Evaluation", journal = j-TOSEM, volume = "24", number = "3", pages = "19:1--19:??", month = may, year = "2015", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/2729976", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed May 13 18:25:46 MDT 2015", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "We introduce a high-level abstraction of location called place. A place derives its meaning from a user's physical space, activities, or social context. In this manner, place can facilitate improved user experience compared to the traditional representation of location, which is spatial coordinates. We propose the Platys framework as a way to address the special challenges of place-aware application development. The core of Platys is a middleware that (1) learns a model of places specific to each user via active learning, a machine learning paradigm that seeks to reduce the user-effort required for training the middleware, and (2) exposes the learned user-specific model of places to applications at run time, insulating application developers from dealing with both low-level sensors and user idiosyncrasies in perceiving places. We evaluated Platys via two studies. First, we collected place labels and Android phone sensor readings from 10 users. We applied Platys' active learning approach to learn each user's places and found that Platys (1) requires fewer place labels to learn a user's places with a desired accuracy than do two traditional supervised approaches, and (2) learns places with higher accuracy than two unsupervised approaches. Second, we conducted a developer study to evaluate Platys' efficiency in assisting developers and its effectiveness in enabling usable applications. In this study, 46 developers employed either Platys or the Android location API to develop a place-aware application. Our results indicate that application developers employing Platys, when compared to those employing the Android API, (1) develop a place-aware application faster and perceive reduced difficulty and (2) produce applications that are easier to understand (for developers) and potentially more usable and privacy preserving (for application users).", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "19", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Whigham:2015:BMS, author = "Peter A. Whigham and Caitlin A. Owen and Stephen G. Macdonell", title = "A Baseline Model for Software Effort Estimation", journal = j-TOSEM, volume = "24", number = "3", pages = "20:1--20:??", month = may, year = "2015", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/2738037", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed May 13 18:25:46 MDT 2015", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Software effort estimation (SEE) is a core activity in all software processes and development lifecycles. A range of increasingly complex methods has been considered in the past 30 years for the prediction of effort, often with mixed and contradictory results. The comparative assessment of effort prediction methods has therefore become a common approach when considering how best to predict effort over a range of project types. Unfortunately, these assessments use a variety of sampling methods and error measurements, making comparison with other work difficult. This article proposes an automatically transformed linear model (ATLM) as a suitable baseline model for comparison against SEE methods. ATLM is simple yet performs well over a range of different project types. In addition, ATLM may be used with mixed numeric and categorical data and requires no parameter tuning. It is also deterministic, meaning that results obtained are amenable to replication. These and other arguments for using ATLM as a baseline model are presented, and a reference implementation described and made available. We suggest that ATLM should be used as a baseline of effort prediction quality for all future model comparisons in SEE.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "20", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Harman:2015:ISI, author = "Mark Harman and Mauro Pezz{\'e}", title = "Introduction to the Special Issue on {ISSTA 2013}", journal = j-TOSEM, volume = "24", number = "4", pages = "21:1--21:??", month = aug, year = "2015", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/2809789", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Sep 8 18:21:02 MDT 2015", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "21", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Gligoric:2015:GCB, author = "Milos Gligoric and Alex Groce and Chaoqiang Zhang and Rohan Sharma and Mohammad Amin Alipour and Darko Marinov", title = "Guidelines for Coverage-Based Comparisons of Non-Adequate Test Suites", journal = j-TOSEM, volume = "24", number = "4", pages = "22:1--22:??", month = aug, year = "2015", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/2660767", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Sep 8 18:21:02 MDT 2015", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/java2010.bib; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "A fundamental question in software testing research is how to compare test suites, often as a means for comparing test-generation techniques that produce those test suites. Researchers frequently compare test suites by measuring their coverage. A coverage criterion C provides a set of test requirements and measures how many requirements a given suite satisfies. A suite that satisfies 100\% of the feasible requirements is called C-adequate. Previous rigorous evaluations of coverage criteria mostly focused on such adequate test suites: given two criteria C and C', are C-adequate suites on average more effective than C'-adequate suites? However, in many realistic cases, producing adequate suites is impractical or even impossible. This article presents the first extensive study that evaluates coverage criteria for the common case of non-adequate test suites: given two criteria C and C', which one is better to use to compare test suites? Namely, if suites T$_1$, T$_2$,\ldots{}, T$_n$ have coverage values $ c_1$, $ c_2$,\ldots{}, $ c_n$ for C and $ c_1 '$, $ c_2 '$,\ldots{}, $ c_n'$ for C', is it better to compare suites based on $ c_1$, $ c_2$,\ldots{}, $ c_n$ or based on $ c_1 '$, $ c_2 '$ \ldots{}, $ c_n'$ ? We evaluate a large set of plausible criteria, including basic criteria such as statement and branch coverage, as well as stronger criteria used in recent studies, including criteria based on program paths, equivalence classes of covered statements, and predicate states. The criteria are evaluated on a set of Java and C programs with both manually written and automatically generated test suites. The evaluation uses three correlation measures. Based on these experiments, two criteria perform best: branch coverage and an intraprocedural acyclic path coverage. We provide guidelines for testing researchers aiming to evaluate test suites using coverage criteria as well as for other researchers evaluating coverage criteria for research use.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "22", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Fraser:2015:DAU, author = "Gordon Fraser and Matt Staats and Phil McMinn and Andrea Arcuri and Frank Padberg", title = "Does Automated Unit Test Generation Really Help Software Testers? {A} Controlled Empirical Study", journal = j-TOSEM, volume = "24", number = "4", pages = "23:1--23:??", month = aug, year = "2015", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/2699688", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Sep 8 18:21:02 MDT 2015", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Work on automated test generation has produced several tools capable of generating test data which achieves high structural coverage over a program. In the absence of a specification, developers are expected to manually construct or verify the test oracle for each test input. Nevertheless, it is assumed that these generated tests ease the task of testing for the developer, as testing is reduced to checking the results of tests. While this assumption has persisted for decades, there has been no conclusive evidence to date confirming it. However, the limited adoption in industry indicates this assumption may not be correct, and calls into question the practical value of test generation tools. To investigate this issue, we performed two controlled experiments comparing a total of 97 subjects split between writing tests manually and writing tests with the aid of an automated unit test generation tool, E voSuite. We found that, on one hand, tool support leads to clear improvements in commonly applied quality metrics such as code coverage (up to 300\% increase). However, on the other hand, there was no measurable improvement in the number of bugs actually found by developers. Our results not only cast some doubt on how the research community evaluates test generation tools, but also point to improvements and future work necessary before automated test generation tools will be widely adopted by practitioners.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "23", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Radoi:2015:ETS, author = "Cosmin Radoi and Danny Dig", title = "Effective Techniques for Static Race Detection in {Java} Parallel Loops", journal = j-TOSEM, volume = "24", number = "4", pages = "24:1--24:??", month = aug, year = "2015", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/2729975", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Sep 8 18:21:02 MDT 2015", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/java2010.bib; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Despite significant progress in recent years, the important problem of static race detection remains open. Previous techniques took a general approach and looked for races by analyzing the effects induced by low-level concurrency constructs (e.g., java.lang.Thread). But constructs and libraries for expressing parallelism at a higher level (e.g., fork-join, futures, parallel loops) are becoming available in all major programming languages. We claim that specializing an analysis to take advantage of the extra semantic information provided by the use of these constructs and libraries improves precision and scalability. We present I teRace, a set of techniques that are specialized to use the intrinsic thread, safety, and dataflow structure of collections and of the new loop parallelism mechanism introduced in Java 8. Our evaluation shows that IteRace is fast and precise enough to be practical. It scales to programs of hundreds of thousands of lines of code and reports very few race warnings, thus avoiding a common pitfall of static analyses. In five out of the seven case studies, IteRace reported no false warnings. Also, it revealed six bugs in real-world applications. We reported four of them: one had already been fixed, and three were new and the developers confirmed and fixed them. Furthermore, we evaluate the effect of each specialization technique on the running time and precision of the analysis. For each application, we run the analysis under 32 different configurations. This allows to analyze each technique's effect both alone and in all possible combinations with other techniques.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "24", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Nijjar:2015:DMP, author = "Jaideep Nijjar and Ivan Boci{\'c} and Tevfik Bultan", title = "Data Model Property Inference, Verification, and Repair for {Web} Applications", journal = j-TOSEM, volume = "24", number = "4", pages = "25:1--25:??", month = aug, year = "2015", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/2699691", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Sep 8 18:21:02 MDT 2015", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Most software systems nowadays are Web-based applications that are deployed over compute clouds using a three-tier architecture, where the persistent data for the application is stored in a backend datastore and is accessed and modified by the server-side code based on the user interactions at the client-side. The data model forms the foundation of these three tiers, and identifies the sets of objects (object classes) and the relations among them (associations among object classes) stored by the application. In this article, we present a set of property patterns to specify properties of a data model, as well as several heuristics for automatically inferring them. We show that the specified or inferred data model properties can be automatically verified using bounded and unbounded verification techniques. For the properties that fail, we present techniques that generate fixes to the data model that establish the failing properties. We implemented this approach for Web applications built using the Ruby on Rails framework and applied it to ten open source applications. Our experimental results demonstrate that our approach is effective in automatically identifying and fixing errors in data models of real-world web applications.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "25", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Jin:2015:ASR, author = "Wei Jin and Alessandro Orso", title = "Automated Support for Reproducing and Debugging Field Failures", journal = j-TOSEM, volume = "24", number = "4", pages = "26:1--26:??", month = aug, year = "2015", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/2774218", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Sep 8 18:21:02 MDT 2015", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "As confirmed by a recent survey conducted among developers of the Apache, Eclipse, and Mozilla projects, two extremely challenging tasks during maintenance are reproducing and debugging field failures-failures that occur on user machines after release. To help developers with these tasks, in this article we present an overall approach that comprises two different techniques: B ugRedux and F$^3$. BugRedux is a general technique for reproducing field failures that collects dynamic data about failing executions in the field and uses this data to synthesize executions that mimic the observed field failures. F$^3$ leverages the executions generated by BugRedux to perform automated debugging using a set of suitably optimized fault-localization techniques. To assess the usefulness of our approach, we performed an empirical evaluation of the approach on a set of real-world programs and field failures. The results of our evaluation are promising in that, for all the failures considered, our approach was able to (1) synthesize failing executions that mimicked the observed field failures, (2) synthesize passing executions similar to the failing ones, and (3) use the synthesized executions to successfully perform fault localization with accurate results.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "26", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Dwyer:2015:EJF, author = "Matthew B. Dwyer and David S. Rosenblum", title = "Editorial: Journal-First Publication for the Software Engineering Community", journal = j-TOSEM, volume = "25", number = "1", pages = "1:1--1:??", month = dec, year = "2015", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/2837717", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Thu Dec 3 09:54:19 MST 2015", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "1", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Dietz:2015:UIO, author = "Will Dietz and Peng Li and John Regehr and Vikram Adve", title = "Understanding Integer Overflow in {C\slash C++}", journal = j-TOSEM, volume = "25", number = "1", pages = "2:1--2:29", month = dec, year = "2015", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/2743019", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Thu Dec 3 09:54:19 MST 2015", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/fparith.bib; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Integer overflow bugs in C and C++ programs are difficult to track down and may lead to fatal errors or exploitable vulnerabilities. Although a number of tools for finding these bugs exist, the situation is complicated because not all overflows are bugs. Better tools need to be constructed, but a thorough understanding of the issues behind these errors does not yet exist. We developed IOC, a dynamic checking tool for integer overflows, and used it to conduct the first detailed empirical study of the prevalence and patterns of occurrence of integer overflows in C and C++ code. Our results show that intentional uses of wraparound behaviors are more common than is widely believed; for example, there are over 200 distinct locations in the SPEC CINT2000 benchmarks where overflow occurs. Although many overflows are intentional, a large number of accidental overflows also occur. Orthogonal to programmers' intent, overflows are found in both well-defined and undefined flavors. Applications executing undefined operations can be, and have been, broken by improvements in compiler optimizations. Looking beyond SPEC, we found and reported undefined integer overflows in SQLite, PostgreSQL, SafeInt, GNU MPC and GMP, Firefox, LLVM, Python, BIND, and OpenSSL; many of these have since been fixed.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "2", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Proksch:2015:ICC, author = "Sebastian Proksch and Johannes Lerch and Mira Mezini", title = "Intelligent Code Completion with {Bayesian} Networks", journal = j-TOSEM, volume = "25", number = "1", pages = "3:1--3:??", month = dec, year = "2015", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/2744200", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Thu Dec 3 09:54:19 MST 2015", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Code completion is an integral part of modern Integrated Development Environments (IDEs). Developers often use it to explore Application Programming Interfaces (APIs). It is also useful to reduce the required amount of typing and to help avoid typos. Traditional code completion systems propose all type-correct methods to the developer. Such a list is often very long with many irrelevant items. More intelligent code completion systems have been proposed in prior work to reduce the list of proposed methods to relevant items. This work extends one of these existing approaches, the Best Matching Neighbor (BMN) algorithm. We introduce Bayesian networks as an alternative underlying model, use additional context information for more precise recommendations, and apply clustering techniques to improve model sizes. We compare our new approach, Pattern-based Bayesian Networks (PBN), to the existing BMN algorithm. We extend previously used evaluation methodologies and, in addition to prediction quality, we also evaluate model size and inference speed. Our results show that the additional context information we collect improves prediction quality, especially for queries that do not contain method calls. We also show that PBN can obtain comparable prediction quality to BMN, while model size and inference speed scale better with large input sizes.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "3", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Alesio:2015:CGA, author = "Stefano {Di Alesio} and Lionel C. Briand and Shiva Nejati and Arnaud Gotlieb", title = "Combining Genetic Algorithms and Constraint Programming to Support Stress Testing of Task Deadlines", journal = j-TOSEM, volume = "25", number = "1", pages = "4:1--4:??", month = dec, year = "2015", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/2818640", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Thu Dec 3 09:54:19 MST 2015", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Tasks in real-time embedded systems (RTES) are often subject to hard deadlines that constrain how quickly the system must react to external inputs. These inputs and their timing vary in a large domain depending on the environment state and can never be fully predicted prior to system execution. Therefore, approaches for stress testing must be developed to uncover possible deadline misses of tasks for different input arrival times. In this article, we describe stress-test case generation as a search problem over the space of task arrival times. Specifically, we search for worst-case scenarios maximizing deadline misses, where each scenario characterizes a test case. In order to scale our search to large industrial-size problems, we combine two state-of-the-art search strategies, namely, genetic algorithms (GA) and constraint programming (CP). Our experimental results show that, in comparison with GA and CP in isolation, GA+CP achieves nearly the same effectiveness as CP and the same efficiency and solution diversity as GA, thus combining the advantages of the two strategies. In light of these results, we conclude that a combined GA+CP approach to stress testing is more likely to scale to large and complex systems.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "4", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Ceccato:2015:DAG, author = "Mariano Ceccato and Alessandro Marchetto and Leonardo Mariani and Cu D. Nguyen and Paolo Tonella", title = "Do Automatically Generated Test Cases Make Debugging Easier? {An} Experimental Assessment of Debugging Effectiveness and Efficiency", journal = j-TOSEM, volume = "25", number = "1", pages = "5:1--5:??", month = dec, year = "2015", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/2768829", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Thu Dec 3 09:54:19 MST 2015", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Several techniques and tools have been proposed for the automatic generation of test cases. Usually, these tools are evaluated in terms of fault-revealing or coverage capability, but their impact on the manual debugging activity is not considered. The question is whether automatically generated test cases are equally effective in supporting debugging as manually written tests. We conducted a family of three experiments (five replications) with humans (in total, 55 subjects) to assess whether the features of automatically generated test cases, which make them less readable and understandable (e.g., unclear test scenarios, meaningless identifiers), have an impact on the effectiveness and efficiency of debugging. The first two experiments compare different test case generation tools (Randoop vs. EvoSuite). The third experiment investigates the role of code identifiers in test cases (obfuscated vs. original identifiers), since a major difference between manual and automatically generated test cases is that the latter contain meaningless (obfuscated) identifiers. We show that automatically generated test cases are as useful for debugging as manual test cases. Furthermore, we find that, for less experienced developers, automatic tests are more useful on average due to their lower static and dynamic complexity.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "5", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Emam:2015:TCP, author = "Seyedeh Sepideh Emam and James Miller", title = "Test Case Prioritization Using Extended Digraphs", journal = j-TOSEM, volume = "25", number = "1", pages = "6:1--6:??", month = dec, year = "2015", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/2789209", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Thu Dec 3 09:54:19 MST 2015", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Although many test case prioritization techniques exist, their performance is far from perfect. Hence, we propose a new fault-based test case prioritization technique to promote fault-revealing test cases in model-based testing (MBT) procedures. We seek to improve the fault detection rate-a measure of how fast a test suite is able to detect faults during testing-in scenarios such as regression testing. We propose an extended digraph model as the basis of this new technique. The model is realized using a novel reinforcement-learning (RL)- and hidden-Markov-model (HMM)-based technique which is able to prioritize test cases for regression testing objectives. We present a method to initialize and train an HMM based upon RL concepts applied to an application's digraph model. The model prioritizes test cases based upon forward probabilities, a new test case prioritization approach. In addition, we also propose an alternative approach to prioritizing test cases according to the amount of change they cause in applications. To evaluate the effectiveness of the proposed techniques, we perform experiments on graphical user interface (GUI)-based applications and compare the results with state-of-the-art test case prioritization approaches. The experimental results show that the proposed technique is able to detect faults early within test runs.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "6", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Dyer:2015:BUL, author = "Robert Dyer and Hoan Anh Nguyen and Hridesh Rajan and Tien N. Nguyen", title = "{Boa}: Ultra-Large-Scale Software Repository and Source-Code Mining", journal = j-TOSEM, volume = "25", number = "1", pages = "7:1--7:??", month = dec, year = "2015", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/2803171", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Thu Dec 3 09:54:19 MST 2015", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "In today's software-centric world, ultra-large-scale software repositories, such as SourceForge, GitHub, and Google Code, are the new library of Alexandria. They contain an enormous corpus of software and related information. Scientists and engineers alike are interested in analyzing this wealth of information. However, systematic extraction and analysis of relevant data from these repositories for testing hypotheses is hard, and best left for mining software repository (MSR) experts! Specifically, mining source code yields significant insights into software development artifacts and processes. Unfortunately, mining source code at a large scale remains a difficult task. Previous approaches had to either limit the scope of the projects studied, limit the scope of the mining task to be more coarse grained, or sacrifice studying the history of the code. In this article we address mining source code: (a) at a very large scale; (b) at a fine-grained level of detail; and (c) with full history information. To address these challenges, we present domain-specific language features for source-code mining in our language and infrastructure called Boa. The goal of Boa is to ease testing MSR-related hypotheses. Our evaluation demonstrates that Boa substantially reduces programming efforts, thus lowering the barrier to entry. We also show drastic improvements in scalability.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "7", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Mcminn:2015:ETC, author = "Phil Mcminn and Chris J. Wright and Gregory M. Kapfhammer", title = "The Effectiveness of Test Coverage Criteria for Relational Database Schema Integrity Constraints", journal = j-TOSEM, volume = "25", number = "1", pages = "8:1--8:??", month = dec, year = "2015", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/2818639", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Thu Dec 3 09:54:19 MST 2015", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Despite industry advice to the contrary, there has been little work that has sought to test that a relational database's schema has correctly specified integrity constraints. These critically important constraints ensure the coherence of data in a database, defending it from manipulations that could violate requirements such as ``usernames must be unique'' or ``the host name cannot be missing or unknown.'' This article is the first to propose coverage criteria, derived from logic coverage criteria, that establish different levels of testing for the formulation of integrity constraints in a database schema. These range from simple criteria that mandate the testing of successful and unsuccessful INSERT statements into tables to more advanced criteria that test the formulation of complex integrity constraints such as multi-column PRIMARY KEYs and arbitrary CHECK constraints. Due to different vendor interpretations of the structured query language (SQL) specification with regard to how integrity constraints should actually function in practice, our criteria crucially account for the underlying semantics of the database management system (DBMS). After formally defining these coverage criteria and relating them in a subsumption hierarchy, we present two approaches for automatically generating tests that satisfy the criteria. We then describe the results of an empirical study that uses mutation analysis to investigate the fault-finding capability of data generated when our coverage criteria are applied to a wide variety of relational schemas hosted by three well-known and representative DBMSs-HyperSQL, PostgreSQL, and SQLite. In addition to revealing the complementary fault-finding capabilities of the presented criteria, the results show that mutation scores range from as low as just 12\% of mutants being killed with the simplest of criteria to 96\% with the most advanced.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "8", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Ali:2015:TBC, author = "Karim Ali and Marianna Rapoport and Ondrej Lhot{\'a}k and Julian Dolby and Frank Tip", title = "Type-Based Call Graph Construction Algorithms for {Scala}", journal = j-TOSEM, volume = "25", number = "1", pages = "9:1--9:??", month = dec, year = "2015", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/2824234", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Thu Dec 3 09:54:19 MST 2015", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Call graphs have many applications in software engineering. For example, they serve as the basis for code navigation features in integrated development environments and are at the foundation of static analyses performed in verification tools. While many call graph construction algorithms have been presented in the literature, we are not aware of any that handle Scala features such as traits and abstract type members. Applying existing algorithms to the JVM bytecodes generated by the Scala compiler produces very imprecise results because type information is lost during compilation. We adapt existing type-based call graph construction algorithms to Scala and present a formalization based on Featherweight Scala. An experimental evaluation shows that our most precise algorithm generates call graphs with 1.1--3.7 times fewer nodes and 1.5--17.3 times fewer edges than a bytecode-based RTA analysis.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "9", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Mahmoud:2015:ESR, author = "Anas Mahmoud and Gary Bradshaw", title = "Estimating Semantic Relatedness in Source Code", journal = j-TOSEM, volume = "25", number = "1", pages = "10:1--10:??", month = dec, year = "2015", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/2824251", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Thu Dec 3 09:54:19 MST 2015", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Contemporary software engineering tools exploit semantic relations between individual code terms to aid in code analysis and retrieval tasks. Such tools employ word similarity methods, often used in natural language processing ( nlp), to analyze the textual content of source code. However, the notion of similarity in source code is different from natural language. Source code often includes unnatural domain-specific terms (e.g., abbreviations and acronyms), and such terms might be related due to their structural relations rather than linguistic aspects. Therefore, applying natural language similarity methods to source code without adjustment can produce low-quality and error-prone results. Motivated by these observations, we systematically investigate the performance of several semantic-relatedness methods in the context of software. Our main objective is to identify the most effective semantic schemes in capturing association relations between source code terms. To provide an unbiased comparison, different methods are compared against human-generated relatedness information using terms from three software systems. Results show that corpus-based methods tend to outperform methods that exploit external sources of semantic knowledge. However, due to inherent code limitations, the performance of such methods is still suboptimal. To address these limitations, we propose Normalized Software Distance (nsd), an information-theoretic method that captures semantic relatedness in source code by exploiting the distributional cues of code terms across the system. nsd overcomes data sparsity and lack of context problems often associated with source code, achieving higher levels of resemblance to the human perception of relatedness at the term and the text levels of code.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "10", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Rosenblum:2016:E, author = "David S. Rosenblum", title = "Editorial", journal = j-TOSEM, volume = "25", number = "2", pages = "11:1--11:??", month = may, year = "2016", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/2904898", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon May 16 16:22:08 MDT 2016", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "11", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Alimadadi:2016:UJE, author = "Saba Alimadadi and Sheldon Sequeira and Ali Mesbah and Karthik Pattabiraman", title = "Understanding {JavaScript} Event-Based Interactions with {Clematis}", journal = j-TOSEM, volume = "25", number = "2", pages = "12:1--12:??", month = may, year = "2016", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/2876441", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon May 16 16:22:08 MDT 2016", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Web applications have become one of the fastest-growing types of software systems today. Despite their popularity, understanding the behavior of modern web applications is still a challenging endeavor for developers during development and maintenance tasks. The challenges mainly stem from the dynamic, event-driven, and asynchronous nature of the JavaScript language. We propose a generic technique for capturing low-level event-based interactions in a web application and mapping those to a higher-level behavioral model. This model is then transformed into an interactive visualization, representing episodes of triggered causal and temporal events, related JavaScript code executions, and their impact on the dynamic DOM state. Our approach, implemented in a tool called Clematis, allows developers to easily understand the complex dynamic behavior of their application at three different semantic levels of granularity. Furthermore, Clematis helps developers bridge the gap between test cases and program code by localizing the fault related to a test assertion. The results of our industrial controlled experiment show that Clematis is capable of improving the comprehension task accuracy by 157\% while reducing the task completion time by 47\%. A follow-up experiment reveals that Clematis improves the fault localization accuracy of developers by a factor of two.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "12", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Zhou:2016:IRO, author = "Minghui Zhou and Audris Mockus and Xiujuan Ma and Lu Zhang and Hong Mei", title = "Inflow and Retention in {OSS} Communities with Commercial Involvement: a Case Study of Three Hybrid Projects", journal = j-TOSEM, volume = "25", number = "2", pages = "13:1--13:??", month = may, year = "2016", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/2876443", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon May 16 16:22:08 MDT 2016", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Motivation: Open-source projects are often supported by companies, but such involvement often affects the robust contributor inflow needed to sustain the project and sometimes prompts key contributors to leave. To capture user innovation and to maintain quality of software and productivity of teams, these projects need to attract and retain contributors. Aim: We want to understand and quantify how inflow and retention are shaped by policies and actions of companies in three application server projects. Method: We identified three hybrid projects implementing the same JavaEE specification and used published literature, online materials, and interviews to quantify actions and policies companies used to get involved. We collected project repository data, analyzed affiliation history of project participants, and used generalized linear models and survival analysis to measure contributor inflow and retention. Results: We identified coherent groups of policies and actions undertaken by sponsoring companies as three models of community involvement and quantified tradeoffs between the inflow and retention each model provides. We found that full control mechanisms and high intensity of commercial involvement were associated with a decrease of external inflow and with improved retention. However, a shared control mechanism was associated with increased external inflow contemporaneously with the increase of commercial involvement. Implications: Inspired by a natural experiment, our methods enabled us to quantify aspects of the balance between community and private interests in open- source software projects and provide clear implications for the structure of future open-source communities.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "13", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Machado:2016:CDD, author = "Nuno Machado and Daniel Quinta and Brandon Lucia and Lu{\'\i}s Rodrigues", title = "Concurrency Debugging with Differential Schedule Projections", journal = j-TOSEM, volume = "25", number = "2", pages = "14:1--14:??", month = may, year = "2016", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/2885495", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon May 16 16:22:08 MDT 2016", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/multithreading.bib; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "We present Symbiosis: a concurrency debugging technique based on novel differential schedule projections (DSPs). A DSP shows the small set of memory operations and dataflows responsible for a failure, as well as a reordering of those elements that avoids the failure. To build a DSP, Symbiosis first generates a full, failing, multithreaded schedule via thread path profiling and symbolic constraint solving. Symbiosis selectively reorders events in the failing schedule to produce a nonfailing, alternate schedule. A DSP reports the ordering and dataflow differences between the failing and nonfailing schedules. Our evaluation on buggy real-world software and benchmarks shows that, in practical time, Symbiosis generates DSPs that both isolate the small fraction of event orders and dataflows responsible for the failure and report which event reorderings prevent failing. In our experiments, DSPs contain 90\% fewer events and 96\% fewer dataflows than the full failure-inducing schedules. We also conducted a user study that shows that, by allowing developers to focus on only a few events, DSPs reduce the amount of time required to understand the bug's root cause and find a valid fix.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "14", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Bauch:2016:CED, author = "Petr Bauch and Vojtech Havel and Jir{\'\i} Barnat", title = "Control Explicit-Data Symbolic Model Checking", journal = j-TOSEM, volume = "25", number = "2", pages = "15:1--15:??", month = may, year = "2016", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/2888393", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon May 16 16:22:08 MDT 2016", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Automatic verification of programs and computer systems with data nondeterminism (e.g., reading from user input) represents a significant and well-motivated challenge. The case of parallel programs is especially difficult, because then also the control flow nontrivially complicates the verification process. We apply the techniques of explicit-state model checking to account for the control aspects of a program to be verified and use set-based reduction of the data flow, thus handling the two sources of nondeterminism separately. We build the theory of set-based reduction using first-order formulae in the bit-vector theory to encode the sets of variable evaluations representing program data. These representations are tested for emptiness and equality (state matching) during the verification, and we harness modern satisfiability modulo theory solvers to implement these tests. We design two methods of implementing the state matching, one using quantifiers and one that is quantifier-free, and we provide both analytical and experimental comparisons. Further experiments evaluate the efficiency of the set-based reduction method, showing the classical, explicit approach to fail to scale with the size of data domains. Finally, we propose and evaluate two heuristics to decrease the number of expensive satisfiability queries, together yielding a 10-fold speedup.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "15", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Pavese:2016:LME, author = "Esteban Pavese and V{\'\i}ctor Braberman and Sebastian Uchitel", title = "Less is More: Estimating Probabilistic Rewards over Partial System Explorations", journal = j-TOSEM, volume = "25", number = "2", pages = "16:1--16:??", month = may, year = "2016", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/2890494", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon May 16 16:22:08 MDT 2016", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Model-based reliability estimation of systems can provide useful insights early in the development process. However, computational complexity of estimating metrics such as mean time to first failure (MTTFF), turnaround time (TAT), or other domain-based quantitative measures can be prohibitive both in time, space, and precision. In this article, we present an alternative to exhaustive model exploration, as in probabilistic model checking, and partial random exploration, as in statistical model checking. Our hypothesis is that a (carefully crafted) partial systematic exploration of a system model can provide better bounds for these quantitative model metrics at lower computation cost. We present a novel automated technique for metric estimation that combines simulation, invariant inference, and probabilistic model checking. Simulation produces a probabilistically relevant set of traces from which a state invariant is inferred. The invariant characterises a partial model, which is then exhaustively explored using probabilistic model checking. We report on experiments that suggest that metric estimation using this technique (for both fully probabilistic models and those exhibiting nondeterminism) can be more effective than (full-model) probabilistic and statistical model checking, especially for system models for which the events of interest are rare.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "16", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Hierons:2016:SOP, author = "Robert M. Hierons and Miqing Li and Xiaohui Liu and Sergio Segura and Wei Zheng", title = "{SIP}: Optimal Product Selection from Feature Models Using Many-Objective Evolutionary Optimization", journal = j-TOSEM, volume = "25", number = "2", pages = "17:1--17:??", month = may, year = "2016", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/2897760", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon May 16 16:22:08 MDT 2016", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "A feature model specifies the sets of features that define valid products in a software product line. Recent work has considered the problem of choosing optimal products from a feature model based on a set of user preferences, with this being represented as a many-objective optimization problem. This problem has been found to be difficult for a purely search-based approach, leading to classical many-objective optimization algorithms being enhanced either by adding in a valid product as a seed or by introducing additional mutation and replacement operators that use an SAT solver. In this article, we instead enhance the search in two ways: by providing a novel representation and by optimizing first on the number of constraints that hold and only then on the other objectives. In the evaluation, we also used feature models with realistic attributes, in contrast to previous work that used randomly generated attribute values. The results of experiments were promising, with the proposed (SIP) method returning valid products with six published feature models and a randomly generated feature model with 10,000 features. For the model with 10,000 features, the search took only a few minutes.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "17", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Cai:2016:DUD, author = "Haipeng Cai and Raul Santelices and Douglas Thain", title = "{DiaPro}: Unifying Dynamic Impact Analyses for Improved and Variable Cost-Effectiveness", journal = j-TOSEM, volume = "25", number = "2", pages = "18:1--18:??", month = may, year = "2016", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/2894751", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon May 16 16:22:08 MDT 2016", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Impact analysis not only assists developers with change planning and management, but also facilitates a range of other client analyses, such as testing and debugging. In particular, for developers working in the context of specific program executions, dynamic impact analysis is usually more desirable than static approaches, as it produces more manageable and relevant results with respect to those concrete executions. However, existing techniques for this analysis mostly lie on two extremes: either fast, but too imprecise, or more precise, yet overly expensive. In practice, both more cost-effective techniques and variable cost-effectiveness trade-offs are in demand to fit a variety of usage scenarios and budgets of impact analysis. This article aims to fill the gap between these two extremes with an array of cost-effective analyses and, more broadly, to explore the cost and effectiveness dimensions in the design space of impact analysis. We present the development and evaluation of D iaPro, a framework that unifies a series of impact analyses, including three new hybrid techniques that combine static and dynamic analyses. Harnessing both static dependencies and multiple forms of dynamic data including method-execution events, statement coverage, and dynamic points-to sets, DiaPro prunes false-positive impacts with varying strength for variant effectiveness and overheads. The framework also facilitates an in-depth examination of the effects of various program information on the cost-effectiveness of impact analysis. We applied D iaPro to ten Java applications in diverse scales and domains, evaluating it thoroughly on both arbitrary and repository-based queries from those applications. We show that the three new analyses are all significantly more effective than existing alternatives while remaining efficient, and the DiaPro framework, as a whole, provides flexible cost-effectiveness choices for impact analysis with the best options for variable needs and budgets. Our study results also suggest that hybrid techniques tend to be much more cost-effective than purely dynamic approaches, in general, and that statement coverage has mostly stronger effects than dynamic points-to sets on the cost-effectiveness of dynamic impact analysis, while static dependencies have even stronger effects than both forms of dynamic data.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "18", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Anand:2016:SMA, author = "Kapil Anand and Khaled Elwazeer and Aparna Kotha and Matthew Smithson and Rajeev Barua and Angelos Keromytis", title = "A Stack Memory Abstraction and Symbolic Analysis Framework for Executables", journal = j-TOSEM, volume = "25", number = "2", pages = "19:1--19:??", month = may, year = "2016", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/2897511", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon May 16 16:22:08 MDT 2016", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "This article makes three contributions regarding reverse-engineering of executables. First, techniques are presented for recovering a precise and correct stack-memory model in executables while addressing executable-specific challenges such as indirect control transfers. Next, the enhanced memory model is employed to define a novel symbolic analysis framework for executables that can perform the same types of program analyses as source-level tools. Third, a demand-driven framework is presented to enhance the scalability of the symbolic analysis framework. Existing symbolic analysis frameworks for executables fail to simultaneously maintain the properties of correct representation, a precise stack-memory model, and scalability. Furthermore, they ignore memory-allocated variables when defining symbolic analysis mechanisms. Our methods do not use symbolic, relocation or debug information, which are usually absent in deployed binaries. We describe our framework, highlighting the novel intellectual contributions of our approach and demonstrating its efficacy and robustness. Our techniques improve the precision of existing stack-memory models by 25\%, enhance scalability of our basic symbolic analysis mechanism by $ 10 \times $, and successfully uncovers five previously undiscovered information-flow vulnerabilities in several widely used programs.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "19", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Baki:2016:MSL, author = "Islem Baki and Houari Sahraoui", title = "Multi-Step Learning and Adaptive Search for Learning Complex Model Transformations from Examples", journal = j-TOSEM, volume = "25", number = "3", pages = "20:1--20:??", month = aug, year = "2016", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/2904904", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Aug 23 17:00:23 MDT 2016", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Model-driven engineering promotes models as main development artifacts. As several models may be manipulated during the software-development life cycle, model transformations ensure their consistency by automating model generation and update tasks. However, writing model transformations requires much knowledge and effort that detract from their benefits. To address this issue, Model Transformation by Example (MTBE) aims to learn transformation programs from source and target model pairs supplied as examples. In this article, we tackle the fundamental issues that prevent the existing MTBE approaches from efficiently solving the problem of learning model transformations. We show that, when considering complex transformations, the search space is too large to be explored by naive search techniques. We propose an MTBE process to learn complex model transformations by considering three common requirements: element context and state dependencies and complex value derivation. Our process relies on two strategies to reduce the size of the search space and to better explore it, namely, multi-step learning and adaptive search. We experimentally evaluate our approach on seven model transformation problems. The learned transformation programs are able to produce perfect target models in three transformation cases, whereas precision and recall values larger than 90\% are recorded for the four remaining cases.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "20", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{He:2016:LWA, author = "Fei He and Xiaowei Gao and Miaofei Wang and Bow-Yaw Wang and Lijun Zhang", title = "Learning Weighted Assumptions for Compositional Verification of {Markov} Decision Processes", journal = j-TOSEM, volume = "25", number = "3", pages = "21:1--21:??", month = aug, year = "2016", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/2907943", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Aug 23 17:00:23 MDT 2016", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Probabilistic models are widely deployed in various systems. To ensure their correctness, verification techniques have been developed to analyze probabilistic systems. We propose the first sound and complete learning-based compositional verification technique for probabilistic safety properties on concurrent systems where each component is an Markov decision process. Different from previous works, weighted assumptions are introduced to attain completeness of our framework. Since weighted assumptions can be implicitly represented by multiterminal binary decision diagrams (MTBDDs), we give an {$>$ i$<$L$>$}/{i$<$}*-based learning algorithm for MTBDDs to infer weighted assumptions. Experimental results suggest promising outlooks for our compositional technique.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "21", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Bhatia:2016:MPG, author = "Jaspreet Bhatia and Travis D. Breaux and Florian Schaub", title = "Mining Privacy Goals from Privacy Policies Using Hybridized Task Recomposition", journal = j-TOSEM, volume = "25", number = "3", pages = "22:1--22:??", month = aug, year = "2016", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/2907942", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Aug 23 17:00:23 MDT 2016", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Privacy policies describe high-level goals for corporate data practices; regulators require industries to make available conspicuous, accurate privacy policies to their customers. Consequently, software requirements must conform to those privacy policies. To help stakeholders extract privacy goals from policies, we introduce a semiautomated framework that combines crowdworker annotations, natural language typed dependency parses, and a reusable lexicon to improve goal-extraction coverage, precision, and recall. The framework evaluation consists of a five-policy corpus governing web and mobile information systems, yielding an average precision of 0.73 and recall of 0.83. The results show that no single framework element alone is sufficient to extract goals; however, the overall framework compensates for elemental limitations. Human annotators are highly adaptive at discovering annotations in new texts, but those annotations can be inconsistent and incomplete; dependency parsers lack sophisticated, tacit knowledge, but they can perform exhaustive text search for prospective requirements indicators; and while the lexicon may never completely saturate, the lexicon terms can be reliably used to improve recall. Lexical reuse reduces false negatives by 41\%, increasing the average recall to 0.85. Last, crowd workers were able to identify and remove false positives by around 80\%, which improves average precision to 0.93.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "22", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Ouni:2016:MCC, author = "Ali Ouni and Marouane Kessentini and Houari Sahraoui and Katsuro Inoue and Kalyanmoy Deb", title = "Multi-Criteria Code Refactoring Using Search-Based Software Engineering: an Industrial Case Study", journal = j-TOSEM, volume = "25", number = "3", pages = "23:1--23:??", month = aug, year = "2016", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/2932631", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Aug 23 17:00:23 MDT 2016", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "One of the most widely used techniques to improve the quality of existing software systems is refactoring-the process of improving the design of existing code by changing its internal structure without altering its external behavior. While it is important to suggest refactorings that improve the quality and structure of the system, many other criteria are also important to consider, such as reducing the number of code changes, preserving the semantics of the software design and not only its behavior, and maintaining consistency with the previously applied refactorings. In this article, we propose a multi-objective search-based approach for automating the recommendation of refactorings. The process aims at finding the optimal sequence of refactorings that (i) improves the quality by minimizing the number of design defects, (ii) minimizes code changes required to fix those defects, (iii) preserves design semantics, and (iv) maximizes the consistency with the previously code changes. We evaluated the efficiency of our approach using a benchmark of six open-source systems, 11 different types of refactorings (move method, move field, pull up method, pull up field, push down method, push down field, inline class, move class, extract class, extract method, and extract interface) and six commonly occurring design defect types (blob, spaghetti code, functional decomposition, data class, shotgun surgery, and feature envy) through an empirical study conducted with experts. In addition, we performed an industrial validation of our technique, with 10 software engineers, on a large project provided by our industrial partner. We found that the proposed refactorings succeed in preserving the design coherence of the code, with an acceptable level of code change score while reusing knowledge from recorded refactorings applied in the past to similar contexts.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "23", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Candela:2016:UCC, author = "Ivan Candela and Gabriele Bavota and Barbara Russo and Rocco Oliveto", title = "Using Cohesion and Coupling for Software Remodularization: Is It Enough?", journal = j-TOSEM, volume = "25", number = "3", pages = "24:1--24:??", month = aug, year = "2016", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/2928268", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Aug 23 17:00:23 MDT 2016", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Refactoring and, in particular, remodularization operations can be performed to repair the design of a software system and remove the erosion caused by software evolution. Various approaches have been proposed to support developers during the remodularization of a software system. Most of these approaches are based on the underlying assumption that developers pursue an optimal balance between cohesion and coupling when modularizing the classes of their systems. Thus, a remodularization recommender proposes a solution that implicitly provides a (near) optimal balance between such quality attributes. However, there is still no empirical evidence that such a balance is the desideratum by developers. This article aims at analyzing both objectively and subjectively the aforementioned phenomenon. Specifically, we present the results of (1) a large study analyzing the modularization quality, in terms of package cohesion and coupling, of 100 open-source systems, and (2) a survey conducted with 29 developers aimed at understanding the driving factors they consider when performing modularization tasks. The results achieved have been used to distill a set of lessons learned that might be considered to design more effective remodularization recommenders.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "24", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Gay:2016:EPM, author = "Gregory Gay and Ajitha Rajan and Matt Staats and Michael Whalen and Mats P. E. Heimdahl", title = "The Effect of Program and Model Structure on the Effectiveness of {MC\slash DC} Test Adequacy Coverage", journal = j-TOSEM, volume = "25", number = "3", pages = "25:1--25:??", month = aug, year = "2016", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/2934672", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Aug 23 17:00:23 MDT 2016", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Test adequacy metrics defined over the structure of a program, such as Modified Condition and Decision Coverage (MC/DC), are used to assess testing efforts. However, MC/DC can be ``cheated'' by restructuring a program to make it easier to achieve the desired coverage. This is concerning, given the importance of MC/DC in assessing the adequacy of test suites for critical systems domains. In this work, we have explored the impact of implementation structure on the efficacy of test suites satisfying the MC/DC criterion using four real-world avionics systems. Our results demonstrate that test suites achieving MC/DC over implementations with structurally complex Boolean expressions are generally larger and more effective than test suites achieving MC/DC over functionally equivalent, but structurally simpler, implementations. Additionally, we found that test suites generated over simpler implementations achieve significantly lower MC/DC and fault-finding effectiveness when applied to complex implementations, whereas test suites generated over the complex implementation still achieve high MC/DC and attain high fault finding over the simpler implementation. By measuring MC/DC over simple implementations, we can significantly reduce the cost of testing, but in doing so, we also reduce the effectiveness of the testing process. Thus, developers have an economic incentive to ``cheat'' the MC/DC criterion, but this cheating leads to negative consequences. Accordingly, we recommend that organizations require MC/DC over a structurally complex implementation for testing purposes to avoid these consequences.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "25", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Czekster:2016:SPA, author = "Ricardo M. Czekster and Paulo Fernandes and Lucelene Lopes and Afonso Sales and Alan R. Santos and Thais Webber", title = "Stochastic Performance Analysis of Global Software Development Teams", journal = j-TOSEM, volume = "25", number = "3", pages = "26:1--26:??", month = aug, year = "2016", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/2955093", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Aug 23 17:00:23 MDT 2016", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Measuring productivity in globally distributed projects is crucial to improve team performance. These measures often display information on whether a given project is moving forward or starts to demonstrate undesired behaviors. In this paper we are interested in showing how analytical models could deliver insights for the behavior of specific distributed software collaboration projects. We present a model for distributed projects using stochastic automata networks (SAN) formalism to estimate, for instance, the required level of coordination for specific project configurations. We focus our attention on the level of interaction among project participants and its close relation with team's productivity. The models are parameterized for different scenarios and solved using numerical methods to obtain exact solutions. We vary the team's expertise and support levels to measure the impact on the overall project performance. As results, we present our derived productivity index for all scenarios and we state implications found in order to analyze popular preconceptions in GSD area, confirming some, and refusing others. Finally, we foresee ways to extend the models to represent more intricate behaviors and communication patterns that are usually present in globally distributed software projects.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "26", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Yang:2016:HPP, author = "Chunbai Yang and Shangru Wu and W. K. Chan", title = "Hierarchical Program Paths", journal = j-TOSEM, volume = "25", number = "3", pages = "27:1--27:??", month = aug, year = "2016", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/2963094", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Aug 23 17:00:23 MDT 2016", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Complete dynamic control flow is a fundamental kind of execution profile about program executions with a wide range of applications. Tracing the dynamic control flow of program executions for a brief period easily generates a trace consisting of billions of control flow events. The number of events in such a trace is large, making both path tracing and path querying to incur significant slowdowns. A major class of path tracing techniques is to design novel trace representations that can be generated efficiently, and encode the inputted sequences of such events so that the inputted sequences are still derivable from the encoded and smaller representations. The control flow semantics in such representations have, however, become obscure, which makes implementing path queries on such a representation inefficient and the design of such queries complicated. We propose a novel two-phase path tracing framework- Hierarchical Program Path (HPP)-to model the complete dynamic control flow of an arbitrary number of executions of a program. In Phase 1, HPP monitors each execution, and efficiently generates a stream of events, namely HPPTree, representing a novel tree-based representation of control flow for each thread of control in the execution. In Phase 2, given a set of such event streams, HPP identifies all the equivalent instances of the same exercised interprocedural path in all the corresponding HPPTree instances, and represents each such equivalent set of paths with a single subgraph, resulting in our compositional graph-based trace representation, namely, HPPDAG. Thus, an HPPDAG instance has the potential to be significantly smaller in size than the corresponding HPPTree instances, and still completely preserves the control flow semantics of the traced executions. Control flow queries over all the traced executions can also be directly performed on the single HPPDAG instance instead of separately processing the trace representation of each execution followed by aggregating their results. We validate HPP using the SPLASH2 and SPECint 2006 benchmarks. Compared to the existing technique, named BLPT (Ball-Larus-based Path Tracing), HPP generates significantly smaller trace representations and incurs fewer slowdowns to the native executions in online tracing of Phase 1. The HPPDAG instances generated in Phase 2 are significantly smaller than their corresponding BLPT and HPPTree traces. We show that HPPDAG supports efficient backtrace querying, which is a representative path query based on complete control flow trace. Finally, we illustrate the ease of use of HPPDAG by building a novel and highly efficient path profiling technique to demonstrate the applicability of HPPDAG.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "27", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Polyvyanyy:2017:IDP, author = "Artem Polyvyanyy and Wil M. P. {Van Der Aalst} and Arthur H. M. Ter Hofstede and Moe T. Wynn", title = "Impact-Driven Process Model Repair", journal = j-TOSEM, volume = "25", number = "4", pages = "28:1--28:??", month = may, year = "2017", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/2980764", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon Jul 24 09:31:14 MDT 2017", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "The abundance of event data in today's information systems makes it possible to ``confront'' process models with the actual observed behavior. Process mining techniques use event logs to discover process models that describe the observed behavior, and to check conformance of process models by diagnosing deviations between models and reality. In many situations, it is desirable to mediate between a preexisting model and observed behavior. Hence, we would like to repair the model while improving the correspondence between model and log as much as possible. The approach presented in this article assigns predefined costs to repair actions (allowing inserting or skipping of activities). Given a maximum degree of change, we search for models that are optimal in terms of fitness-that is, the fraction of behavior in the log not possible according to the model is minimized. To compute fitness, we need to align the model and log, which can be time consuming. Hence, finding an optimal repair may be intractable. We propose different alternative approaches to speed up repair. The number of alignment computations can be reduced dramatically while still returning near-optimal repairs. The different approaches have been implemented using the process mining framework ProM and evaluated using real-life logs.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "28", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Azad:2017:GAC, author = "Shams Azad and Peter C. Rigby and Latifa Guerrouj", title = "Generating {API} Call Rules from Version History and {Stack Overflow} Posts", journal = j-TOSEM, volume = "25", number = "4", pages = "29:1--29:??", month = may, year = "2017", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/2990497", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon Jul 24 09:31:14 MDT 2017", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Researchers have shown that related functions can be mined from groupings of functions found in the version history of a system. Our first contribution is to expand this approach to a community of applications and set of similar applications. Android developers use a set of application programming interface (API) calls when creating apps. These API calls are used in similar ways across multiple applications. By clustering co-changing API calls used by 230 Android apps across 12k versions, we are able to predict the API calls that individual app developers will use with an average precision of 75\% and recall of 22\%. When we make predictions from the same category of app, such as Finance, we attain precision and recall of 81\% and 28\%, respectively. Our second contribution can be characterized as ``programmers who discussed these functions were also interested in these functions.'' Informal discussions on Stack Overflow provide a rich source of information about related API calls as developers provide solutions to common problems. By grouping API calls contained in each positively voted answer posts, we are able to create rules that predict the calls that app developers will use in their own apps with an average precision of 66\% and recall of 13\%. For comparison purposes, we developed a baseline by clustering co-changing API calls for each individual app and generated association rules from them. The baseline predicts API calls used by app developers with a precision and recall of 36\% and 23\%, respectively.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "29", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Palepu:2017:DDS, author = "Vijay Krishna Palepu and Guoqing Xu and James A. Jones", title = "Dynamic Dependence Summaries", journal = j-TOSEM, volume = "25", number = "4", pages = "30:1--30:??", month = may, year = "2017", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/2968444", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon Jul 24 09:31:14 MDT 2017", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Software engineers construct modern-day software applications by building on existing software libraries and components that they necessarily do not author themselves. Thus, contemporary software applications rely heavily on existing standard and third-party libraries for their execution and behavior. As such, effective runtime analysis of such a software application's behavior is met with new challenges. To perform dynamic analysis of a software application, all transitively dependent external libraries must also be monitored and analyzed at each layer of the software application's call stack. However, monitoring and analyzing large and often numerous external libraries may prove to be prohibitively expensive. Moreover, an overabundance of library-level analyses may obfuscate the details of the actual software application's dynamic behavior. In other words, the extensive use of existing libraries by a software application renders the results of its dynamic analysis both expensive to compute and difficult to understand. We model software component behavior as dynamically observed data- and control dependencies between inputs and outputs of a software component. Such data- and control dependencies are monitored at a fine-grain instruction-level and are collected as dynamic execution traces for software runs. As an approach to address the complexities and expenses associated with analyzing dynamically observable behavior of software components, we summarize and reuse the data- and control dependencies between the inputs and outputs of software components. Dynamically monitored data- and control dependencies, between the inputs and outputs of software components, upon summarization are called dynamic dependence summaries. Software components, equipped with dynamic dependence summaries, afford the omission of their exhaustive runtime analysis. Nonetheless, the reuse of dependence summaries would necessitate the abstraction of any concrete runtime information enclosed within the summary, thus potentially causing a loss in the information modeled by the dependence summary. Therefore, benefits to the efficiency of dynamic analyses that use such summarization may be afforded with losses of accuracy. As such, we evaluate the potential accuracy loss and the potential performance gain with the use of dynamic dependence summaries. Our results show, on average, a 13$ \times $ speedup with the use of dynamic dependence summaries, with an accuracy of 90\% in a real-world software engineering task.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "30", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{DeLara:2017:PTM, author = "Juan {De Lara} and Esther Guerra", title = "A Posteriori Typing for Model-Driven Engineering: Concepts, Analysis, and Applications", journal = j-TOSEM, volume = "25", number = "4", pages = "31:1--31:??", month = may, year = "2017", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3063384", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon Jul 24 09:31:14 MDT 2017", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Model-Driven Engineering (MDE) is founded on the ability to create and process models conforming to a meta-model. In this context, classes in a meta-model are used in two ways: as templates to create objects and as (static) classifiers for them. These two aspects are inherently tied in most meta-modelling approaches, which results in unnecessarily rigid systems and hinders reusability of MDE artefacts. In this work, we discuss the benefits of decoupling object creation from typing in MDE. Thus, we rely on standard mechanisms for object creation, and propose a posteriori typing as a means to retype objects and enable multiple, partial, dynamic typings. This approach enhances flexibility; permits unanticipated reuse, as model management operations defined for a meta-model can be reused with other models once they get reclassified; and enables bidirectional model transformation by reclassification. In particular, we propose two mechanisms to realise model retyping and show their underlying theory and analysis methods. We show the feasibility of the approach by an implementation atop our meta-modelling tool M etaDepth and present several applications of retypings (transformations, reuse, and dynamicity).", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "31", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{DiNardo:2017:AFD, author = "Daniel {Di Nardo} and Fabrizio Pastore and Lionel Briand", title = "Augmenting Field Data for Testing Systems Subject to Incremental Requirements Changes", journal = j-TOSEM, volume = "26", number = "1", pages = "1:1--1:??", month = jul, year = "2017", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3053430", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon Jul 24 09:31:14 MDT 2017", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "When testing data processing systems, software engineers often use real-world data to perform system-level testing. However, in the presence of new data requirements, software engineers may no longer benefit from having real-world data with which to perform testing. Typically, new test inputs complying with the new requirements have to be manually written. We propose an automated model-based approach that combines data modelling and constraint solving to modify existing field data to generate test inputs for testing new data requirements. The approach scales in the presence of complex and structured data, thanks to both the reuse of existing field data and the adoption of an innovative input generation algorithm based on slicing the model into parts. We validated the scalability and effectiveness of the proposed approach using an industrial case study. The empirical study shows that the approach scales in the presence of large amounts of structured and complex data. The approach can produce, within a reasonable time, test input data that is over ten times larger in size than the data generated with constraint solving only. We also demonstrate that the generated test inputs achieve more code coverage than the test cases implemented by experienced software engineers.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "1", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Sadeghi:2017:ECA, author = "Alireza Sadeghi and Naeem Esfahani and Sam Malek", title = "Ensuring the Consistency of Adaptation through Inter- and Intra-Component Dependency Analysis", journal = j-TOSEM, volume = "26", number = "1", pages = "2:1--2:??", month = jul, year = "2017", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3063385", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon Jul 24 09:31:14 MDT 2017", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Dynamic adaptation should not leave a software system in an inconsistent state, as it could lead to failure. Prior research has used inter-component dependency models of a system to determine a safe interval for the adaptation of its components, where the most important tradeoff is between disruption in the operations of the system and reachability of safe intervals. This article presents Savasana, which automatically analyzes a software system's code to extract both inter- and intra-component dependencies. In this way, Savasana is able to obtain more fine-grained models compared to previous approaches. Savasana then uses the detailed models to find safe adaptation intervals that cannot be determined using techniques from prior research. This allows Savasana to achieve a better tradeoff between disruption and reachability. The article demonstrates how Savasana infers safe adaptation intervals for components of a software system under various use cases and conditions.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "2", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Mills:2017:PQQ, author = "Chris Mills and Gabriele Bavota and Sonia Haiduc and Rocco Oliveto and Andrian Marcus and Andrea {De Lucia}", title = "Predicting Query Quality for Applications of Text Retrieval to Software Engineering Tasks", journal = j-TOSEM, volume = "26", number = "1", pages = "3:1--3:??", month = jul, year = "2017", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3078841", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon Jul 24 09:31:14 MDT 2017", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Context: Since the mid-2000s, numerous recommendation systems based on text retrieval (TR) have been proposed to support software engineering (SE) tasks such as concept location, traceability link recovery, code reuse, impact analysis, and so on. The success of TR-based solutions highly depends on the query submitted, which is either formulated by the developer or automatically extracted from software artifacts. Aim: We aim at predicting the quality of queries submitted to TR-based approaches in SE. This can lead to benefits for developers and for the quality of software systems alike. For example, knowing when a query is poorly formulated can save developers the time and frustration of analyzing irrelevant search results. Instead, they could focus on reformulating the query. Also, knowing if an artifact used as a query leads to irrelevant search results may uncover underlying problems in the query artifact itself. Method: We introduce an automatic query quality prediction approach for software artifact retrieval by adapting NL-inspired solutions to their use on software data. We present two applications and evaluations of the approach in the context of concept location and traceability link recovery, where TR has been applied most often in SE. For concept location, we use the approach to determine if the list of retrieved code elements is likely to contain code relevant to a particular change request or not, in which case, the queries are good candidates for reformulation. For traceability link recovery, the queries represent software artifacts. In this case, we use the query quality prediction approach to identify artifacts that are hard to trace to other artifacts and may therefore have a low intrinsic quality for TR-based traceability link recovery. Results: For concept location, the evaluation shows that our approach is able to correctly predict the quality of queries in 82\% of the cases, on average, using very little training data. In the case of traceability recovery, the proposed approach is able to detect hard to trace artifacts in 74\% of the cases, on average. Conclusions: The results of our evaluation on applications for concept location and traceability link recovery indicate that our approach can be used to predict the results of a TR-based approach by assessing the quality of the text query. This can lead to saved effort and time, as well as the identification of software artifacts that may be difficult to trace using TR.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "3", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Yoo:2017:HCG, author = "Shin Yoo and Xiaoyuan Xie and Fei-Ching Kuo and Tsong Yueh Chen and Mark Harman", title = "Human Competitiveness of Genetic Programming in Spectrum-Based Fault Localisation: Theoretical and Empirical Analysis", journal = j-TOSEM, volume = "26", number = "1", pages = "4:1--4:??", month = jul, year = "2017", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3078840", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon Jul 24 09:31:14 MDT 2017", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "We report on the application of Genetic Programming to Software Fault Localisation, a problem in the area of Search-Based Software Engineering (SBSE). We give both empirical and theoretical evidence for the human competitiveness of the evolved fault localisation formul{\ae} under the single fault scenario, compared to those generated by human ingenuity and reported in many papers, published over more than a decade. Though there have been previous human competitive results claimed for SBSE problems, this is the first time that evolved solutions have been formally proved to be human competitive. We further prove that no future human investigation could outperform the evolved solutions. We complement these proofs with an empirical analysis of both human and evolved solutions, which indicates that the evolved solutions are not only theoretically human competitive, but also convey similar practical benefits to human-evolved counterparts.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "4", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Hierons:2017:PAG, author = "Robert M. Hierons and Uraz Cengiz T{\"u}rker", title = "Parallel Algorithms for Generating Distinguishing Sequences for Observable Non-deterministic {FSMs}", journal = j-TOSEM, volume = "26", number = "1", pages = "5:1--5:??", month = jul, year = "2017", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3051121", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon Jul 24 09:31:14 MDT 2017", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "A distinguishing sequence (DS) for a finite-state machine (FSM) is an input sequence that distinguishes every pair of states of the FSM. There are techniques that generate a test sequence with guaranteed fault detection power, and it has been found that shorter test sequences can be produced if DSs are used. Despite these benefits, however, until recently the only published DS generation algorithms have been for deterministic FSMs. This article develops a massively parallel algorithm, which can be used in Graphics Processing Units (GPUs) Computing, to generate DSs from partial observable non-deterministic FSMs. We also present the results of experiments using randomly generated FSMs and some benchmark FSMs. The results are promising and indicate that the proposed algorithm can derive DSs from partial observable non-deterministic FSMs with 32,000 states in an acceptable amount of time.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "5", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Rosenblum:2017:E, author = "David S. Rosenblum", title = "Editorial", journal = j-TOSEM, volume = "26", number = "2", pages = "6:1--6:??", month = oct, year = "2017", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3136621", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Thu Oct 5 18:22:13 MDT 2017", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "6e", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Scanniello:2017:FFC, author = "Giuseppe Scanniello and Michele Risi and Porfirio Tramontana and Simone Romano", title = "Fixing Faults in {C} and {Java} Source Code: Abbreviated vs. Full-Word Identifier Names", journal = j-TOSEM, volume = "26", number = "2", pages = "6:1--6:??", month = oct, year = "2017", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3104029", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Thu Oct 5 18:22:13 MDT 2017", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/java2010.bib; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "We carried out a family of controlled experiments to investigate whether the use of abbreviated identifier names, with respect to full-word identifier names, affects fault fixing in C and Java source code. This family consists of an original (or baseline) controlled experiment and three replications. We involved 100 participants with different backgrounds and experiences in total. Overall results suggested that there is no difference in terms of effort, effectiveness, and efficiency to fix faults, when source code contains either only abbreviated or only full-word identifier names. We also conducted a qualitative study to understand the values, beliefs, and assumptions that inform and shape fault fixing when identifier names are either abbreviated or full-word. We involved in this qualitative study six professional developers with 1--3 years of work experience. A number of insights emerged from this qualitative study and can be considered a useful complement to the quantitative results from our family of experiments. One of the most interesting insights is that developers, when working on source code with abbreviated identifier names, adopt a more methodical approach to identify and fix faults by extending their focus point and only in a few cases do they expand abbreviated identifiers.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "6", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Baresi:2017:LBA, author = "Luciano Baresi and Angelo Morzenti and Alfredo Motta and Mohammad Mehdi Pourhashem K. and Matteo Rossi", title = "A Logic-Based Approach for the Verification of {UML} Timed Models", journal = j-TOSEM, volume = "26", number = "2", pages = "7:1--7:??", month = oct, year = "2017", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3106411", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Thu Oct 5 18:22:13 MDT 2017", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "This article presents a novel technique to formally verify models of real-time systems captured through a set of heterogeneous UML diagrams. The technique is based on the following key elements: (i) a subset of Unified Modeling Language (UML) diagrams, called Coretto UML (C-UML), which allows designers to describe the components of the system and their behavior through several kinds of diagrams (e.g., state machine diagrams, sequence diagrams, activity diagrams, interaction overview diagrams), and stereotypes taken from the UML Profile for Modeling and Analysis of Real-Time and Embedded Systems; (ii) a formal semantics of C-UML diagrams, defined through formulae of the metric temporal logic Tempo Reale ImplicitO (TRIO); and (iii) a tool, called Corretto, which implements the aforementioned semantics and allows users to carry out formal verification tasks on modeled systems. We validate the feasibility of our approach through a set of different case studies, taken from both the academic and the industrial domain.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "7", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Karanikolas:2017:EEI, author = "Chris Karanikolas and Grigoris Dimitroulakos and Konstantinos Masselos", title = "Early Evaluation of Implementation Alternatives of Composite Data Structures Toward Maintainability", journal = j-TOSEM, volume = "26", number = "2", pages = "8:1--8:??", month = oct, year = "2017", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3132731", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Thu Oct 5 18:22:13 MDT 2017", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Selecting between different design options is a crucial decision for object-oriented software developers that affects code quality characteristics. Conventionally developers use their experience to make such decisions, which leads to suboptimal results regarding code quality. In this article, a formal model for providing early estimates of quality metrics of object-oriented software implementation alternatives is proposed. The model supports software developers in making fast decisions in a systematic way early during the design phase to achieve improved code characteristics. The approach employs a comparison model related to the application of the Visitor design pattern and inheritance-based implementation on structures following the Composite design pattern. The model captures maintainability as a metric of software quality and provides precise assessments of the quality of each implementation alternative. Furthermore, the model introduces the structural maintenance cost metric based on which the progressive analysis of the maintenance process is introduced. The proposed approach has been applied to several test cases for different relevant quality metrics. The results prove that the proposed model delivers accurate estimations. Thus, the proposed methodology can be used for comparing different implementation alternatives against various measures and quality factors before code development, leading to reduced effort and cost for software maintenance.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "8", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Attie:2018:GLD, author = "Paul C. Attie and Saddek Bensalem and Marius Bozga and Mohamad Jaber and Joseph Sifakis and Fadi A. Zaraket", title = "Global and Local Deadlock Freedom in {BIP}", journal = j-TOSEM, volume = "26", number = "3", pages = "9:1--9:??", month = jan, year = "2018", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3152910", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon Jan 22 17:44:40 MST 2018", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "We present a criterion for checking local and global deadlock freedom of finite state systems expressed in BIP: a component-based framework for constructing complex distributed systems. Our criterion is evaluated by model-checking a set of subsystems of the overall large system. If satisfied in small subsystems, it implies deadlock-freedom of the overall system. If not satisfied, then we re-evaluate over larger subsystems, which improves the accuracy of the check. When the subsystem being checked becomes the entire system, our criterion becomes complete for deadlock-freedom. Hence our criterion only fails to decide deadlock freedom because of computational limitations: state-space explosion sets in when the subsystems become too large. Our method thus combines the possibility of fast response together with theoretical completeness. Other criteria for deadlock freedom, in contrast, are incomplete in principle, and so may fail to decide deadlock freedom even if unlimited computational resources are available. Also, our criterion certifies freedom from local deadlock, in which a subsystem is deadlocked while the rest of the system executes. Other criteria only certify freedom from global deadlock. We present experimental results for dining philosophers and for a multi-token-based resource allocation system, which subsumes several data arbiters and schedulers, including Milner's token-based scheduler.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "9", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Abal:2018:VBH, author = "Iago Abal and Jean Melo and Stefan Stanciulescu and Claus Brabrand and M{\'a}rcio Ribeiro and Andrzej Wasowski", title = "Variability Bugs in Highly Configurable Systems: a Qualitative Analysis", journal = j-TOSEM, volume = "26", number = "3", pages = "10:1--10:??", month = jan, year = "2018", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3149119", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon Jan 22 17:44:40 MST 2018", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Variability-sensitive verification pursues effective analysis of the exponentially many variants of a program family. Several variability-aware techniques have been proposed, but researchers still lack examples of concrete bugs induced by variability, occurring in real large-scale systems. A collection of real world bugs is needed to evaluate tool implementations of variability-sensitive analyses by testing them on real bugs. We present a qualitative study of 98 diverse variability bugs (i.e., bugs that occur in some variants and not in others) collected from bug-fixing commits in the Linux, Apache, BusyBox, and Marlin repositories. We analyze each of the bugs, and record the results in a database. For each bug, we create a self-contained simplified version and a simplified patch, in order to help researchers who are not experts on these subject studies to understand them, so that they can use these bugs for evaluation of their tools. In addition, we provide single-function versions of the bugs, which are useful for evaluating intra-procedural analyses. A web-based user interface for the database allows to conveniently browse and visualize the collection of bugs. Our study provides insights into the nature and occurrence of variability bugs in four highly-configurable systems implemented in C/C++, and shows in what ways variability hinders comprehension and the uncovering of software bugs.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "10", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Garcia:2018:LOR, author = "Joshua Garcia and Mahmoud Hammad and Sam Malek", title = "Lightweight, Obfuscation-Resilient Detection and Family Identification of {Android} Malware", journal = j-TOSEM, volume = "26", number = "3", pages = "11:1--11:??", month = jan, year = "2018", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3162625", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon Jan 22 17:44:40 MST 2018", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "The number of malicious Android apps is increasing rapidly. Android malware can damage or alter other files or settings, install additional applications, and so on. To determine such behaviors, a security analyst can significantly benefit from identifying the family to which an Android malware belongs rather than only detecting if an app is malicious. Techniques for detecting Android malware, and determining their families, lack the ability to handle certain obfuscations that aim to thwart detection. Moreover, some prior techniques face scalability issues, preventing them from detecting malware in a timely manner. To address these challenges, we present a novel machine-learning-based Android malware detection and family identification approach, RevealDroid, that operates without the need to perform complex program analyses or to extract large sets of features. Specifically, our selected features leverage categorized Android API usage, reflection-based features, and features from native binaries of apps. We assess RevealDroid for accuracy, efficiency, and obfuscation resilience using a large dataset consisting of more than 54,000 malicious and benign apps. Our experiments show that RevealDroid achieves an accuracy of 98\% in detection of malware and an accuracy of 95\% in determination of their families. We further demonstrate RevealDroid's superiority against state-of-the-art approaches.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "11", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Nguyen:2018:UCM, author = "Khanh Nguyen and Kai Wang and Yingyi Bu and Lu Fang and Guoqing Xu", title = "Understanding and Combating Memory Bloat in Managed Data-Intensive Systems", journal = j-TOSEM, volume = "26", number = "4", pages = "12:1--12:41", month = feb, year = "2018", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3162626", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Jun 8 17:20:39 MDT 2018", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2010.bib; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "The past decade has witnessed increasing demands on data-driven business intelligence that led to the proliferation of data-intensive applications. A managed object-oriented programming language such as Java is often the developer's choice for implementing such applications, due to its quick development cycle and rich suite of libraries and frameworks. While the use of such languages makes programming easier, their automated memory management comes at a cost. When the managed runtime meets large volumes of input data, memory bloat is significantly magnified and becomes a scalability-prohibiting bottleneck. This article first studies, analytically and empirically, the impact of bloat on the performance and scalability of large-scale, real-world data-intensive systems. To combat bloat, we design a novel compiler framework, called F acade, that can generate highly efficient data manipulation code by automatically transforming the data path of an existing data-intensive application. The key treatment is that in the generated code, the number of runtime heap objects created for data classes in each thread is (almost) statically bounded, leading to significantly reduced memory management cost and improved scalability. We have implemented Facade and used it to transform seven common applications on three real-world, already well-optimized data processing frameworks: GraphChi, Hyracks, and GPS. Our experimental results are very positive: the generated programs have (1) achieved a 3\% to 48\% execution time reduction and an up to 88$ \times $ GC time reduction, (2) consumed up to 50\% less memory, and (3) scaled to much larger datasets.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "12", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Lucia:2018:DBD, author = "Andrea {De Lucia} and Vincenzo Deufemia and Carmine Gravino and Michele Risi", title = "Detecting the Behavior of Design Patterns through Model Checking and Dynamic Analysis", journal = j-TOSEM, volume = "26", number = "4", pages = "13:1--13:??", month = feb, year = "2018", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3176643", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Jun 8 17:20:39 MDT 2018", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "We present a method and tool (ePAD) for the detection of design pattern instances in source code. The approach combines static analysis, based on visual language parsing and model checking, and dynamic analysis, based on source code instrumentation. Visual language parsing and static source code analysis identify candidate instances satisfying the structural properties of design patterns. Successively, model checking statically verifies the behavioral aspects of the candidates recovered in the previous phase. We encode the sequence of messages characterizing the correct behaviour of a pattern as Linear Temporal Logic (LTL) formulae and the sequence diagram representing the possible interaction traces among the objects involved in the candidates as Promela specifications. The model checker SPIN verifies that candidates satisfy the LTL formulae. Dynamic analysis is then performed on the obtained candidates by instrumenting the source code and monitoring those instances at runtime through the execution of test cases automatically generated using a search-based approach. The effectiveness of ePAD has been evaluated by detecting instances of 12 creational and behavioral patterns from six publicly available systems. The results reveal that ePAD outperforms other approaches by recovering more actual instances. Furthermore, on average ePAD achieves better results in terms of correctness and completeness.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "13", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Xiang:2018:CSP, author = "Yi Xiang and Yuren Zhou and Zibin Zheng and Miqing Li", title = "Configuring Software Product Lines by Combining Many-Objective Optimization and {SAT} Solvers", journal = j-TOSEM, volume = "26", number = "4", pages = "14:1--14:??", month = feb, year = "2018", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3176644", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Jun 8 17:20:39 MDT 2018", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "A feature model (FM) is a compact representation of the information of all possible products from software product lines. The optimal feature selection involves the simultaneous optimization of multiple (usually more than three) objectives in a large and highly constrained search space. By combining our previous work on many-objective evolutionary algorithm (i.e., VaEA) with two different satisfiability (SAT) solvers, this article proposes a new approach named SATVaEA for handling the optimal feature selection problem. In SATVaEA, an FM is simplified with the number of both features and constraints being reduced greatly. We enhance the search of VaEA by using two SAT solvers: one is a stochastic local search--based SAT solver that can quickly repair infeasible configurations, whereas the other is a conflict-driven clause-learning SAT solver that is introduced to generate diversified products. We evaluate SATVaEA on 21 FMs with up to 62,482 features, including two models with realistic values for feature attributes. The experimental results are promising, with SATVaEA returning 100\% valid products on almost all FMs. For models with more than 10,000 features, the search in SATVaEA takes only a few minutes. Concerning both effectiveness and efficiency, SATVaEA significantly outperforms other state-of-the-art algorithms.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "14", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Rosenblum:2018:Ea, author = "David S. Rosenblum", title = "Editorial", journal = j-TOSEM, volume = "27", number = "1", pages = "1:1--1:??", month = jun, year = "2018", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3205909", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Jun 8 17:20:40 MDT 2018", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "1e", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Zhou:2018:HFW, author = "Yuming Zhou and Yibiao Yang and Hongmin Lu and Lin Chen and Yanhui Li and Yangyang Zhao and Junyan Qian and Baowen Xu", title = "How Far We Have Progressed in the Journey? {An} Examination of Cross-Project Defect Prediction", journal = j-TOSEM, volume = "27", number = "1", pages = "1:1--1:??", month = jun, year = "2018", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3183339", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Jun 8 17:20:40 MDT 2018", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Background. Recent years have seen an increasing interest in cross-project defect prediction (CPDP), which aims to apply defect prediction models built on source projects to a target project. Currently, a variety of (complex) CPDP models have been proposed with a promising prediction performance. Problem. Most, if not all, of the existing CPDP models are not compared against those simple module size models that are easy to implement and have shown a good performance in defect prediction in the literature. Objective. We aim to investigate how far we have really progressed in the journey by comparing the performance in defect prediction between the existing CPDP models and simple module size models. Method. We first use module size in the target project to build two simple defect prediction models, ManualDown and ManualUp, which do not require any training data from source projects. ManualDown considers a larger module as more defect-prone, while ManualUp considers a smaller module as more defect-prone. Then, we take the following measures to ensure a fair comparison on the performance in defect prediction between the existing CPDP models and the simple module size models: using the same publicly available data sets, using the same performance indicators, and using the prediction performance reported in the original cross-project defect prediction studies. Result. The simple module size models have a prediction performance comparable or even superior to most of the existing CPDP models in the literature, including many newly proposed models. Conclusion. The results caution us that, if the prediction performance is the goal, the real progress in CPDP is not being achieved as it might have been envisaged. We hence recommend that future studies should include ManualDown/ManualUp as the baseline models for comparison when developing new CPDP models to predict defects in a complete target project.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "1", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Vidal:2018:ARB, author = "Santiago Vidal and I{\~n}aki Berra and Santiago Zulliani and Claudia Marcos and J. Andr{\'e}s {D{\'\i}az Pace}", title = "Assessing the Refactoring of Brain Methods", journal = j-TOSEM, volume = "27", number = "1", pages = "2:1--2:??", month = jun, year = "2018", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3191314", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Jun 8 17:20:40 MDT 2018", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2010.bib; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Code smells are a popular mechanism for identifying structural design problems in software systems. Several tools have emerged to support the detection of code smells and propose some refactorings. However, existing tools do not guarantee that a smell will be automatically fixed by means of refactorings. This article presents Bandago, an automated approach to fix a specific type of code smell called Brain Method. A Brain Method centralizes the intelligence of a class and manifests itself as a long and complex method that is difficult to understand and maintain by developers. For each Brain Method, Bandago recommends several refactoring solutions to remove the smell using a search strategy based on simulated annealing. Our approach has been evaluated with several open-source Java applications, and the results show that Bandago can automatically fix more than 60\% of Brain Methods. Furthermore, we conducted a survey with 35 industrial developers that showed evidence about the usefulness of the refactorings proposed by Bandago. Also, we compared the performance of the Bandago against that of a third-party refactoring tool.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "2", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Zhang:2018:ESM, author = "Yuanyuan Zhang and Mark Harman and Gabriela Ochoa and Guenther Ruhe and Sjaak Brinkkemper", title = "An Empirical Study of Meta- and Hyper-Heuristic Search for Multi-Objective Release Planning", journal = j-TOSEM, volume = "27", number = "1", pages = "3:1--3:??", month = jun, year = "2018", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3196831", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Jun 8 17:20:40 MDT 2018", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "A variety of meta-heuristic search algorithms have been introduced for optimising software release planning. However, there has been no comprehensive empirical study of different search algorithms across multiple different real-world datasets. In this article, we present an empirical study of global, local, and hybrid meta- and hyper-heuristic search-based algorithms on 10 real-world datasets. We find that the hyper-heuristics are particularly effective. For example, the hyper-heuristic genetic algorithm significantly outperformed the other six approaches (and with high effect size) for solution quality 85\% of the time, and was also faster than all others 70\% of the time. Furthermore, correlation analysis reveals that it scales well as the number of requirements increases.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "3", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Emam:2018:IEP, author = "S. S. Emam and J. Miller", title = "Inferring Extended Probabilistic Finite-State Automaton Models from Software Executions", journal = j-TOSEM, volume = "27", number = "1", pages = "4:1--4:??", month = jun, year = "2018", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3196883", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Jun 8 17:20:40 MDT 2018", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Behavioral models are useful tools in understanding how programs work. Although several inference approaches have been introduced to generate extended finite-state automatons from software execution traces, they suffer from accuracy, flexibility, and decidability issues. In this article, we apply a hybrid technique to use both reinforcement learning and stochastic modeling to generate an extended probabilistic finite state automaton from software traces. Our approach-ReHMM (Reinforcement learning-based Hidden Markov Modelling)-is able to address the problems of inflexibility and un-decidability reported in other state-of-the-art approaches. Experimental results indicate that ReHMM outperforms other inference algorithms.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "4", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Chen:2018:FFG, author = "Tao Chen and Ke Li and Rami Bahsoon and Xin Yao", title = "{FEMOSAA}: Feature-Guided and Knee-Driven Multi-Objective Optimization for Self-Adaptive Software", journal = j-TOSEM, volume = "27", number = "2", pages = "5:1--5:??", month = jul, year = "2018", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3204459", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Oct 22 07:57:07 MDT 2019", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Self-Adaptive Software (SAS) can reconfigure itself to adapt to the changing environment at runtime, aiming to continually optimize conflicted nonfunctional objectives (e.g., response time, energy consumption, throughput, cost, etc.). In this article, we present Feature-guided and knEe-driven Multi-Objective optimization for Self-Adaptive softwAre (FEMOSAA), a novel framework that automatically synergizes the feature model and Multi-Objective Evolutionary Algorithm (MOEA) to optimize SAS at runtime. FEMOSAA operates in two phases: at design time, FEMOSAA automatically transposes the engineers' design of SAS, expressed as a feature model, to fit the MOEA, creating new chromosome representation and reproduction operators. At runtime, FEMOSAA utilizes the feature model as domain knowledge to guide the search and further extend the MOEA, providing a larger chance for finding better solutions. In addition, we have designed a new method to search for the knee solutions, which can achieve a balanced tradeoff. We comprehensively evaluated FEMOSAA on two running SAS: One is a highly complex SAS with various adaptable real-world software under the realistic workload trace; another is a service-oriented SAS that can be dynamically composed from services. In particular, we compared the effectiveness and overhead of FEMOSAA against four of its variants and three other search-based frameworks for SAS under various scenarios, including three commonly applied MOEAs, two workload patterns, and diverse conflicting quality objectives. The results reveal the effectiveness of FEMOSAA and its superiority over the others with high statistical significance and nontrivial effect sizes.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "5", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Riesco:2018:PII, author = "Adri{\'a}n Riesco and Kazuhiro Ogata", title = "Prove it! {Inferring} Formal Proof Scripts from {CafeOBJ} Proof Scores", journal = j-TOSEM, volume = "27", number = "2", pages = "6:1--6:??", month = jul, year = "2018", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3208951", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Oct 22 07:57:07 MDT 2019", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "CafeOBJ is a language for writing formal specifications for a wide variety of software and hardware systems and for verifying their properties. CafeOBJ makes it possible to verify properties by using either proof scores, which consists of reducing goal-related terms in user-defined modules, or by using theorem proving. While the former is more flexible, it lacks the formal support to ensure that a property has been really proven. On the other hand, theorem proving might be too strict, since only a predefined set of commands can be applied to the current goal; hence, it hardens the verification of properties. In order to take advantage of the benefits of both techniques, we have extended CafeInMaude, a CafeOBJ interpreter implemented in Maude, with the CafeInMaude Proof Assistant (CiMPA) and the CafeInMaude Proof Generator (CiMPG). CiMPA is a proof assistant for proving inductive properties on CafeOBJ specifications that uses Maude metalevel features to allow programmers to create and manipulate CiMPA proofs. On the other hand, CiMPG provides a minimal set of annotations for identifying proof scores and generating CiMPA scripts for these proof scores. In this article, we present the CiMPA and CiMPG, detailing the behavior of the CiMPA and the algorithm underlying the CiMPG and illustrating the power of the approach by using the QLOCK protocol. Finally, we present some benchmarks that give us confidence in the matureness and usefulness of these tools.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "6", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Bohme:2018:SST, author = "Marcel B{\"o}hme", title = "{STADS}: Software Testing as Species Discovery", journal = j-TOSEM, volume = "27", number = "2", pages = "7:1--7:??", month = jul, year = "2018", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3210309", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Oct 22 07:57:07 MDT 2019", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "A fundamental challenge of software testing is the statistically well-grounded extrapolation from program behaviors observed during testing. For instance, a security researcher who has run the fuzzer for a week has currently no means (1) to estimate the total number of feasible program branches, given that only a fraction has been covered so far; (2) to estimate the additional time required to cover 10\% more branches (or to estimate the coverage achieved in one more day, respectively); or (3) to assess the residual risk that a vulnerability exists when no vulnerability has been discovered. Failing to discover a vulnerability does not mean that none exists-even if the fuzzer was run for a week (or a year). Hence, testing provides no formal correctness guarantees. In this article, I establish an unexpected connection with the otherwise unrelated scientific field of ecology and introduce a statistical framework that models Software Testing and Analysis as Discovery of Species (STADS). For instance, in order to study the species diversity of arthropods in a tropical rain forest, ecologists would first sample a large number of individuals from that forest, determine their species, and extrapolate from the properties observed in the sample to properties of the whole forest. The estimations (1) of the total number of species, (2) of the additional sampling effort required to discover 10\% more species, or (3) of the probability to discover a new species are classical problems in ecology. The STADS framework draws from over three decades of research in ecological biostatistics to address the fundamental extrapolation challenge for automated test generation. Our preliminary empirical study demonstrates a good estimator performance even for a fuzzer with adaptive sampling bias-AFL, a state-of-the-art vulnerability detection tool. The STADS framework provides statistical correctness guarantees with quantifiable accuracy.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "7", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Zheng:2018:MAI, author = "Yongjie Zheng and Cuong Cu and Richard N. Taylor", title = "Maintaining Architecture-Implementation Conformance to Support Architecture Centrality: From Single System to Product Line Development", journal = j-TOSEM, volume = "27", number = "2", pages = "8:1--8:??", month = jul, year = "2018", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3229048", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Oct 22 07:57:07 MDT 2019", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Architecture-centric development addresses the increasing complexity and variability of software systems by focusing on architectural models, which are generally easier to understand and manipulate than source code. It requires a mechanism that can maintain architecture-implementation conformance during architectural development and evolution. The challenge is twofold. There is an abstraction gap between software architecture and implementation, and both may evolve. Existing approaches are deficient in support for both change mapping and product line architecture. This article presents a novel approach named 1.x-way mapping and its extension, 1.x-line mapping to support architecture-implementation mapping in single system development and in product line development, respectively. They specifically address mapping architecture changes to code, maintaining variability conformance between product line architecture and code, and tracing architectural implementation. We built software tools named xMapper and xLineMapper to realize the two approaches, and conducted case studies with two existing open-source systems to evaluate the approaches. The result shows that our approaches are applicable to the implementation of a real software system and are capable of maintaining architecture-implementation conformance during system evolution.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "8", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Rosenblum:2018:Eb, author = "David S. Rosenblum", title = "Editorial", journal = j-TOSEM, volume = "27", number = "3", pages = "9:1--9:??", month = oct, year = "2018", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3264424", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Oct 22 07:57:07 MDT 2019", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "9", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Kuchta:2018:SSE, author = "Tomasz Kuchta and Hristina Palikareva and Cristian Cadar", title = "Shadow Symbolic Execution for Testing Software Patches", journal = j-TOSEM, volume = "27", number = "3", pages = "10:1--10:??", month = oct, year = "2018", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3208952", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Oct 22 07:57:07 MDT 2019", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "While developers are aware of the importance of comprehensively testing patches, the large effort involved in coming up with relevant test cases means that such testing rarely happens in practice. Furthermore, even when test cases are written to cover the patch, they often exercise the same behaviour in the old and the new version of the code. In this article, we present a symbolic execution-based technique that is designed to generate test inputs that cover the new program behaviours introduced by a patch. The technique works by executing both the old and the new version in the same symbolic execution instance, with the old version shadowing the new one. During this combined shadow execution, whenever a branch point is reached where the old and the new version diverge, we generate a test input exercising the divergence and comprehensively test the new behaviours of the new version. We evaluate our technique on the Coreutils patches from the CoREBench suite of regression bugs, and show that it is able to generate test inputs that exercise newly added behaviours and expose some of the regression bugs.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "10", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Stol:2018:ASE, author = "Klaas-Jan Stol and Brian Fitzgerald", title = "The {ABC} of Software Engineering Research", journal = j-TOSEM, volume = "27", number = "3", pages = "11:1--11:??", month = oct, year = "2018", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3241743", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Oct 22 07:57:07 MDT 2019", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "A variety of research methods and techniques are available to SE researchers, and while several overviews exist, there is consistency neither in the research methods covered nor in the terminology used. Furthermore, research is sometimes critically reviewed for characteristics inherent to the methods. We adopt a taxonomy from the social sciences, termed here the ABC framework for SE research, which offers a holistic view of eight archetypal research strategies. ABC refers to the research goal that strives for generalizability over Actors (A) and precise measurement of their Behavior (B), in a realistic Context (C). The ABC framework uses two dimensions widely considered to be key in research design: the level of obtrusiveness of the research and the generalizability of research findings. We discuss metaphors for each strategy and their inherent limitations and potential strengths. We illustrate these research strategies in two key SE domains, global software engineering and requirements engineering, and apply the framework on a sample of 75 articles. Finally, we discuss six ways in which the framework can advance SE research.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "11", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Sarro:2018:LPB, author = "Federica Sarro and Alessio Petrozziello", title = "Linear Programming as a Baseline for Software Effort Estimation", journal = j-TOSEM, volume = "27", number = "3", pages = "12:1--12:??", month = oct, year = "2018", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3234940", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Oct 22 07:57:07 MDT 2019", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Software effort estimation studies still suffer from discordant empirical results (i.e., conclusion instability) mainly due to the lack of rigorous benchmarking methods. So far only one baseline model, namely, Automatically Transformed Linear Model (ATLM), has been proposed yet it has not been extensively assessed. In this article, we propose a novel method based on Linear Programming (dubbed as Linear Programming for Effort Estimation, LP4EE) and carry out a thorough empirical study to evaluate the effectiveness of both LP4EE and ATLM for benchmarking widely used effort estimation techniques. The results of our study confirm the need to benchmark every other proposal against accurate and robust baselines. They also reveal that LP4EE is more accurate than ATLM for 17\% of the experiments and more robust than ATLM against different data splits and cross-validation methods for 44\% of the cases. These results suggest that using LP4EE as a baseline can help reduce conclusion instability. We make publicly available an open-source implementation of LP4EE in order to facilitate its adoption in future studies.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "12", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Troya:2018:SBF, author = "Javier Troya and Sergio Segura and Jose Antonio Parejo and Antonio Ruiz-Cort{\'e}s", title = "Spectrum-Based Fault Localization in Model Transformations", journal = j-TOSEM, volume = "27", number = "3", pages = "13:1--13:??", month = oct, year = "2018", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3241744", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Oct 22 07:57:07 MDT 2019", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Model transformations play a cornerstone role in Model-Driven Engineering (MDE), as they provide the essential mechanisms for manipulating and transforming models. The correctness of software built using MDE techniques greatly relies on the correctness of model transformations. However, it is challenging and error prone to debug them, and the situation gets more critical as the size and complexity of model transformations grow, where manual debugging is no longer possible. Spectrum-Based Fault Localization (SBFL) uses the results of test cases and their corresponding code coverage information to estimate the likelihood of each program component (e.g., statements) of being faulty. In this article we present an approach to apply SBFL for locating the faulty rules in model transformations. We evaluate the feasibility and accuracy of the approach by comparing the effectiveness of 18 different state-of-the-art SBFL techniques at locating faults in model transformations. Evaluation results revealed that the best techniques, namely Kulcynski2, Mountford, Ochiai, and Zoltar, lead the debugger to inspect a maximum of three rules to locate the bug in around 74\% of the cases. Furthermore, we compare our approach with a static approach for fault localization in model transformations, observing a clear superiority of the proposed SBFL-based method.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "13", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Linares-Vasquez:2018:MOO, author = "Mario Linares-V{\'a}squez and Gabriele Bavota and Carlos Bernal-C{\'a}rdenas and Massimiliano {Di Penta} and Rocco Oliveto and Denys Poshyvanyk", title = "Multi-Objective Optimization of Energy Consumption of {GUIs} in {Android} Apps", journal = j-TOSEM, volume = "27", number = "3", pages = "14:1--14:??", month = oct, year = "2018", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3241742", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Oct 22 07:57:07 MDT 2019", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "The number of mobile devices sold worldwide has exponentially increased in recent years, surpassing that of personal computers in 2011. Such devices daily download and run millions of apps that take advantage of modern hardware features (e.g., multi-core processors, large Organic Light-Emitting Diode-OLED-screens, etc.) to offer exciting user experiences. Clearly, there is a cost to pay in terms of energy consumption and, in particular, of reduced battery life. This has pushed researchers to investigate how to reduce the energy consumption of apps, for example, by optimizing the color palette used in the app's GUI. Whilst past research in this area aimed at optimizing energy while keeping an acceptable level of contrast, this article proposes an approach, named Gui Energy Multi-objective optiMization for Android apps (GEMMA), for generating color palettes using a multi-objective optimization technique, which produces color solutions optimizing energy consumption and contrast while using consistent colors with respect to the original color palette. The empirical evaluation demonstrates (i) substantial improvements in terms of the three different objectives, (ii) a concrete reduction of the energy consumption as assessed by a hardware power monitor, (iii) the attractiveness of the generated color compositions for apps' users, and (iv) the suitability of GEMMA to be adopted in industrial contexts.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "14", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Mechtaev:2018:TEA, author = "Sergey Mechtaev and Xiang Gao and Shin Hwei Tan and Abhik Roychoudhury", title = "Test-Equivalence Analysis for Automatic Patch Generation", journal = j-TOSEM, volume = "27", number = "4", pages = "15:1--15:??", month = nov, year = "2018", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3241980", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Oct 22 07:57:08 MDT 2019", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Automated program repair is a problem of finding a transformation (called a patch) of a given incorrect program that eliminates the observable failures. It has important applications such as providing debugging aids, automatically grading student assignments, and patching security vulnerabilities. A common challenge faced by existing repair techniques is scalability to large patch spaces, since there are many candidate patches that these techniques explicitly or implicitly consider. The correctness criteria for program repair is often given as a suite of tests. Current repair techniques do not scale due to the large number of test executions performed by the underlying search algorithms. In this work, we address this problem by introducing a methodology of patch generation based on a test-equivalence relation (if two programs are ``test-equivalent'' for a given test, they produce indistinguishable results on this test). We propose two test-equivalence relations based on runtime values and dependencies, respectively, and present an algorithm that performs on-the-fly partitioning of patches into test-equivalence classes. Our experiments on real-world programs reveal that the proposed methodology drastically reduces the number of test executions and therefore provides an order of magnitude efficiency improvement over existing repair techniques, without sacrificing patch quality.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "15", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Sharma:2018:RWF, author = "Abhishek Sharma and Yuan Tian and Agus Sulistya and Dinusha Wijedasa and David Lo", title = "Recommending Who to Follow in the Software Engineering {Twitter} Space", journal = j-TOSEM, volume = "27", number = "4", pages = "16:1--16:??", month = nov, year = "2018", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3266426", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Oct 22 07:57:08 MDT 2019", bibsource = "https://www.math.utah.edu/pub/tex/bib/python.bib; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "With the advent of social media, developers are increasingly using it in their software development activities. Twitter is one of the popular social mediums used by developers. A recent study by Singer et al. found that software developers use Twitter to ``keep up with the fast-paced development landscape.'' Unfortunately, due to the general-purpose nature of Twitter, it's challenging for developers to use Twitter for their development activities. Our survey with 36 developers who use Twitter in their development activities highlights that developers are interested in following specialized software gurus who share relevant technical tweets. To help developers perform this task, in this work we propose a recommendation system to identify specialized software gurus. Our approach first extracts different kinds of features that characterize a Twitter user and then employs a two-stage classification approach to generate a discriminative model, which can differentiate specialized software gurus in a particular domain from other Twitter users that generate domain-related tweets (aka domain-related Twitter users). We have investigated the effectiveness of our approach in finding specialized software gurus for four different domains (JavaScript, Android, Python, and Linux) on a dataset of 86,824 Twitter users who generate 5,517,878 tweets over 1 month. Our approach can differentiate specialized software experts from other domain-related Twitter users with an F-Measure of up to 0.820. Compared with existing Twitter domain expert recommendation approaches, our proposed approach can outperform their F-Measure by at least 7.63\%.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "16", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{DeLara:2018:RML, author = "Juan {De Lara} and Esther Guerra", title = "Refactoring Multi-Level Models", journal = j-TOSEM, volume = "27", number = "4", pages = "17:1--17:??", month = nov, year = "2018", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3280985", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Oct 22 07:57:08 MDT 2019", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Multi-level modelling promotes flexibility in modelling by enabling the use of several meta-levels instead of just two, as is the case in mainstream two-level modelling approaches. While this approach leads to simpler models for some scenarios, it introduces an additional degree of freedom as designers can decide the meta-level where an element should reside, having to ascertain the suitability of such decisions. In this respect, model refactorings have been successfully applied in the context of two-level modelling to rearrange the elements of a model while preserving its meaning. Following this idea, we propose a catalogue of 17 novel refactorings specific to multi-level models. Their objective is to help designers in rearranging elements across and within meta-levels and exploring the consequences. In this article, we detail each refactoring in the catalogue, show a classification across different dimensions, and describe the support we provide in our M etaDepth tool. We present two experiments to assess two aspects of our refactorings. The first one validates the predicted semantic side effects of the refactorings on the basis of more than 210.000 refactoring applications. The second one measures the impact of refactorings on three quality attributes of multi-level models.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "17", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{VonRhein:2018:VAS, author = "Alexander {Von Rhein} and J{\"o}rg Liebig and Andreas Janker and Christian K{\"a}stner and Sven Apel", title = "Variability-Aware Static Analysis at Scale: an Empirical Study", journal = j-TOSEM, volume = "27", number = "4", pages = "18:1--18:??", month = nov, year = "2018", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3280986", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Oct 22 07:57:08 MDT 2019", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "The advent of variability management and generator technology enables users to derive individual system variants from a configurable code base by selecting desired configuration options. This approach gives rise to the generation of possibly billions of variants, which, however, cannot be efficiently analyzed for bugs and other properties with classic analysis techniques. To address this issue, researchers and practitioners have developed sampling heuristics and, recently, variability-aware analysis techniques. While sampling reduces the analysis effort significantly, the information obtained is necessarily incomplete, and it is unknown whether state-of-the-art sampling techniques scale to billions of variants. Variability-aware analysis techniques process the configurable code base directly, exploiting similarities among individual variants with the goal of reducing analysis effort. However, while being promising, so far, variability-aware analysis techniques have been applied mostly only to small academic examples. To learn about the mutual strengths and weaknesses of variability-aware and sample-based static-analysis techniques, we compared the two by means of seven concrete control-flow and data-flow analyses, applied to five real-world subject systems: B usybox, OpenSSL, SQLite, the x86 Linux kernel, and uClibc. In particular, we compare the efficiency (analysis execution time) of the static analyses and their effectiveness (potential bugs found). Overall, we found that variability-aware analysis outperforms most sample-based static-analysis techniques with respect to efficiency and effectiveness. For example, checking all variants of OpenSSL with a variability-aware static analysis is faster than checking even only two variants with an analysis that does not exploit similarities among variants.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "18", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Pezze:2019:EIE, author = "Mauro Pezz{\`e}", title = "Editorial from the Incoming {Editor-in-Chief}", journal = j-TOSEM, volume = "28", number = "1", pages = "1:1--1:??", month = feb, year = "2019", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3301290", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Oct 22 07:57:08 MDT 2019", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "1ee", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Rosenblum:2019:FEO, author = "David S. Rosenblum", title = "Farewell Editorial from the Outgoing {Editor-in-Chief}", journal = j-TOSEM, volume = "28", number = "1", pages = "1:1--1:??", month = feb, year = "2019", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3301288", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Oct 22 07:57:08 MDT 2019", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "1e", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Wang:2019:OTS, author = "Chunhui Wang and Fabrizio Pastore and Lionel Briand", title = "Oracles for Testing Software Timeliness with Uncertainty", journal = j-TOSEM, volume = "28", number = "1", pages = "1:1--1:??", month = feb, year = "2019", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3280987", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Oct 22 07:57:08 MDT 2019", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Uncertainty in timing properties (e.g., detection time of external events) is a common occurrence in embedded software systems, since these systems interact with complex physical environments. Such time uncertainty leads to non-determinism. For example, time-triggered operations may either generate different valid outputs across different executions or experience failures (e.g., results not being generated in the expected time window) that occur only occasionally over many executions. For these reasons, time uncertainty makes the generation of effective test oracles for timing requirements a challenging task. To address the above challenge, we propose Stochastic Testing with Unique Input Output Sequences, an approach for the automated generation of stochastic oracles that verify the capability of a software system to fulfill timing constraints in the presence of time uncertainty. Such stochastic oracles entail the statistical analysis of repeated test case executions based on test output probabilities predicted by means of statistical model checking. Results from two industrial case studies in the automotive domain demonstrate that this approach improves the fault detection effectiveness of tests suites derived from timed automata compared to traditional approaches.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "1", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Razzaq:2019:SEE, author = "Abdul Razzaq and Asanka Wasala and Chris Exton and Jim Buckley", title = "The State of Empirical Evaluation in Static Feature Location", journal = j-TOSEM, volume = "28", number = "1", pages = "2:1--2:??", month = feb, year = "2019", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3280988", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Oct 22 07:57:08 MDT 2019", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Feature location (FL) is the task of finding the source code that implements a specific, user-observable functionality in a software system. It plays a key role in many software maintenance tasks and a wide variety of Feature Location Techniques (FLTs), which rely on source code structure or textual analysis, have been proposed by researchers. As FLTs evolve and more novel FLTs are introduced, it is important to perform comparison studies to investigate ``Which are the best FLTs?'' However, an initial reading of the literature suggests that performing such comparisons would be an arduous process, based on the large number of techniques to be compared, the heterogeneous nature of the empirical designs, and the lack of transparency in the literature. This article presents a systematic review of 170 FLT articles, published between the years 2000 and 2015. Results of the systematic review indicate that 95\% of the articles studied are directed towards novelty, in that they propose a novel FLT. Sixty-nine percent of these novel FLTs are evaluated through standard empirical methods but, of those, only 9\% use baseline technique(s) in their evaluations to allow cross comparison with other techniques. The heterogeneity of empirical evaluation is also clearly apparent: altogether, over 60 different FLT evaluation metrics are used across the 170 articles, 272 subject systems have been used, and 235 different benchmarks employed. The review also identifies numerous user input formats as contributing to the heterogeneity. Analysis of the existing research also suggests that only 27\% of the FLTs presented might be reproduced from the published material. These findings suggest that comparison across the existing body of FLT evaluations is very difficult. We conclude by providing guidelines for empirical evaluation of FLTs that may ultimately help to standardise empirical research in the field, cognisant of FLTs with different goals, leveraging common practices in existing empirical evaluations and allied with rationalisations. This is seen as a step towards standardising evaluation in the field, thus facilitating comparison across FLTs.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "2", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Arcuri:2019:RAA, author = "Andrea Arcuri", title = "{RESTful API} Automated Test Case Generation with {EvoMaster}", journal = j-TOSEM, volume = "28", number = "1", pages = "3:1--3:??", month = feb, year = "2019", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3293455", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Oct 22 07:57:08 MDT 2019", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "RESTful APIs are widespread in industry, especially in enterprise applications developed with a microservice architecture. A RESTful web service will provide data via an API over the network using HTTP, possibly interacting with databases and other web services. Testing a RESTful API poses challenges, because inputs/outputs are sequences of HTTP requests/responses to a remote server. Many approaches in the literature do black-box testing, because often the tested API is a remote service whose code is not available. In this article, we consider testing from the point of view of the developers, who have full access to the code that they are writing. Therefore, we propose a fully automated white-box testing approach, where test cases are automatically generated using an evolutionary algorithm. Tests are rewarded based on code coverage and fault-finding metrics. However, REST is not a protocol but rather a set of guidelines on how to design resources accessed over HTTP endpoints. For example, there are guidelines on how related resources should be structured with hierarchical URIs and how the different HTTP verbs should be used to represent well-defined actions on those resources. Test-case generation for RESTful APIs that only rely on white-box information of the source code might not be able to identify how to create prerequisite resources needed before being able to test some of the REST endpoints. Smart sampling techniques that exploit the knowledge of best practices in RESTful API design are needed to generate tests with predefined structures to speed up the search. We implemented our technique in a tool called E voMaster, which is open source. Experiments on five open-source, yet non-trivial, RESTful services show that our novel technique automatically found 80 real bugs in those applications. However, obtained code coverage is lower than the one achieved by the manually written test suites already existing in those services. Research directions on how to further improve such an approach are therefore discussed, such as the handling of SQL databases.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "3", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Arora:2019:ALA, author = "Chetan Arora and Mehrdad Sabetzadeh and Shiva Nejati and Lionel Briand", title = "An Active Learning Approach for Improving the Accuracy of Automated Domain Model Extraction", journal = j-TOSEM, volume = "28", number = "1", pages = "4:1--4:??", month = feb, year = "2019", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3293454", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Oct 22 07:57:08 MDT 2019", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Domain models are a useful vehicle for making the interpretation and elaboration of natural-language requirements more precise. Advances in natural-language processing (NLP) have made it possible to automatically extract from requirements most of the information that is relevant to domain model construction. However, alongside the relevant information, NLP extracts from requirements a significant amount of information that is superfluous (not relevant to the domain model). Our objective in this article is to develop automated assistance for filtering the superfluous information extracted by NLP during domain model extraction. To this end, we devise an active-learning-based approach that iteratively learns from analysts' feedback over the relevance and superfluousness of the extracted domain model elements and uses this feedback to provide recommendations for filtering superfluous elements. We empirically evaluate our approach over three industrial case studies. Our results indicate that, once trained, our approach automatically detects an average of \approx 45\% of the superfluous elements with a precision of \approx 96\%. Since precision is very high, the automatic recommendations made by our approach are trustworthy. Consequently, analysts can dispose of a considerable fraction --- nearly half --- of the superfluous elements with minimal manual work. The results are particularly promising, as they should be considered in light of the non-negligible subjectivity that is inherently tied to the notion of relevance.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "4", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Song:2019:SEI, author = "Liyan Song and Leandro L. Minku and Xin Yao", title = "Software Effort Interval Prediction via {Bayesian} Inference and Synthetic Bootstrap Resampling", journal = j-TOSEM, volume = "28", number = "1", pages = "5:1--5:??", month = feb, year = "2019", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3295700", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Oct 22 07:57:08 MDT 2019", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Software effort estimation (SEE) usually suffers from inherent uncertainty arising from predictive model limitations and data noise. Relying on point estimation only may ignore the uncertain factors and lead project managers (PMs) to wrong decision making. Prediction intervals (PIs) with confidence levels (CLs) present a more reasonable representation of reality, potentially helping PMs to make better-informed decisions and enable more flexibility in these decisions. However, existing methods for PIs either have strong limitations or are unable to provide informative PIs. To develop a ``better'' effort predictor, we propose a novel PI estimator called Synthetic Bootstrap ensemble of Relevance Vector Machines (SynB-RVM) that adopts Bootstrap resampling to produce multiple RVM models based on modified training bags whose replicated data projects are replaced by their synthetic counterparts. We then provide three ways to assemble those RVM models into a final probabilistic effort predictor, from which PIs with CLs can be generated. When used as a point estimator, SynB-RVM can either significantly outperform or have similar performance compared with other investigated methods. When used as an uncertain predictor, SynB-RVM can achieve significantly narrower PIs compared to its base learner RVM. Its hit rates and relative widths are no worse than the other compared methods that can provide uncertain estimation.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "5", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Ellis:2019:RFD, author = "Samuel J. Ellis and Titus H. Klinge and James I. Lathrop and Jack H. Lutz and Robyn R. Lutz and Andrew S. Miner and Hugh D. Potter", title = "Runtime Fault Detection in Programmed Molecular Systems", journal = j-TOSEM, volume = "28", number = "2", pages = "6:1--6:??", month = apr, year = "2019", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3295740", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Oct 22 07:57:08 MDT 2019", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/ft_gateway.cfm?id=3295740", abstract = "Watchdog timers are devices that are commonly used to monitor the health of safety-critical hardware and software systems. Their primary function is to raise an alarm if the monitored systems fail to emit periodic ``heartbeats'' that signal their well-being. In this article, we design and verify a molecular watchdog timer for monitoring the health of programmed molecular nanosystems. This raises new challenges, because our molecular watchdog timer and the system that it monitors both operate in the probabilistic environment of chemical kinetics, where many failures are certain to occur and it is especially hard to detect the absence of a signal. Our molecular watchdog timer is the result of an incremental design process that uses goal-oriented requirements engineering, simulation, stochastic analysis, and software verification tools. We demonstrate the molecular watchdog's functionality by having it monitor a molecular oscillator. Both the molecular watchdog timer and the oscillator are implemented as chemical reaction networks, which are the current programming language of choice for many molecular programming applications.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "6", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Pezze:2019:Ea, author = "Mauro Pezz{\`e}", title = "Editorial", journal = j-TOSEM, volume = "28", number = "2", pages = "6:1--6:??", month = apr, year = "2019", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3317953", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Oct 22 07:57:08 MDT 2019", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/ft_gateway.cfm?id=3317953", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "6e", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Li:2019:UAJ, author = "Yue Li and Tian Tan and Jingling Xue", title = "Understanding and Analyzing {Java} Reflection", journal = j-TOSEM, volume = "28", number = "2", pages = "7:1--7:??", month = apr, year = "2019", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3295739", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Oct 22 07:57:08 MDT 2019", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2010.bib; https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/ft_gateway.cfm?id=3295739", abstract = "Java reflection has been widely used in a variety of applications and frameworks. It allows a software system to inspect and change the behaviour of its classes, interfaces, methods, and fields at runtime, enabling the software to adapt to dynamically changing runtime environments. However, this dynamic language feature imposes significant challenges to static analysis, because the behaviour of reflection-rich software is logically complex and statically hard to predict. As a result, existing static analysis tools either ignore reflection or handle it partially, resulting in missed, important behaviours, i.e., unsound results. Therefore, improving or even achieving soundness in static reflection analysis-an analysis that infers statically the behaviour of reflective code-will provide significant benefits to many analysis clients, such as bug detectors, security analyzers, and program verifiers. In this article, we provide a comprehensive understanding of Java reflection through examining its underlying concept, API, and real-world usage, and, building on this, we introduce a new static approach to resolving Java reflection effectively in practice. We have implemented our reflection analysis in an open-source tool, called SOLAR, and evaluated its effectiveness extensively with large Java programs and libraries. Our experimental results demonstrate that SOLAR is able to (1) resolve reflection more soundly than the state-of-the-art reflection analyses; (2) automatically and accurately identify the parts of the program where reflection is resolved unsoundly or imprecisely; and (3) guide users to iteratively refine the analysis results by using lightweight annotations until their specific requirements are satisfied.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "7", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Bjorner:2019:DAD, author = "Dines Bj{\o}rner", title = "Domain Analysis and Description Principles, Techniques, and Modelling Languages", journal = j-TOSEM, volume = "28", number = "2", pages = "8:1--8:??", month = apr, year = "2019", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3295738", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Oct 22 07:57:08 MDT 2019", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/ft_gateway.cfm?id=3295738", abstract = "We present a method for analysing and describing domains. By a domain we shall understand a rationally describable segment of a human assisted reality, i.e., of the world, its physical parts: natural [``God-given''] and artifactual [``human-made''], and living species: plants and animals including, notably, humans. These are endurants (``still''), as well as perdurants (``alive''). Emphasis is placed on `` human-assistedness,'' that is, that there is at least one (human-made) artifact and, therefore, that humans are a primary cause for change of endurant states as well as perdurant behaviours. By a method we shall mean a set of principles of analysis and for selecting and applying a number of techniques and tools in the construction of some artifact, say a domain description. We shall present a method for constructing domain descriptions. Among the tools we shall only be concerned with are the analysis and synthesis languages. Domain science and engineering marks a new area of computing science. Just as we are formalising the syntax and semantics of programming languages, so we are formalising the syntax and semantics of human-assisted domains. Just as physicists are studying the natural physical world, endowing it with mathematical models, so we, computing scientists, are studying these domains, endowing them with mathematical models, A difference between the endeavours of physicists and ours lies in the tools: The physics models are based on classical mathematics, differential equations and integrals, and so on; our models are based on mathematical logic, set theory, and algebra [1]. Where physicists thus classically use a variety of differential and integral calculi to model the physical world, we shall be using the analysis and description calculi presented in this article to model primarily artifactual domains.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "8", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Wagner:2019:SQR, author = "Stefan Wagner and Daniel M{\'e}ndez Fern{\'a}ndez and Michael Felderer and Antonio Vetr{\`o} and Marcos Kalinowski and Roel Wieringa and Dietmar Pfahl and Tayana Conte and Marie-Therese Christiansson and Desmond Greer and Casper Lassenius and Tomi M{\"a}nnist{\"o} and Maleknaz Nayebi and Markku Oivo and Birgit Penzenstadler and Rafael Prikladnicki and Guenther Ruhe and Andr{\'e} Schekelmann and Sagar Sen and Rodrigo Sp{\'\i}nola and Ahmed Tuzcu and Jose Luis {De La Vara} and Dietmar Winkler", title = "Status Quo in Requirements Engineering: a Theory and a Global Family of Surveys", journal = j-TOSEM, volume = "28", number = "2", pages = "9:1--9:??", month = apr, year = "2019", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3306607", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Oct 22 07:57:08 MDT 2019", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/ft_gateway.cfm?id=3306607", abstract = "Requirements Engineering (RE) has established itself as a software engineering discipline over the past decades. While researchers have been investigating the RE discipline with a plethora of empirical studies, attempts to systematically derive an empirical theory in context of the RE discipline have just recently been started. However, such a theory is needed if we are to define and motivate guidance in performing high quality RE research and practice. We aim at providing an empirical and externally valid foundation for a theory of RE practice, which helps software engineers establish effective and efficient RE processes in a problem-driven manner. We designed a survey instrument and an engineer-focused theory that was first piloted in Germany and, after making substantial modifications, has now been replicated in 10 countries worldwide. We have a theory in the form of a set of propositions inferred from our experiences and available studies, as well as the results from our pilot study in Germany. We evaluate the propositions with bootstrapped confidence intervals and derive potential explanations for the propositions. In this article, we report on the design of the family of surveys, its underlying theory, and the full results obtained from the replication studies conducted in 10 countries with participants from 228 organisations. Our results represent a substantial step forward towards developing an empirical theory of RE practice. The results reveal, for example, that there are no strong differences between organisations in different countries and regions, that interviews, facilitated meetings and prototyping are the most used elicitation techniques, that requirements are often documented textually, that traces between requirements and code or design documents are common, that requirements specifications themselves are rarely changed and that requirements engineering (process) improvement endeavours are mostly internally driven. Our study establishes a theory that can be used as starting point for many further studies for more detailed investigations. Practitioners can use the results as theory-supported guidance on selecting suitable RE methods and techniques.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "9", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Jiang:2019:IMA, author = "Jian-Min Jiang and Huibiao Zhu and Qin Li and Yongxin Zhao and Zhong Hong and Shi Zhang and Ping Gong", title = "Isolation Modeling and Analysis Based on Mobility", journal = j-TOSEM, volume = "28", number = "2", pages = "10:1--10:??", month = apr, year = "2019", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3306606", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Oct 22 07:57:08 MDT 2019", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/ft_gateway.cfm?id=3306606", abstract = "In a mobile system, mobility refers to a change in position of a mobile object with respect to time and its reference point, whereas isolation means the isolation relationship between mobile objects under some scheduling policies. Inspired by event-based formal models and the ambient calculus, we first propose the two types of special events, entering and exiting an ambient, as movement events to model and analyze mobility. Based on mobility, we then introduce the notion of the isolation of mobile objects for ambients. To ensure the isolation, a priority policy needs to be used to schedule the movement of mobile objects. However, traditional scheduling policies focus on task scheduling and depend on the strong hypothesis: The scheduled tasks are independent-that is, the scheduled tasks do not affect each other. In a practical mobile system, mobile objects and ambients interact with each other. It is difficult to separate a mobile system into independent tasks. We finally present an automatic approach for generating a priority scheduling policy without considering the preceding assumption. The approach can guarantee the isolation of the mobile objects for ambients in a mobile system. Experiments demonstrate these results.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "10", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Czepa:2019:HUP, author = "Christoph Czepa and Uwe Zdun", title = "How Understandable Are Pattern-based Behavioral Constraints for Novice Software Designers?", journal = j-TOSEM, volume = "28", number = "2", pages = "11:1--11:??", month = apr, year = "2019", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3306608", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Oct 22 07:57:08 MDT 2019", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/ft_gateway.cfm?id=3306608", abstract = "This article reports a controlled experiment with 116 participants on the understandability of representative graphical and textual pattern-based behavioral constraint representations from the viewpoint of novice software designers. Particularly, graphical and textual behavioral constraint patterns present in the declarative business process language Declare and textual behavioral constraints based on Property Specification Patterns are the subjects of this study. In addition to measuring the understandability construct, this study assesses subjective aspects such as perceived difficulties regarding learning and application of the tested approaches. An interesting finding of this study is the overall low achieved correctness in the experimental tasks, which seems to indicate that pattern-based behavioral constraint representations are hard to understand for novice software designers in the absence of additional supportive measures. The results of the descriptive statistics regarding achieved correctness are slightly in favor of the textual representations, but the inference statistics do not indicate any significant differences in terms of understandability between graphical and textual behavioral constraint representations.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "11", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Pezze:2019:Eb, author = "Mauro Pezz{\'e}", title = "Editorial", journal = j-TOSEM, volume = "28", number = "3", pages = "12:1--12:??", month = aug, year = "2019", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3339833", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Oct 22 07:57:09 MDT 2019", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/ft_gateway.cfm?id=3339833", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "12", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Reuling:2019:AWP, author = "Dennis Reuling and Udo Kelter and Johannes B{\"u}rdek and Malte Lochau", title = "Automated {$N$-way} Program Merging for Facilitating Family-based Analyses of Variant-rich Software", journal = j-TOSEM, volume = "28", number = "3", pages = "13:1--13:??", month = aug, year = "2019", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3313789", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Oct 22 07:57:09 MDT 2019", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/ft_gateway.cfm?id=3313789", abstract = "Nowadays software tends to come in many different, yet similar variants, often derived from a common code base via clone-and-own. Family-based-analysis strategies have recently shown very promising potential for improving efficiency in applying quality-assurance techniques to such variant-rich programs, as compared to variant-by-variant approaches. Unfortunately, these strategies require a single program representation superimposing all program variants in a syntactically well-formed, semantically sound, and variant-preserving manner, which is usually not available and manually hard to obtain in practice. In this article, we present a novel methodology, called SiMPOSE, for automatically generating superimpositions of existing program variants to facilitate family-based analyses of variant-rich software. To this end, we propose a novel N-way model-merging methodology to integrate the control-flow automaton (CFA) representations of N given variants of a C program into one unified CFA representation. CFA constitute a unified program abstraction used by many recent software-analysis tools for automated quality assurance. To cope with the inherent complexity of N-way model-merging, our approach (1) utilizes principles of similarity-propagation to reduce the number of potential N-way matches, and (2) enables us to decompose a set of N variants into arbitrary subsets and to incrementally derive an N-way superimposition from partial superimpositions. We apply our tool implementation of SiMPOSE to a selection of realistic C programs, frequently considered for experimental evaluation of program-analysis techniques. In particular, we investigate applicability and efficiency/effectiveness trade-offs of our approach by applying SiMPOSE in the context of family-based unit-test generation as well as model-checking as sample program-analysis techniques. Our experimental results reveal very impressive efficiency improvements by an average factor of up to 2.6 for test-generation and up to 2.4 for model-checking under stable effectiveness, as compared to variant-by-variant approaches, thus amortizing the additional effort required for merging. In addition, our results show that merging all N variants at once produces, in almost all cases, clearly more precise results than incremental step-wise 2-way merging. Finally, our comparison with major existing N-way merging techniques shows that SiMPOSE constitutes, in most cases, the best efficiency/effectiveness trade-off.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "13", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Sheng:2019:TPA, author = "Feng Sheng and Huibiao Zhu and Jifeng He and Zongyuan Yang and Jonathan P. Bowen", title = "Theoretical and Practical Aspects of Linking Operational and Algebraic Semantics for {MDESL}", journal = j-TOSEM, volume = "28", number = "3", pages = "14:1--14:??", month = aug, year = "2019", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3295699", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Oct 22 07:57:09 MDT 2019", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/ft_gateway.cfm?id=3295699", abstract = "Verilog is a hardware description language (HDL) that has been standardized and widely used in industry. Multithreaded discrete event simulation language (MDESL) is a Verilog-like language. It contains interesting features such as event-driven computation and shared-variable concurrency. This article considers how the algebraic semantics links with the operational semantics for MDESL. Our approach is from both the theoretical and practical aspects. The link is proceeded by deriving the operational semantics from the algebraic semantics. First, we present the algebraic semantics for MDESL. We introduce the concept of head normal form. Second, we present the strategy of deriving operational semantics from algebraic semantics. We also investigate the soundness and completeness of the derived operational semantics with respect to the derivation strategy. Our theoretical approach is complemented by a practical one, and we use the theorem proof assistant Coq to formalize the algebraic laws and the derived operational semantics. Meanwhile, the soundness and completeness of the derived operational semantics is also verified via the mechanical approach in Coq. Our approach is a novel way to formalize and verify the correctness and equivalence of different semantics for MDESL in both a theoretical approach and a practical approach.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "14", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Ren:2019:NNB, author = "Xiaoxue Ren and Zhenchang Xing and Xin Xia and David Lo and Xinyu Wang and John Grundy", title = "Neural Network-based Detection of Self-Admitted Technical Debt: From Performance to Explainability", journal = j-TOSEM, volume = "28", number = "3", pages = "15:1--15:??", month = aug, year = "2019", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3324916", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Oct 22 07:57:09 MDT 2019", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/ft_gateway.cfm?id=3324916", abstract = "Technical debt is a metaphor to reflect the tradeoff software engineers make between short-term benefits and long-term stability. Self-admitted technical debt (SATD), a variant of technical debt, has been proposed to identify debt that is intentionally introduced during software development, e.g., temporary fixes and workarounds. Previous studies have leveraged human-summarized patterns (which represent n-gram phrases that can be used to identify SATD) or text-mining techniques to detect SATD in source code comments. However, several characteristics of SATD features in code comments, such as vocabulary diversity, project uniqueness, length, and semantic variations, pose a big challenge to the accuracy of pattern or traditional text-mining-based SATD detection, especially for cross-project deployment. Furthermore, although traditional text-mining-based method outperforms pattern-based method in prediction accuracy, the text features it uses are less intuitive than human-summarized patterns, which makes the prediction results hard to explain. To improve the accuracy of SATD prediction, especially for cross-project prediction, we propose a Convolutional Neural Network-- (CNN) based approach for classifying code comments as SATD or non-SATD. To improve the explainability of our model's prediction results, we exploit the computational structure of CNNs to identify key phrases and patterns in code comments that are most relevant to SATD. We have conducted an extensive set of experiments with 62,566 code comments from 10 open-source projects and a user study with 150 comments of another three projects. Our evaluation confirms the effectiveness of different aspects of our approach and its superior performance, generalizability, adaptability, and explainability over current state-of-the-art traditional text-mining-based methods for SATD classification.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "15", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Gao:2019:VQS, author = "Pengfei Gao and Jun Zhang and Fu Song and Chao Wang", title = "Verifying and Quantifying Side-channel Resistance of Masked Software Implementations", journal = j-TOSEM, volume = "28", number = "3", pages = "16:1--16:??", month = aug, year = "2019", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3330392", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Oct 22 07:57:09 MDT 2019", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/ft_gateway.cfm?id=3330392", abstract = "Power side-channel attacks, capable of deducing secret data using statistical analysis, have become a serious threat. Random masking is a widely used countermeasure for removing the statistical dependence between secret data and side-channel information. Although there are techniques for verifying whether a piece of software code is perfectly masked, they are limited in accuracy and scalability. To bridge this gap, we propose a refinement-based method for verifying masking countermeasures. Our method is more accurate than prior type-inference-based approaches and more scalable than prior model-counting-based approaches using SAT or SMT solvers. Indeed, our method can be viewed as a gradual refinement of a set of type-inference rules for reasoning about distribution types. These rules are kept abstract initially to allow fast deduction and then made concrete when the abstract version is not able to resolve the verification problem. We also propose algorithms for quantifying the amount of side-channel information leakage from a software implementation using the notion of quantitative masking strength. We have implemented our method in a software tool and evaluated it on cryptographic benchmarks including AES and MAC-Keccak. The experimental results show that our method significantly outperforms state-of-the-art techniques in terms of accuracy and scalability.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "16", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Tramontana:2019:DEO, author = "Porfirio Tramontana and Domenico Amalfitano and Nicola Amatucci and Atif Memon and Anna Rita Fasolino", title = "Developing and Evaluating Objective Termination Criteria for Random Testing", journal = j-TOSEM, volume = "28", number = "3", pages = "17:1--17:??", month = aug, year = "2019", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3339836", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Oct 22 07:57:09 MDT 2019", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2010.bib; https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/ft_gateway.cfm?id=3339836", abstract = "Random testing is a software testing technique through which programs are tested by generating and executing random inputs. Because of its unstructured nature, it is difficult to determine when to stop a random testing process. Faults may be missed if the process is stopped prematurely, and resources may be wasted if the process is run too long. In this article, we propose two promising termination criteria, ``All Equivalent'' (AEQ) and ``All Included in One'' (AIO), applicable to random testing. These criteria stop random testing once the process has reached a code-coverage-based saturation point after which additional testing effort is unlikely to provide additional effectiveness. We model and implement them in the context of a general random testing process composed of independent random testing sessions. Thirty-six experiments involving GUI testing and unit testing of Java applications have demonstrated that the AEQ criteria is generally able to stop the process when a code coverage equal or very near to the saturation level is reached, while AIO is able to stop the process earlier in cases it reaches the saturation level of coverage. In addition, the performance of the two criteria has been compared against other termination criteria adopted in the literature.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "17", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Antonino:2019:EVC, author = "Pedro Antonino and Thomas Gibson-Robinson and A. W. Roscoe", title = "Efficient Verification of Concurrent Systems Using Synchronisation Analysis and {SAT\slash SMT} Solving", journal = j-TOSEM, volume = "28", number = "3", pages = "18:1--18:??", month = aug, year = "2019", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3335149", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Oct 22 07:57:09 MDT 2019", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/ft_gateway.cfm?id=3335149", abstract = "This article investigates how the use of approximations can make the formal verification of concurrent systems scalable. We propose the idea of synchronisation analysis to automatically capture global invariants and approximate reachability. We calculate invariants on how components participate on global system synchronisations and use a notion of consistency between these invariants to establish whether components can effectively communicate to reach some system state. Our synchronisation-analysis techniques try to show either that a system state is unreachable by demonstrating that components cannot agree on the order they participate in system rules or that a system state is unreachable by demonstrating components cannot agree on the number of times they participate on system rules. These fully automatic techniques are applied to check deadlock and local-deadlock freedom in the PairStatic framework. It extends Pair (a recent framework where we use pure pairwise analysis of components and SAT checkers to check deadlock and local-deadlock freedom) with techniques to carry out synchronisation analysis. So, not only can it compute the same local invariants that Pair does, it can leverage global invariants found by synchronisation analysis, thereby improving the reachability approximation and tightening our verifications. We implement PairStatic in our DeadlOx tool using SAT/SMT and demonstrate the improvements they create in checking (local) deadlock freedom.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "18", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Pezze:2019:Ec, author = "Mauro Pezz{\`e}", title = "Editorial", journal = j-TOSEM, volume = "28", number = "4", pages = "19:1--19:??", month = oct, year = "2019", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3363297", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Oct 22 07:57:09 MDT 2019", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/ft_gateway.cfm?id=3363297", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "19e", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Tufano:2019:ESL, author = "Michele Tufano and Cody Watson and Gabriele Bavota and Massimiliano {Di Penta} and Martin White and Denys Poshyvanyk", title = "An Empirical Study on Learning Bug-Fixing Patches in the Wild via Neural Machine Translation", journal = j-TOSEM, volume = "28", number = "4", pages = "19:1--19:??", month = oct, year = "2019", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3340544", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Oct 22 07:57:09 MDT 2019", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/ft_gateway.cfm?id=3340544", abstract = "Millions of open source projects with numerous bug fixes are available in code repositories. This proliferation of software development histories can be leveraged to learn how to fix common programming bugs. To explore such a potential, we perform an empirical study to assess the feasibility of using Neural Machine Translation techniques for learning bug-fixing patches for real defects. First, we mine millions of bug-fixes from the change histories of projects hosted on GitHub in order to extract meaningful examples of such bug-fixes. Next, we abstract the buggy and corresponding fixed code, and use them to train an Encoder-Decoder model able to translate buggy code into its fixed version. In our empirical investigation, we found that such a model is able to fix thousands of unique buggy methods in the wild. Overall, this model is capable of predicting fixed patches generated by developers in 9--50\% of the cases, depending on the number of candidate patches we allow it to generate. Also, the model is able to emulate a variety of different Abstract Syntax Tree operations and generate candidate patches in a split second.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "19", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Bernaschina:2019:VDI, author = "Carlo Bernaschina and Emanuele Falzone and Piero Fraternali and Sergio Luis Herrera Gonzalez", title = "The Virtual Developer: Integrating Code Generation and Manual Development with Conflict Resolution", journal = j-TOSEM, volume = "28", number = "4", pages = "20:1--20:??", month = oct, year = "2019", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3340545", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Oct 22 07:57:09 MDT 2019", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/ft_gateway.cfm?id=3340545", abstract = "Model Driven Development (MDD) requires proper tools to derive the implementation code from the application models. However, the integration of handwritten and generated code is a long-standing issue that affects the adoption of MDD in the industry. This article presents a model and code co-evolution approach that addresses such a problem a posteriori, using the standard collision detection capabilities of Version Control Systems to support the semi-automatic merge of the two types of code. We assess the proposed approach by contrasting it with the more traditional template-based, forward-engineering process, adopted by most MDD tools.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "20", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Lara:2019:ARM, author = "Juan {De Lara} and Esther Guerra and Davide {Di Ruscio} and Juri {Di Rocco} and Jes{\'u}s S'nchez Cuadrado and Ludovico Iovino and Alfonso Pierantonio", title = "Automated Reuse of Model Transformations through Typing Requirements Models", journal = j-TOSEM, volume = "28", number = "4", pages = "21:1--21:??", month = oct, year = "2019", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3340108", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Oct 22 07:57:09 MDT 2019", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/ft_gateway.cfm?id=3340108", abstract = "Model transformations are key elements of model-driven engineering, where they are used to automate the manipulation of models. However, they are typed with respect to concrete source and target meta-models, making their reuse for other (even similar) meta-models challenging. To improve this situation, we propose capturing the typing requirements for reusing a transformation with other meta-models by the notion of a typing requirements model (TRM). A TRM describes the prerequisites that a model transformation imposes on the source and target meta-models to obtain a correct typing. The key observation is that any meta-model pair that satisfies the TRM is a valid reuse context for the transformation at hand. A TRM is made of two domain requirement models (DRMs) describing the requirements for the source and target meta-models, and a compatibility model expressing dependencies between them. We define a notion of refinement between DRMs and see meta-models as a special case of DRM. We provide a catalogue of valid refinements and describe how to automatically extract a TRM from an ATL transformation. The approach is supported by our tool TOTEM. We report on two experiments-based on transformations developed by third parties and meta-model mutation techniques-validating the correctness and completeness of our TRM extraction procedure and confirming the power of TRMs to encode variability and support flexible reuse.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "21", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Jiang:2019:RNF, author = "He Jiang and Jingxuan Zhang and Xiaochen Li and Zhilei Ren and David Lo and Xindong Wu and Zhongxuan Luo", title = "Recommending New Features from Mobile App Descriptions", journal = j-TOSEM, volume = "28", number = "4", pages = "22:1--22:??", month = oct, year = "2019", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3344158", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Oct 22 07:57:09 MDT 2019", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/ft_gateway.cfm?id=3344158", abstract = "The rapidly evolving mobile applications (apps) have brought great demand for developers to identify new features by inspecting the descriptions of similar apps and acquire missing features for their apps. Unfortunately, due to the huge number of apps, this manual process is time-consuming and unscalable. To help developers identify new features, we propose a new approach named SAFER. In this study, we first develop a tool to automatically extract features from app descriptions. Then, given an app, we leverage the topic model to identify its similar apps based on the extracted features and API names of apps. Finally, we design a feature recommendation algorithm to aggregate and recommend the features of identified similar apps to the specified app. Evaluated over a collection of 533 annotated features from 100 apps, SAFER achieves a Hit@15 score of up to 78.68\% and outperforms the baseline approach KNN+ by 17.23\% on average. In addition, we also compare SAFER against a typical technique of recommending features from user reviews, i.e., CLAP. Experimental results reveal that SAFER is superior to CLAP by 23.54\% in terms of Hit@15.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "22", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Kim:2019:PLR, author = "Yunho Kim and Seokhyeon Mun and Shin Yoo and Moonzoo Kim", title = "Precise Learn-to-Rank Fault Localization Using Dynamic and Static Features of Target Programs", journal = j-TOSEM, volume = "28", number = "4", pages = "23:1--23:??", month = oct, year = "2019", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3345628", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Oct 22 07:57:09 MDT 2019", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/ft_gateway.cfm?id=3345628", abstract = "Finding the root cause of a bug requires a significant effort from developers. Automated fault localization techniques seek to reduce this cost by computing the suspiciousness scores (i.e., the likelihood of program entities being faulty). Existing techniques have been developed by utilizing input features of specific types for the computation of suspiciousness scores, such as program spectrum or mutation analysis results. This article presents a novel learn-to-rank fault localization technique called PRecise machINe-learning-based fault loCalization tEchnique (PRINCE). PRINCE uses genetic programming (GP) to combine multiple sets of localization input features that have been studied separately until now. For dynamic features, PRINCE encompasses both Spectrum Based Fault Localization (SBFL) and Mutation Based Fault Localization (MBFL) techniques. It also uses static features, such as dependency information and structural complexity of program entities. All such information is used by GP to train a ranking model for fault localization. The empirical evaluation on 65 real-world faults from CoREBench, 84 artificial faults from SIR, and 310 real-world faults from Defects4J shows that PRINCE outperforms the state-of-the-art SBFL, MBFL, and learn-to-rank techniques significantly. PRINCE localizes a fault after reviewing 2.4\% of the executed statements on average (4.2 and 3.0 times more precise than the best of the compared SBFL and MBFL techniques, respectively). Also, PRINCE ranks 52.9\% of the target faults within the top ten suspicious statements.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "23", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Tian:2019:DTC, author = "Cong Tian and Chu Chen and Zhenhua Duan and Liang Zhao", title = "Differential Testing of Certificate Validation in {SSL\slash TLS} Implementations: an {RFC}-guided Approach", journal = j-TOSEM, volume = "28", number = "4", pages = "24:1--24:??", month = oct, year = "2019", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3355048", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Oct 22 07:57:09 MDT 2019", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/ft_gateway.cfm?id=3355048", abstract = "Certificate validation in Secure Sockets Layer or Transport Layer Security protocol (SSL/TLS) is critical to Internet security. Thus, it is significant to check whether certificate validation in SSL/TLS implementations is correctly implemented. With this motivation, we propose a novel differential testing approach that is based on the standard Request for Comments (RFC). First, rules of certificates are extracted automatically from RFCs. Second, low-level test cases are generated through dynamic symbolic execution. Third, high-level test cases, i.e., certificates, are assembled automatically. Finally, with the assembled certificates being test cases, certificate validations in SSL/TLS implementations are tested to reveal latent vulnerabilities or bugs. Our approach named RFCcert has the following advantages: (1) certificates of RFCcert are discrepancy-targeted, since they are assembled according to standards instead of genetics; (2) with the obtained certificates, RFCcert not only reveals the invalidity of traditional differential testing but also is able to conduct testing that traditional differential testing cannot do; and (3) the supporting tool of RFCcert has been implemented and extensive experiments show that the approach is effective in finding bugs of SSL/TLS implementations. In addition, by providing seed certificates for mutation approaches with RFCcert, the ability of mutation approaches in finding distinct discrepancies is significantly enhanced.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "24", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{El-Hokayem:2020:MDS, author = "Antoine El-Hokayem and Yli{\`e}s Falcone", title = "On the Monitoring of Decentralized Specifications: Semantics, Properties, Analysis, and Simulation", journal = j-TOSEM, volume = "29", number = "1", pages = "1:1--1:57", month = feb, year = "2020", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3355181", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Thu Feb 6 08:32:22 MST 2020", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/abs/10.1145/3355181", abstract = "We introduce two complementary approaches to monitor decentralized systems. The first approach relies on systems with a centralized specification, i.e., when the specification is written for the behavior of the entire system. To do so, our approach \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "1", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Hierons:2020:MOT, author = "Robert M. Hierons and Miqing Li and Xiaohui Liu and Jose Antonio Parejo and Sergio Segura and Xin Yao", title = "Many-Objective Test Suite Generation for Software Product Lines", journal = j-TOSEM, volume = "29", number = "1", pages = "2:1--2:46", month = feb, year = "2020", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3361146", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Thu Feb 6 08:32:22 MST 2020", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/abs/10.1145/3361146", abstract = "A Software Product Line (SPL) is a set of products built from a number of features, the set of valid products being defined by a feature model. Typically, it does not make sense to test all products defined by an SPL and one instead chooses a set of \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "2", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Chen:2020:HCT, author = "Lin Chen and Di Wu and Wanwangying Ma and Yuming Zhou and Baowen Xu and Hareton Leung", title = "How {C++} Templates Are Used for Generic Programming: an Empirical Study on 50 Open Source Systems", journal = j-TOSEM, volume = "29", number = "1", pages = "3:1--3:49", month = feb, year = "2020", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3356579", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Thu Feb 6 08:32:22 MST 2020", bibsource = "https://www.math.utah.edu/pub/tex/bib/gnu.bib; https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/abs/10.1145/3356579", abstract = "Generic programming is a key paradigm for developing reusable software components. The inherent support for generic constructs is therefore important in programming languages. As for C++, the generic construct, templates, has been supported since the \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "3", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Yan:2020:AGS, author = "Gaogao Yan and Li Jiao and Shuling Wang and Lingtai Wang and Naijun Zhan", title = "Automatically Generating {SystemC} Code from {HCSP} Formal Models", journal = j-TOSEM, volume = "29", number = "1", pages = "4:1--4:39", month = feb, year = "2020", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3360002", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Thu Feb 6 08:32:22 MST 2020", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/abs/10.1145/3360002", abstract = "In model-driven design of embedded systems, how to generate code from high-level control models seamlessly and correctly is challenging. This is because hybrid systems are involved with continuous evolution, discrete jumps, and the complicated \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "4", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Yuan:2020:TBE, author = "Yuan Yuan and Wolfgang Banzhaf", title = "Toward Better Evolutionary Program Repair: an Integrated Approach", journal = j-TOSEM, volume = "29", number = "1", pages = "5:1--5:53", month = feb, year = "2020", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3360004", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Thu Feb 6 08:32:22 MST 2020", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/abs/10.1145/3360004", abstract = "Bug repair is a major component of software maintenance, which requires a huge amount of manpower. Evolutionary computation, particularly genetic programming (GP), is a class of promising techniques for automating this time-consuming and expensive \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "5", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Haas:2020:SAA, author = "Roman Haas and Rainer Niedermayr and Tobias Roehm and Sven Apel", title = "Is Static Analysis Able to Identify Unnecessary Source Code?", journal = j-TOSEM, volume = "29", number = "1", pages = "6:1--6:23", month = feb, year = "2020", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3368267", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Thu Feb 6 08:32:22 MST 2020", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/abs/10.1145/3368267", abstract = "Grown software systems often contain code that is not necessary anymore. Such unnecessary code wastes resources during development and maintenance, for example, when preparing code for migration or certification. Running a profiler may reveal code that \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "6", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Kafali:2020:DSS, author = "{\"O}zg{\"u}r Kafali and Nirav Ajmeri and Munindar P. Singh", title = "{DESEN}: Specification of Sociotechnical Systems via Patterns of Regulation and Control", journal = j-TOSEM, volume = "29", number = "1", pages = "7:1--7:50", month = feb, year = "2020", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3365664", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Thu Feb 6 08:32:22 MST 2020", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/abs/10.1145/3365664", abstract = "We address the problem of engineering a sociotechnical system (STS) with respect to its stakeholders' requirements. We motivate a two-tier STS conception composed of a technical tier that provides control mechanisms and describes what actions are \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "7", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Pezze:2020:Ea, author = "Mauro Pezz{\`e}", title = "Editorial", journal = j-TOSEM, volume = "29", number = "2", pages = "8e:1--8e:1", month = apr, year = "2020", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3383775", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Thu Apr 30 10:40:53 MDT 2020", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/abs/10.1145/3383775", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "8e", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Cai:2020:AIM, author = "Haipeng Cai", title = "Assessing and Improving Malware Detection Sustainability through App Evolution Studies", journal = j-TOSEM, volume = "29", number = "2", pages = "8:1--8:28", month = apr, year = "2020", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3371924", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Thu Apr 30 10:40:53 MDT 2020", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/abs/10.1145/3371924", abstract = "Machine learning-based classification dominates current malware detection approaches for Android. However, due to the evolution of both the Android platform and its user apps, existing such techniques are widely limited by their reliance on new malware \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "8", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Beschastnikh:2020:VDS, author = "Ivan Beschastnikh and Perry Liu and Albert Xing and Patty Wang and Yuriy Brun and Michael D. Ernst", title = "Visualizing Distributed System Executions", journal = j-TOSEM, volume = "29", number = "2", pages = "9:1--9:38", month = apr, year = "2020", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3375633", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Thu Apr 30 10:40:53 MDT 2020", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/abs/10.1145/3375633", abstract = "Distributed systems pose unique challenges for software developers. Understanding the system's communication topology and reasoning about concurrent activities of system hosts can be difficult. The standard approach, analyzing system logs, can be a \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "9", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Ali:2020:QIS, author = "Shaukat Ali and Paolo Arcaini and Dipesh Pradhan and Safdar Aqeel Safdar and Tao Yue", title = "Quality Indicators in Search-based Software Engineering: an Empirical Evaluation", journal = j-TOSEM, volume = "29", number = "2", pages = "10:1--10:29", month = apr, year = "2020", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3375636", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Thu Apr 30 10:40:53 MDT 2020", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/abs/10.1145/3375636", abstract = "Search-Based Software Engineering (SBSE) researchers who apply multi-objective search algorithms (MOSAs) often assess the quality of solutions produced by MOSAs with one or more quality indicators (QIs). However, SBSE lacks evidence providing insights \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "10", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Soltana:2020:PCS, author = "Ghanem Soltana and Mehrdad Sabetzadeh and Lionel C. Briand", title = "Practical Constraint Solving for Generating System Test Data", journal = j-TOSEM, volume = "29", number = "2", pages = "11:1--11:48", month = apr, year = "2020", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3381032", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Thu Apr 30 10:40:53 MDT 2020", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/abs/10.1145/3381032", abstract = "The ability to generate test data is often a necessary prerequisite for automated software testing. For the generated data to be fit for their intended purpose, the data usually have to satisfy various logical constraints. When testing is performed at a \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "11", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Kapur:2020:DES, author = "Ritu Kapur and Balwinder Sodhi", title = "A Defect Estimator for Source Code: Linking Defect Reports with Programming Constructs Usage Metrics", journal = j-TOSEM, volume = "29", number = "2", pages = "12:1--12:35", month = apr, year = "2020", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3384517", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Thu Apr 30 10:40:53 MDT 2020", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/abs/10.1145/3384517", abstract = "An important issue faced during software development is to identify defects and the properties of those defects, if found, in a given source file. Determining defectiveness of source code assumes significance due to its implications on software \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "12", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Li:2020:PNF, author = "Yangguang Li and Zhen Ming (Jack) Jiang and Heng Li and Ahmed E. Hassan and Cheng He and Ruirui Huang and Zhengda Zeng and Mian Wang and Pinan Chen", title = "Predicting Node Failures in an Ultra-Large-Scale Cloud Computing Platform: an {AIOps} Solution", journal = j-TOSEM, volume = "29", number = "2", pages = "13:1--13:24", month = apr, year = "2020", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3385187", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Thu Apr 30 10:40:53 MDT 2020", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/abs/10.1145/3385187", abstract = "Many software services today are hosted on cloud computing platforms, such as Amazon EC2, due to many benefits like reduced operational costs. However, node failures in these platforms can impact the availability of their hosted services and potentially \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "13", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Pezze:2020:Eb, author = "Mauro Pezz{\`e}", title = "Editorial", journal = j-TOSEM, volume = "29", number = "3", pages = "14e:1--14e:1", month = jul, year = "2020", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3402931", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Jul 10 13:50:17 MDT 2020", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/abs/10.1145/3402931", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "14e", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Wang:2020:KDI, author = "Guanhua Wang and Sudipta Chattopadhyay and Arnab Kumar Biswas and Tulika Mitra and Abhik Roychoudhury", title = "{KLEESpectre}: Detecting Information Leakage through Speculative Cache Attacks via Symbolic Execution", journal = j-TOSEM, volume = "29", number = "3", pages = "14:1--14:31", month = jul, year = "2020", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3385897", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Jul 10 13:50:17 MDT 2020", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/abs/10.1145/3385897", abstract = "Spectre-style attacks disclosed in early 2018 expose data leakage scenarios via cache side channels. Specifically, speculatively executed paths due to branch mis-prediction may bring secret data into the cache, which are then exposed via cache side channels even after the speculative execution is squashed. Symbolic execution is a well-known test generation method to cover program paths at the level of the application software. In this article, we extend symbolic execution with modeling of cache and speculative execution. Our tool KLEESPECTRE, built on top of the KLEE symbolic execution engine, can thus provide a testing engine to check for data leakage through the cache side channel as shown via Spectre attacks. Our symbolic cache model can verify whether the sensitive data leakage due to speculative execution can be observed by an attacker at a given program point. Our experiments show that KLEESPECTRE can effectively detect data leakage along speculatively executed paths and our cache model can make the leakage detection more precise.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "14", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Taymouri:2020:CAW, author = "Farbod Taymouri and Josep Carmona", title = "Computing Alignments of Well-Formed Process Models using Local Search", journal = j-TOSEM, volume = "29", number = "3", pages = "15:1--15:41", month = jul, year = "2020", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3394056", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Jul 10 13:50:17 MDT 2020", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/abs/10.1145/3394056", abstract = "The alignment of observed and modeled behavior is an essential element for organizations, since it opens the door for conformance checking and enhancement of processes. The state-of-the-art technique for computing alignments has exponential time and \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "15", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Wang:2020:UED, author = "Zhendong Wang and Yang Feng and Yi Wang and James A. Jones and David Redmiles", title = "Unveiling Elite Developers' Activities in Open Source Projects", journal = j-TOSEM, volume = "29", number = "3", pages = "16:1--16:35", month = jul, year = "2020", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3387111", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Jul 10 13:50:17 MDT 2020", bibsource = "https://www.math.utah.edu/pub/tex/bib/gnu.bib; https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/abs/10.1145/3387111", abstract = "Open source developers, particularly the elite developers who own the administrative privileges for a project, maintain a diverse portfolio of contributing activities. They not only commit source code but also exert significant efforts on other communicative, organizational, and supportive activities. However, almost all prior research focuses on specific activities and fails to analyze elite developers activities in a comprehensive way. To bridge this gap, we conduct an empirical study with fine-grained event data from 20 large open source projects hosted on GITHUB. We investigate elite developers contributing activities and their impacts on project outcomes. Our analyses reveal three key findings: (1) elite developers participate in a variety of activities, of which technical contributions (e.g., coding) only account for a small proportion; (2) as the project grows, elite developers tend to put more effort into supportive and communicative activities and less effort into coding; and (3) elite developers efforts in nontechnical activities are negatively correlated with the project's outcomes in terms of productivity and quality in general, except for a positive correlation with the bug fix rate (a quality indicator). These results provide an integrated view of elite developers' activities and can inform an individual's decision making about effort allocation, which could lead to improved project outcomes. The results also provide implications for supporting these elite developers.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "16", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Polyvyanyy:2020:MPR, author = "Artem Polyvyanyy and Andreas Solti and Matthias Weidlich and Claudio {Di Ciccio} and Jan Mendling", title = "Monotone Precision and Recall Measures for Comparing Executions and Specifications of Dynamic Systems", journal = j-TOSEM, volume = "29", number = "3", pages = "17:1--17:41", month = jul, year = "2020", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3387909", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Jul 10 13:50:17 MDT 2020", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/abs/10.1145/3387909", abstract = "The behavioural comparison of systems is an important concern of software engineering research. For example, the areas of specification discovery and specification mining are concerned with measuring the consistency between a collection of execution \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "17", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Miranda:2020:TRU, author = "Breno Miranda and Antonia Bertolino", title = "Testing Relative to Usage Scope: Revisiting Software Coverage Criteria", journal = j-TOSEM, volume = "29", number = "3", pages = "18:1--18:24", month = jul, year = "2020", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3389126", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Jul 10 13:50:17 MDT 2020", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/abs/10.1145/3389126", abstract = "Coverage criteria provide a useful and widely used means to guide software testing; however, indiscriminately pursuing full coverage may not always be convenient or meaningful, as not all entities are of interest in any usage context. We aim at \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "18", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Chen:2020:WBU, author = "Jieshan Chen and Chunyang Chen and Zhenchang Xing and Xin Xia and Liming Zhu and John Grundy and Jinshui Wang", title = "Wireframe-based {UI} Design Search through Image Autoencoder", journal = j-TOSEM, volume = "29", number = "3", pages = "19:1--19:31", month = jul, year = "2020", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3391613", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Jul 10 13:50:17 MDT 2020", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/abs/10.1145/3391613", abstract = "UI design is an integral part of software development. For many developers who do not have much UI design experience, exposing them to a large database of real-application UI designs can help them quickly build up a realistic understanding of the design \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "19", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Xue:2020:MOI, author = "Yinxing Xue and Yan-Fu Li", title = "Multi-objective Integer Programming Approaches for Solving the Multi-criteria Test-suite Minimization Problem: Towards Sound and Complete Solutions of a Particular Search-based Software-engineering Problem", journal = j-TOSEM, volume = "29", number = "3", pages = "20:1--20:50", month = jul, year = "2020", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3392031", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Jul 10 13:50:17 MDT 2020", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/abs/10.1145/3392031", abstract = "Test-suite minimization is one key technique for optimizing the software testing process. Due to the need to balance multiple factors, multi-criteria test-suite minimization (MCTSM) becomes a popular research topic in the recent decade. The MCTSM \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "20", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Bao:2020:PDC, author = "Lingfeng Bao and Zhenchang Xing and Xin Xia and David Lo and Minghui Wu and Xiaohu Yang", title = "{psc2code}: Denoising Code Extraction from Programming Screencasts", journal = j-TOSEM, volume = "29", number = "3", pages = "21:1--21:38", month = jul, year = "2020", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3392093", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Jul 10 13:50:17 MDT 2020", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/abs/10.1145/3392093", abstract = "Programming screencasts have become a pervasive resource on the Internet, which help developers learn new programming technologies or skills. The source code in programming screencasts is an important and valuable information for developers. But the \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "21", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Arcuri:2020:HSD, author = "Andrea Arcuri and Juan P. Galeotti", title = "Handling {SQL} Databases in Automated System Test Generation", journal = j-TOSEM, volume = "29", number = "4", pages = "22:1--22:31", month = oct, year = "2020", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3391533", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Thu Oct 8 07:18:41 MDT 2020", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3391533", abstract = "Automated system test generation for web/enterprise systems requires either a sequence of actions on a GUI (e.g., clicking on HTML links and form buttons) or direct HTTP calls when dealing with web services (e.g., REST and SOAP). When doing white-box. \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "22", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Pilgun:2020:FGC, author = "Aleksandr Pilgun and Olga Gadyatskaya and Yury Zhauniarovich and Stanislav Dashevskyi and Artsiom Kushniarou and Sjouke Mauw", title = "Fine-grained Code Coverage Measurement in Automated Black-box {Android} Testing", journal = j-TOSEM, volume = "29", number = "4", pages = "23:1--23:35", month = oct, year = "2020", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3395042", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Thu Oct 8 07:18:41 MDT 2020", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3395042", abstract = "Today, there are millions of third-party Android applications. Some of them are buggy or even malicious. To identify such applications, novel frameworks for automated black-box testing and dynamic analysis are being developed by the Android community. \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "23", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Wang:2020:IIC, author = "Junjie Wang and Ye Yang and Tim Menzies and Qing Wang", title = "{iSENSE2.0}: Improving Completion-aware Crowdtesting Management with Duplicate Tagger and Sanity Checker", journal = j-TOSEM, volume = "29", number = "4", pages = "24:1--24:27", month = oct, year = "2020", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3394602", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Thu Oct 8 07:18:41 MDT 2020", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3394602", abstract = "Software engineers get questions of ``how much testing is enough'' on a regular basis. Existing approaches in software testing management employ experience-, risk-, or value-based analysis to prioritize and manage testing processes. However, very few is \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "24", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Zhang:2020:MTC, author = "Xihui Zhang and Thomas F. Stafford and Tao Hu and Hua Dai", title = "Measuring Task Conflict and Person Conflict in Software Testing", journal = j-TOSEM, volume = "29", number = "4", pages = "25:1--25:19", month = oct, year = "2020", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3395029", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Thu Oct 8 07:18:41 MDT 2020", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3395029", abstract = "Task-related conflict and person-related conflict in software testing are inevitable and can impact the effectiveness and efficiency of the software development process. The dimensionality of conflict in software testing is reasonably well understood, \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "25", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Gao:2020:GQT, author = "Zhipeng Gao and Xin Xia and John Grundy and David Lo and Yuan-Fang Li", title = "Generating Question Titles for {Stack Overflow} from Mined Code Snippets", journal = j-TOSEM, volume = "29", number = "4", pages = "26:1--26:37", month = oct, year = "2020", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3401026", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Thu Oct 8 07:18:41 MDT 2020", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3401026", abstract = "Stack Overflow has been heavily used by software developers as a popular way to seek programming-related information from peers via the internet. The Stack Overflow community recommends users to provide the related code snippet when they are creating a \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "26", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Yu:2020:SCR, author = "Xiao Liang Yu and Omar Al-Bataineh and David Lo and Abhik Roychoudhury", title = "Smart Contract Repair", journal = j-TOSEM, volume = "29", number = "4", pages = "27:1--27:32", month = oct, year = "2020", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3402450", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Thu Oct 8 07:18:41 MDT 2020", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3402450", abstract = "Smart contracts are automated or self-enforcing contracts that can be used to exchange assets without having to place trust in third parties. Many commercial transactions use smart contracts due to their potential benefits in terms of secure peer-to-. \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "27", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Holmes:2020:URL, author = "Josie Holmes and Iftekhar Ahmed and Caius Brindescu and Rahul Gopinath and He Zhang and Alex Groce", title = "Using Relative Lines of Code to Guide Automated Test Generation for {Python}", journal = j-TOSEM, volume = "29", number = "4", pages = "28:1--28:38", month = oct, year = "2020", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3408896", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Thu Oct 8 07:18:41 MDT 2020", bibsource = "https://www.math.utah.edu/pub/tex/bib/python.bib; https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3408896", abstract = "Raw lines of code (LOC) is a metric that does not, at first glance, seem extremely useful for automated test generation. It is both highly language-dependent and not extremely meaningful, semantically, within a language: one coder can produce the same effect with many fewer lines than another. However, relative LOC, between components of the same project, turns out to be a highly useful metric for automated testing. In this article, we make use of a heuristic based on LOC counts for tested functions to dramatically improve the effectiveness of automated test generation. This approach is particularly valuable in languages where collecting code coverage data to guide testing has a very high overhead. We apply the heuristic to property-based Python testing using the TSTL (Template Scripting Testing Language) tool. In our experiments, the simple LOC heuristic can improve branch and statement coverage by large margins (often more than 20\%, up to 40\% or more) and improve fault detection by an even larger margin (usually more than 75\% and up to 400\% or more). The LOC heuristic is also easy to combine with other approaches and is comparable to, and possibly more effective than, two well-established approaches for guiding random testing.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "28", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Pantiuchina:2020:WDR, author = "Jevgenija Pantiuchina and Fiorella Zampetti and Simone Scalabrino and Valentina Piantadosi and Rocco Oliveto and Gabriele Bavota and Massimiliano {Di Penta}", title = "Why Developers Refactor Source Code: a Mining-based Study", journal = j-TOSEM, volume = "29", number = "4", pages = "29:1--29:30", month = oct, year = "2020", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3408302", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Thu Oct 8 07:18:41 MDT 2020", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3408302", abstract = "Refactoring aims at improving code non-functional attributes without modifying its external behavior. Previous studies investigated the motivations behind refactoring by surveying developers. With the aim of generalizing and complementing their findings,. \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "29", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Chen:2020:PAE, author = "Junjie Chen and Zhuo Wu and Zan Wang and Hanmo You and Lingming Zhang and Ming Yan", title = "Practical Accuracy Estimation for Efficient Deep Neural Network Testing", journal = j-TOSEM, volume = "29", number = "4", pages = "30:1--30:35", month = oct, year = "2020", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3394112", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Thu Oct 8 07:18:41 MDT 2020", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3394112", abstract = "Deep neural network (DNN) has become increasingly popular and DNN testing is very critical to guarantee the correctness of DNN, i.e., the accuracy of DNN in this work. However, DNN testing suffers from a serious efficiency problem, i.e., it is costly to \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "30", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Wang:2020:MTN, author = "Wenhan Wang and Ge Li and Sijie Shen and Xin Xia and Zhi Jin", title = "Modular Tree Network for Source Code Representation Learning", journal = j-TOSEM, volume = "29", number = "4", pages = "31:1--31:23", month = oct, year = "2020", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3409331", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Thu Oct 8 07:18:41 MDT 2020", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3409331", abstract = "Learning representation for source code is a foundation of many program analysis tasks. In recent years, neural networks have already shown success in this area, but most existing models did not make full use of the unique structural information of \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "31", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Guerriero:2021:SMD, author = "Michele Guerriero and Damian Andrew Tamburri and Elisabetta {Di Nitto}", title = "{StreamGen}: Model-driven Development of Distributed Streaming Applications", journal = j-TOSEM, volume = "30", number = "1", pages = "1:1--1:30", month = jan, year = "2021", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3408895", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Jan 22 07:02:14 MST 2021", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3408895", abstract = "Distributed streaming applications, i.e., applications that process massive streams of data in a distributed fashion, are becoming increasingly popular to tame the velocity and the volume of Big Data. Nevertheless, the widespread adoption of data-. \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "1", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Siegmund:2021:MVH, author = "Janet Siegmund and Norman Peitek and Sven Apel and Norbert Siegmund", title = "Mastering Variation in Human Studies: The Role of Aggregation", journal = j-TOSEM, volume = "30", number = "1", pages = "2:1--2:40", month = jan, year = "2021", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3406544", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Jan 22 07:02:14 MST 2021", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3406544", abstract = "The human factor is prevalent in empirical software engineering research. However, human studies often do not use the full potential of analysis methods by combining analysis of individual tasks and participants with an analysis that aggregates results \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "2", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Rahman:2021:SSA, author = "Akond Rahman and Md Rayhanur Rahman and Chris Parnin and Laurie Williams", title = "Security Smells in {Ansible} and {Chef} Scripts: a Replication Study", journal = j-TOSEM, volume = "30", number = "1", pages = "3:1--3:31", month = jan, year = "2021", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3408897", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Jan 22 07:02:14 MST 2021", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3408897", abstract = "Context: Security smells are recurring coding patterns that are indicative of security weakness and require further inspection. As infrastructure as code (IaC) scripts, such as Ansible and Chef scripts, are used to provision cloud-based servers and \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "3", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Zhang:2021:UWR, author = "Huihui Zhang and Man Zhang and Tao Yue and Shaukat Ali and Yan Li", title = "Uncertainty-wise Requirements Prioritization with Search", journal = j-TOSEM, volume = "30", number = "1", pages = "4:1--4:54", month = jan, year = "2021", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3408301", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Jan 22 07:02:14 MST 2021", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3408301", abstract = "Requirements review is an effective technique to ensure the quality of requirements in practice, especially in safety-critical domains (e.g., avionics systems, automotive systems). In such contexts, a typical requirements review process often \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "4", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Al-Sibahi:2021:VPT, author = "Ahmad Salim Al-Sibahi and Thomas P. Jensen and Aleksandar S. Dimovski and Andrzej Wasowski", title = "Verification of Program Transformations with Inductive Refinement Types", journal = j-TOSEM, volume = "30", number = "1", pages = "5:1--5:33", month = jan, year = "2021", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3409805", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Jan 22 07:02:14 MST 2021", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3409805", abstract = "High-level transformation languages like Rascal include expressive features for manipulating large abstract syntax trees: first-class traversals, expressive pattern matching, backtracking, and generalized iterators. We present the design and \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "5", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Shariffdeen:2021:APT, author = "Ridwan Salihin Shariffdeen and Shin Hwei Tan and Mingyuan Gao and Abhik Roychoudhury", title = "Automated Patch Transplantation", journal = j-TOSEM, volume = "30", number = "1", pages = "6:1--6:36", month = jan, year = "2021", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3412376", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Jan 22 07:02:14 MST 2021", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3412376", abstract = "Automated program repair is an emerging area that attempts to patch software errors and vulnerabilities. In this article, we formulate and study a problem related to automated repair, namely automated patch transplantation. A patch for an error in a \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "6", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Ma:2021:RTB, author = "Xiaoxue Ma and Shangru Wu and Ernest Pobee and Xiupei Mei and Hao Zhang and Bo Jiang and Wing-Kwong Chan", title = "{RegionTrack}: a Trace-Based Sound and Complete Checker to Debug Transactional Atomicity Violations and Non-Serializable Traces", journal = j-TOSEM, volume = "30", number = "1", pages = "7:1--7:49", month = jan, year = "2021", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3412377", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Jan 22 07:02:14 MST 2021", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3412377", abstract = "Atomicity is a correctness criterion to reason about isolated code regions in a multithreaded program when they are executed concurrently. However, dynamic instances of these code regions, called transactions, may fail to behave atomically, resulting in \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "7", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Ehsan:2021:ESD, author = "Osama Ehsan and Safwat Hassan and Mariam {El Mezouar} and Ying Zou", title = "An Empirical Study of Developer Discussions in the {Gitter} Platform", journal = j-TOSEM, volume = "30", number = "1", pages = "8:1--8:39", month = jan, year = "2021", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3412378", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Jan 22 07:02:14 MST 2021", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3412378", abstract = "Developer chatrooms (e.g., the Gitter platform) are gaining popularity as a communication channel among developers. In developer chatrooms, a developer ( asker ) posts questions and other developers ( respondents ) respond to the posted questions. The \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "8", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Bagnara:2021:PAV, author = "Roberto Bagnara and Michele Chiari and Roberta Gori and Abramo Bagnara", title = "A Practical Approach to Verification of Floating-Point {C\slash C++} Programs with {\tt math.h}\slash {\tt cmath} Functions", journal = j-TOSEM, volume = "30", number = "1", pages = "9:1--9:53", month = jan, year = "2021", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3410875", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Jan 22 07:02:14 MST 2021", bibsource = "https://www.math.utah.edu/pub/tex/bib/fparith.bib; https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3410875", abstract = "Verification of C/C++ programs has seen considerable progress in several areas, but not for programs that use these languages' mathematical libraries. The reason is that all libraries in widespread use come with no guarantees about the computed results. This would seem to prevent any attempt at formal verification of programs that use them: without a specification for the functions, no conclusion can be drawn statically about the behavior of the program. We propose an alternative to surrender. We introduce a pragmatic approach that leverages the fact that most {\tt math.h}\slash {\tt cmath} functions are almost piecewise monotonic: as we discovered through exhaustive testing, they may have glitches, often of very small size and in small numbers. We develop interval refinement techniques for such functions based on a modified dichotomic search, which enable verification via symbolic execution based model checking, abstract interpretation, and test data generation. To the best of our knowledge, our refinement algorithms are the first in the literature to be able to handle non-correctly rounded function implementations, enabling verification in the presence of the most common implementations. We experimentally evaluate our approach on real-world code, showing its ability to detect or rule out anomalous behaviors.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "9", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Fu:2021:SSC, author = "Xiaoqin Fu and Haipeng Cai and Wen Li and Li Li", title = "{SEADS}: Scalable and Cost-effective Dynamic Dependence Analysis of Distributed Systems via Reinforcement Learning", journal = j-TOSEM, volume = "30", number = "1", pages = "10:1--10:45", month = jan, year = "2021", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3379345", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Jan 22 07:02:14 MST 2021", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3379345", abstract = "Distributed software systems are increasingly developed and deployed today. Many of these systems are supposed to run continuously. Given their critical roles in our society and daily lives, assuring the quality of distributed systems is crucial. \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "10", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Gao:2021:TQS, author = "Zhipeng Gao and Xin Xia and David Lo and John Grundy", title = "Technical {Q8A} Site Answer Recommendation via Question Boosting", journal = j-TOSEM, volume = "30", number = "1", pages = "11:1--11:34", month = jan, year = "2021", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3412845", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Jan 22 07:02:14 MST 2021", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3412845", abstract = "Software developers have heavily used online question-and-answer platforms to seek help to solve their technical problems. However, a major problem with these technical Q8A sites is ``answer hungriness,'' i.e., a large number of questions remain \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "11", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Godoy:2021:EBT, author = "Javier Godoy and Juan Pablo Galeotti and Diego Garbervetsky and Sebasti{\'a}n Uchitel", title = "Enabledness-based Testing of Object Protocols", journal = j-TOSEM, volume = "30", number = "2", pages = "12:1--12:36", month = mar, year = "2021", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3415153", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Thu Mar 18 06:18:01 MDT 2021", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3415153", abstract = "A significant proportion of classes in modern software introduce or use object protocols, prescriptions on the temporal orderings of method calls on objects. This article studies search-based test generation techniques that aim to exploit a particular \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "12", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Ma:2021:TSD, author = "Wei Ma and Mike Papadakis and Anestis Tsakmalis and Maxime Cordy and Yves Le Traon", title = "Test Selection for Deep Learning Systems", journal = j-TOSEM, volume = "30", number = "2", pages = "13:1--13:22", month = mar, year = "2021", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3417330", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Thu Mar 18 06:18:01 MDT 2021", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3417330", abstract = "Testing of deep learning models is challenging due to the excessive number and complexity of the computations involved. As a result, test data selection is performed manually and in an ad hoc way. This raises the question of how we can automatically \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "13", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Gao:2021:BTP, author = "Xiang Gao and Bo Wang and Gregory J. Duck and Ruyi Ji and Yingfei Xiong and Abhik Roychoudhury", title = "Beyond Tests: Program Vulnerability Repair via Crash Constraint Extraction", journal = j-TOSEM, volume = "30", number = "2", pages = "14:1--14:27", month = mar, year = "2021", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3418461", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Thu Mar 18 06:18:01 MDT 2021", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3418461", abstract = "Automated program repair is an emerging technology that seeks to automatically rectify program errors and vulnerabilities. Repair techniques are driven by a correctness criterion that is often in the form of a test suite. Such test-based repair may \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "14", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Ohrndorf:2021:HBM, author = "Manuel Ohrndorf and Christopher Pietsch and Udo Kelter and Lars Grunske and Timo Kehrer", title = "History-based Model Repair Recommendations", journal = j-TOSEM, volume = "30", number = "2", pages = "15:1--15:46", month = mar, year = "2021", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3419017", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Thu Mar 18 06:18:01 MDT 2021", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3419017", abstract = "Models in Model-driven Engineering are primary development artifacts that are heavily edited in all stages of software development and that can become temporarily inconsistent during editing. In general, there are many alternatives to resolve an \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "15", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Kang:2021:ASM, author = "Hong Jin Kang and David Lo", title = "Adversarial Specification Mining", journal = j-TOSEM, volume = "30", number = "2", pages = "16:1--16:40", month = mar, year = "2021", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3424307", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Thu Mar 18 06:18:01 MDT 2021", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3424307", abstract = "There have been numerous studies on mining temporal specifications from execution traces. These approaches learn finite-state automata (FSA) from execution traces when running tests. To learn accurate specifications of a software system, many tests are \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "16", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Gong:2021:TDG, author = "Dunwei Gong and Baicai Sun and Xiangjuan Yao and Tian Tian", title = "Test Data Generation for Path Coverage of {MPI} Programs Using {SAEO}", journal = j-TOSEM, volume = "30", number = "2", pages = "17:1--17:37", month = mar, year = "2021", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3423132", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Thu Mar 18 06:18:01 MDT 2021", bibsource = "https://www.math.utah.edu/pub/tex/bib/pvm.bib; https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3423132", abstract = "Message-passing interface (MPI) programs, a typical kind of parallel programs, have been commonly used in various applications. However, it generally takes exhaustive computation to run these programs when generating test data to test them. In this \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "17", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Chen:2021:EPS, author = "Zhenpeng Chen and Yanbin Cao and Huihan Yao and Xuan Lu and Xin Peng and Hong Mei and Xuanzhe Liu", title = "Emoji-powered Sentiment and Emotion Detection from Software Developers' Communication Data", journal = j-TOSEM, volume = "30", number = "2", pages = "18:1--18:48", month = mar, year = "2021", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3424308", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Thu Mar 18 06:18:01 MDT 2021", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3424308", abstract = "Sentiment and emotion detection from textual communication records of developers have various application scenarios in software engineering (SE). However, commonly used off-the-shelf sentiment/emotion detection tools cannot obtain reliable results in SE \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "18", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Chekam:2021:KSM, author = "Thierry Titcheu Chekam and Mike Papadakis and Maxime Cordy and Yves Le Traon", title = "Killing Stubborn Mutants with Symbolic Execution", journal = j-TOSEM, volume = "30", number = "2", pages = "19:1--19:23", month = mar, year = "2021", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3425497", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Thu Mar 18 06:18:01 MDT 2021", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3425497", abstract = "We introduce SEMu, a Dynamic Symbolic Execution technique that generates test inputs capable of killing stubborn mutants (killable mutants that remain undetected after a reasonable amount of testing). SEMu aims at mutant propagation (triggering \ldots{}).", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "19", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Ore:2021:EST, author = "John-Paul Ore and Carrick Detweiler and Sebastian Elbaum", title = "An Empirical Study on Type Annotations: Accuracy, Speed, and Suggestion Effectiveness", journal = j-TOSEM, volume = "30", number = "2", pages = "20:1--20:29", month = mar, year = "2021", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3439775", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Thu Mar 18 06:18:01 MDT 2021", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3439775", abstract = "Type annotations connect variables to domain-specific types. They enable the power of type checking and can detect faults early. In practice, type annotations have a reputation of being burdensome to developers. We lack, however, an empirical \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "20", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Wu:2021:WAA, author = "Bozhi Wu and Sen Chen and Cuiyun Gao and Lingling Fan and Yang Liu and Weiping Wen and Michael R. Lyu", title = "Why an {Android} App Is Classified as Malware: Toward Malware Classification Interpretation", journal = j-TOSEM, volume = "30", number = "2", pages = "21:1--21:29", month = mar, year = "2021", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3423096", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Thu Mar 18 06:18:01 MDT 2021", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3423096", abstract = "Machine learning-(ML) based approach is considered as one of the most promising techniques for Android malware detection and has achieved high accuracy by leveraging commonly used features. In practice, most of the ML classifications only provide a \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "21", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Zhang:2021:CSO, author = "Haoxiang Zhang and Shaowei Wang and Tse-Hsun (Peter) Chen and Ahmed E. Hassan", title = "Are Comments on {Stack Overflow} Well Organized for Easy Retrieval by Developers?", journal = j-TOSEM, volume = "30", number = "2", pages = "22:1--22:31", month = mar, year = "2021", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3434279", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Thu Mar 18 06:18:01 MDT 2021", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3434279", abstract = "Many Stack Overflow answers have associated informative comments that can strengthen them and assist developers. A prior study found that comments can provide additional information to point out issues in their associated answer, such as the \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "22", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Zou:2021:IDL, author = "Deqing Zou and Yawei Zhu and Shouhuai Xu and Zhen Li and Hai Jin and Hengkai Ye", title = "Interpreting Deep Learning-based Vulnerability Detector Predictions Based on Heuristic Searching", journal = j-TOSEM, volume = "30", number = "2", pages = "23:1--23:31", month = mar, year = "2021", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3429444", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Thu Mar 18 06:18:01 MDT 2021", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3429444", abstract = "Detecting software vulnerabilities is an important problem and a recent development in tackling the problem is the use of deep learning models to detect software vulnerabilities. While effective, it is hard to explain why a deep learning model predicts \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "23", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Vandehei:2021:LDL, author = "Bailey Vandehei and Daniel Alencar Da Costa and Davide Falessi", title = "Leveraging the Defects Life Cycle to Label Affected Versions and Defective Classes", journal = j-TOSEM, volume = "30", number = "2", pages = "24:1--24:35", month = mar, year = "2021", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3433928", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Thu Mar 18 06:18:01 MDT 2021", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3433928", abstract = "Two recent studies explicitly recommend labeling defective classes in releases using the affected versions (AV) available in issue trackers (e.g., Jira). This practice is coined as the realistic approach. However, no study has investigated whether it is \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "24", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Chen:2021:WMC, author = "Qiuyuan Chen and Xin Xia and Han Hu and David Lo and Shanping Li", title = "Why My Code Summarization Model Does Not Work: Code Comment Improvement with Category Prediction", journal = j-TOSEM, volume = "30", number = "2", pages = "25:1--25:29", month = mar, year = "2021", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3434280", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Thu Mar 18 06:18:01 MDT 2021", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3434280", abstract = "Code summarization aims at generating a code comment given a block of source code and it is normally performed by training machine learning algorithms on existing code block-comment pairs. Code comments in practice have different intentions. For example,. \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "25", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Pezze:2021:E, author = "Mauro Pezz{\`e}", title = "Editorial", journal = j-TOSEM, volume = "30", number = "3", pages = "26e:1--26e:1", month = may, year = "2021", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3450737", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sun May 9 12:13:25 MDT 2021", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3450737", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "26e", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Gao:2021:HAF, author = "Pengfei Gao and Hongyi Xie and Fu Song and Taolue Chen", title = "A Hybrid Approach to Formal Verification of Higher-Order Masked Arithmetic Programs", journal = j-TOSEM, volume = "30", number = "3", pages = "26:1--26:42", month = may, year = "2021", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3428015", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sun May 9 12:13:25 MDT 2021", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3428015", abstract = "Side-channel attacks, which are capable of breaking secrecy via side-channel information, pose a growing threat to the implementation of cryptographic algorithms. Masking is an effective countermeasure against side-channel attacks by removing the statistical dependence between secrecy and power consumption via randomization. However, designing efficient and effective masked implementations turns out to be an error-prone task. Current techniques for verifying whether masked programs are secure are limited in their applicability and accuracy, especially when they are applied. To bridge this gap, in this article, we first propose a sound type system, equipped with an efficient type inference algorithm, for verifying masked arithmetic programs against higher-order attacks. We then give novel model-counting-based and pattern-matching-based methods that are able to precisely determine whether the potential leaky observable sets detected by the type system are genuine or simply spurious. We evaluate our approach on various implementations of arithmetic cryptographic programs. The experiments confirm that our approach outperforms the state-of-the-art baselines in terms of applicability, accuracy, and efficiency.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "26", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Lara:2021:FOM, author = "Juan {De Lara} and Esther Guerra and J{\"o}rg Kienzle", title = "Facet-oriented Modelling", journal = j-TOSEM, volume = "30", number = "3", pages = "27:1--27:59", month = may, year = "2021", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3428076", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sun May 9 12:13:25 MDT 2021", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3428076", abstract = "Models are the central assets in model-driven engineering (MDE), as they are actively used in all phases of software development. Models are built using metamodel-based languages, and so objects in models are typed by a metamodel class. This typing is \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "27", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Zarir:2021:DCE, author = "Abdullah A. Zarir and Gustavo A. Oliva and Zhen M. (Jack) Jiang and Ahmed E. Hassan", title = "Developing Cost-Effective Blockchain-Powered Applications: a Case Study of the Gas Usage of Smart Contract Transactions in the {Ethereum} Blockchain Platform", journal = j-TOSEM, volume = "30", number = "3", pages = "28:1--28:38", month = may, year = "2021", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3431726", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sun May 9 12:13:25 MDT 2021", bibsource = "https://www.math.utah.edu/pub/tex/bib/bitcoin.bib; https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3431726", abstract = "Ethereum is a blockchain platform that hosts and executes smart contracts. Executing a function of a smart contract burns a certain amount of gas units (a.k.a., gas usage). The total gas usage depends on how much computing power is necessary to carry \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "28", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Abidi:2021:MLD, author = "Mouna Abidi and Md Saidur Rahman and Moses Openja and Foutse Khomh", title = "Are Multi-Language Design Smells Fault-Prone? {An} Empirical Study", journal = j-TOSEM, volume = "30", number = "3", pages = "29:1--29:56", month = may, year = "2021", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3432690", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sun May 9 12:13:25 MDT 2021", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3432690", abstract = "Nowadays, modern applications are developed using components written in different programming languages and technologies. The cost benefits of reuse and the advantages of each programming language are two main incentives behind the proliferation of such \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "29", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Sharafi:2021:TOM, author = "Zohreh Sharafi and Yu Huang and Kevin Leach and Westley Weimer", title = "Toward an Objective Measure of Developers' Cognitive Activities", journal = j-TOSEM, volume = "30", number = "3", pages = "30:1--30:40", month = may, year = "2021", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3434643", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sun May 9 12:13:25 MDT 2021", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3434643", abstract = "Understanding how developers carry out different computer science activities with objective measures can help to improve productivity and guide the use and development of supporting tools in software engineering. In this article, we present two \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "30", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Uddin:2021:AAU, author = "Gias Uddin and Foutse Khomh and Chanchal K. Roy", title = "Automatic {API} Usage Scenario Documentation from Technical {Q\&A} Sites", journal = j-TOSEM, volume = "30", number = "3", pages = "31:1--31:45", month = may, year = "2021", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3439769", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sun May 9 12:13:25 MDT 2021", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3439769", abstract = "The online technical Q\&A site Stack Overflow (SO) is popular among developers to support their coding and diverse development needs. To address shortcomings in API official documentation resources, several research works have thus focused on augmenting \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "31", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Sun:2021:TRE, author = "Xiaoyu Sun and Li Li and Tegawend{\'e} F. Bissyand{\'e} and Jacques Klein and Damien Octeau and John Grundy", title = "Taming Reflection: an Essential Step Toward Whole-program Analysis of {Android} Apps", journal = j-TOSEM, volume = "30", number = "3", pages = "32:1--32:36", month = may, year = "2021", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3440033", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sun May 9 12:13:25 MDT 2021", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3440033", abstract = "Android developers heavily use reflection in their apps for legitimate reasons. However, reflection is also significantly used for hiding malicious actions. Unfortunately, current state-of-the-art static analysis tools for Android are challenged by the \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "32", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Zhao:2021:PPA, author = "Guoliang Zhao and Safwat Hassan and Ying Zou and Derek Truong and Toby Corbin", title = "Predicting Performance Anomalies in Software Systems at Run-time", journal = j-TOSEM, volume = "30", number = "3", pages = "33:1--33:33", month = may, year = "2021", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3440757", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sun May 9 12:13:25 MDT 2021", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3440757", abstract = "High performance is a critical factor to achieve and maintain the success of a software system. Performance anomalies represent the performance degradation issues (e.g., slowing down in system response times) of software systems at run-time. Performance \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "33", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Castro:2021:FFS, author = "Thiago Castro and Leopoldo Teixeira and Vander Alves and Sven Apel and Maxime Cordy and Rohit Gheyi", title = "A Formal Framework of Software Product Line Analyses", journal = j-TOSEM, volume = "30", number = "3", pages = "34:1--34:37", month = may, year = "2021", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3442389", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sun May 9 12:13:25 MDT 2021", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3442389", abstract = "A number of product-line analysis approaches lift analyses such as type checking, model checking, and theorem proving from the level of single programs to the level of product lines. These approaches share concepts and mechanisms that suggest an \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "34", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Yanez:2021:AIT, author = "Wendy Y{\'a}nez and Rami Bahsoon and Yuqun Zhang and Rick Kazman", title = "Architecting {Internet of Things} Systems with Blockchain: a Catalog of Tactics", journal = j-TOSEM, volume = "30", number = "3", pages = "35:1--35:46", month = may, year = "2021", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3442412", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sun May 9 12:13:25 MDT 2021", bibsource = "https://www.math.utah.edu/pub/tex/bib/bitcoin.bib; https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3442412", abstract = "Blockchain offers a distributed ledger to record data collected from Internet of Thing (IoT) devices as immutable and tamper-proof transactions and securely shared among authorized participants in a Peer-to-Peer (P2P) network. Despite the growing \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "35", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Scalabrino:2021:ASB, author = "Simone Scalabrino and Antonio Mastropaolo and Gabriele Bavota and Rocco Oliveto", title = "An Adaptive Search Budget Allocation Approach for Search-Based Test Case Generation", journal = j-TOSEM, volume = "30", number = "3", pages = "36:1--36:26", month = may, year = "2021", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3446199", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sun May 9 12:13:25 MDT 2021", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3446199", abstract = "Search-based techniques have been successfully used to automate test case generation. Such approaches allocate a fixed search budget to generate test cases aiming at maximizing code coverage. The search budget plays a crucial role; due to the hugeness \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "36", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Chen:2021:HSI, author = "Qiuyuan Chen and Chunyang Chen and Safwat Hassan and Zhengchang Xing and Xin Xia and Ahmed E. Hassan", title = "How Should {I} Improve the {UI} of My App?: a Study of User Reviews of Popular Apps in the {Google Play}", journal = j-TOSEM, volume = "30", number = "3", pages = "37:1--37:38", month = may, year = "2021", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3447808", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sun May 9 12:13:25 MDT 2021", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3447808", abstract = "UI (User Interface) is an essential factor influencing users' perception of an app. However, it is hard for even professional designers to determine if the UI is good or not for end-users. Users' feedback (e.g., user reviews in the Google Play) provides \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "37", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Cheng:2021:DSD, author = "Xiao Cheng and Haoyu Wang and Jiayi Hua and Guoai Xu and Yulei Sui", title = "{DeepWukong}: Statically Detecting Software Vulnerabilities Using Deep Graph Neural Network", journal = j-TOSEM, volume = "30", number = "3", pages = "38:1--38:33", month = may, year = "2021", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3436877", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sun May 9 12:13:25 MDT 2021", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3436877", abstract = "Static bug detection has shown its effectiveness in detecting well-defined memory errors, e.g., memory leaks, buffer overflows, and null dereference. However, modern software systems have a wide variety of vulnerabilities. These vulnerabilities are \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "38", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Zou:2021:IAM, author = "Deqing Zou and Yueming Wu and Siru Yang and Anki Chauhan and Wei Yang and Jiangying Zhong and Shihan Dou and Hai Jin", title = "{IntDroid}: {Android} Malware Detection Based on {API} Intimacy Analysis", journal = j-TOSEM, volume = "30", number = "3", pages = "39:1--39:32", month = may, year = "2021", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3442588", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sun May 9 12:13:25 MDT 2021", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3442588", abstract = "Android, the most popular mobile operating system, has attracted millions of users around the world. Meanwhile, the number of new Android malware instances has grown exponentially in recent years. On the one hand, existing Android malware detection \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "39", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Zhao:2021:ISD, author = "Yanjie Zhao and Li Li and Haoyu Wang and Haipeng Cai and Tegawend{\'e} F. Bissyand{\'e} and Jacques Klein and John Grundy", title = "On the Impact of Sample Duplication in Machine-Learning-Based {Android} Malware Detection", journal = j-TOSEM, volume = "30", number = "3", pages = "40:1--40:38", month = may, year = "2021", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3446905", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sun May 9 12:13:25 MDT 2021", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3446905", abstract = "Malware detection at scale in the Android realm is often carried out using machine learning techniques. State-of-the-art approaches such as DREBIN and MaMaDroid are reported to yield high detection rates when assessed against well-known datasets. \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "40", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Chen:2021:LCF, author = "Jianhui Chen and Fei He", title = "Leveraging Control Flow Knowledge in {SMT} Solving of Program Verification", journal = j-TOSEM, volume = "30", number = "4", pages = "41:1--41:26", month = jul, year = "2021", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3446211", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Aug 4 07:53:40 MDT 2021", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3446211", abstract = "Satisfiability modulo theories (SMT) solvers have been widely applied as the reasoning engine for diverse software analysis and verification technologies. The efficiency of the SMT solver has significant effects on the performance of these technologies. \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "41", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Bogart:2021:WHM, author = "Chris Bogart and Christian K{\"a}stner and James Herbsleb and Ferdian Thung", title = "When and How to Make Breaking Changes: Policies and Practices in 18 Open Source Software Ecosystems", journal = j-TOSEM, volume = "30", number = "4", pages = "42:1--42:56", month = jul, year = "2021", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3447245", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Aug 4 07:53:40 MDT 2021", bibsource = "https://www.math.utah.edu/pub/tex/bib/gnu.bib; https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3447245", abstract = "Open source software projects often rely on package management systems that help projects discover, incorporate, and maintain dependencies on other packages, maintained by other people. Such systems save a great deal of effort over ad hoc ways of advertising, packaging, and transmitting useful libraries, but coordination among project teams is still needed when one package makes a breaking change affecting other packages. Ecosystems differ in their approaches to breaking changes, and there is no general theory to explain the relationships between features, behavioral norms, ecosystem outcomes, and motivating values. We address this through two empirical studies. In an interview case study, we contrast Eclipse, NPM, and CRAN, demonstrating that these different norms for coordination of breaking changes shift the costs of using and maintaining the software among stakeholders, appropriate to each ecosystem's mission. In a second study, we combine a survey, repository mining, and document analysis to broaden and systematize these observations across 18 ecosystems. We find that all ecosystems share values such as stability and compatibility, but differ in other values. Ecosystems practices often support their espoused values, but in surprisingly diverse ways. The data provides counterevidence against easy generalizations about why ecosystem communities do what they do.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "42", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Ferrando:2021:THA, author = "Angelo Ferrando and Louise A. Dennis and Rafael C. Cardoso and Michael Fisher and Davide Ancona and Viviana Mascardi", title = "Toward a Holistic Approach to Verification and Validation of Autonomous Cognitive Systems", journal = j-TOSEM, volume = "30", number = "4", pages = "43:1--43:43", month = jul, year = "2021", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3447246", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Aug 4 07:53:40 MDT 2021", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3447246", abstract = "When applying formal verification to a system that interacts with the real world, we must use a model of the environment. This model represents an abstraction of the actual environment, so it is necessarily incomplete and hence presents an issue for \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "43", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Menendez:2021:DFT, author = "H{\'e}ctor D. Men{\'e}ndez and Gunel Jahangirova and Federica Sarro and Paolo Tonella and David Clark", title = "Diversifying Focused Testing for Unit Testing", journal = j-TOSEM, volume = "30", number = "4", pages = "44:1--44:24", month = jul, year = "2021", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3447265", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Aug 4 07:53:40 MDT 2021", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3447265", abstract = "Software changes constantly, because developers add new features or modifications. This directly affects the effectiveness of the test suite associated with that software, especially when these new modifications are in a specific area that no test case \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "44", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Guo:2021:HFW, author = "Zhaoqiang Guo and Shiran Liu and Jinping Liu and Yanhui Li and Lin Chen and Hongmin Lu and Yuming Zhou", title = "How Far Have We Progressed in Identifying Self-admitted Technical Debts? {A} Comprehensive Empirical Study", journal = j-TOSEM, volume = "30", number = "4", pages = "45:1--45:56", month = jul, year = "2021", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3447247", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Aug 4 07:53:40 MDT 2021", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3447247", abstract = "Background. Self-admitted technical debt (SATD) is a special kind of technical debt that is intentionally introduced and remarked by code comments. Those technical debts reduce the quality of software and increase the cost of subsequent software \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "45", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Lu:2021:ECR, author = "Jingbo Lu and Dongjie He and Jingling Xue", title = "{Eagle}: {CFL}-Reachability-Based Precision-Preserving Acceleration of Object-Sensitive Pointer Analysis with Partial Context Sensitivity", journal = j-TOSEM, volume = "30", number = "4", pages = "46:1--46:46", month = jul, year = "2021", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3450492", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Aug 4 07:53:40 MDT 2021", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3450492", abstract = "Object sensitivity is widely used as a context abstraction for computing the points-to information context-sensitively for object-oriented programming languages such as Java. Due to the combinatorial explosion of contexts in large object-oriented \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "46", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Paulweber:2021:SIT, author = "Philipp Paulweber and Georg Simhandl and Uwe Zdun", title = "Specifying with Interface and Trait Abstractions in Abstract State Machines: a Controlled Experiment", journal = j-TOSEM, volume = "30", number = "4", pages = "47:1--47:29", month = jul, year = "2021", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3450968", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Aug 4 07:53:40 MDT 2021", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3450968", abstract = "Abstract State Machine (ASM) theory is a well-known state-based formal method. As in other state-based formal methods, the proposed specification languages for ASMs still lack easy-to-comprehend abstractions to express structural and behavioral aspects \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "47", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Chatterjee:2021:AIQ, author = "Preetha Chatterjee and Kostadin Damevski and Nicholas A. Kraft and Lori Pollock", title = "Automatically Identifying the Quality of Developer Chats for Post Hoc Use", journal = j-TOSEM, volume = "30", number = "4", pages = "48:1--48:28", month = jul, year = "2021", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3450503", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Aug 4 07:53:40 MDT 2021", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3450503", abstract = "Software engineers are crowdsourcing answers to their everyday challenges on Q\&A forums (e.g., Stack Overflow) and more recently in public chat communities such as Slack, IRC, and Gitter. Many software-related chat conversations contain valuable expert \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "48", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Tao:2021:SDM, author = "Yida Tao and Shan Tang and Yepang Liu and Zhiwu Xu and Shengchao Qin", title = "Speeding Up Data Manipulation Tasks with Alternative Implementations: an Exploratory Study", journal = j-TOSEM, volume = "30", number = "4", pages = "49:1--49:28", month = jul, year = "2021", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3456873", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Aug 4 07:53:40 MDT 2021", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3456873", abstract = "As data volume and complexity grow at an unprecedented rate, the performance of data manipulation programs is becoming a major concern for developers. In this article, we study how alternative API choices could improve data manipulation performance \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "49", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Chondamrongkul:2021:SAM, author = "Nacha Chondamrongkul and Jing Sun and Ian Warren", title = "Software Architectural Migration: an Automated Planning Approach", journal = j-TOSEM, volume = "30", number = "4", pages = "50:1--50:35", month = jul, year = "2021", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3461011", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Aug 4 07:53:40 MDT 2021", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3461011", abstract = "Software architectural designs are usually changed over time to support emerging technologies and to adhere to new principles. Architectural migration is an important activity that helps to transform the architectural styles applied during a system's \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "50", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Sobhy:2021:ESA, author = "Dalia Sobhy and Rami Bahsoon and Leandro Minku and Rick Kazman", title = "Evaluation of Software Architectures under Uncertainty: a Systematic Literature Review", journal = j-TOSEM, volume = "30", number = "4", pages = "51:1--51:50", month = jul, year = "2021", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3464305", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Aug 4 07:53:40 MDT 2021", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3464305", abstract = "Context: Evaluating software architectures in uncertain environments raises new challenges, which require continuous approaches. We define continuous evaluation as multiple evaluations of the software architecture that begins at the early stages of the \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "51", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Russo:2021:ASM, author = "Daniel Russo", title = "The Agile Success Model: a Mixed-methods Study of a Large-scale Agile Transformation", journal = j-TOSEM, volume = "30", number = "4", pages = "52:1--52:46", month = jul, year = "2021", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3464938", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Aug 4 07:53:40 MDT 2021", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3464938", abstract = "Organizations are increasingly adopting Agile frameworks for their internal software development. Cost reduction, rapid deployment, requirements and mental model alignment are typical reasons for an Agile transformation. This article presents an in-. \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "52", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Safdar:2021:RFC, author = "Safdar Aqeel Safdar and Tao Yue and Shaukat Ali", title = "Recommending Faulty Configurations for Interacting Systems Under Test Using Multi-objective Search", journal = j-TOSEM, volume = "30", number = "4", pages = "53:1--53:36", month = jul, year = "2021", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3464939", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Aug 4 07:53:40 MDT 2021", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3464939", abstract = "Modern systems, such as cyber-physical systems, often consist of multiple products within/across product lines communicating with each other through information networks. Consequently, their runtime behaviors are influenced by product configurations and \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "53", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Lyu:2021:ESI, author = "Yingzhe Lyu and Heng Li and Mohammed Sayagh and Zhen Ming (Jack) Jiang and Ahmed E. Hassan", title = "An Empirical Study of the Impact of Data Splitting Decisions on the Performance of {AIOps} Solutions", journal = j-TOSEM, volume = "30", number = "4", pages = "54:1--54:38", month = jul, year = "2021", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3447876", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Aug 4 07:53:40 MDT 2021", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3447876", abstract = "AIOps (Artificial Intelligence for IT Operations) leverages machine learning models to help practitioners handle the massive data produced during the operations of large-scale systems. However, due to the nature of the operation data, AIOps modeling \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "54", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Dilhara:2021:USS, author = "Malinda Dilhara and Ameya Ketkar and Danny Dig", title = "Understanding {Software-2.0}: a Study of Machine Learning Library Usage and Evolution", journal = j-TOSEM, volume = "30", number = "4", pages = "55:1--55:42", month = jul, year = "2021", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3453478", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Aug 4 07:53:40 MDT 2021", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3453478", abstract = "Enabled by a rich ecosystem of Machine Learning (ML) libraries, programming using learned models, i.e., Software-2.0, has gained substantial adoption. However, we do not know what challenges developers encounter when they use ML libraries. With this \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "55", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Wang:2021:CAR, author = "Haoye Wang and Xin Xia and David Lo and Qiang He and Xinyu Wang and John Grundy", title = "Context-aware Retrieval-based Deep Commit Message Generation", journal = j-TOSEM, volume = "30", number = "4", pages = "56:1--56:30", month = jul, year = "2021", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3464689", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Aug 4 07:53:40 MDT 2021", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3464689", abstract = "Commit messages recorded in version control systems contain valuable information for software development, maintenance, and comprehension. Unfortunately, developers often commit code with empty or poor quality commit messages. To address this issue, \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "56", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Arcuri:2022:ESB, author = "Andrea Arcuri and Juan P. Galeotti", title = "Enhancing Search-based Testing with Testability Transformations for Existing {APIs}", journal = j-TOSEM, volume = "31", number = "1", pages = "1:1--1:34", month = jan, year = "2022", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3477271", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Jan 7 07:51:00 MST 2022", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3477271", abstract = "Search-based software testing (SBST) has been shown to be an effective technique to generate test cases automatically. Its effectiveness strongly depends on the guidance of the fitness function. Unfortunately, a common issue in SBST is the so-called flag \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "1", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Zhang:2022:AHS, author = "Man Zhang and Andrea Arcuri", title = "Adaptive Hypermutation for Search-Based System Test Generation: a Study on {REST APIs} with {EvoMaster}", journal = j-TOSEM, volume = "31", number = "1", pages = "2:1--2:52", month = jan, year = "2022", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3464940", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Jan 7 07:51:00 MST 2022", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3464940", abstract = "REST web services are widely popular in industry, and search techniques have been successfully used to automatically generate system-level test cases for those systems. In this article, we propose a novel mutation operator which is designed specifically \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "2", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Xu:2022:MSC, author = "Hui Xu and Zhuangbin Chen and Mingshen Sun and Yangfan Zhou and Michael R. Lyu", title = "Memory-Safety Challenge Considered Solved? {An} In-Depth Study with All {Rust} {CVEs}", journal = j-TOSEM, volume = "31", number = "1", pages = "3:1--3:25", month = jan, year = "2022", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3466642", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Jan 7 07:51:00 MST 2022", bibsource = "https://www.math.utah.edu/pub/tex/bib/rust.bib; https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3466642", abstract = "Rust is an emerging programming language that aims at preventing memory-safety bugs without sacrificing much efficiency. The claimed property is very attractive to developers, and many projects start using the language. However, can Rust achieve the memory-safety promise? This article studies the question by surveying 186 real-world bug reports collected from several origins, which contain all existing Rust common vulnerability and exposures (CVEs) of memory-safety issues by 2020-12-31. We manually analyze each bug and extract their culprit patterns. Our analysis result shows that Rust can keep its promise that all memory-safety bugs require unsafe code, and many memory-safety bugs in our dataset are mild soundness issues that only leave a possibility to write memory-safety bugs without unsafe code. Furthermore, we summarize three typical categories of memory-safety bugs, including automatic memory reclaim, unsound function, and unsound generic or trait. While automatic memory claim bugs are related to the side effect of Rust newly-adopted ownership-based resource management scheme, unsound function reveals the essential challenge of Rust development for avoiding unsound code, and unsound generic or trait intensifies the risk of introducing unsoundness. Based on these findings, we propose two promising directions toward improving the security of Rust development, including several best practices of using specific APIs and methods to detect particular bugs involving unsafe code. Our work intends to raise more discussions regarding the memory-safety issues of Rust and facilitate the maturity of the language.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "3", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Falessi:2022:IDD, author = "Davide Falessi and Aalok Ahluwalia and Massimiliano DI Penta", title = "The Impact of Dormant Defects on Defect Prediction: a Study of 19 {Apache} Projects", journal = j-TOSEM, volume = "31", number = "1", pages = "4:1--4:26", month = jan, year = "2022", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3467895", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Jan 7 07:51:00 MST 2022", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3467895", abstract = "Defect prediction models can be beneficial to prioritize testing, analysis, or code review activities, and has been the subject of a substantial effort in academia, and some applications in industrial contexts. A necessary precondition when creating a \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "4", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Vogel-Heuser:2022:MIA, author = "Birgit Vogel-Heuser and Eva-Maria Neumann and Juliane Fischer", title = "{MICOSE4aPS}: Industrially Applicable Maturity Metric to Improve Systematic Reuse of Control Software", journal = j-TOSEM, volume = "31", number = "1", pages = "5:1--5:24", month = jan, year = "2022", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3467896", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Jan 7 07:51:00 MST 2022", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3467896", abstract = "automated Production Systems (aPS) are highly complex, mechatronic systems that usually have to operate reliably for many decades. Standardization and reuse of control software modules is a core prerequisite to achieve the required system quality in \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "5", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Sundelin:2022:TAS, author = "Anders Sundelin and Javier Gonzalez-huerta and Krzysztof Wnuk and Tony Gorschek", title = "Towards an Anatomy of Software Craftsmanship", journal = j-TOSEM, volume = "31", number = "1", pages = "6:1--6:49", month = jan, year = "2022", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3468504", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Jan 7 07:51:00 MST 2022", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3468504", abstract = "Context: The concept of software craftsmanship has early roots in computing, and in 2009, the Manifesto for Software Craftsmanship was formulated as a reaction to how the Agile methods were practiced and taught. But software craftsmanship has seldom been \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "6", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Graziotin:2022:PBS, author = "Daniel Graziotin and Per Lenberg and Robert Feldt and Stefan Wagner", title = "Psychometrics in Behavioral Software Engineering: a Methodological Introduction with Guidelines", journal = j-TOSEM, volume = "31", number = "1", pages = "7:1--7:36", month = jan, year = "2022", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3469888", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Jan 7 07:51:00 MST 2022", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3469888", abstract = "A meaningful and deep understanding of the human aspects of software engineering (SE) requires psychological constructs to be considered. Psychology theory can facilitate the systematic and sound development as well as the adoption of instruments \ldots{}.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "7", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Zhou:2022:PTP, author = "Jianyi Zhou and Junjie Chen and Dan Hao", title = "Parallel Test Prioritization", journal = j-TOSEM, volume = "31", number = "1", pages = "8:1--8:50", month = jan, year = "2022", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3471906", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Jan 7 07:51:00 MST 2022", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3471906", abstract = "Although regression testing is important to guarantee the software quality in software evolution, it suffers from the widely known cost problem. To address this problem, existing researchers made dedicated efforts on test prioritization, which optimizes \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "8", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Rauf:2022:CAS, author = "Irum Rauf and Marian Petre and Thein Tun and Tamara Lopez and Paul Lunn and Dirk {Van Der Linden} and John Towse and Helen Sharp and Mark Levine and Awais Rashid and Bashar Nuseibeh", title = "The Case for Adaptive Security Interventions", journal = j-TOSEM, volume = "31", number = "1", pages = "9:1--9:52", month = jan, year = "2022", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3471930", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Jan 7 07:51:00 MST 2022", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3471930", abstract = "Despite the availability of various methods and tools to facilitate secure coding, developers continue to write code that contains common vulnerabilities. It is important to understand why technological advances do not sufficiently facilitate developers \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "9", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Arcega:2022:BLM, author = "Lorena Arcega and Jaime Font and {\O}ystein Haugen and Carlos Cetina", title = "Bug Localization in Model-Based Systems in the Wild", journal = j-TOSEM, volume = "31", number = "1", pages = "10:1--10:32", month = jan, year = "2022", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3472616", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Jan 7 07:51:00 MST 2022", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3472616", abstract = "The companies that have adopted the Model-Driven Engineering (MDE) paradigm have the advantage of working at a high level of abstraction. Nevertheless, they have the disadvantage of the lack of tools available to perform bug localization at the model \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "10", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Gao:2022:AAR, author = "Cuiyun Gao and Wenjie Zhou and Xin Xia and David Lo and Qi Xie and Michael R. Lyu", title = "Automating App Review Response Generation Based on Contextual Knowledge", journal = j-TOSEM, volume = "31", number = "1", pages = "11:1--11:36", month = jan, year = "2022", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3464969", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Jan 7 07:51:00 MST 2022", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3464969", abstract = "User experience of mobile apps is an essential ingredient that can influence the user base and app revenue. To ensure good user experience and assist app development, several prior studies resort to analysis of app reviews, a type of repository that \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "11", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Liu:2022:CSC, author = "Chao Liu and Xin Xia and David Lo and Zhiwe Liu and Ahmed E. Hassan and Shanping Li", title = "{CodeMatcher}: Searching Code Based on Sequential Semantics of Important Query Words", journal = j-TOSEM, volume = "31", number = "1", pages = "12:1--12:37", month = jan, year = "2022", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3465403", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Jan 7 07:51:00 MST 2022", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3465403", abstract = "To accelerate software development, developers frequently search and reuse existing code snippets from a large-scale codebase, e.g., GitHub. Over the years, researchers proposed many information retrieval (IR)-based models for code search, but they fail \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "12", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Zhou:2022:SAI, author = "Yaqin Zhou and Jing Kai Siow and Chenyu Wang and Shangqing Liu and Yang Liu", title = "{SPI}: Automated Identification of Security Patches via Commits", journal = j-TOSEM, volume = "31", number = "1", pages = "13:1--13:27", month = jan, year = "2022", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3468854", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Jan 7 07:51:00 MST 2022", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3468854", abstract = "Security patches in open source software, providing security fixes to identified vulnerabilities, are crucial in protecting against cyber attacks. Security advisories and announcements are often publicly released to inform the users about potential \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "13", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Nikanjam:2022:AFD, author = "Amin Nikanjam and Houssem {Ben Braiek} and Mohammad Mehdi Morovati and Foutse Khomh", title = "Automatic Fault Detection for Deep Learning Programs Using Graph Transformations", journal = j-TOSEM, volume = "31", number = "1", pages = "14:1--14:27", month = jan, year = "2022", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3470006", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Jan 7 07:51:00 MST 2022", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3470006", abstract = "Nowadays, we are witnessing an increasing demand in both corporates and academia for exploiting Deep Learning (DL) to solve complex real-world problems. A DL program encodes the network structure of a desirable DL model and the process by which the model \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "14", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Liu:2022:RRD, author = "Chao Liu and Cuiyun Gao and Xin Xia and David Lo and John Grundy and Xiaohu Yang", title = "On the Reproducibility and Replicability of Deep Learning in Software Engineering", journal = j-TOSEM, volume = "31", number = "1", pages = "15:1--15:46", month = jan, year = "2022", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3477535", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Jan 7 07:51:00 MST 2022", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3477535", abstract = "Context: Deep learning (DL) techniques have gained significant popularity among software engineering (SE) researchers in recent years. This is because they can often solve many SE challenges without enormous manual feature engineering effort and complex \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "15", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Lyu:2022:TCI, author = "Yingzhe Lyu and Gopi Krishnan Rajbahadur and Dayi Lin and Boyuan Chen and Zhen Ming (Jack) Jiang", title = "Towards a Consistent Interpretation of {AIOps} Models", journal = j-TOSEM, volume = "31", number = "1", pages = "16:1--16:38", month = jan, year = "2022", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3488269", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Jan 7 07:51:00 MST 2022", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3488269", abstract = "Artificial Intelligence for IT Operations (AIOps) has been adopted in organizations in various tasks, including interpreting models to identify indicators of service failures. To avoid misleading practitioners, AIOps model interpretations should be \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "16", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Parry:2022:SFT, author = "Owain Parry and Gregory M. Kapfhammer and Michael Hilton and Phil McMinn", title = "A Survey of Flaky Tests", journal = j-TOSEM, volume = "31", number = "1", pages = "17:1--17:74", month = jan, year = "2022", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3476105", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Jan 7 07:51:00 MST 2022", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3476105", abstract = "Tests that fail inconsistently, without changes to the code under test, are described as flaky. Flaky tests do not give a clear indication of the presence of software bugs and thus limit the reliability of the test suites that contain them. A recent \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "17", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Pezze:2022:ERP, author = "Mauro Pezz{\`e}", title = "Editorial: a Retrospective and Prospective Reflection", journal = j-TOSEM, volume = "31", number = "2", pages = "18e:1--18e:2", month = apr, year = "2022", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3523278", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue May 24 07:09:20 MDT 2022", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3523278", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "18e", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Lano:2022:MTD, author = "K. Lano and S. Kolahdouz-Rahimi and S. Fang", title = "Model Transformation Development Using Automated Requirements Analysis, Metamodel Matching, and Transformation by Example", journal = j-TOSEM, volume = "31", number = "2", pages = "18:1--18:71", month = apr, year = "2022", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3471907", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue May 24 07:09:20 MDT 2022", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3471907", abstract = "In this article, we address how the production of model transformations (MT) can be accelerated by automation of transformation synthesis from requirements, examples, and metamodels. We introduce a synthesis process based on metamodel matching, \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "18", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Bock:2022:MMG, author = "Thomas Bock and Angelika Schmid and Sven Apel", title = "Measuring and Modeling Group Dynamics in Open-Source Software Development: a Tensor Decomposition Approach", journal = j-TOSEM, volume = "31", number = "2", pages = "19:1--19:50", month = apr, year = "2022", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3473139", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue May 24 07:09:20 MDT 2022", bibsource = "https://www.math.utah.edu/pub/tex/bib/gnu.bib; https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3473139", abstract = "Many open-source software projects depend on a few core developers, who take over both the bulk of coordination and programming tasks. They are supported by peripheral developers, who contribute either via discussions or programming tasks, often for a \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "19", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Ebrahimi:2022:CMA, author = "Fahimeh Ebrahimi and Miroslav Tushev and Anas Mahmoud", title = "Classifying Mobile Applications Using Word Embeddings", journal = j-TOSEM, volume = "31", number = "2", pages = "20:1--20:30", month = apr, year = "2022", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3474827", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue May 24 07:09:20 MDT 2022", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3474827", abstract = "Modern application stores enable developers to classify their apps by choosing from a set of generic categories, or genres, such as health, games, and music. These categories are typically static-new categories do not necessarily emerge over time to \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "20", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Ardito:2022:FMB, author = "Luca Ardito and Andrea Bottino and Riccardo Coppola and Fabrizio Lamberti and Francesco Manigrasso and Lia Morra and Marco Torchiano", title = "Feature Matching-based Approaches to Improve the Robustness of {Android} Visual {GUI} Testing", journal = j-TOSEM, volume = "31", number = "2", pages = "21:1--21:32", month = apr, year = "2022", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3477427", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue May 24 07:09:20 MDT 2022", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3477427", abstract = "In automated Visual GUI Testing (VGT) for Android devices, the available tools often suffer from low robustness to mobile fragmentation, leading to incorrect results when running the same tests on different devices. To soften these issues, we evaluate two \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "21", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Maddila:2022:CCE, author = "Chandra Maddila and Nachiappan Nagappan and Christian Bird and Georgios Gousios and Arie van Deursen", title = "{ConE}: a Concurrent Edit Detection Tool for Large-scale Software Development", journal = j-TOSEM, volume = "31", number = "2", pages = "22:1--22:26", month = apr, year = "2022", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3478019", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue May 24 07:09:20 MDT 2022", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3478019", abstract = "Modern, complex software systems are being continuously extended and adjusted. The developers responsible for this may come from different teams or organizations, and may be distributed over the world. This may make it difficult to keep track of what \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "22", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Pantiuchina:2022:WDD, author = "Jevgenija Pantiuchina and Bin Lin and Fiorella Zampetti and Massimiliano {Di Penta} and Michele Lanza and Gabriele Bavota", title = "Why Do Developers Reject Refactorings in Open-Source Projects?", journal = j-TOSEM, volume = "31", number = "2", pages = "23:1--23:23", month = apr, year = "2022", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3487062", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue May 24 07:09:20 MDT 2022", bibsource = "https://www.math.utah.edu/pub/tex/bib/gnu.bib; https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3487062", abstract = "Refactoring operations are behavior-preserving changes aimed at improving source code quality. While refactoring is largely considered a good practice, refactoring proposals in pull requests are often rejected after the code review. Understanding the \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "23", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Oni:2022:AUR, author = "Olawole Oni and Emmanuel Letier", title = "Analyzing Uncertainty in Release Planning: a Method and Experiment for Fixed-Date Release Cycles", journal = j-TOSEM, volume = "31", number = "2", pages = "24:1--24:39", month = apr, year = "2022", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3490487", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue May 24 07:09:20 MDT 2022", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3490487", abstract = "Release planning-deciding what features to implement in upcoming releases of a software system-is a critical activity in iterative software development. Many release planning methods exist, but most ignore the inevitable uncertainty in estimating software \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "24", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Traini:2022:HSR, author = "Luca Traini and Daniele {Di Pompeo} and Michele Tucci and Bin Lin and Simone Scalabrino and Gabriele Bavota and Michele Lanza and Rocco Oliveto and Vittorio Cortellessa", title = "How Software Refactoring Impacts Execution Time", journal = j-TOSEM, volume = "31", number = "2", pages = "25:1--25:23", month = apr, year = "2022", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3485136", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue May 24 07:09:20 MDT 2022", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3485136", abstract = "Refactoring aims at improving the maintainability of source code without modifying its external behavior. Previous works proposed approaches to recommend refactoring solutions to software developers. The generation of the recommended solutions is guided \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "25", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Hough:2022:PAD, author = "Katherine Hough and Jonathan Bell", title = "A Practical Approach for Dynamic Taint Tracking with Control-flow Relationships", journal = j-TOSEM, volume = "31", number = "2", pages = "26:1--26:43", month = apr, year = "2022", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3485464", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue May 24 07:09:20 MDT 2022", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3485464", abstract = "Dynamic taint tracking, a technique that traces relationships between values as a program executes, has been used to support a variety of software engineering tasks. Some taint tracking systems only consider data flows and ignore control flows. As a \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "26", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Ford:2022:TTC, author = "Denae Ford and Margaret-Anne Storey and Thomas Zimmermann and Christian Bird and Sonia Jaffe and Chandra Maddila and Jenna L. Butler and Brian Houck and Nachiappan Nagappan", title = "A Tale of Two Cities: Software Developers Working from Home during the {COVID-19} Pandemic", journal = j-TOSEM, volume = "31", number = "2", pages = "27:1--27:37", month = apr, year = "2022", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3487567", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue May 24 07:09:20 MDT 2022", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3487567", abstract = "The COVID-19 pandemic has shaken the world to its core and has provoked an overnight exodus of developers who normally worked in an office setting to working from home. The magnitude of this shift and the factors that have accompanied this new unplanned \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "27", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Williams:2022:GFI, author = "Ryan Williams and Tongwei Ren and Lorenzo {De Carli} and Long Lu and Gillian Smith", title = "Guided Feature Identification and Removal for Resource-constrained Firmware", journal = j-TOSEM, volume = "31", number = "2", pages = "28:1--28:25", month = apr, year = "2022", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3487568", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue May 24 07:09:20 MDT 2022", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3487568", abstract = "IoT firmware oftentimes incorporates third-party components, such as network-oriented middleware and media encoders/decoders. These components consist of large and mature codebases, shipping with a variety of non-critical features. Feature bloat increases \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "28", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Xu:2022:ICG, author = "Frank F. Xu and Bogdan Vasilescu and Graham Neubig", title = "In-{IDE} Code Generation from Natural Language: Promise and Challenges", journal = j-TOSEM, volume = "31", number = "2", pages = "29:1--29:47", month = apr, year = "2022", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3487569", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue May 24 07:09:20 MDT 2022", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3487569", abstract = "A great part of software development involves conceptualizing or communicating the underlying procedures and logic that needs to be expressed in programs. One major difficulty of programming is turning concept into code, especially when dealing with the \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "29", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Chen:2022:WDS, author = "Jiachi Chen and Xin Xia and David Lo and John Grundy", title = "Why Do Smart Contracts Self-Destruct? {Investigating} the Selfdestruct Function on {Ethereum}", journal = j-TOSEM, volume = "31", number = "2", pages = "30:1--30:37", month = apr, year = "2022", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3488245", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue May 24 07:09:20 MDT 2022", bibsource = "https://www.math.utah.edu/pub/tex/bib/bitcoin.bib; https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3488245", abstract = "The \emph{selfdestruct} function is provided by Ethereum smart contracts to destroy a contract on the blockchain system. However, it is a double-edged sword for developers. On the one hand, using the \emph{selfdestruct} function enables developers to remove {\bf smart contracts (SCs)} from Ethereum and transfers Ethers when emergency situations happen, e.g., being attacked. On the other hand, this function can increase the complexity for the development and open an attack vector for attackers. To better understand the reasons why SC developers include or exclude the \emph{selfdestruct} function in their contracts, we conducted an online survey to collect feedback from them and summarize the key reasons. Their feedback shows that 66.67\% of the developers will deploy an updated contract to the Ethereum after destructing the old contract. According to this information, we propose a method to find the self-destructed contracts (also called predecessor contracts) and their updated version (successor contracts) by computing the code similarity. By analyzing the difference between the predecessor contracts and their successor contracts, we found five reasons that led to the death of the contracts; two of them (i.e., \emph{Unmatched ERC20 Token and Limits of Permission}) might affect the life span of contracts. We developed a tool named {\sc LifeScope} to detect these problems. {\sc LifeScope} reports 0 false positives or negatives in detecting \emph{Unmatched ERC20 Token}. In terms of \pkg{Limits of Permission}, {\sc LifeScope} achieves 77.89\% of $F$-measure and 0.8673 of AUC in average. According to the feedback of developers who exclude \emph{selfdestruct} functions, we propose suggestions to help developers use \emph{selfdestruct} functions in Ethereum smart contracts better.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "30", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Keller:2022:WYS, author = "Patrick Keller and Abdoul Kader Kabor{\'e} and Laura Plein and Jacques Klein and Yves {Le Traon} and Tegawend{\'e} F. Bissyand{\'e}", title = "What You See is What it Means! {Semantic} Representation Learning of Code based on Visualization and Transfer Learning", journal = j-TOSEM, volume = "31", number = "2", pages = "31:1--31:34", month = apr, year = "2022", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3485135", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue May 24 07:09:20 MDT 2022", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3485135", abstract = "Recent successes in training word embeddings for Natural Language Processing (NLP) tasks have encouraged a wave of research on representation learning for source code, which builds on similar NLP methods. The overall objective is then to produce code \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "31", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Watson:2022:SLR, author = "Cody Watson and Nathan Cooper and David Nader Palacio and Kevin Moran and Denys Poshyvanyk", title = "A Systematic Literature Review on the Use of Deep Learning in Software Engineering Research", journal = j-TOSEM, volume = "31", number = "2", pages = "32:1--32:58", month = apr, year = "2022", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3485275", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue May 24 07:09:20 MDT 2022", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3485275", abstract = "An increasingly popular set of techniques adopted by software engineering (SE) researchers to automate development tasks are those rooted in the concept of Deep Learning (DL). The popularity of such techniques largely stems from their automated feature \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "32", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Kapur:2022:OEE, author = "Ritu Kapur and Balwinder Sodhi", title = "{OSS} Effort Estimation Using Software Features Similarity and Developer Activity-Based Metrics", journal = j-TOSEM, volume = "31", number = "2", pages = "33:1--33:35", month = apr, year = "2022", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3485819", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue May 24 07:09:20 MDT 2022", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3485819", abstract = "Software development effort estimation (SDEE) generally involves leveraging the information about the effort spent in developing similar software in the past. Most organizations do not have access to sufficient and reliable forms of such data from past \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "33", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Cao:2022:SSB, author = "Jialun Cao and Meiziniu Li and Yeting Li and Ming Wen and Shing-Chi Cheung and Haiming Chen", title = "{SemMT}: a Semantic-Based Testing Approach for Machine Translation Systems", journal = j-TOSEM, volume = "31", number = "2", pages = "34e:1--34e:36", month = apr, year = "2022", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3490488", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue May 24 07:09:20 MDT 2022", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3490488", abstract = "Machine translation has wide applications in daily life. In mission-critical applications such as translating official documents, incorrect translation can have unpleasant or sometimes catastrophic consequences. This motivates recent research on the \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "34e", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Zou:2022:BSP, author = "Changwei Zou and Xudong Wang and Yaoqing Gao and Jingling Xue", title = "Buddy Stacks: Protecting Return Addresses with Efficient Thread-Local Storage and Runtime Re-Randomization", journal = j-TOSEM, volume = "31", number = "2", pages = "35e:1--35e:37", month = apr, year = "2022", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3494516", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue May 24 07:09:20 MDT 2022", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3494516", abstract = "Shadow stacks play an important role in protecting return addresses to mitigate ROP attacks. Parallel shadow stacks, which shadow the call stack of each thread at the same constant offset for all threads, are known not to support multi-threading well. On \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "35e", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Ahmadjee:2022:SBA, author = "Sabreen Ahmadjee and Carlos Mera-G{\'o}mez and Rami Bahsoon and Rick Kazman", title = "A Study on Blockchain Architecture Design Decisions and Their Security Attacks and Threats", journal = j-TOSEM, volume = "31", number = "2", pages = "36e:1--36e:45", month = apr, year = "2022", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3502740", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue May 24 07:09:20 MDT 2022", bibsource = "https://www.math.utah.edu/pub/tex/bib/bitcoin.bib; https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3502740", abstract = "Blockchain is a disruptive technology intended to implement secure decentralised distributed systems, in which transactional data can be shared, stored, and verified by participants of the system without needing a central authentication/verification authority. Blockchain-based systems have several architectural components and variants, which architects can leverage to build secure software systems. However, there is a lack of studies to assist architects in making architecture design and configuration decisions for blockchain-based systems. This knowledge gap may increase the chance of making unsuitable design decisions and producing configurations prone to potential security risks. To address this limitation, we report our comprehensive systematic literature review to derive a taxonomy of commonly used architecture design decisions in blockchain-based systems. We map each of these decisions to potential security attacks and their posed threats. MITRE's attack tactic categories and Microsoft STRIDE threat modeling are used to systematically classify threats and their associated attacks to identify potential attacks and threats in blockchain-based systems. Our mapping approach aims to guide architects to make justifiable design decisions that will result in more secure implementations.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "36e", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Martinez-Fernandez:2022:SEA, author = "Silverio Mart{\'\i}nez-Fern{\'a}ndez and Justus Bogner and Xavier Franch and Marc Oriol and Julien Siebert and Adam Trendowicz and Anna Maria Vollmer and Stefan Wagner", title = "Software Engineering for {AI}-Based Systems: a Survey", journal = j-TOSEM, volume = "31", number = "2", pages = "37e:1--37e:59", month = apr, year = "2022", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3487043", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue May 24 07:09:20 MDT 2022", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3487043", abstract = "AI-based systems are software systems with functionalities enabled by at least one AI component (e.g., for image-, speech-recognition, and autonomous driving). AI-based systems are becoming pervasive in society due to advances in AI. However, there is \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "37e", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Xiong:2022:LFS, author = "Yingfei Xiong and Bo Wang", title = "{L2S}: a Framework for Synthesizing the Most Probable Program under a Specification", journal = j-TOSEM, volume = "31", number = "3", pages = "34:1--34:45", month = jul, year = "2022", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3487570", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue May 24 07:09:22 MDT 2022", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3487570", abstract = "In many scenarios, we need to find the most likely program that meets a specification under a local context, where the local context can be an incomplete program, a partial specification, natural language description, and so on. We call such a problem \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "34", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Wang:2022:CFA, author = "Junjie Wang and Ye Yang and Song Wang and Jun Hu and Qing Wang", title = "Context- and Fairness-Aware In-Process Crowdworker Recommendation", journal = j-TOSEM, volume = "31", number = "3", pages = "35:1--35:31", month = jul, year = "2022", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3487571", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue May 24 07:09:22 MDT 2022", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3487571", abstract = "Identifying and optimizing open participation is essential to the success of open software development. Existing studies highlighted the importance of worker recommendation for crowdtesting tasks in order to improve bug detection efficiency, i.e., detect \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "35", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Zhao:2022:RAE, author = "Yu Zhao and Ting Su and Yang Liu and Wei Zheng and Xiaoxue Wu and Ramakanth Kavuluru and William G. J. Halfond and Tingting Yu", title = "{ReCDroid+}: Automated End-to-End Crash Reproduction from Bug Reports for {Android} Apps", journal = j-TOSEM, volume = "31", number = "3", pages = "36:1--36:33", month = jul, year = "2022", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3488244", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue May 24 07:09:22 MDT 2022", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3488244", abstract = "The large demand of mobile devices creates significant concerns about the quality of mobile applications (apps). Developers heavily rely on bug reports in issue tracking systems to reproduce failures (e.g., crashes). However, the process of crash \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "36", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{DiStefano:2022:VDS, author = "Luca {Di Stefano} and Rocco {De Nicola} and Omar Inverso", title = "Verification of Distributed Systems via Sequential Emulation", journal = j-TOSEM, volume = "31", number = "3", pages = "37:1--37:41", month = jul, year = "2022", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3490387", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue May 24 07:09:22 MDT 2022", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3490387", abstract = "Sequential emulation is a semantics-based technique to automatically reduce property checking of distributed systems to the analysis of sequential programs. An automated procedure takes as input a formal specification of a distributed system, a property \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "37", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Lin:2022:OMS, author = "Bin Lin and Nathan Cassee and Alexander Serebrenik and Gabriele Bavota and Nicole Novielli and Michele Lanza", title = "Opinion Mining for Software Development: a Systematic Literature Review", journal = j-TOSEM, volume = "31", number = "3", pages = "38:1--38:41", month = jul, year = "2022", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3490388", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue May 24 07:09:22 MDT 2022", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3490388", abstract = "Opinion mining, sometimes referred to as sentiment analysis, has gained increasing attention in software engineering (SE) studies. SE researchers have applied opinion mining techniques in various contexts, such as identifying developers' emotions \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "38", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Barcelona-Pons:2022:SSC, author = "Daniel Barcelona-Pons and Pierre Sutra and Marc S{\'a}nchez-Artigas and Gerard Par{\'\i}s and Pedro Garc{\'\i}a-L{\'o}pez", title = "Stateful Serverless Computing with Crucial", journal = j-TOSEM, volume = "31", number = "3", pages = "39:1--39:38", month = jul, year = "2022", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3490386", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue May 24 07:09:22 MDT 2022", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3490386", abstract = "Serverless computing greatly simplifies the use of cloud resources. In particular, Function-as-a-Service (FaaS) platforms enable programmers to develop applications as individual functions that can run and scale independently. Unfortunately, applications \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "39", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Furia:2022:ABA, author = "Carlo A. Furia and Richard Torkar and Robert Feldt", title = "Applying {Bayesian} Analysis Guidelines to Empirical Software Engineering Data: The Case of Programming Languages and Code Quality", journal = j-TOSEM, volume = "31", number = "3", pages = "40:1--40:38", month = jul, year = "2022", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3490953", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue May 24 07:09:22 MDT 2022", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3490953", abstract = "Statistical analysis is the tool of choice to turn data into information and then information into empirical knowledge. However, the process that goes from data to knowledge is long, uncertain, and riddled with pitfalls. To be valid, it should be \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "40", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Marculescu:2022:FFR, author = "Bogdan Marculescu and Man Zhang and Andrea Arcuri", title = "On the Faults Found in {REST APIs} by Automated Test Generation", journal = j-TOSEM, volume = "31", number = "3", pages = "41:1--41:43", month = jul, year = "2022", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3491038", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue May 24 07:09:22 MDT 2022", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3491038", abstract = "RESTful web services are often used for building a wide variety of enterprise applications. The diversity and increased number of applications using RESTful APIs means that increasing amounts of resources are spent developing and testing these systems. \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "41", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Calefato:2022:UPD, author = "Fabio Calefato and Filippo Lanubile", title = "Using Personality Detection Tools for Software Engineering Research: How Far Can We Go?", journal = j-TOSEM, volume = "31", number = "3", pages = "42:1--42:48", month = jul, year = "2022", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3491039", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue May 24 07:09:22 MDT 2022", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3491039", abstract = "Assessing the personality of software engineers may help to match individual traits with the characteristics of development activities such as code review and testing, as well as support managers in team composition. However, self-assessment \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "42", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Liu:2022:AOD, author = "Si Liu", title = "All in One: Design, Verification, and Implementation of {SNOW}-optimal Read Atomic Transactions", journal = j-TOSEM, volume = "31", number = "3", pages = "43:1--43:44", month = jul, year = "2022", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3494517", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue May 24 07:09:22 MDT 2022", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3494517", abstract = "Distributed read atomic transactions are important building blocks of modern cloud databases that magnificently bridge the gap between data availability and strong data consistency. The performance of their transactional reads is particularly critical to \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "43", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Yang:2022:DDR, author = "Wenhua Yang and Chong Zhang and Minxue Pan and Chang Xu and Yu Zhou and Zhiqiu Huang", title = "Do Developers Really Know How to Use {Git} Commands? {A} Large-scale Study Using {Stack Overflow}", journal = j-TOSEM, volume = "31", number = "3", pages = "44:1--44:29", month = jul, year = "2022", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3494518", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue May 24 07:09:22 MDT 2022", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3494518", abstract = "Git, a cross-platform and open source distributed version control tool, provides strong support for non-linear development and is capable of handling everything from small to large projects with speed and efficiency. It has become an indispensable tool \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "44", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Marijan:2022:IAR, author = "Dusica Marijan and Sagar Sen", title = "Industry-Academia Research Collaboration and Knowledge Co-creation: Patterns and Anti-patterns", journal = j-TOSEM, volume = "31", number = "3", pages = "45:1--45:52", month = jul, year = "2022", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3494519", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue May 24 07:09:22 MDT 2022", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3494519", abstract = "Increasing the impact of software engineering research in the software industry and the society at large has long been a concern of high priority for the software engineering community. The problem of two cultures, research conducted in a vacuum \ldots{}.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "45", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Sobhy:2022:CPS, author = "Dalia Sobhy and Leandro Minku and Rami Bahsoon and Rick Kazman", title = "Continuous and Proactive Software Architecture Evaluation: an {IoT} Case", journal = j-TOSEM, volume = "31", number = "3", pages = "46:1--46:54", month = jul, year = "2022", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3492762", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue May 24 07:09:22 MDT 2022", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3492762", abstract = "Design-time evaluation is essential to build the initial software architecture to be deployed. However, experts' assumptions made at design-time are unlikely to remain true indefinitely in systems that are characterized by scale, hyperconnectivity, \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "46", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Xie:2022:NNP, author = "Xiaofei Xie and Tianlin Li and Jian Wang and Lei Ma and Qing Guo and Felix Juefei-Xu and Yang Liu", title = "{NPC}: Neuron Path Coverage via Characterizing Decision Logic of Deep Neural Networks", journal = j-TOSEM, volume = "31", number = "3", pages = "47:1--47:27", month = jul, year = "2022", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3490489", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue May 24 07:09:22 MDT 2022", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3490489", abstract = "Deep learning has recently been widely applied to many applications across different domains, e.g., image classification and audio recognition. However, the quality of Deep Neural Networks (DNNs) still raises concerns in the practical operational \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "47", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Uddin:2022:ESE, author = "Gias Uddin and Yann-Ga{\"e}l Gu{\'e}h{\'e}nuc and Foutse Khomh and Chanchal K. Roy", title = "An Empirical Study of the Effectiveness of an Ensemble of Stand-alone Sentiment Detection Tools for Software Engineering Datasets", journal = j-TOSEM, volume = "31", number = "3", pages = "48:1--48:38", month = jul, year = "2022", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3491211", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue May 24 07:09:22 MDT 2022", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3491211", abstract = "Sentiment analysis in software engineering (SE) has shown promise to analyze and support diverse development activities. Recently, several tools are proposed to detect sentiments in software artifacts. While the tools improve accuracy over off-the-shelf \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "48", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Guo:2022:DAM, author = "Hao Guo and Sen Chen and Zhenchang Xing and Xiaohong Li and Yude Bai and Jiamou Sun", title = "Detecting and Augmenting Missing Key Aspects in Vulnerability Descriptions", journal = j-TOSEM, volume = "31", number = "3", pages = "49:1--49:27", month = jul, year = "2022", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3498537", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue May 24 07:09:22 MDT 2022", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3498537", abstract = "Security vulnerabilities have been continually disclosed and documented. For the effective understanding, management, and mitigation of the fast-growing number of vulnerabilities, an important practice in documenting vulnerabilities is to describe the key \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "49", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Zhang:2022:TRD, author = "Huangzhao Zhang and Zhiyi Fu and Ge Li and Lei Ma and Zhehao Zhao and Hua'an Yang and Yizhe Sun and Yang Liu and Zhi Jin", title = "Towards Robustness of Deep Program Processing Models-Detection, Estimation, and Enhancement", journal = j-TOSEM, volume = "31", number = "3", pages = "50:1--50:40", month = jul, year = "2022", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3511887", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue May 24 07:09:22 MDT 2022", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3511887", abstract = "Deep learning (DL) has recently been widely applied to diverse source code processing tasks in the software engineering (SE) community, which achieves competitive performance (e.g., accuracy). However, the robustness, which requires the model to produce \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "50", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Lin:2022:CAC, author = "Bo Lin and Shangwen Wang and Ming Wen and Xiaoguang Mao", title = "Context-Aware Code Change Embedding for Better Patch Correctness Assessment", journal = j-TOSEM, volume = "31", number = "3", pages = "51:1--51:29", month = jul, year = "2022", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3505247", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue May 24 07:09:22 MDT 2022", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3505247", abstract = "Despite the capability in successfully fixing more and more real-world bugs, existing Automated Program Repair (APR) techniques are still challenged by the long-standing overfitting problem (i.e., a generated patch that passes all tests is actually \ldots{}).", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "51", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Lin:2022:XTC, author = "Zehao Lin and Guodun Li and Jingfeng Zhang and Yue Deng and Xiangji Zeng and Yin Zhang and Yao Wan", title = "{XCode}: Towards Cross-Language Code Representation with Large-Scale Pre-Training", journal = j-TOSEM, volume = "31", number = "3", pages = "52:1--52:44", month = jul, year = "2022", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3506696", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue May 24 07:09:22 MDT 2022", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3506696", abstract = "Source code representation learning is the basis of applying artificial intelligence to many software engineering tasks such as code clone detection, algorithm classification, and code summarization. Recently, many works have tried to improve the \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "52", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Liao:2022:ESI, author = "Lizhi Liao and Heng Li and Weiyi Shang and Lei Ma", title = "An Empirical Study of the Impact of Hyperparameter Tuning and Model Optimization on the Performance Properties of Deep Neural Networks", journal = j-TOSEM, volume = "31", number = "3", pages = "53:1--53:40", month = jul, year = "2022", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3506695", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue May 24 07:09:22 MDT 2022", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3506695", abstract = "Deep neural network (DNN) models typically have many hyperparameters that can be configured to achieve optimal performance on a particular dataset. Practitioners usually tune the hyperparameters of their DNN models by training a number of trial models \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "53", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Wu:2022:TTI, author = "Siwei Wu and Lei Wu and Yajin Zhou and Runhuai Li and Zhi Wang and Xiapu Luo and Cong Wang and Kui Ren", title = "Time-travel Investigation: Toward Building a Scalable Attack Detection Framework on {Ethereum}", journal = j-TOSEM, volume = "31", number = "3", pages = "54:1--54:33", month = jul, year = "2022", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3505263", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue May 24 07:09:22 MDT 2022", bibsource = "https://www.math.utah.edu/pub/tex/bib/bitcoin.bib; https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3505263", abstract = "Ethereum has been attracting lots of attacks, hence there is a pressing need to perform timely investigation and detect more attack instances. However, existing systems suffer from the scalability issue due to the following reasons. First, the tight \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "54", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Meyers:2022:EPT, author = "Benjamin S. Meyers and Sultan Fahad Almassari and Brandon N. Keller and Andrew Meneely", title = "Examining Penetration Tester Behavior in the Collegiate Penetration Testing Competition", journal = j-TOSEM, volume = "31", number = "3", pages = "55:1--55:25", month = jul, year = "2022", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3514040", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue May 24 07:09:22 MDT 2022", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3514040", abstract = "Penetration testing is a key practice toward engineering secure software. Malicious actors have many tactics at their disposal, and software engineers need to know what tactics attackers will prioritize in the first few hours of an attack. Projects like \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "55", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Yang:2022:PMS, author = "Yanming Yang and Xin Xia and David Lo and Tingting Bi and John Grundy and Xiaohu Yang", title = "Predictive Models in Software Engineering: Challenges and Opportunities", journal = j-TOSEM, volume = "31", number = "3", pages = "56:1--56:72", month = jul, year = "2022", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3503509", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue May 24 07:09:22 MDT 2022", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3503509", abstract = "Predictive models are one of the most important techniques that are widely applied in many areas of software engineering. There have been a large number of primary studies that apply predictive models and that present well-performed studies in various \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "56", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Beyer:2022:VW, author = "Dirk Beyer and Matthias Dangl and Daniel Dietsch and Matthias Heizmann and Thomas Lemberger and Michael Tautschnig", title = "Verification Witnesses", journal = j-TOSEM, volume = "31", number = "4", pages = "57:1--57:??", month = oct, year = "2022", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3477579", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Nov 16 08:26:42 MST 2022", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3477579", abstract = "Over the last years, witness-based validation of verification results has become an established practice in software verification: An independent validator re-establishes verification results of a software verifier using verification witnesses, which are \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "57", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Jain:2022:BRD, author = "Ridhi Jain and Rahul Purandare and Subodh Sharma", title = "{BiRD}: Race Detection in Software Binaries under Relaxed Memory Models", journal = j-TOSEM, volume = "31", number = "4", pages = "58:1--58:??", month = oct, year = "2022", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3498538", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Nov 16 08:26:42 MST 2022", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3498538", abstract = "Instruction reordering and interleavings in program execution under relaxed memory semantics result in non-intuitive behaviors, making it difficult to provide assurances about program correctness. Studies have shown that up to 90\% of the concurrency bugs \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "58", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Masso:2022:CTS, author = "Jhon Masso and F{\'e}lix Garc{\'\i}a and C{\'e}sar Pardo and Francisco J. Pino and Mario Piattini", title = "A Common Terminology for Software Risk Management", journal = j-TOSEM, volume = "31", number = "4", pages = "59:1--59:??", month = oct, year = "2022", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3498539", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Nov 16 08:26:42 MST 2022", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3498539", abstract = "In order to improve and sustain their competitiveness over time, organisations nowadays need to undertake different initiatives to adopt frameworks, models and standards that will allow them to align and improve their business processes. In spite of these \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "59", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Zhou:2022:ARD, author = "Yu Zhou and Xiaoqing Zhang and Juanjuan Shen and Tingting Han and Taolue Chen and Harald Gall", title = "Adversarial Robustness of Deep Code Comment Generation", journal = j-TOSEM, volume = "31", number = "4", pages = "60:1--60:??", month = oct, year = "2022", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3501256", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Nov 16 08:26:42 MST 2022", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3501256", abstract = "Deep neural networks (DNNs) have shown remarkable performance in a variety of domains such as computer vision, speech recognition, and natural language processing. Recently they also have been applied to various software engineering tasks, typically \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "60", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Ngo:2022:ACE, author = "Chanh Duc Ngo and Fabrizio Pastore and Lionel Briand", title = "Automated, Cost-effective, and Update-driven App Testing", journal = j-TOSEM, volume = "31", number = "4", pages = "61:1--61:??", month = oct, year = "2022", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3502297", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Nov 16 08:26:42 MST 2022", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3502297", abstract = "Apps' pervasive role in our society led to the definition of test automation approaches to ensure their dependability. However, state-of-the-art approaches tend to generate large numbers of test inputs and are unlikely to achieve more than 50\% method \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "61", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Yu:2022:AIE, author = "Hao Yu and Xing Hu and Ge Li and Ying Li and Qianxiang Wang and Tao Xie", title = "Assessing and Improving an Evaluation Dataset for Detecting Semantic Code Clones via Deep Learning", journal = j-TOSEM, volume = "31", number = "4", pages = "62:1--62:??", month = oct, year = "2022", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3502852", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Nov 16 08:26:42 MST 2022", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3502852", abstract = "In recent years, applying deep learning to detect semantic code clones has received substantial attention from the research community. Accordingly, various evaluation benchmark datasets, with the most popular one as BigCloneBench, are constructed and \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "62", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Hu:2022:CAH, author = "Xing Hu and Qiuyuan Chen and Haoye Wang and Xin Xia and David Lo and Thomas Zimmermann", title = "Correlating Automated and Human Evaluation of Code Documentation Generation Quality", journal = j-TOSEM, volume = "31", number = "4", pages = "63:1--63:??", month = oct, year = "2022", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3502853", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Nov 16 08:26:42 MST 2022", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3502853", abstract = "Automatic code documentation generation has been a crucial task in the field of software engineering. It not only relieves developers from writing code documentation but also helps them to understand programs better. Specifically, deep-learning-based \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "63", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Andre:2022:GTO, author = "{\'E}tienne Andr{\'e} and Didier Lime and Dylan Marinho and Jun Sun", title = "Guaranteeing Timed Opacity using Parametric Timed Model Checking", journal = j-TOSEM, volume = "31", number = "4", pages = "64:1--64:??", month = oct, year = "2022", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3502851", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Nov 16 08:26:42 MST 2022", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3502851", abstract = "Information leakage can have dramatic consequences on systems security. Among harmful information leaks, the timing information leakage occurs whenever an attacker successfully deduces confidential internal information. In this work, we consider that the \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "64", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Romdhana:2022:DRL, author = "Andrea Romdhana and Alessio Merlo and Mariano Ceccato and Paolo Tonella", title = "Deep Reinforcement Learning for Black-box Testing of {Android} Apps", journal = j-TOSEM, volume = "31", number = "4", pages = "65:1--65:??", month = oct, year = "2022", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3502868", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Nov 16 08:26:42 MST 2022", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3502868", abstract = "The state space of Android apps is huge, and its thorough exploration during testing remains a significant challenge. The best exploration strategy is highly dependent on the features of the app under test. Reinforcement Learning (RL) is a machine \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "65", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Bi:2022:ASP, author = "Tingting Bi and Xin Xia and David Lo and John Grundy and Thomas Zimmermann and Denae Ford", title = "Accessibility in Software Practice: a Practitioner's Perspective", journal = j-TOSEM, volume = "31", number = "4", pages = "66:1--66:??", month = oct, year = "2022", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3503508", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Nov 16 08:26:42 MST 2022", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3503508", abstract = "Being able to access software in daily life is vital for everyone, and thus accessibility is a fundamental challenge for software development. However, given the number of accessibility issues reported by many users, e.g., in app reviews, it is not clear \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "66", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Joblin:2022:HDS, author = "Mitchell Joblin and Sven Apel", title = "How Do Successful and Failed Projects Differ? {A} Socio-Technical Analysis", journal = j-TOSEM, volume = "31", number = "4", pages = "67:1--67:??", month = oct, year = "2022", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3504003", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Nov 16 08:26:42 MST 2022", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3504003", abstract = "Software development is at the intersection of the social realm, involving people who develop the software, and the technical realm, involving artifacts (code, docs, etc.) that are being produced. It has been shown that a socio-technical perspective. \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "67", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{DeGiacomo:2022:MCM, author = "Giuseppe {De Giacomo} and Riccardo {De Masellis} and Fabrizio Maria Maggi and Marco Montali", title = "Monitoring Constraints and Metaconstraints with Temporal Logics on Finite Traces", journal = j-TOSEM, volume = "31", number = "4", pages = "68:1--68:??", month = oct, year = "2022", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3506799", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Nov 16 08:26:42 MST 2022", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3506799", abstract = "Runtime monitoring is a central operational decision support task in business process management. It helps process executors to check on-the-fly whether a running process instance satisfies business constraints of interest, providing an immediate feedback \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "68", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Zhang:2022:MRE, author = "Peng Zhang and Yang Wang and Xutong Liu and Yanhui Li and Yibiao Yang and Ziyuan Wang and Xiaoyu Zhou and Lin Chen and Yuming Zhou", title = "Mutant Reduction Evaluation: What is There and What is Missing?", journal = j-TOSEM, volume = "31", number = "4", pages = "69:1--69:??", month = oct, year = "2022", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3522578", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Nov 16 08:26:42 MST 2022", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3522578", abstract = "Background. Mutation testing is a commonly used defect injection technique for evaluating the effectiveness of a test suite. However, it is usually computationally expensive. Therefore, many mutation reduction strategies, which aim to reduce the number of \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "69", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Albert:2022:SOS, author = "Elvira Albert and Pablo Gordillo and Alejandro Hern{\'a}ndez-Cerezo and Albert Rubio and Maria A. Schett", title = "Super-optimization of Smart Contracts", journal = j-TOSEM, volume = "31", number = "4", pages = "70:1--70:??", month = oct, year = "2022", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3506800", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Nov 16 08:26:42 MST 2022", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3506800", abstract = "Smart contracts are programs deployed on a blockchain. They are executed for a monetary fee paid in gas -a clear optimization target for smart contract compilers. Because smart contracts are a young, fast-moving field without (manually) fine-tuned \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "70", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Lauko:2022:VPS, author = "Henrich Lauko and Luk{\'a}s Korencik and Petr Rockai", title = "Verification of Programs Sensitive to Heap Layout", journal = j-TOSEM, volume = "31", number = "4", pages = "71:1--71:??", month = oct, year = "2022", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3508363", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Nov 16 08:26:42 MST 2022", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3508363", abstract = "Most C and C++ programs use dynamically allocated memory (often known as a heap) to store and organize their data. In practice, it can be useful to compare addresses of different heap objects, for instance, to store them in a binary search tree or a \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "71", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Chen:2022:BCT, author = "Junjie Chen and Chenyao Suo", title = "Boosting Compiler Testing via Compiler Optimization Exploration", journal = j-TOSEM, volume = "31", number = "4", pages = "72:1--72:??", month = oct, year = "2022", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3508362", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Nov 16 08:26:42 MST 2022", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3508362", abstract = "Compilers are a kind of important software, and similar to the quality assurance of other software, compiler testing is one of the most widely-used ways of guaranteeing their quality. Compiler bugs tend to occur in compiler optimizations. Detecting \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "72", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Kim:2022:PMA, author = "Jinhan Kim and Juyoung Jeon and Shin Hong and Shin Yoo", title = "Predictive Mutation Analysis via the Natural Language Channel in Source Code", journal = j-TOSEM, volume = "31", number = "4", pages = "73:1--73:??", month = oct, year = "2022", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3510417", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Nov 16 08:26:42 MST 2022", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3510417", abstract = "Mutation analysis can provide valuable insights into both the system under test and its test suite. However, it is not scalable due to the cost of building and testing a large number of mutants. Predictive Mutation Testing (PMT) has been proposed to \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "73", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Ahmed:2022:VVR, author = "Umair Z. Ahmed and Zhiyu Fan and Jooyong Yi and Omar I. Al-Bataineh and Abhik Roychoudhury", title = "{Verifix}: Verified Repair of Programming Assignments", journal = j-TOSEM, volume = "31", number = "4", pages = "74:1--74:??", month = oct, year = "2022", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3510418", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Nov 16 08:26:42 MST 2022", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3510418", abstract = "Automated feedback generation for introductory programming assignments is useful for programming education. Most works try to generate feedback to correct a student program by comparing its behavior with an instructor's reference program on selected \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "74", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Zhang:2022:TCO, author = "Yuxia Zhang and Hui Liu and Xin Tan and Minghui Zhou and Zhi Jin and Jiaxin Zhu", title = "Turnover of Companies in {OpenStack}: Prevalence and Rationale", journal = j-TOSEM, volume = "31", number = "4", pages = "75:1--75:??", month = oct, year = "2022", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3510849", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Nov 16 08:26:42 MST 2022", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3510849", abstract = "To achieve commercial goals, companies have made substantial contributions to large open-source software (OSS) ecosystems such as OpenStack and have become the main contributors. However, they often withdraw their employees for a variety of reasons, which \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "75", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Ni:2022:JTD, author = "Chao Ni and Xin Xia and David Lo and Xiaohu Yang and Ahmed E. Hassan", title = "Just-In-Time Defect Prediction on {JavaScript} Projects: a Replication Study", journal = j-TOSEM, volume = "31", number = "4", pages = "76:1--76:??", month = oct, year = "2022", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3508479", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Nov 16 08:26:42 MST 2022", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2020.bib; https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3508479", abstract = "Change-level defect prediction is widely referred to as just-in-time (JIT) defect prediction since it identifies a defect-inducing change at the check-in time, and researchers have proposed many approaches based on the language-independent change-level \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "76", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Tian:2022:PPC, author = "Haoye Tian and Yinghua Li and Weiguo Pian and Abdoul Kader Kabor{\'e} and Kui Liu and Andrew Habib and Jacques Klein and Tegawend{\'e} F. Bissyand{\'e}", title = "Predicting Patch Correctness Based on the Similarity of Failing Test Cases", journal = j-TOSEM, volume = "31", number = "4", pages = "77:1--77:??", month = oct, year = "2022", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3511096", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Nov 16 08:26:42 MST 2022", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3511096", abstract = "How do we know a generated patch is correct? This is a key challenging question that automated program repair (APR) systems struggle to address given the incompleteness of available test suites. Our intuition is that we can triage correct patches by \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "77", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Hu:2022:ESD, author = "Qiang Hu and Yuejun Guo and Maxime Cordy and Xiaofei Xie and Lei Ma and Mike Papadakis and Yves {Le Traon}", title = "An Empirical Study on Data Distribution-Aware Test Selection for Deep Learning Enhancement", journal = j-TOSEM, volume = "31", number = "4", pages = "78:1--78:??", month = oct, year = "2022", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3511598", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Nov 16 08:26:42 MST 2022", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3511598", abstract = "Similar to traditional software that is constantly under evolution, deep neural networks need to evolve upon the rapid growth of test data for continuous enhancement (e.g., adapting to distribution shift in a new environment for deployment). However, it \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "78", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Catak:2022:UAP, author = "Ferhat Ozgur Catak and Tao Yue and Shaukat Ali", title = "Uncertainty-aware Prediction Validator in Deep Learning Models for Cyber-physical System Data", journal = j-TOSEM, volume = "31", number = "4", pages = "79:1--79:??", month = oct, year = "2022", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3527451", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Nov 16 08:26:42 MST 2022", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3527451", abstract = "The use of Deep learning in Cyber-Physical Systems (CPSs) is gaining popularity due to its ability to bring intelligence to CPS behaviors. However, both CPSs and deep learning have inherent uncertainty. Such uncertainty, if not handled adequately, can \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "79", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Biagiola:2022:TPR, author = "Matteo Biagiola and Paolo Tonella", title = "Testing the Plasticity of Reinforcement Learning-based Systems", journal = j-TOSEM, volume = "31", number = "4", pages = "80:1--80:??", month = oct, year = "2022", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3511701", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Nov 16 08:26:42 MST 2022", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3511701", abstract = "The dataset available for pre-release training of a machine-learning based system is often not representative of all possible execution contexts that the system will encounter in the field. Reinforcement Learning (RL) is a prominent approach among those \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "80", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Trinkenreich:2022:WPO, author = "Bianca Trinkenreich and Igor Wiese and Anita Sarma and Marco Gerosa and Igor Steinmacher", title = "Women's Participation in Open Source Software: a Survey of the Literature", journal = j-TOSEM, volume = "31", number = "4", pages = "81:1--81:??", month = oct, year = "2022", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3510460", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Nov 16 08:26:42 MST 2022", bibsource = "https://www.math.utah.edu/pub/tex/bib/gnu.bib; https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3510460", abstract = "Women are underrepresented in Open Source Software (OSS) projects, as a result of which, not only do women lose career and skill development opportunities, but the projects themselves suffer from a lack of diversity of perspectives. Practitioners and \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "81", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Pezze:2023:EAS, author = "Mauro Pezz{\`e}", title = "{Editorial}: Announcing Six {TOSEM} Issues Per Year", journal = j-TOSEM, volume = "32", number = "1", pages = "1:1--1:??", month = jan, year = "2023", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3583569", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Apr 5 10:29:39 MDT 2023", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3583569", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "1", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Robol:2023:CVM, author = "Marco Robol and Travis D. Breaux and Elda Paja and Paolo Giorgini", title = "Consent Verification Monitoring", journal = j-TOSEM, volume = "32", number = "1", pages = "2:1--2:??", month = jan, year = "2023", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3490754", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Apr 5 10:29:39 MDT 2023", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3490754", abstract = "Advances in personalization of digital services are driven by low-cost data collection and processing, in addition to the wide variety of third-party frameworks for authentication, storage, and marketing. New privacy regulations, such as the General Data \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "2", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Nie:2023:CDD, author = "Pengbo Nie and Chengcheng Wan and Jiayu Zhu and Ziyi Lin and Yuting Chen and Zhendong Su", title = "Coverage-directed Differential Testing of {X.509} Certificate Validation in {SSL\slash TLS} Implementations", journal = j-TOSEM, volume = "32", number = "1", pages = "3:1--3:??", month = jan, year = "2023", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3510416", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Apr 5 10:29:39 MDT 2023", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3510416", abstract = "Secure Sockets Layer (SSL) and Transport Security (TLS) are two secure protocols for creating secure connections over the Internet. X.509 certificate validation is important for security and needs to be performed before an SSL/TLS connection is \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "3", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Pan:2023:PWT, author = "Minxue Pan and Yifei Lu and Yu Pei and Tian Zhang and Xuandong Li", title = "Preference-wise Testing of {Android} Apps via Test Amplification", journal = j-TOSEM, volume = "32", number = "1", pages = "4:1--4:??", month = jan, year = "2023", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3511804", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Apr 5 10:29:39 MDT 2023", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3511804", abstract = "Preferences, the setting options provided by Android, are an essential part of Android apps. Preferences allow users to change app features and behaviors dynamically, and therefore their impacts need to be considered when testing the apps. Unfortunately, \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "4", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Chen:2023:WCH, author = "Tao Chen and Miqing Li", title = "The Weights Can Be Harmful: {Pareto} Search versus Weighted Search in Multi-objective Search-based Software Engineering", journal = j-TOSEM, volume = "32", number = "1", pages = "5:1--5:??", month = jan, year = "2023", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3514233", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Apr 5 10:29:39 MDT 2023", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3514233", abstract = "In presence of multiple objectives to be optimized in Search-Based Software Engineering (SBSE), Pareto search has been commonly adopted. It searches for a good approximation of the problem's Pareto-optimal solutions, from which the stakeholders choose the \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "5", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Bertolotti:2023:FTS, author = "Francesco Bertolotti and Walter Cazzola", title = "{Fold2Vec}: Towards a Statement-Based Representation of Code for Code Comprehension", journal = j-TOSEM, volume = "32", number = "1", pages = "6:1--6:??", month = jan, year = "2023", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3514232", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Apr 5 10:29:39 MDT 2023", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3514232", abstract = "We introduce a novel approach to source code representation to be used in combination with neural networks. Such a representation is designed to permit the production of a continuous vector for each code statement. In particular, we present how the \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "6", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Yin:2023:SEV, author = "Zijing Yin and Yiwen Xu and Fuchen Ma and Haohao Gao and Lei Qiao and Yu Jiang", title = "{Scanner++}: Enhanced Vulnerability Detection of {Web} Applications with Attack Intent Synchronization", journal = j-TOSEM, volume = "32", number = "1", pages = "7:1--7:??", month = jan, year = "2023", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3517036", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Apr 5 10:29:39 MDT 2023", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3517036", abstract = "Scanners are commonly applied for detecting vulnerabilities in web applications. Various scanners with different strategies are widely in use, but their performance is challenged by the increasing diversity of target applications that have more complex \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "7", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Dong:2023:BWL, author = "Yiwen Dong and Zheyang Li and Yongqiang Tian and Chengnian Sun and Michael W. Godfrey and Meiyappan Nagappan", title = "{Bash} in the Wild: Language Usage, Code Smells, and Bugs", journal = j-TOSEM, volume = "32", number = "1", pages = "8:1--8:22", month = jan, year = "2023", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3517193", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Apr 5 10:29:39 MDT 2023", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3517193", abstract = "The Bourne-again shell (Bash) is a prevalent scripting language for orchestrating shell commands and managing resources in Unix-like environments. It is one of the mainstream shell dialects that is available on most GNU Linux systems. However, the unique syntax and semantics of Bash could easily lead to unintended behaviors if carelessly used. Prior studies primarily focused on improving the reliability of Bash scripts or facilitating writing Bash scripts; there is yet no empirical study on the characteristics of Bash programs written in reality, e.g., frequently used language features, common code smells, and bugs.\par In this article, we perform a large-scale empirical study of Bash usage, based on analyses over one million open source Bash scripts found in Github repositories. We identify and discuss which features and utilities of Bash are most often used. Using static analysis, we find that Bash scripts are often error-prone, and the error-proneness has a moderately positive correlation with the size of the scripts. We also find that the most common problem areas concern quoting, resource management, command options, permissions, and error handling. We envision that these findings can be beneficial for learning Bash and future research that aims to improve shell and command-line productivity and reliability.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "8", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Xu:2023:SFC, author = "Xiong Xu and Jean-Pierre Talpin and Shuling Wang and Bohua Zhan and Naijun Zhan", title = "Semantics Foundation for Cyber-physical Systems Using Higher-order {UTP}", journal = j-TOSEM, volume = "32", number = "1", pages = "9:1--9:??", month = jan, year = "2023", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3517192", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Apr 5 10:29:39 MDT 2023", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3517192", abstract = "Model-based design has become the predominant approach to the design of hybrid and cyber-physical systems (CPSs). It advocates the use of mathematically founded models to capture heterogeneous digital and analog behaviours from domain-specific formalisms, \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "9", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Waga:2023:PTP, author = "Masaki Waga and {\'E}tienne Andr{\'e} and Ichiro Hasuo", title = "Parametric Timed Pattern Matching", journal = j-TOSEM, volume = "32", number = "1", pages = "10:1--10:??", month = jan, year = "2023", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3517194", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Apr 5 10:29:39 MDT 2023", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3517194", abstract = "Given a log and a specification, timed pattern matching aims at exhibiting for which start and end dates a specification holds on that log. For example, ``a given action is always followed by another action before a given deadline''. This problem has strong \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "10", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Rombaut:2023:TNS, author = "Benjamin Rombaut and Filipe R. Cogo and Bram Adams and Ahmed E. Hassan", title = "There's no Such Thing as a Free Lunch: Lessons Learned from Exploring the Overhead Introduced by the Greenkeeper Dependency Bot in {Npm}", journal = j-TOSEM, volume = "32", number = "1", pages = "11:1--11:??", month = jan, year = "2023", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3522587", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Apr 5 10:29:39 MDT 2023", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3522587", abstract = "Dependency management bots are increasingly being used to support the software development process, for example, to automatically update a dependency when a new version is available. Yet, human intervention is often required to either accept or reject any \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "11", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Weyns:2023:AFF, author = "Danny Weyns and Usman M. Iftikhar", title = "{ActivFORMS}: a Formally Founded Model-based Approach to Engineer Self-adaptive Systems", journal = j-TOSEM, volume = "32", number = "1", pages = "12:1--12:??", month = jan, year = "2023", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3522585", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Apr 5 10:29:39 MDT 2023", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3522585", abstract = "Self-adaptation equips a computing system with a feedback loop that enables it to deal with change caused by uncertainties during operation, such as changing availability of resources and fluctuating workloads. To ensure that the system complies with the \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "12", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Li:2023:CEI, author = "Xueliang Li and Junyang Chen and Yepang Liu and Kaishun Wu and John P. Gallagher", title = "Combatting Energy Issues for Mobile Applications", journal = j-TOSEM, volume = "32", number = "1", pages = "13:1--13:??", month = jan, year = "2023", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3527851", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Apr 5 10:29:39 MDT 2023", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3527851", abstract = "Energy efficiency is an important criterion to judge the quality of mobile apps, but one third of our arbitrarily sampled apps suffer from energy issues that can quickly drain battery power. To understand these issues, we conduct an empirical study on 36 \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "13", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Ojdanic:2023:MTE, author = "Milos Ojdanic and Ezekiel Soremekun and Renzo Degiovanni and Mike Papadakis and Yves {Le Traon}", title = "Mutation Testing in Evolving Systems: Studying the Relevance of Mutants to Code Evolution", journal = j-TOSEM, volume = "32", number = "1", pages = "14:1--14:??", month = jan, year = "2023", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3530786", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Apr 5 10:29:39 MDT 2023", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3530786", abstract = "Context: When software evolves, opportunities for introducing faults appear. Therefore, it is important to test the evolved program behaviors during each evolution cycle. However, while software evolves, its complexity is also evolving, introducing \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "14", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Khatoonabadi:2023:WCU, author = "Sayedhassan Khatoonabadi and Diego Elias Costa and Rabe Abdalkareem and Emad Shihab", title = "On Wasted Contributions: Understanding the Dynamics of Contributor-Abandoned Pull Requests --- a Mixed-Methods Study of 10 Large Open-Source Projects", journal = j-TOSEM, volume = "32", number = "1", pages = "15:1--15:??", month = jan, year = "2023", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3530785", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Apr 5 10:29:39 MDT 2023", bibsource = "https://www.math.utah.edu/pub/tex/bib/gnu.bib; https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3530785", abstract = "Pull-based development has enabled numerous volunteers to contribute to open-source projects with fewer barriers. Nevertheless, a considerable amount of pull requests (PRs) with valid contributions are abandoned by their contributors, wasting the effort \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "15", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Zdun:2023:MSM, author = "Uwe Zdun and Pierre-Jean Queval and Georg Simhandl and Riccardo Scandariato and Somik Chakravarty and Marjan Jelic and Aleksandar Jovanovic", title = "Microservice Security Metrics for Secure Communication, Identity Management, and Observability", journal = j-TOSEM, volume = "32", number = "1", pages = "16:1--16:??", month = jan, year = "2023", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3532183", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Apr 5 10:29:39 MDT 2023", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3532183", abstract = "Microservice architectures are increasingly being used to develop application systems. Despite many guidelines and best practices being published, architecting microservice systems for security is challenging. Reasons are the size and complexity of \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "16", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Arrieta:2023:SSS, author = "Aitor Arrieta and Pablo Valle and Joseba A. Agirre and Goiuria Sagardui", title = "Some Seeds Are Strong: Seeding Strategies for Search-based Test Case Selection", journal = j-TOSEM, volume = "32", number = "1", pages = "17:1--17:??", month = jan, year = "2023", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3532182", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Apr 5 10:29:39 MDT 2023", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3532182", abstract = "The time it takes software systems to be tested is usually long. Search-based test selection has been a widely investigated technique to optimize the testing process. In this article, we propose a set of seeding strategies for the test case selection \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "17", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Wu:2023:AIU, author = "Jianwei Wu and James Clause", title = "Automated Identification of Uniqueness in {JUnit} Tests", journal = j-TOSEM, volume = "32", number = "1", pages = "18:1--18:??", month = jan, year = "2023", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3533313", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Apr 5 10:29:39 MDT 2023", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3533313", abstract = "In the context of testing, descriptive test names are desirable because they document the purpose of tests and facilitate comprehension tasks during maintenance. Unfortunately, prior work has shown that tests often do not have descriptive names. To \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "18", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Lin:2023:CEW, author = "Jiahuei Lin and Mohammed Sayagh and Ahmed E. Hassan", title = "The Co-evolution of the {WordPress} Platform and Its Plugins", journal = j-TOSEM, volume = "32", number = "1", pages = "19:1--19:??", month = jan, year = "2023", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3533700", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Apr 5 10:29:39 MDT 2023", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3533700", abstract = "One can extend the features of a software system by installing a set of additional components called plugins. WordPress, as a typical example of such plugin-based software ecosystems, is used by millions of websites and has a large number (i.e., 54,777) \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "19", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Sun:2023:FDM, author = "Chang-Ai Sun and Hepeng Dai and Huai Liu and Tsong Yueh Chen", title = "Feedback-Directed Metamorphic Testing", journal = j-TOSEM, volume = "32", number = "1", pages = "20:1--20:??", month = jan, year = "2023", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3533314", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Apr 5 10:29:39 MDT 2023", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3533314", abstract = "Over the past decade, metamorphic testing has gained rapidly increasing attention from both academia and industry, particularly thanks to its high efficacy on revealing real-life software faults in a wide variety of application domains. On the basis of a \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "20", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Ramirez:2023:TIA, author = "Aurora Ram{\'\i}rez and Robert Feldt and Jos{\'e} Ra{\'u}l Romero", title = "A Taxonomy of Information Attributes for Test Case Prioritisation: Applicability, Machine Learning", journal = j-TOSEM, volume = "32", number = "1", pages = "21:1--21:??", month = jan, year = "2023", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3511805", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Apr 5 10:29:39 MDT 2023", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3511805", abstract = "Most software companies have extensive test suites and re-run parts of them continuously to ensure that recent changes have no adverse effects. Since test suites are costly to execute, industry needs methods for test case prioritisation (TCP). Recently, \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "21", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Xu:2023:LLI, author = "Sihan Xu and Ya Gao and Lingling Fan and Zheli Liu and Yang Liu and Hua Ji", title = "{LiDetector}: License Incompatibility Detection for Open Source Software", journal = j-TOSEM, volume = "32", number = "1", pages = "22:1--22:??", month = jan, year = "2023", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3518994", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Apr 5 10:29:39 MDT 2023", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3518994", abstract = "Open-source software (OSS) licenses dictate the conditions, which should be followed to reuse, distribute, and modify software. Apart from widely-used licenses such as the MIT License, developers are also allowed to customize their own licenses (called \ldots{})", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "22", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Gao:2023:CSG, author = "Shuzheng Gao and Cuiyun Gao and Yulan He and Jichuan Zeng and Lunyiu Nie and Xin Xia and Michael Lyu", title = "Code Structure-Guided Transformer for Source Code Summarization", journal = j-TOSEM, volume = "32", number = "1", pages = "23:1--23:??", month = jan, year = "2023", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3522674", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Apr 5 10:29:39 MDT 2023", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3522674", abstract = "Code summaries help developers comprehend programs and reduce their time to infer the program functionalities during software maintenance. Recent efforts resort to deep learning techniques such as sequence-to-sequence models for generating accurate code \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "23", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Sworna:2023:AFA, author = "Zarrin Tasnim Sworna and Chadni Islam and Muhammad Ali Babar", title = "{APIRO}: a Framework for Automated Security Tools {API} Recommendation", journal = j-TOSEM, volume = "32", number = "1", pages = "24:1--24:??", month = jan, year = "2023", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3512768", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Apr 5 10:29:39 MDT 2023", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3512768", abstract = "Security Orchestration, Automation, and Response (SOAR) platforms integrate and orchestrate a wide variety of security tools to accelerate the operational activities of Security Operation Center (SOC). Integration of security tools in a SOAR platform is \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "24", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Sayar:2023:DSJ, author = "Imen Sayar and Alexandre Bartel and Eric Bodden and Yves {Le Traon}", title = "An In-depth Study of {Java} Deserialization Remote-Code Execution Exploits and Vulnerabilities", journal = j-TOSEM, volume = "32", number = "1", pages = "25:1--25:??", month = jan, year = "2023", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3554732", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Apr 5 10:29:39 MDT 2023", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2020.bib; https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3554732", abstract = "Nowadays, an increasing number of applications use deserialization. This technique, based on rebuilding the instance of objects from serialized byte streams, can be dangerous since it can open the application to attacks such as remote code execution (RCE) \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "25", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{He:2023:TAE, author = "Zheyuan He and Shuwei Song and Yang Bai and Xiapu Luo and Ting Chen and Wensheng Zhang and Peng He and Hongwei Li and Xiaodong Lin and Xiaosong Zhang", title = "{TokenAware}: Accurate and Efficient Bookkeeping Recognition for Token Smart Contracts", journal = j-TOSEM, volume = "32", number = "1", pages = "26:1--26:??", month = jan, year = "2023", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3560263", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Apr 5 10:29:39 MDT 2023", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3560263", abstract = "Tokens have become an essential part of blockchain ecosystem, so recognizing token transfer behaviors is crucial for applications depending on blockchain. Unfortunately, existing solutions cannot recognize token transfer behaviors accurately and \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "26", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Tamasauskaite:2023:DKG, author = "Gyte Tamasauskaite and Paul Groth", title = "Defining a Knowledge Graph Development Process Through a Systematic Review", journal = j-TOSEM, volume = "32", number = "1", pages = "27:1--27:??", month = jan, year = "2023", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3522586", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Apr 5 10:29:39 MDT 2023", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3522586", abstract = "Knowledge graphs are widely used in industry and studied within the academic community. However, the models applied in the development of knowledge graphs vary. Analysing and providing a synthesis of the commonly used approaches to knowledge graph \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "27", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Birchler:2023:SMO, author = "Christian Birchler and Sajad Khatiri and Pouria Derakhshanfar and Sebastiano Panichella and Annibale Panichella", title = "Single and Multi-objective Test Cases Prioritization for Self-driving Cars in Virtual Environments", journal = j-TOSEM, volume = "32", number = "2", pages = "28:1--28:??", month = apr, year = "2023", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3533818", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon Apr 17 12:10:06 MDT 2023", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3533818", abstract = "Testing with simulation environments helps to identify critical failing scenarios for self-driving cars (SDCs). Simulation-based tests are safer than in-field operational tests and allow detecting software defects before deployment. However, these tests \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "28", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Banach:2023:GRR, author = "Richard Banach", title = "Graded Refinement, Retrenchment, and Simulation", journal = j-TOSEM, volume = "32", number = "2", pages = "29:1--29:??", month = apr, year = "2023", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3534116", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon Apr 17 12:10:06 MDT 2023", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3534116", abstract = "Refinement of formal system models towards implementation has been a mainstay of system development since the inception of formal and Correct by Construction approaches to system development. However, pure refinement approaches do not always deal fluently \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "29", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Yang:2023:SCP, author = "Zhen Yang and Jacky Wai Keung and Xiao Yu and Yan Xiao and Zhi Jin and Jingyu Zhang", title = "On the Significance of Category Prediction for Code-Comment Synchronization", journal = j-TOSEM, volume = "32", number = "2", pages = "30:1--30:??", month = apr, year = "2023", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3534117", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon Apr 17 12:10:06 MDT 2023", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3534117", abstract = "Software comments sometimes are not promptly updated in sync when the associated code is changed. The inconsistency between code and comments may mislead the developers and result in future bugs. Thus, studies concerning code-comment synchronization have \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "30", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Burgueno:2023:DBU, author = "Lola Burgue{\~n}o and Paula Mu{\~n}oz and Robert Claris{\'o} and Jordi Cabot and S{\'e}bastien G{\'e}rard and Antonio Vallecillo", title = "Dealing with Belief Uncertainty in Domain Models", journal = j-TOSEM, volume = "32", number = "2", pages = "31:1--31:??", month = apr, year = "2023", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3542947", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon Apr 17 12:10:06 MDT 2023", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3542947", abstract = "There are numerous domains in which information systems need to deal with uncertain information. These uncertainties may originate from different reasons such as vagueness, imprecision, incompleteness, or inconsistencies, and in many cases, they cannot be \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "31", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Partachi:2023:AMI, author = "Profir-Petru P{\^a}rtachi and David R. White and Earl T. Barr", title = "{Aide-m{\'e}moire}: Improving a Project's Collective Memory via Pull Request-Issue Links", journal = j-TOSEM, volume = "32", number = "2", pages = "32:1--32:??", month = apr, year = "2023", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3542937", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon Apr 17 12:10:06 MDT 2023", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3542937", abstract = "Links between pull request and the issues they address document and accelerate the development of a software project but are often omitted. We present a new tool, Aide-m{\'e}moire, to suggest such links when a developer submits a pull request or closes an \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "32", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Khanfir:2023:IBR, author = "Ahmed Khanfir and Anil Koyuncu and Mike Papadakis and Maxime Cordy and Tegawende F. Bissyand{\'e} and Jacques Klein and Yves {Le Traon}", title = "{iBiR}: Bug-report-driven Fault Injection", journal = j-TOSEM, volume = "32", number = "2", pages = "33:1--33:??", month = apr, year = "2023", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3542946", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon Apr 17 12:10:06 MDT 2023", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3542946", abstract = "Much research on software engineering relies on experimental studies based on fault injection. Fault injection, however, is not often relevant to emulate real-world software faults since it ``blindly'' injects large numbers of faults. It remains indeed \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "33", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Zeng:2023:DEV, author = "Chen Zeng and Yue Yu and Shanshan Li and Xin Xia and Zhiming Wang and Mingyang Geng and Linxiao Bai and Wei Dong and Xiangke Liao", title = "{deGraphCS}: Embedding Variable-based Flow Graph for Neural Code Search", journal = j-TOSEM, volume = "32", number = "2", pages = "34:1--34:??", month = apr, year = "2023", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3546066", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon Apr 17 12:10:06 MDT 2023", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3546066", abstract = "With the rapid increase of public code repositories, developers maintain a great desire to retrieve precise code snippets by using natural language. Despite existing deep learning-based approaches that provide end-to-end solutions (i.e., accept natural \ldots{})", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "34", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Maddila:2023:NAO, author = "Chandra Maddila and Sai Surya Upadrasta and Chetan Bansal and Nachiappan Nagappan and Georgios Gousios and Arie van Deursen", title = "{Nudge}: Accelerating Overdue Pull Requests toward Completion", journal = j-TOSEM, volume = "32", number = "2", pages = "35:1--35:??", month = apr, year = "2023", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3544791", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon Apr 17 12:10:06 MDT 2023", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3544791", abstract = "Pull requests are a key part of the collaborative software development and code review process today. However, pull requests can also slow down the software development process when the reviewer(s) or the author do not actively engage with the pull \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "35", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Zuo:2023:TME, author = "Zhiqiang Zuo and Xintao Niu and Siyi Zhang and Lu Fang and Siau Cheng Khoo and Shan Lu and Chengnian Sun and Guoqing Harry Xu", title = "Toward More Efficient Statistical Debugging with Abstraction Refinement", journal = j-TOSEM, volume = "32", number = "2", pages = "36:1--36:??", month = apr, year = "2023", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3544790", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon Apr 17 12:10:06 MDT 2023", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3544790", abstract = "Debugging is known to be a notoriously painstaking and time-consuming task. As one major family of automated debugging, statistical debugging approaches have been well investigated over the past decade, which collect failing and passing executions and \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "36", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Lee:2023:EPS, author = "Jaekwon Lee and Seung Yeob Shin and Shiva Nejati and Lionel Briand and Yago Isasi Parache", title = "Estimating Probabilistic Safe {WCET} Ranges of Real-Time Systems at Design Stages", journal = j-TOSEM, volume = "32", number = "2", pages = "37:1--37:??", month = apr, year = "2023", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3546941", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon Apr 17 12:10:06 MDT 2023", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3546941", abstract = "Estimating worst-case execution time (WCET) is an important activity at early design stages of real-time systems. Based on WCET estimates, engineers make design and implementation decisions to ensure that task executions always complete before their \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "37", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Soto-Valero:2023:CBD, author = "C{\'e}sar Soto-Valero and Thomas Durieux and Nicolas Harrand and Benoit Baudry", title = "Coverage-Based Debloating for {Java} Bytecode", journal = j-TOSEM, volume = "32", number = "2", pages = "38:1--38:??", month = apr, year = "2023", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3546948", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon Apr 17 12:10:06 MDT 2023", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2020.bib; https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3546948", abstract = "Software bloat is code that is packaged in an application but is actually not necessary to run the application. The presence of software bloat is an issue for security, performance, and for maintenance. In this article, we introduce a novel technique for \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "38", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Dramko:2023:DDN, author = "Luke Dramko and Jeremy Lacomis and Pengcheng Yin and Ed Schwartz and Miltiadis Allamanis and Graham Neubig and Bogdan Vasilescu and Claire {Le Goues}", title = "{DIRE} and its Data: Neural Decompiled Variable Renamings with Respect to Software Class", journal = j-TOSEM, volume = "32", number = "2", pages = "39:1--39:??", month = apr, year = "2023", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3546946", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon Apr 17 12:10:06 MDT 2023", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3546946", abstract = "The decompiler is one of the most common tools for examining executable binaries without the corresponding source code. It transforms binaries into high-level code, reversing the compilation process. Unfortunately, decompiler output is far from readable \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "39", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Shen:2023:CSM, author = "Bowen Shen and Muhammad Ali Gulzar and Fei He and Na Meng", title = "A Characterization Study of Merge Conflicts in {Java} Projects", journal = j-TOSEM, volume = "32", number = "2", pages = "40:1--40:??", month = apr, year = "2023", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3546944", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon Apr 17 12:10:06 MDT 2023", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2020.bib; https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3546944", abstract = "In collaborative software development, programmers create software branches to add features and fix bugs tentatively, and then merge branches to integrate edits. When edits from different branches textually overlap (i.e., textual conflicts ) or lead to \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "40", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Costea:2023:HDR, author = "Andreea Costea and Abhishek Tiwari and Sigmund Chianasta and Kishore R. and Abhik Roychoudhury and Ilya Sergey", title = "{Hippodrome}: Data Race Repair Using Static Analysis Summaries", journal = j-TOSEM, volume = "32", number = "2", pages = "41:1--41:??", month = apr, year = "2023", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3546942", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon Apr 17 12:10:06 MDT 2023", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3546942", abstract = "Implementing bug-free concurrent programs is a challenging task in modern software development. State-of-the-art static analyses find hundreds of concurrency bugs in production code, scaling to large codebases. Yet, fixing these bugs in constantly \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "41", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Kim:2023:ESA, author = "Jinhan Kim and Robert Feldt and Shin Yoo", title = "Evaluating Surprise Adequacy for Deep Learning System Testing", journal = j-TOSEM, volume = "32", number = "2", pages = "42:1--42:??", month = apr, year = "2023", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3546947", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon Apr 17 12:10:06 MDT 2023", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3546947", abstract = "The rapid adoption of Deep Learning (DL) systems in safety critical domains such as medical imaging and autonomous driving urgently calls for ways to test their correctness and robustness. Borrowing from the concept of test adequacy in traditional \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "42", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Cogo:2023:AAB, author = "Filipe Roseiro Cogo and Xin Xia and Ahmed E. Hassan", title = "Assessing the Alignment between the Information Needs of Developers and the Documentation of Programming Languages: a Case Study on {Rust}", journal = j-TOSEM, volume = "32", number = "2", pages = "43:1--43:??", month = apr, year = "2023", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3546945", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon Apr 17 12:10:06 MDT 2023", bibsource = "https://www.math.utah.edu/pub/tex/bib/rust.bib; https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3546945", abstract = "Programming language documentation refers to the set of technical documents that provide application developers with a description of the high-level concepts of a language (e.g., manuals, tutorials, and API references). Such documentation is essential to support application developers in effectively using a programming language. One of the challenges faced by documenters (i.e., personnel that design and produce documentation for a programming language) is to ensure that documentation has relevant information that aligns with the concrete needs of developers, defined as the missing knowledge that developers acquire via voluntary search. In this article, we present an automated approach to support documenters in evaluating the differences and similarities between the concrete information need of developers and the current state of documentation (a problem that we refer to as the topical alignment of a programming language documentation). Our approach leverages semi-supervised topic modelling that uses domain knowledge to guide the derivation of topics. We initially train a baseline topic model from a set of Rust-related Q\&A posts. We then use this baseline model to determine the distribution of topic probabilities of each document of the official Rust documentation. Afterwards, we assess the similarities and differences between the topics of the Q\&A posts and the official documentation. Our results show a relatively high level of topical alignment in Rust documentation. Still, information about specific topics is scarce in both the Q\&A websites and the documentation, particularly related topics with programming niches such as network, game, and database development. For other topics (e.g., related topics with language features such as structs, patterns and matchings, and foreign function interface), information is only available on Q\&A websites while lacking in the official documentation. Finally, we discuss implications for programming language documenters, particularly how to leverage our approach to prioritize topics that should be added to the documentation.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "43", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Altoyan:2023:PCR, author = "Najd Altoyan and Don Batory", title = "On Proving the Correctness of Refactoring Class Diagrams of {MDE} Metamodels", journal = j-TOSEM, volume = "32", number = "2", pages = "44:1--44:??", month = apr, year = "2023", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3549541", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon Apr 17 12:10:06 MDT 2023", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3549541", abstract = "Model Driven Engineering ( MDE ) is a general-purpose engineering methodology to elevate system design, maintenance, and analysis to corresponding activities on models. Models (graphical and/or textual) of a target application are \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "44", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Wang:2023:SCJ, author = "Chao Wang and Hao He and Uma Pal and Darko Marinov and Minghui Zhou", title = "Suboptimal Comments in {Java} Projects: From Independent Comment Changes to Commenting Practices", journal = j-TOSEM, volume = "32", number = "2", pages = "45:1--45:??", month = apr, year = "2023", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3546949", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon Apr 17 12:10:06 MDT 2023", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2020.bib; https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3546949", abstract = "High-quality source code comments are valuable for software development and maintenance, however, code often contains low-quality comments or lacks them altogether. We name such source code comments as suboptimal comments. Such suboptimal comments create \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "45", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Cheng:2023:HHI, author = "Jiezhu Cheng and Cuiyun Gao and Zibin Zheng", title = "{HINNPerf}: Hierarchical Interaction Neural Network for Performance Prediction of Configurable Systems", journal = j-TOSEM, volume = "32", number = "2", pages = "46:1--46:??", month = apr, year = "2023", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3528100", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon Apr 17 12:10:06 MDT 2023", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3528100", abstract = "Modern software systems are usually highly configurable, providing users with customized functionality through various configuration options. Understanding how system performance varies with different option combinations is important to determine optimal \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "46", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Belgacem:2023:MLA, author = "Hichem Belgacem and Xiaochen Li and Domenico Bianculli and Lionel Briand", title = "A Machine Learning Approach for Automated Filling of Categorical Fields in Data Entry Forms", journal = j-TOSEM, volume = "32", number = "2", pages = "47:1--47:??", month = apr, year = "2023", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3533021", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon Apr 17 12:10:06 MDT 2023", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3533021", abstract = "Users frequently interact with software systems through data entry forms. However, form filling is time-consuming and error-prone. Although several techniques have been proposed to auto-complete or pre-fill fields in the forms, they provide limited \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "47", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Ding:2023:TLG, author = "Zishuo Ding and Heng Li and Weiyi Shang and Tse-Hsun (Peter) Chen", title = "Towards Learning Generalizable Code Embeddings Using Task-agnostic Graph Convolutional Networks", journal = j-TOSEM, volume = "32", number = "2", pages = "48:1--48:??", month = apr, year = "2023", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3542944", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon Apr 17 12:10:06 MDT 2023", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3542944", abstract = "Code embeddings have seen increasing applications in software engineering (SE) research and practice recently. Despite the advances in embedding techniques applied in SE research, one of the main challenges is their generalizability. A recent study finds \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "48", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Zohdinasab:2023:EEF, author = "Tahereh Zohdinasab and Vincenzo Riccio and Alessio Gambi and Paolo Tonella", title = "Efficient and Effective Feature Space Exploration for Testing Deep Learning Systems", journal = j-TOSEM, volume = "32", number = "2", pages = "49:1--49:??", month = apr, year = "2023", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3544792", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon Apr 17 12:10:06 MDT 2023", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3544792", abstract = "Assessing the quality of Deep Learning (DL) systems is crucial, as they are increasingly adopted in safety-critical domains. Researchers have proposed several input generation techniques for DL systems. While such techniques can expose failures, they do \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "49", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Sun:2023:DHS, author = "Xiaoyu Sun and Xiao Chen and Li Li and Haipeng Cai and John Grundy and Jordan Samhi and Tegawend{\'e} Bissyand{\'e} and Jacques Klein", title = "Demystifying Hidden Sensitive Operations in {Android} Apps", journal = j-TOSEM, volume = "32", number = "2", pages = "50:1--50:??", month = apr, year = "2023", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3574158", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon Apr 17 12:10:06 MDT 2023", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3574158", abstract = "Security of Android devices is now paramount, given their wide adoption among consumers. As researchers develop tools for statically or dynamically detecting suspicious apps, malware writers regularly update their attack mechanisms to hide malicious \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "50", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Araujo:2023:TVV, author = "Hugo Araujo and Mohammad Reza Mousavi and Mahsa Varshosaz", title = "Testing, Validation, and Verification of Robotic and Autonomous Systems: a Systematic Review", journal = j-TOSEM, volume = "32", number = "2", pages = "51:1--51:??", month = apr, year = "2023", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3542945", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon Apr 17 12:10:06 MDT 2023", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3542945", abstract = "We perform a systematic literature review on testing, validation, and verification of robotic and autonomous systems (RAS). The scope of this review covers peer-reviewed research papers proposing, improving, or evaluating testing techniques, processes, or \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "51", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Fioraldi:2023:DAFa, author = "Andrea Fioraldi and Alessandro Mantovani and Dominik Maier and Davide Balzarotti", title = "Dissecting {American} Fuzzy Lop: a {FuzzBench} Evaluation", journal = j-TOSEM, volume = "32", number = "2", pages = "52:1--52:??", month = apr, year = "2023", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3580596", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon Apr 17 12:10:06 MDT 2023", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3580596", abstract = "AFL is one of the most used and extended fuzzers, adopted by industry and academic researchers alike. Although the community agrees on AFL's effectiveness at discovering new vulnerabilities and its outstanding usability, many of its internal design \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "52", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Zhang:2023:FCPa, author = "Zenong Zhang and George Klees and Eric Wang and Michael Hicks and Shiyi Wei", title = "Fuzzing Configurations of Program Options", journal = j-TOSEM, volume = "32", number = "2", pages = "53:1--53:??", month = apr, year = "2023", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3580597", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon Apr 17 12:10:06 MDT 2023", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3580597", abstract = "While many real-world programs are shipped with configurations to enable/disable functionalities, fuzzers have mostly been applied to test single configurations of these programs. In this work, we first conduct an empirical study to understand how program \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "53", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Fioraldi:2023:DAFb, author = "Andrea Fioraldi and Alessandro Mantovani and Dominik Maier and Davide Balzarotti", title = "Dissecting {American Fuzzy Lop} --- a {FuzzBench} Evaluation --- {RCR} Report", journal = j-TOSEM, volume = "32", number = "2", pages = "54:1--54:??", month = apr, year = "2023", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3580600", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon Apr 17 12:10:06 MDT 2023", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3580600", abstract = "This report describes the artifacts of the ``Dissecting American Fuzzy Lop --- A FuzzBench Evaluation'' paper. The artifacts are available online at and archived at \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "54", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Zhang:2023:FCPb, author = "Zenong Zhang and George Klees and Eric Wang and Michael Hicks and Shiyi Wei", title = "Fuzzing Configurations of Program Options --- {RCR} Report", journal = j-TOSEM, volume = "32", number = "2", pages = "55:1--55:??", month = apr, year = "2023", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3580601", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon Apr 17 12:10:06 MDT 2023", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3580601", abstract = "This artifact contains the source code and instructions to reproduce the evaluation results of the article ``Fuzzing Configurations of Program Options.'' The source code includes the configuration grammars for six target programs, the scripts to generate \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "55", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Cruz-Carlon:2023:PLB, author = "Juan Cruz-Carlon and Mahsa Varshosaz and Claire {Le Goues} and Andrzej Wasowski", title = "Patching Locking Bugs Statically with Crayons", journal = j-TOSEM, volume = "32", number = "3", pages = "56:1--56:??", month = jul, year = "2023", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3548684", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Jun 9 06:39:39 MDT 2023", bibsource = "https://www.math.utah.edu/pub/tex/bib/linux.bib; https://www.math.utah.edu/pub/tex/bib/tosem.bib; https://www.math.utah.edu/pub/tex/bib/unix.bib", URL = "https://dl.acm.org/doi/10.1145/3548684", abstract = "The Linux Kernel is a world-class operating system controlling most of our computing infrastructure: mobile devices, Internet routers and services, and most of the supercomputers. Linux is also an example of low-level software with no comprehensive regression test suite (for good reasons). The kernel's tremendous societal importance imposes strict stability and correctness requirements. These properties make Linux a challenging and relevant target for static automated program repair (APR).\par Over the past decade, a significant progress has been made in dynamic APR. However, dynamic APR techniques do not translate naturally to systems without tests. We present a static APR technique addressing sequential locking API misuse bugs in the Linux Kernel. We attack the key challenge of static APR, namely, the lack of detailed program specification, by combining static analysis with machine learning to complement the information presented by the static analyzer. In experiments on historical real-world bugs in the kernel, we were able to automatically re-produce or propose equivalent patches in 85\% of the human-made patches, and automatically rank them among the top three candidates for 64\% of the cases and among the top five for 74\%.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "56", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Ayub:2023:SSA, author = "Maha Ayub and Tania Saleem and Muhammad Janjua and Talha Ahmad", title = "Storage State Analysis and Extraction of {Ethereum} Blockchain Smart Contracts", journal = j-TOSEM, volume = "32", number = "3", pages = "57:1--57:??", month = jul, year = "2023", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3548683", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Jun 9 06:39:39 MDT 2023", bibsource = "https://www.math.utah.edu/pub/tex/bib/bitcoin.bib; https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3548683", abstract = "In migrating and upgrading an Ethereum smart contract, it is necessary to transfer both the code as well as the stored data. Various methods attempt to migrate or upgrade a smart contract, but they are mostly manual, error-prone, and applicable only \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "57", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Laurent:2023:PCT, author = "Thomas Laurent and Stefan Klikovits and Paolo Arcaini and Fuyuki Ishikawa and Anthony Ventresque", title = "Parameter Coverage for Testing of Autonomous Driving Systems under Uncertainty", journal = j-TOSEM, volume = "32", number = "3", pages = "58:1--58:??", month = jul, year = "2023", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3550270", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Jun 9 06:39:39 MDT 2023", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3550270", abstract = "Autonomous Driving Systems (ADSs) are promising, but must show they are secure and trustworthy before adoption. Simulation-based testing is a widely adopted approach, where the ADS is run in a simulated environment over specific scenarios. Coverage \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "58", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Pacheco:2023:MTD, author = "Michael Pacheco and Gustavo Oliva and Gopi Krishnan Rajbahadur and Ahmed Hassan", title = "Is My Transaction Done Yet? {An} Empirical Study of Transaction Processing Times in the {Ethereum} Blockchain Platform", journal = j-TOSEM, volume = "32", number = "3", pages = "59:1--59:??", month = jul, year = "2023", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3549542", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Jun 9 06:39:39 MDT 2023", bibsource = "https://www.math.utah.edu/pub/tex/bib/bitcoin.bib; https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3549542", abstract = "Ethereum is one of the most popular platforms for the development of blockchain-powered applications. These applications are known as {\Eth}Apps. When engineering {\Eth}Apps, developers need to translate requests captured in the front-end of their application into \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "59", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Patnaik:2023:SSS, author = "Nikhil Patnaik and Andrew Dwyer and Joseph Hallett and Awais Rashid", title = "{SLR}: From {Saltzer} and {Schroeder} to 2021 \ldots{} 47 Years of Research on the Development and Validation of Security {API} Recommendations", journal = j-TOSEM, volume = "32", number = "3", pages = "60:1--60:??", month = jul, year = "2023", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3561383", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Jun 9 06:39:39 MDT 2023", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3561383", abstract = "Producing secure software is challenging. The poor usability of security Application Programming Interfaces (APIs) makes this even harder. Many recommendations have been proposed to support developers by improving the usability of cryptography libraries-. \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "60", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Ma:2023:PPR, author = "Fuchen Ma and Meng Ren and Lerong Ouyang and Yuanliang Chen and Juan Zhu and Ting Chen and Yingli Zheng and Xiao Dai and Yu Jiang and Jiaguang Sun", title = "Pied-Piper: Revealing the Backdoor Threats in {Ethereum} {ERC} Token Contracts", journal = j-TOSEM, volume = "32", number = "3", pages = "61:1--61:??", month = jul, year = "2023", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3560264", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Jun 9 06:39:39 MDT 2023", bibsource = "https://www.math.utah.edu/pub/tex/bib/bitcoin.bib; https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3560264", abstract = "With the development of decentralized networks, smart contracts, especially those for ERC tokens, are attracting more and more Dapp users to implement their applications. There are some functions in ERC token contracts that only a specific group of \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "61", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Zhang:2023:PQA, author = "Yedi Zhang and Zhe Zhao and Guangke Chen and Fu Song and Taolue Chen", title = "Precise Quantitative Analysis of Binarized Neural Networks: a {BDD}-based Approach", journal = j-TOSEM, volume = "32", number = "3", pages = "62:1--62:??", month = jul, year = "2023", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3563212", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Jun 9 06:39:39 MDT 2023", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3563212", abstract = "As a new programming paradigm, neural-network-based machine learning has expanded its application to many real-world problems. Due to the black-box nature of neural networks, verifying and explaining their behavior are becoming increasingly important, \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "62", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Perez:2023:HQM, author = "Francisca P{\'e}rez and Ra{\'u}l Lape{\~n}a and Ana Marc{\'e}n and Carlos Cetina", title = "How the Quality of Maintenance Tasks is Affected by Criteria for Selecting Engineers for Collaboration", journal = j-TOSEM, volume = "32", number = "3", pages = "63:1--63:??", month = jul, year = "2023", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3561384", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Jun 9 06:39:39 MDT 2023", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3561384", abstract = "In industry, software projects might span over decades, with many engineers joining or leaving the company over time. In these circumstances, no single engineer has all of the knowledge when maintenance tasks such as Traceability Link Recovery (TLR), Bug \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "63", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Lopez:2023:SRS, author = "Tamara Lopez and Helen Sharp and Arosha Bandara and Thein Tun and Mark Levine and Bashar Nuseibeh", title = "Security Responses in Software Development", journal = j-TOSEM, volume = "32", number = "3", pages = "64:1--64:??", month = jul, year = "2023", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3563211", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Jun 9 06:39:39 MDT 2023", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3563211", abstract = "The pressure on software developers to produce secure software has never been greater. But what does security look like in environments that do not produce security-critical software? In answer to this question, this multi-sited ethnographic study \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "64", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Yang:2023:SWE, author = "Deheng Yang and Yan Lei and Xiaoguang Mao and Yuhua Qi and Xin Yi", title = "Seeing the Whole Elephant: Systematically Understanding and Uncovering Evaluation Biases in Automated Program Repair", journal = j-TOSEM, volume = "32", number = "3", pages = "65:1--65:??", month = jul, year = "2023", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3561382", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Jun 9 06:39:39 MDT 2023", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3561382", abstract = "Evaluation is the foundation of automated program repair (APR), as it provides empirical evidence on strengths and weaknesses of APR techniques. However, the reliability of such evaluation is often threatened by various introduced biases. Consequently, \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "65", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Wang:2023:AFP, author = "Chengpeng Wang and Wenyang Wang and Peisen Yao and Qingkai Shi and Jinguo Zhou and Xiao Xiao and Charles Zhang", title = "{Anchor}: Fast and Precise Value-flow Analysis for Containers via Memory Orientation", journal = j-TOSEM, volume = "32", number = "3", pages = "66:1--66:??", month = jul, year = "2023", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3565800", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Jun 9 06:39:39 MDT 2023", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3565800", abstract = "Containers are ubiquitous data structures that support a variety of manipulations on the elements, inducing the indirect value flows in the program. Tracking value flows through containers is stunningly difficult, because it depends on container memory \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "66", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{DiSorbo:2023:AIQ, author = "Andrea {Di Sorbo} and Fiorella Zampetti and Aaron Visaggio and Massimiliano {Di Penta} and Sebastiano Panichella", title = "Automated Identification and Qualitative Characterization of Safety Concerns Reported in {UAV} Software Platforms", journal = j-TOSEM, volume = "32", number = "3", pages = "67:1--67:??", month = jul, year = "2023", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3564821", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Jun 9 06:39:39 MDT 2023", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3564821", abstract = "Unmanned Aerial Vehicles (UAVs) are nowadays used in a variety of applications. Given the cyber-physical nature of UAVs, software defects in these systems can cause issues with safety-critical implications. An important aspect of the lifecycle of UAV \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "67", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Chen:2023:DPA, author = "Tao Chen and Miqing Li", title = "Do Performance Aspirations Matter for Guiding Software Configuration Tuning? {An} Empirical Investigation under Dual Performance Objectives", journal = j-TOSEM, volume = "32", number = "3", pages = "68:1--68:??", month = jul, year = "2023", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3571853", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Jun 9 06:39:39 MDT 2023", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3571853", abstract = "Configurable software systems can be tuned for better performance. Leveraging on some Pareto optimizers, recent work has shifted from tuning for a single, time-related performance objective to two intrinsically different objectives that assess distinct \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "68", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Gong:2023:WIU, author = "Lina Gong and Jingxuan Zhang and Mingqiang Wei and Haoxiang Zhang and Zhiqiu Huang", title = "What Is the Intended Usage Context of This Model? {An} Exploratory Study of Pre-Trained Models on Various Model Repositories", journal = j-TOSEM, volume = "32", number = "3", pages = "69:1--69:??", month = jul, year = "2023", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3569934", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Jun 9 06:39:39 MDT 2023", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3569934", abstract = "There is a trend of researchers and practitioners to directly apply pre-trained models to solve their specific tasks. For example, researchers in software engineering (SE) have successfully exploited the pre-trained language models to automatically \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "69", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Karanikolas:2023:SSE, author = "Chris Karanikolas and Grigoris Dimitroulakos and Konstantinos Masselos", title = "Simulating Software Evolution to Evaluate the Reliability of Early Decision-making among Design Alternatives toward Maintainability", journal = j-TOSEM, volume = "32", number = "3", pages = "70:1--70:??", month = jul, year = "2023", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3569931", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Jun 9 06:39:39 MDT 2023", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3569931", abstract = "Critical decisions among design altern seventh atives with regards to maintainability arise early in the software design cycle. Existing comparison models relayed on the structural evolution of the used design patterns are suitable to support such \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "70", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Lin:2023:RRT, author = "Jun-Wei Lin and Navid Salehnamadi and Sam Malek", title = "Route: Roads Not Taken in {UI} Testing", journal = j-TOSEM, volume = "32", number = "3", pages = "71:1--71:??", month = jul, year = "2023", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3571851", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Jun 9 06:39:39 MDT 2023", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3571851", abstract = "Core features (functionalities) of an app can often be accessed and invoked in several ways, i.e., through alternative sequences of user-interface (UI) interactions. Given the manual effort of writing tests, developers often only consider the typical way \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "71", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Chen:2023:EBB, author = "Zhichao Chen and Junjie Chen and Weijing Wang and Jianyi Zhou and Meng Wang and Xiang Chen and Shan Zhou and Jianmin Wang", title = "Exploring Better Black-{Box} Test Case Prioritization via Log Analysis", journal = j-TOSEM, volume = "32", number = "3", pages = "72:1--72:??", month = jul, year = "2023", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3569932", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Jun 9 06:39:39 MDT 2023", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3569932", abstract = "Test case prioritization (TCP) has been widely studied in regression testing, which aims to optimize the execution order of test cases so as to detect more faults earlier. TCP has been divided into white-box test case prioritization (WTCP) and black-box \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "72", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Zampetti:2023:CID, author = "Fiorella Zampetti and Damian Tamburri and Sebastiano Panichella and Annibale Panichella and Gerardo Canfora and Massimiliano {Di Penta}", title = "Continuous Integration and Delivery Practices for Cyber-Physical Systems: an Interview-Based Study", journal = j-TOSEM, volume = "32", number = "3", pages = "73:1--73:??", month = jul, year = "2023", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3571854", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Jun 9 06:39:39 MDT 2023", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3571854", abstract = "Continuous Integration and Delivery (CI/CD) practices have shown several benefits for software development and operations, such as faster release cycles and early discovery of defects. For Cyber-Physical System (CPS) development, CI/CD can help achieving \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "73", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Verwijs:2023:TST, author = "Christiaan Verwijs and Daniel Russo", title = "A Theory of {Scrum} Team Effectiveness", journal = j-TOSEM, volume = "32", number = "3", pages = "74:1--74:??", month = jul, year = "2023", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3571849", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Jun 9 06:39:39 MDT 2023", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3571849", abstract = "Scrum teams are at the heart of the Scrum framework. Nevertheless, an integrated and systemic theory that can explain what makes some Scrum teams more effective than others is still missing. To address this gap, we performed a 7-year-long mixed-methods \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "74", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Nass:2023:SBW, author = "Michel Nass and Emil Al{\'e}groth and Robert Feldt and Maurizio Leotta and Filippo Ricca", title = "Similarity-based {Web} Element Localization for Robust Test Automation", journal = j-TOSEM, volume = "32", number = "3", pages = "75:1--75:??", month = jul, year = "2023", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3571855", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Jun 9 06:39:39 MDT 2023", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3571855", abstract = "Non-robust (fragile) test execution is a commonly reported challenge in GUI-based test automation, despite much research and several proposed solutions. A test script needs to be resilient to (minor) changes in the tested application but, at the same time,. \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "75", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Brun:2023:BPJ, author = "Yuriy Brun and Tian Lin and Jessie Elise Somerville and Elisha M. Myers and Natalie Ebner", title = "Blindspots in {Python} and {Java} {APIs} Result in Vulnerable Code", journal = j-TOSEM, volume = "32", number = "3", pages = "76:1--76:??", month = jul, year = "2023", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3571850", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Jun 9 06:39:39 MDT 2023", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2020.bib; https://www.math.utah.edu/pub/tex/bib/python.bib; https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3571850", abstract = "Blindspots in APIs can cause software engineers to introduce vulnerabilities, but such blindspots are, unfortunately, common. We study the effect APIs with blindspots have on developers in two languages by replicating a 109-developer, 24-Java-API \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "76", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Liu:2023:RCN, author = "Eric S. Liu and Dylan A. Lukes and William G. Griswold", title = "Refactoring in Computational Notebooks", journal = j-TOSEM, volume = "32", number = "3", pages = "77:1--77:??", month = jul, year = "2023", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3576036", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Jun 9 06:39:39 MDT 2023", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3576036", abstract = "Due to the exploratory nature of computational notebook development, a notebook can be extensively evolved even though it is small, potentially incurring substantial technical debt. Indeed, in interview studies notebook authors have attested to performing \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "77", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Zhang:2023:IGL, author = "Zhuo Zhang and Yan Lei and Ting Su and Meng Yan and Xiaoguang Mao and Yue Yu", title = "Influential Global and Local Contexts Guided Trace Representation for Fault Localization", journal = j-TOSEM, volume = "32", number = "3", pages = "78:1--78:??", month = jul, year = "2023", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3576043", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Jun 9 06:39:39 MDT 2023", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3576043", abstract = "Trace data is critical for fault localization (FL) to analyze suspicious statements potentially responsible for a failure. However, existing trace representation meets its bottleneck mainly in two aspects: (1) the trace information of a statement is \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "78", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Attaoui:2023:BBS, author = "Mohammed Attaoui and Hazem Fahmy and Fabrizio Pastore and Lionel Briand", title = "Black-box Safety Analysis and Retraining of {DNNs} based on Feature Extraction and Clustering", journal = j-TOSEM, volume = "32", number = "3", pages = "79:1--79:??", month = jul, year = "2023", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3550271", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Jun 9 06:39:39 MDT 2023", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3550271", abstract = "Deep neural networks (DNNs) have demonstrated superior performance over classical machine learning to support many features in safety-critical systems. Although DNNs are now widely used in such systems (e.g., self driving cars), there is limited progress \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "79", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Gao:2023:KWY, author = "Zhipeng Gao and Xin Xia and David Lo and John Grundy and Xindong Zhang and Zhenchang Xing", title = "{I} Know What You Are Searching for: Code Snippet Recommendation from {Stack Overflow} Posts", journal = j-TOSEM, volume = "32", number = "3", pages = "80:1--80:??", month = jul, year = "2023", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3550150", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Jun 9 06:39:39 MDT 2023", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3550150", abstract = "Stack Overflow has been heavily used by software developers to seek programming-related information. More and more developers use Community Question and Answer forums, such as Stack Overflow, to search for code examples of how to accomplish a certain \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "80", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Dola:2023:IDC, author = "Swaroopa Dola and Matthew B. Dwyer and Mary Lou Soffa", title = "Input Distribution Coverage: Measuring Feature Interaction Adequacy in Neural Network Testing", journal = j-TOSEM, volume = "32", number = "3", pages = "81:1--81:??", month = jul, year = "2023", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3576040", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Jun 9 06:39:39 MDT 2023", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3576040", abstract = "Testing deep neural networks (DNNs) has garnered great interest in the recent years due to their use in many applications. Black-box test adequacy measures are useful for guiding the testing process in covering the input domain. However, the absence of \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "81", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Cui:2023:SDM, author = "Mohan Cui and Chengjun Chen and Hui Xu and Yangfan Zhou", title = "{SafeDrop}: Detecting Memory Deallocation Bugs of {Rust} Programs via Static Data-flow Analysis", journal = j-TOSEM, volume = "32", number = "4", pages = "82:1--82:??", month = jul, year = "2023", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3542948", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon Jul 3 08:45:48 MDT 2023", bibsource = "https://www.math.utah.edu/pub/tex/bib/rust.bib; https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3542948", abstract = "Rust is an emerging programming language that aims to prevent memory-safety bugs. However, the current design of Rust also brings side effects, which may increase the risk of memory-safety issues. In particular, it employs ownership-based resource management and enforces automatic deallocation of unused resources without using the garbage collector. It may therefore falsely deallocate reclaimed memory and lead to use-after-free or double-free issues. In this article, we study the problem of invalid memory deallocation and propose SafeDrop, a static path-sensitive data-flow analysis approach to detect such bugs. Our approach analyzes each function of a Rust crate iteratively in a flow-sensitive and field-sensitive way. It leverages a modified Tarjan algorithm to achieve scalable path-sensitive analysis and a cache-based strategy for efficient inter-procedural analysis. We have implemented our approach and integrated it into the Rust compiler. Experiment results show that the approach can successfully detect all such bugs in our experiments with a limited number of false positives and incurs a very small overhead compared to the original compilation time.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "82", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Shreeve:2023:MSU, author = "Benjamin Shreeve and Catarina Gralha and Awais Rashid and Jo{\~a}o Ara{\'u}jo and Miguel Goul{\~a}o", title = "Making Sense of the Unknown: How Managers Make Cyber Security Decisions", journal = j-TOSEM, volume = "32", number = "4", pages = "83:1--83:??", month = jul, year = "2023", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3548682", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon Jul 3 08:45:48 MDT 2023", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3548682", abstract = "Managers rarely have deep knowledge of cyber security and yet are expected to make decisions with cyber security implications for software-based systems. We investigate the decision-making conversations of seven teams of senior managers from the same \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "83", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Ghorbani:2023:DDD, author = "Negar Ghorbani and Reyhaneh Jabbarvand and Navid Salehnamadi and Joshua Garcia and Sam Malek", title = "{DeltaDroid}: Dynamic Delivery Testing in {Android}", journal = j-TOSEM, volume = "32", number = "4", pages = "84:1--84:??", month = jul, year = "2023", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3563213", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon Jul 3 08:45:48 MDT 2023", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3563213", abstract = "Android is a highly fragmented platform with a diverse set of devices and users. To support the deployment of apps in such a heterogeneous setting, Android has introduced dynamic delivery -a new model of software deployment in which optional, device- or \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "84", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Sohn:2023:ASB, author = "Jeongju Sohn and Sungmin Kang and Shin Yoo", title = "{Arachne}: Search-Based Repair of Deep Neural Networks", journal = j-TOSEM, volume = "32", number = "4", pages = "85:1--85:??", month = jul, year = "2023", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3563210", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon Jul 3 08:45:48 MDT 2023", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3563210", abstract = "The rapid and widespread adoption of Deep Neural Networks (DNNs) has called for ways to test their behaviour, and many testing approaches have successfully revealed misbehaviour of DNNs. However, it is relatively unclear what one can do to correct such \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "85", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Joblin:2023:HHO, author = "Mitchell Joblin and Barbara Eckl and Thomas Bock and Angelika Schmid and Janet Siegmund and Sven Apel", title = "Hierarchical and Hybrid Organizational Structures in Open-source Software Projects: a Longitudinal Study", journal = j-TOSEM, volume = "32", number = "4", pages = "86:1--86:??", month = jul, year = "2023", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3569949", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon Jul 3 08:45:48 MDT 2023", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3569949", abstract = "Despite the absence of a formal process and a central command-and-control structure, developer organization in open-source software (OSS) projects are far from being a purely random process. Prior work indicates that, over time, highly successful OSS \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "86", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Jia:2023:IEF, author = "Ang Jia and Ming Fan and Wuxia Jin and Xi Xu and Zhaohui Zhou and Qiyi Tang and Sen Nie and Shi Wu and Ting Liu", title = "$1$-to-$1$ or $1$-to-$n$? {Investigating} the Effect of Function Inlining on Binary Similarity Analysis", journal = j-TOSEM, volume = "32", number = "4", pages = "87:1--87:??", month = jul, year = "2023", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3561385", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon Jul 3 08:45:48 MDT 2023", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3561385", abstract = "Binary similarity analysis is critical to many code-reuse-related issues, where function matching is its fundamental task. ``1-to-1'' mechanism has been applied in most binary similarity analysis works, in which one function in a binary file is matched \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "87", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Nardone:2023:VGB, author = "Vittoria Nardone and Biruk Muse and Mouna Abidi and Foutse Khomh and Massimiliano {Di Penta}", title = "Video Game Bad Smells: What They Are and How Developers Perceive Them", journal = j-TOSEM, volume = "32", number = "4", pages = "88:1--88:??", month = jul, year = "2023", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3563214", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon Jul 3 08:45:48 MDT 2023", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3563214", abstract = "Video games represent a substantial and increasing share of the software market. However, their development is particularly challenging as it requires multi-faceted knowledge, which is not consolidated in computer science education yet. This article aims \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "88", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Zhang:2023:DDA, author = "Xueling Zhang and John Heaps and Rocky Slavin and Jianwei Niu and Travis Breaux and Xiaoyin Wang", title = "{DAISY}: Dynamic-Analysis-Induced Source Discovery for Sensitive Data", journal = j-TOSEM, volume = "32", number = "4", pages = "89:1--89:??", month = jul, year = "2023", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3569936", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon Jul 3 08:45:48 MDT 2023", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3569936", abstract = "Mobile apps are widely used and often process users' sensitive data. Many taint analysis tools have been applied to analyze sensitive information flows and report data leaks in apps. These tools require a list of sources (where sensitive data is accessed) \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "89", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Wang:2023:SSA, author = "Huaijin Wang and Pingchuan Ma and Shuai Wang and Qiyi Tang and Sen Nie and Shi Wu", title = "{\tt sem2vec}: Semantics-aware Assembly Tracelet Embedding", journal = j-TOSEM, volume = "32", number = "4", pages = "90:1--90:??", month = jul, year = "2023", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3569933", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon Jul 3 08:45:48 MDT 2023", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3569933", abstract = "Binary code similarity is the foundation of many security and software engineering applications. Recent works leverage deep neural networks (DNN) to learn a numeric vector representation (namely, embeddings ) of assembly functions, enabling similarity \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "90", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Alfadel:2023:DNV, author = "Mahmoud Alfadel and Diego Elias Costa and Emad Shihab and Bram Adams", title = "On the Discoverability of npm Vulnerabilities in {\tt Node.js} Projects", journal = j-TOSEM, volume = "32", number = "4", pages = "91:1--91:??", month = jul, year = "2023", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3571848", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon Jul 3 08:45:48 MDT 2023", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2020.bib; https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3571848", abstract = "The reliance on vulnerable dependencies is a major threat to software systems. Dependency vulnerabilities are common and remain undisclosed for years. However, once the vulnerability is discovered and publicly known to the community, the risk of \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "91", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Tian:2023:BBW, author = "Haoye Tian and Kui Liu and Yinghua Li and Abdoul Kader Kabor{\'e} and Anil Koyuncu and Andrew Habib and Li Li and Junhao Wen and Jacques Klein and Tegawend{\'e} F. Bissyand{\'e}", title = "The Best of Both Worlds: Combining Learned Embeddings with Engineered Features for Accurate Prediction of Correct Patches", journal = j-TOSEM, volume = "32", number = "4", pages = "92:1--92:??", month = jul, year = "2023", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3576039", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon Jul 3 08:45:48 MDT 2023", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3576039", abstract = "A large body of the literature on automated program repair develops approaches where patches are automatically generated to be validated against an oracle (e.g., a test suite). Because such an oracle can be imperfect, the generated patches, although \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "92", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Jin:2023:HCB, author = "Xianhao Jin and Francisco Servant", title = "{HybridCISave}: a Combined Build and Test Selection Approach in Continuous Integration", journal = j-TOSEM, volume = "32", number = "4", pages = "93:1--93:??", month = jul, year = "2023", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3576038", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon Jul 3 08:45:48 MDT 2023", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3576038", abstract = "Continuous Integration (CI) is a popular practice in modern software engineering. Unfortunately, it is also a high-cost practice-Google and Mozilla estimate their CI systems in millions of dollars. To reduce the computational cost in CI, researchers \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "93", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Venturini:2023:DYY, author = "Daniel Venturini and Filipe Roseiro Cogo and Ivanilton Polato and Marco A. Gerosa and Igor Scaliante Wiese", title = "{I} Depended on You and You Broke Me: an Empirical Study of Manifesting Breaking Changes in Client Packages", journal = j-TOSEM, volume = "32", number = "4", pages = "94:1--94:??", month = jul, year = "2023", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3576037", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon Jul 3 08:45:48 MDT 2023", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3576037", abstract = "Complex software systems have a network of dependencies. Developers often configure package managers (e.g., npm) to automatically update dependencies with each publication of new releases containing bug fixes and new features. When a dependency release \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "94", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Han:2023:UAR, author = "Liping Han and Shaukat Ali and Tao Yue and Aitor Arrieta and Maite Arratibel", title = "Uncertainty-Aware Robustness Assessment of Industrial Elevator Systems", journal = j-TOSEM, volume = "32", number = "4", pages = "95:1--95:??", month = jul, year = "2023", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3576041", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon Jul 3 08:45:48 MDT 2023", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3576041", abstract = "Industrial elevator systems are commonly used software systems in our daily lives, which operate in uncertain environments such as unpredictable passenger traffic, uncertain passenger attributes and behaviors, and hardware delays. Understanding and \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "95", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Liu:2023:RFP, author = "Kui Liu and Jingtang Zhang and Li Li and Anil Koyuncu and Dongsun Kim and Chunpeng Ge and Zhe Liu and Jacques Klein and Tegawend{\'e} F. Bissyand{\'e}", title = "Reliable Fix Patterns Inferred from Static Checkers for Automated Program Repair", journal = j-TOSEM, volume = "32", number = "4", pages = "96:1--96:??", month = jul, year = "2023", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3579637", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon Jul 3 08:45:48 MDT 2023", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3579637", abstract = "Fix pattern-based patch generation is a promising direction in automated program repair (APR). Notably, it has been demonstrated to produce more acceptable and correct patches than the patches obtained with mutation operators through genetic programming. \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "96", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Zhang:2023:DBR, author = "Ting Zhang and Donggyun Han and Venkatesh Vinayakarao and Ivana Clairine Irsan and Bowen Xu and Ferdian Thung and David Lo and Lingxiao Jiang", title = "Duplicate Bug Report Detection: How Far Are We?", journal = j-TOSEM, volume = "32", number = "4", pages = "97:1--97:??", month = jul, year = "2023", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3576042", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon Jul 3 08:45:48 MDT 2023", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3576042", abstract = "Many Duplicate Bug Report Detection (DBRD) techniques have been proposed in the research literature. The industry uses some other techniques. Unfortunately, there is insufficient comparison among them, and it is unclear how far we have been. This work \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "97", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Zhu:2023:CSU, author = "Chenguang Zhu and Mengshi Zhang and Xiuheng Wu and Xiufeng Xu and Yi Li", title = "Client-Specific Upgrade Compatibility Checking via Knowledge-Guided Discovery", journal = j-TOSEM, volume = "32", number = "4", pages = "98:1--98:??", month = jul, year = "2023", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3582569", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon Jul 3 08:45:48 MDT 2023", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3582569", abstract = "Modern software systems are complex, and they heavily rely on external libraries developed by different teams and organizations. Such systems suffer from higher instability due to incompatibility issues caused by library upgrades. In this article, we \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "98", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Rahman:2023:SMO, author = "Akond Rahman and Shazibul Islam Shamim and Dibyendu Brinto Bose and Rahul Pandita", title = "Security Misconfigurations in Open Source {Kubernetes} Manifests: an Empirical Study", journal = j-TOSEM, volume = "32", number = "4", pages = "99:1--99:??", month = jul, year = "2023", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3579639", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon Jul 3 08:45:48 MDT 2023", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3579639", abstract = "Context: Kubernetes has emerged as the de-facto tool for automated container orchestration. Business and government organizations are increasingly adopting Kubernetes for automated software deployments. Kubernetes is being used to provision applications \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "99", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Sintaha:2023:KDS, author = "Mifta Sintaha and Noor Nashid and Ali Mesbah", title = "{Katana}: Dual Slicing Based Context for Learning Bug Fixes", journal = j-TOSEM, volume = "32", number = "4", pages = "100:1--100:??", month = jul, year = "2023", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3579640", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon Jul 3 08:45:48 MDT 2023", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3579640", abstract = "Contextual information plays a vital role for software developers when understanding and fixing a bug. Consequently, deep learning based program repair techniques leverage context for bug fixes. However, existing techniques treat context in an arbitrary \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "100", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{He:2023:IBC, author = "Dongjie He and Jingbo Lu and Jingling Xue", title = "{IFDS}-based Context Debloating for Object-Sensitive Pointer Analysis", journal = j-TOSEM, volume = "32", number = "4", pages = "101:1--101:??", month = jul, year = "2023", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3579641", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon Jul 3 08:45:48 MDT 2023", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3579641", abstract = "Object-sensitive pointer analysis, which separates the calling contexts of a method by its receiver objects, is known to achieve highly useful precision for object-oriented languages such as Java. Despite recent advances, all object-sensitive pointer \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "101", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Guo:2023:CLL, author = "Zhaoqiang Guo and Shiran Liu and Xutong Liu and Wei Lai and Mingliang Ma and Xu Zhang and Chao Ni and Yibiao Yang and Yanhui Li and Lin Chen and Guoqiang Zhou and Yuming Zhou", title = "Code-line-level Bugginess Identification: How Far have We Come, and How Far have We Yet to Go?", journal = j-TOSEM, volume = "32", number = "4", pages = "102:1--102:??", month = jul, year = "2023", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3582572", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon Jul 3 08:45:48 MDT 2023", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3582572", abstract = "Background. Code-line-level bugginess identification (CLBI) is a vital technique that can facilitate developers to identify buggy lines without expending a large amount of human effort. Most of the existing studies tried to mine the characteristics of \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "102", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Yu:2023:STQ, author = "Nengkun Yu", title = "Structured Theorem for Quantum Programs and its Applications", journal = j-TOSEM, volume = "32", number = "4", pages = "103:1--103:??", month = jul, year = "2023", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3587154", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon Jul 3 08:45:48 MDT 2023", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3587154", abstract = "This article proves a structured program theorem for flowchart quantum programs. The theorem states that any flowchart quantum program is equivalent to a single quantum program that repeatedly executes a quantum measurement and a subprogram, so long as \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "103", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Fahmy:2023:SBE, author = "Hazem Fahmy and Fabrizio Pastore and Lionel Briand and Thomas Stifter", title = "Simulator-based Explanation and Debugging of Hazard-triggering Events in {DNN}-based Safety-critical Systems", journal = j-TOSEM, volume = "32", number = "4", pages = "104:1--104:??", month = jul, year = "2023", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3569935", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon Jul 3 08:45:48 MDT 2023", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3569935", abstract = "When Deep Neural Networks (DNNs) are used in safety-critical systems, engineers should determine the safety risks associated with failures (i.e., erroneous outputs) observed during testing. For DNNs processing images, engineers visually inspect all \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "104", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Braiek:2023:TFN, author = "Houssem {Ben Braiek} and Foutse Khomh", title = "Testing Feedforward Neural Networks Training Programs", journal = j-TOSEM, volume = "32", number = "4", pages = "105:1--105:??", month = jul, year = "2023", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3529318", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon Jul 3 08:45:48 MDT 2023", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3529318", abstract = "At present, we are witnessing an increasing effort to improve the performance and trustworthiness of Deep Neural Networks (DNNs), with the aim to enable their adoption in safety critical systems such as self-driving cars or aircraft collision-avoidance \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "105", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Chen:2023:CES, author = "Zhenpeng Chen and Jie M. Zhang and Federica Sarro and Mark Harman", title = "A Comprehensive Empirical Study of Bias Mitigation Methods for Machine Learning Classifiers", journal = j-TOSEM, volume = "32", number = "4", pages = "106:1--106:??", month = jul, year = "2023", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3583561", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon Jul 3 08:45:48 MDT 2023", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3583561", abstract = "Software bias is an increasingly important operational concern for software engineers. We present a large-scale, comprehensive empirical study of 17 representative bias mitigation methods for Machine Learning (ML) classifiers, evaluated with 11 ML \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "106", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Badampudi:2023:MCR, author = "Deepika Badampudi and Michael Unterkalmsteiner and Ricardo Britto", title = "Modern Code Reviews --- Survey of Literature and Practice", journal = j-TOSEM, volume = "32", number = "4", pages = "107:1--107:??", month = jul, year = "2023", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3585004", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon Jul 3 08:45:48 MDT 2023", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3585004", abstract = "Background: Modern Code Review (MCR) is a lightweight alternative to traditional code inspections. While secondary studies on MCR exist, it is u a nknown whether the research community has targeted themes that practitioners consider important. Objectives: \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "107", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Hidellaarachchi:2023:IHA, author = "Dulaji Hidellaarachchi and John Grundy and Rashina Hoda and Ingo Mueller", title = "The Influence of Human Aspects on Requirements Engineering-related Activities: Software Practitioners' Perspective", journal = j-TOSEM, volume = "32", number = "5", pages = "108:1--108:??", month = sep, year = "2023", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3546943", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Aug 11 07:01:24 MDT 2023", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3546943", abstract = "Requirements Engineering (RE)-related activities require high collaboration between various roles in software engineering (SE), such as requirements engineers, stakeholders, developers, and so on. Their demographics, views, understanding of technologies, \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "108", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Wu:2023:RAK, author = "Di Wu and Xiao-Yuan Jing and Hongyu Zhang and Yang Feng and Haowen Chen and Yuming Zhou and Baowen Xu", title = "Retrieving {API} Knowledge from Tutorials and {Stack Overflow} Based on Natural Language Queries", journal = j-TOSEM, volume = "32", number = "5", pages = "109:1--109:??", month = sep, year = "2023", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3565799", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Aug 11 07:01:24 MDT 2023", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3565799", abstract = "When encountering unfamiliar APIs, developers tend to seek help from API tutorials and Stack Overflow (SO). API tutorials help developers understand the API knowledge in a general context, while SO often explains the API knowledge in a specific \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "109", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Wolter:2023:OSL, author = "Thomas Wolter and Ann Barcomb and Dirk Riehle and Nikolay Harutyunyan", title = "Open Source License Inconsistencies on {GitHub}", journal = j-TOSEM, volume = "32", number = "5", pages = "110:1--110:??", month = sep, year = "2023", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3571852", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Aug 11 07:01:24 MDT 2023", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3571852", abstract = "Almost all software, open or closed, builds on open source software and therefore needs to comply with the license obligations of the open source code. Not knowing which licenses to comply with poses a legal danger to anyone using open source software. \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "110", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Muller:2023:CWH, author = "Katharina M{\"u}ller and Christian Koch and Dirk Riehle and Michael Stops and Nikolay Harutyunyan", title = "Challenges of Working from Home in Software Development During {Covid-19} Lockdowns", journal = j-TOSEM, volume = "32", number = "5", pages = "111:1--111:??", month = sep, year = "2023", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3579636", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Aug 11 07:01:24 MDT 2023", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3579636", abstract = "The COVID-19 pandemic in 2020/2021/2022 and the resulting lockdowns forced many companies to switch to working from home, swiftly, on a large scale, and without preparation. This situation created unique challenges for software development, where \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "111", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Yitagesu:2023:EPB, author = "Sofonias Yitagesu and Zhenchang Xing and Xiaowang Zhang and Zhiyong Feng and Xiaohong Li and Linyi Han", title = "Extraction of Phrase-based Concepts in Vulnerability Descriptions through Unsupervised Labeling", journal = j-TOSEM, volume = "32", number = "5", pages = "112:1--112:??", month = sep, year = "2023", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3579638", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Aug 11 07:01:24 MDT 2023", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3579638", abstract = "Software vulnerabilities, once disclosed, can be documented in vulnerability databases, which have great potential to advance vulnerability analysis and security research. People describe the key characteristics of software vulnerabilities in natural \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "112", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Xu:2023:DTB, author = "Qinghua Xu and Shaukat Ali and Tao Yue", title = "Digital Twin-based Anomaly Detection with Curriculum Learning in Cyber-physical Systems", journal = j-TOSEM, volume = "32", number = "5", pages = "113:1--113:??", month = sep, year = "2023", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3582571", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Aug 11 07:01:24 MDT 2023", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3582571", abstract = "Anomaly detection is critical to ensure the security of cyber-physical systems (CPS). However, due to the increasing complexity of attacks and CPS themselves, anomaly detection in CPS is becoming more and more challenging. In our previous work, we \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "113", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Lavazza:2023:ESF, author = "Luigi Lavazza and Angela Locoro and Geng Liu and Roberto Meli", title = "Estimating Software Functional Size via Machine Learning", journal = j-TOSEM, volume = "32", number = "5", pages = "114:1--114:??", month = sep, year = "2023", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3582575", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Aug 11 07:01:24 MDT 2023", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3582575", abstract = "Measuring software functional size via standard Function Points Analysis (FPA) requires the availability of fully specified requirements and specific competencies. Most of the time, the need to measure software functional size occurs well in advance with \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "114", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Yang:2023:TIG, author = "Jia Yang and Cai Fu and Fengyang Deng and Ming Wen and Xiaowei Guo and Chuanhao Wan", title = "Toward Interpretable Graph Tensor Convolution Neural Network for Code Semantics Embedding", journal = j-TOSEM, volume = "32", number = "5", pages = "115:1--115:??", month = sep, year = "2023", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3582574", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Aug 11 07:01:24 MDT 2023", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3582574", abstract = "Intelligent deep learning-based models have made significant progress for automated source code semantics embedding, and current research works mainly leverage natural language-based methods and graph-based methods. However, natural language-based methods \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "115", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{C:2023:AEB, author = "Shrikanth N. C. and Tim Menzies", title = "Assessing the Early Bird Heuristic (for Predicting Project Quality)", journal = j-TOSEM, volume = "32", number = "5", pages = "116:1--116:??", month = sep, year = "2023", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3583565", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Aug 11 07:01:24 MDT 2023", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3583565", abstract = "Before researchers rush to reason across all available data or try complex methods, perhaps it is prudent to first check for simpler alternatives. Specifically, if the historical data has the most information in some small region, then perhaps a model \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "116", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Camilli:2023:ADD, author = "Matteo Camilli and Carmine Colarusso and Barbara Russo and Eugenio Zimeo", title = "Actor-Driven Decomposition of Microservices through Multi-level Scalability Assessment", journal = j-TOSEM, volume = "32", number = "5", pages = "117:1--117:??", month = sep, year = "2023", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3583563", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Aug 11 07:01:24 MDT 2023", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3583563", abstract = "The microservices architectural style has gained widespread acceptance. However, designing applications according to this style is still challenging. Common difficulties concern finding clear boundaries that guide decomposition while ensuring performance \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "117", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Sarker:2023:AIT, author = "Jaydeb Sarker and Asif Kamal Turzo and Ming Dong and Amiangshu Bosu", title = "Automated Identification of Toxic Code Reviews Using {ToxiCR}", journal = j-TOSEM, volume = "32", number = "5", pages = "118:1--118:??", month = sep, year = "2023", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3583562", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Aug 11 07:01:24 MDT 2023", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3583562", abstract = "Toxic conversations during software development interactions may have serious repercussions on a Free and Open Source Software (FOSS) development project. For example, victims of toxic conversations may become afraid to express themselves, therefore get \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "118", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Liu:2023:FGA, author = "Xuanzhe Liu and Jinfeng Wen and Zhenpeng Chen and Ding Li and Junkai Chen and Yi Liu and Haoyu Wang and Xin Jin", title = "{FaaSLight}: General Application-level Cold-start Latency Optimization for Function-as-a-Service in Serverless Computing", journal = j-TOSEM, volume = "32", number = "5", pages = "119:1--119:??", month = sep, year = "2023", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3585007", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Aug 11 07:01:24 MDT 2023", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3585007", abstract = "Serverless computing is a popular cloud computing paradigm that frees developers from server management. Function-as-a-Service (FaaS) is the most popular implementation of serverless computing, representing applications as event-driven and stateless \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "119", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Davis:2023:WWP, author = "Matthew C. Davis and Emad Aghayi and Thomas D. Latoza and Xiaoyin Wang and Brad A. Myers and Joshua Sunshine", title = "What's (Not) Working in Programmer User Studies?", journal = j-TOSEM, volume = "32", number = "5", pages = "120:1--120:??", month = sep, year = "2023", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3587157", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Aug 11 07:01:24 MDT 2023", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3587157", abstract = "A key goal of software engineering research is to improve the environments, tools, languages, and techniques programmers use to efficiently create quality software. Successfully designing these tools and demonstrating their effectiveness involves engaging \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "120", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Sattler:2023:SIP, author = "Florian Sattler and Sebastian B{\"o}hm and Philipp Dominik Schubert and Norbert Siegmund and Sven Apel", title = "{SEAL}: Integrating Program Analysis and Repository Mining", journal = j-TOSEM, volume = "32", number = "5", pages = "121:1--121:??", month = sep, year = "2023", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3585008", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Aug 11 07:01:24 MDT 2023", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3585008", abstract = "Software projects are complex technical and organizational systems involving large numbers of artifacts and developers. To understand and tame software complexity, a wide variety of program analysis techniques have been developed for bug detection, \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "121", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Zhang:2023:WBF, author = "Man Zhang and Andrea Arcuri and Yonggang Li and Yang Liu and Kaiming Xue", title = "White-Box Fuzzing {RPC}-Based {APIs} with {EvoMaster}: an Industrial Case Study", journal = j-TOSEM, volume = "32", number = "5", pages = "122:1--122:??", month = sep, year = "2023", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3585009", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Aug 11 07:01:24 MDT 2023", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3585009", abstract = "Remote Procedure Call (RPC) is a communication protocol to support client-server interactions among services over a network. RPC is widely applied in industry for building large-scale distributed systems, such as Microservices. Modern RPC frameworks \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "122", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Wei:2023:HTB, author = "Hongwei Wei and Xiaohong Su and Cuiyun Gao and Weining Zheng and Wenxin Tao", title = "A Hypothesis Testing-based Framework for Software Cross-modal Retrieval in Heterogeneous Semantic Spaces", journal = j-TOSEM, volume = "32", number = "5", pages = "123:1--123:??", month = sep, year = "2023", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3591868", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Aug 11 07:01:24 MDT 2023", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3591868", abstract = "Software cross-modal retrieval is a popular yet challenging direction, such as bug localization and code search. Previous studies generally map natural language texts and codes into a homogeneous semantic space for similarity measurement. However, it is \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "123", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Tang:2023:SAD, author = "Shuncheng Tang and Zhenya Zhang and Yi Zhang and Jixiang Zhou and Yan Guo and Shuang Liu and Shengjian Guo and Yan-Fu Li and Lei Ma and Yinxing Xue and Yang Liu", title = "A Survey on Automated Driving System Testing: Landscapes and Trends", journal = j-TOSEM, volume = "32", number = "5", pages = "124:1--124:??", month = sep, year = "2023", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3579642", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Aug 11 07:01:24 MDT 2023", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3579642", abstract = "Automated Driving Systems ( ADS ) have made great achievements in recent years thanks to the efforts from both academia and industry. A typical ADS is composed of multiple modules, including sensing, perception, planning, and control, which brings together \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "124", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Chen:2023:QQO, author = "Jialuo Chen and Jingyi Wang and Xingjun Ma and Youcheng Sun and Jun Sun and Peixin Zhang and Peng Cheng", title = "{QuoTe}: Quality-oriented Testing for Deep Learning Systems", journal = j-TOSEM, volume = "32", number = "5", pages = "125:1--125:??", month = sep, year = "2023", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3582573", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Aug 11 07:01:24 MDT 2023", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3582573", abstract = "Recently, there has been significant growth of interest in applying software engineering techniques for the quality assurance of deep learning (DL) systems. One popular direction is DL testing-that is, given a property of test, defects of DL systems are \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "125", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Huang:2023:CSM, author = "Yuan Huang and Hanyang Guo and Xi Ding and Junhuai Shu and Xiangping Chen and Xiapu Luo and Zibin Zheng and Xiaocong Zhou", title = "A Comparative Study on Method Comment and Inline Comment", journal = j-TOSEM, volume = "32", number = "5", pages = "126:1--126:??", month = sep, year = "2023", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3582570", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Aug 11 07:01:24 MDT 2023", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3582570", abstract = "Code comments are one of the important documents to help developers review and comprehend source code. In recent studies, researchers have proposed many deep learning models to generate the method header comments (i.e., method comment), which have \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "126", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Li:2023:CCG, author = "Meiziniu Li and Jialun Cao and Yongqiang Tian and Tsz On Li and Ming Wen and Shing-Chi Cheung", title = "{COMET}: Coverage-guided Model Generation For Deep Learning Library Testing", journal = j-TOSEM, volume = "32", number = "5", pages = "127:1--127:??", month = sep, year = "2023", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3583566", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Aug 11 07:01:24 MDT 2023", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3583566", abstract = "Recent deep learning (DL) applications are mostly built on top of DL libraries. The quality assurance of these libraries is critical to the dependable deployment of DL applications. Techniques have been proposed to generate various DL models and apply \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "127", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Tian:2023:FDB, author = "Yongqiang Tian and Wuqi Zhang and Ming Wen and Shing-Chi Cheung and Chengnian Sun and Shiqing Ma and Yu Jiang", title = "Finding Deviated Behaviors of the Compressed {DNN} Models for Image Classifications", journal = j-TOSEM, volume = "32", number = "5", pages = "128:1--128:??", month = sep, year = "2023", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3583564", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Aug 11 07:01:24 MDT 2023", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3583564", abstract = "Model compression can significantly reduce the sizes of deep neural network (DNN) models and thus facilitate the dissemination of sophisticated, sizable DNN models, especially for deployment on mobile or embedded devices. However, the prediction results \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "128", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Qi:2023:ABL, author = "Hua Qi and Zhijie Wang and Qing Guo and Jianlang Chen and Felix Juefei-Xu and Fuyuan Zhang and Lei Ma and Jianjun Zhao", title = "{ArchRepair}: Block-Level Architecture-Oriented Repairing for Deep Neural Networks", journal = j-TOSEM, volume = "32", number = "5", pages = "129:1--129:??", month = sep, year = "2023", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3585005", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Aug 11 07:01:24 MDT 2023", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3585005", abstract = "Over the past few years, deep neural networks (DNNs) have achieved tremendous success and have been continuously applied in many application domains. However, during the practical deployment in industrial tasks, DNNs are found to be erroneous-prone due to \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "129", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Zheng:2023:SES, author = "Zibin Zheng and Weili Chen and Zhijie Zhong and Zhiguang Chen and Yutong Lu", title = "Securing the {Ethereum} from Smart {Ponzi} Schemes: Identification Using Static Features", journal = j-TOSEM, volume = "32", number = "5", pages = "130:1--130:??", month = sep, year = "2023", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3571847", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Aug 11 07:01:24 MDT 2023", bibsource = "https://www.math.utah.edu/pub/tex/bib/bitcoin.bib; https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3571847", abstract = "Malware detection approaches have been extensively studied for traditional software systems. However, the development of blockchain technology has promoted the birth of a new type of software system-decentralized applications. Composed of smart contracts, \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "130", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Wen:2023:RPS, author = "Jinfeng Wen and Zhenpeng Chen and Xin Jin and Xuanzhe Liu", title = "Rise of the Planet of Serverless Computing: a Systematic Review", journal = j-TOSEM, volume = "32", number = "5", pages = "131:1--131:??", month = sep, year = "2023", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3579643", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Aug 11 07:01:24 MDT 2023", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3579643", abstract = "Serverless computing is an emerging cloud computing paradigm, being adopted to develop a wide range of software applications. It allows developers to focus on the application logic in the granularity of function, thereby freeing developers from tedious \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "131", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Herrera:2023:DTDa, author = "Adrian Herrera and Mathias Payer and Antony L. Hosking", title = "{DatAFLow}: Toward a Data-Flow-Guided Fuzzer", journal = j-TOSEM, volume = "32", number = "5", pages = "132:1--132:??", month = sep, year = "2023", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3587156", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Aug 11 07:01:24 MDT 2023", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3587156", abstract = "Coverage-guided greybox fuzzers rely on control-flow coverage feedback to explore a target program and uncover bugs. Compared to control-flow coverage, data-flow coverage offers a more fine-grained approximation of program behavior. Data-flow coverage \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "132", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Herrera:2023:DTDb, author = "Adrian Herrera and Mathias Payer and Antony L. Hosking", title = "{DatAFLow}: Toward a Data-flow-guided Fuzzer", journal = j-TOSEM, volume = "32", number = "5", pages = "133:1--133:??", month = sep, year = "2023", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3587159", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Aug 11 07:01:24 MDT 2023", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3587159", abstract = "This Replicating Computational Report (RCR) describes (a) our datAFLow fuzzer and (b) how to replicate the results in ``datAFLow: Toward a Data-Flow-Guided Fuzzer.'' Our primary artifact is the datAFLow fuzzer. Unlike traditional coverage-guided greybox \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "133", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Majumder:2023:FES, author = "Suvodeep Majumder and Joymallya Chakraborty and Gina R. Bai and Kathryn T. Stolee and Tim Menzies", title = "Fair Enough: Searching for Sufficient Measures of Fairness", journal = j-TOSEM, volume = "32", number = "6", pages = "134:1--134:??", month = nov, year = "2023", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3585006", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Oct 4 09:43:36 MDT 2023", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3585006", abstract = "Testing machine learning software for ethical bias has become a pressing current concern. In response, recent research has proposed a plethora of new fairness metrics, for example, the dozens of fairness metrics in the IBM AIF360 toolkit. This raises the \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "134", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Chen:2023:TUD, author = "Junjie Chen and Yihua Liang and Qingchao Shen and Jiajun Jiang and Shuochuan Li", title = "Toward Understanding Deep Learning Framework Bugs", journal = j-TOSEM, volume = "32", number = "6", pages = "135:1--135:??", month = nov, year = "2023", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3587155", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Oct 4 09:43:36 MDT 2023", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3587155", abstract = "DL frameworks are the basis of constructing all DL programs and models, and thus their bugs could lead to the unexpected behaviors of any DL program or model relying on them. Such a wide effect demonstrates the necessity and importance of guaranteeing DL \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "135", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Hassan:2023:UUF, author = "Foyzul Hassan and Na Meng and Xiaoyin Wang", title = "{UniLoc}: Unified Fault Localization of Continuous Integration Failures", journal = j-TOSEM, volume = "32", number = "6", pages = "136:1--136:??", month = nov, year = "2023", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3593799", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Oct 4 09:43:36 MDT 2023", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3593799", abstract = "Continuous integration (CI) practices encourage developers to frequently integrate code into a shared repository. Each integration is validated by automatic build and testing such that errors are revealed as early as possible. When CI failures or \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "136", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Zhang:2023:TIT, author = "Mengdi Zhang and Jun Sun and Jingyi Wang and Bing Sun", title = "{TestSGD}: Interpretable Testing of Neural Networks against Subtle Group Discrimination", journal = j-TOSEM, volume = "32", number = "6", pages = "137:1--137:??", month = nov, year = "2023", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3591869", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Oct 4 09:43:36 MDT 2023", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3591869", abstract = "Discrimination has been shown in many machine learning applications, which calls for sufficient fairness testing before their deployment in ethic-relevant domains. One widely concerning type of discrimination, testing against group discrimination, mostly \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "137", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Bock:2023:ACD, author = "Thomas Bock and Nils Alznauer and Mitchell Joblin and Sven Apel", title = "Automatic Core-Developer Identification on {GitHub}: a Validation Study", journal = j-TOSEM, volume = "32", number = "6", pages = "138:1--138:??", month = nov, year = "2023", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3593803", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Oct 4 09:43:36 MDT 2023", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3593803", abstract = "Many open-source software projects are self-organized and do not maintain official lists with information on developer roles. So, knowing which developers take core and maintainer roles is, despite being relevant, often tacit knowledge. We propose a \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "138", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Zhang:2023:JSH, author = "Man Zhang and Asma Belhadi and Andrea Arcuri", title = "{JavaScript SBST} Heuristics to Enable Effective Fuzzing of {NodeJS} Web {APIs}", journal = j-TOSEM, volume = "32", number = "6", pages = "139:1--139:??", month = nov, year = "2023", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3593801", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Oct 4 09:43:36 MDT 2023", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2020.bib; https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3593801", abstract = "JavaScript is one of the most popular programming languages. However, its dynamic nature poses several challenges to automated testing techniques. In this paper, we propose an approach and open-source tool support to enable white-box testing of JavaScript \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "139", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Wang:2023:XEC, author = "Chong Wang and Xin Peng and Zhenchang Xing and Yue Zhang and Mingwei Liu and Rong Luo and Xiujie Meng", title = "{XCoS}: Explainable Code Search Based on Query Scoping and Knowledge Graph", journal = j-TOSEM, volume = "32", number = "6", pages = "140:1--140:??", month = nov, year = "2023", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3593800", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Oct 4 09:43:36 MDT 2023", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3593800", abstract = "When searching code, developers may express additional constraints (e.g., functional constraints and nonfunctional constraints) on the implementations of desired functionalities in the queries. Existing code search tools treat the queries as a whole and \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "140", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Assi:2023:PCI, author = "Maram Assi and Safwat Hassan and Stefanos Georgiou and Ying Zou", title = "Predicting the Change Impact of Resolving Defects by Leveraging the Topics of Issue Reports in Open Source Software Systems", journal = j-TOSEM, volume = "32", number = "6", pages = "141:1--141:??", month = nov, year = "2023", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3593802", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Oct 4 09:43:36 MDT 2023", bibsource = "https://www.math.utah.edu/pub/tex/bib/gnu.bib; https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3593802", abstract = "Upon receiving a new issue report, practitioners start by investigating the defect type, the potential fixing effort needed to resolve the defect and the change impact. Moreover, issue reports contain valuable information, such as, the title, description \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "141", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Rosa:2023:WQA, author = "Giovanni Rosa and Simone Scalabrino and Gabriele Bavota and Rocco Oliveto", title = "What Quality Aspects Influence the Adoption of {Docker} Images?", journal = j-TOSEM, volume = "32", number = "6", pages = "142:1--142:??", month = nov, year = "2023", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3603111", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Oct 4 09:43:36 MDT 2023", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3603111", abstract = "Docker is a containerization technology that allows developers to ship software applications along with their dependencies in Docker images. Developers can extend existing images using them as base images when writing Dockerfiles. However, a lot of \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "142", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Li:2023:CLE, author = "Jia Li and Ge Li and Zhuo Li and Zhi Jin and Xing Hu and Kechi Zhang and Zhiyi Fu", title = "{CodeEditor}: Learning to Edit Source Code with Pre-trained Models", journal = j-TOSEM, volume = "32", number = "6", pages = "143:1--143:??", month = nov, year = "2023", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3597207", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Oct 4 09:43:36 MDT 2023", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3597207", abstract = "Developers often perform repetitive code editing activities (up to 70\%) for various reasons (e.g., code refactoring) during software development. Many deep learning (DL) models have been proposed to automate code editing by learning from the code editing \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "143", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Zhang:2023:OPF, author = "Man Zhang and Andrea Arcuri", title = "Open Problems in Fuzzing {RESTful APIs}: a Comparison of Tools", journal = j-TOSEM, volume = "32", number = "6", pages = "144:1--144:??", month = nov, year = "2023", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3597205", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Oct 4 09:43:36 MDT 2023", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3597205", abstract = "RESTful APIs are a type of web service that are widely used in industry. In the past few years, a lot of effort in the research community has been spent in designing novel techniques to automatically fuzz those APIs to find faults in them. Many real \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "144", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Suneja:2023:ISA, author = "Sahil Suneja and Yufan Zhuang and Yunhui Zheng and Jim Laredo and Alessandro Morari and Udayan Khurana", title = "Incorporating Signal Awareness in Source Code Modeling: an Application to Vulnerability Detection", journal = j-TOSEM, volume = "32", number = "6", pages = "145:1--145:??", month = nov, year = "2023", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3597202", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Oct 4 09:43:36 MDT 2023", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3597202", abstract = "AI models of code have made significant progress over the past few years. However, many models are actually not learning task-relevant source code features. Instead, they often fit non-relevant but correlated data, leading to a lack of robustness and \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "145", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Batoun:2023:ESG, author = "Mohamed Amine Batoun and Ka Lai Yung and Yuan Tian and Mohammed Sayagh", title = "An Empirical Study on {GitHub} Pull Requests' Reactions", journal = j-TOSEM, volume = "32", number = "6", pages = "146:1--146:??", month = nov, year = "2023", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3597208", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Oct 4 09:43:36 MDT 2023", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3597208", abstract = "The pull request mechanism is commonly used to propose source code modifications and get feedback from the community before merging them into a software repository. On GitHub, practitioners can provide feedback on a pull request by either commenting on \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "146", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Huang:2023:SEC, author = "Qing Huang and Dianshu Liao and Zhenchang Xing and Zhengkang Zuo and Changjing Wang and Xin Xia", title = "Semantic-Enriched Code Knowledge Graph to Reveal Unknowns in Smart Contract Code Reuse", journal = j-TOSEM, volume = "32", number = "6", pages = "147:1--147:??", month = nov, year = "2023", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3597206", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Oct 4 09:43:36 MDT 2023", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3597206", abstract = "Programmers who work with smart contract development often encounter challenges in reusing code from repositories. This is due to the presence of two unknowns that can lead to non-functional and functional failures. These unknowns are implicit \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "147", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Zhang:2023:AIR, author = "Jingxuan Zhang and Junpeng Luo and Jiahui Liang and Lina Gong and Zhiqiu Huang", title = "An Accurate Identifier Renaming Prediction and Suggestion Approach", journal = j-TOSEM, volume = "32", number = "6", pages = "148:1--148:??", month = nov, year = "2023", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3603109", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Oct 4 09:43:36 MDT 2023", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3603109", abstract = "Identifiers play an important role in helping developers analyze and comprehend source code. However, many identifiers exist that are inconsistent with the corresponding code conventions or semantic functions, leading to flawed identifiers. Hence, \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "148", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Jafari:2023:DUS, author = "Abbas Javan Jafari and Diego Elias Costa and Emad Shihab and Rabe Abdalkareem", title = "Dependency Update Strategies and Package Characteristics", journal = j-TOSEM, volume = "32", number = "6", pages = "149:1--149:??", month = nov, year = "2023", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3603110", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Oct 4 09:43:36 MDT 2023", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3603110", abstract = "Managing project dependencies is a key maintenance issue in software development. Developers need to choose an update strategy that allows them to receive important updates and fixes while protecting them from breaking changes. Semantic Versioning was \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "149", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Wei:2023:DMD, author = "Zhengyuan Wei and Haipeng Wang and Imran Ashraf and Wing-Kwong Chan", title = "{DeepPatch}: Maintaining Deep Learning Model Programs to Retain Standard Accuracy with Substantial Robustness Improvement", journal = j-TOSEM, volume = "32", number = "6", pages = "150:1--150:??", month = nov, year = "2023", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3604609", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Oct 4 09:43:36 MDT 2023", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3604609", abstract = "Maintaining a deep learning (DL) model by making the model substantially more robust through retraining with plenty of adversarial examples of non-trivial perturbation strength often reduces the model's standard accuracy. Many existing model repair or \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "150", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Do:2023:OTM, author = "Canh Minh Do and Yati Phyo and Adri{\'a}n Riesco and Kazuhiro Ogata", title = "Optimization Techniques for Model Checking Leads-to Properties in a Stratified Way", journal = j-TOSEM, volume = "32", number = "6", pages = "151:1--151:??", month = nov, year = "2023", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3604610", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Oct 4 09:43:36 MDT 2023", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3604610", abstract = "We devised the L +1-layer divide \& conquer approach to leads-to model checking ( L +1-DCA2L2MC) and its parallel version, and developed sequential and parallel tools for L +1-DCA2L2MC. In a temporal logic called UNITY, designed by Chandy and Misra, the leads-. \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "151", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Sun:2023:RIC, author = "Weifeng Sun and Meng Yan and Zhongxin Liu and Xin Xia and Yan Lei and David Lo", title = "Revisiting the Identification of the Co-evolution of Production and Test Code", journal = j-TOSEM, volume = "32", number = "6", pages = "152:1--152:??", month = nov, year = "2023", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3607183", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Oct 4 09:43:36 MDT 2023", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3607183", abstract = "Many software processes advocate that the test code should co-evolve with the production code. Prior work usually studies such co-evolution based on production-test co-evolution samples mined from software repositories. A production-test co-evolution \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "152", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Mo:2023:EIC, author = "Ran Mo and Yao Zhang and Yushuo Wang and Siyuan Zhang and Pu Xiong and Zengyang Li and Yang Zhao", title = "Exploring the Impact of Code Clones on Deep Learning Software", journal = j-TOSEM, volume = "32", number = "6", pages = "153:1--153:??", month = nov, year = "2023", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3607181", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Oct 4 09:43:36 MDT 2023", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3607181", abstract = "Deep learning (DL) is a really active topic in recent years. Code cloning is a common code implementation that could negatively impact software maintenance. For DL software, developers rely heavily on frameworks to implement DL features. Meanwhile, to \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "153", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Huang:2023:PPR, author = "Yuheng Huang and Lei Ma and Yuanchun Li", title = "{PatchCensor}: Patch Robustness Certification for Transformers via Exhaustive Testing", journal = j-TOSEM, volume = "32", number = "6", pages = "154:1--154:??", month = nov, year = "2023", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3591870", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Oct 4 09:43:36 MDT 2023", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3591870", abstract = "In the past few years, Transformer has been widely adopted in many domains and applications because of its impressive performance. Vision Transformer (ViT), a successful and well-known variant, attracts considerable attention from both industry and \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "154", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Hutiri:2023:TAF, author = "Wiebke (Toussaint) Hutiri and Aaron Yi Ding and Fahim Kawsar and Akhil Mathur", title = "Tiny, Always-on, and Fragile: Bias Propagation through Design Choices in On-device Machine Learning Workflows", journal = j-TOSEM, volume = "32", number = "6", pages = "155:1--155:??", month = nov, year = "2023", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3591867", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Oct 4 09:43:36 MDT 2023", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3591867", abstract = "Billions of distributed, heterogeneous, and resource constrained IoT devices deploy on-device machine learning (ML) for private, fast, and offline inference on personal data. On-device ML is highly context dependent and sensitive to user, usage, hardware, \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "155", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Liu:2023:RDD, author = "Xuanzhe Liu and Diandian Gu and Zhenpeng Chen and Jinfeng Wen and Zili Zhang and Yun Ma and Haoyu Wang and Xin Jin", title = "Rise of Distributed Deep Learning Training in the Big Model Era: From a Software Engineering Perspective", journal = j-TOSEM, volume = "32", number = "6", pages = "156:1--156:??", month = nov, year = "2023", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3597204", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Oct 4 09:43:36 MDT 2023", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3597204", abstract = "Deep learning (DL) has become a key component of modern software. In the `` big model '' era, the rich features of DL-based software (i.e., DL software) substantially rely on powerful DL models, e.g., BERT, GPT-3, and the recently emerging GPT-4, which are \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "156", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Wang:2023:PIM, author = "Shangwen Wang and Ming Wen and Bo Lin and Yepang Liu and Tegawend{\'e} F. Bissyand{\'e} and Xiaoguang Mao", title = "Pre-implementation Method Name Prediction for Object-oriented Programming", journal = j-TOSEM, volume = "32", number = "6", pages = "157:1--157:??", month = nov, year = "2023", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3597203", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Oct 4 09:43:36 MDT 2023", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3597203", abstract = "Method naming is a challenging development task in object-oriented programming. In recent years, several research efforts have been undertaken to provide automated tool support for assisting developers in this task. In general, literature approaches \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "157", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Yang:2023:TPB, author = "Shouguo Yang and Zhengzi Xu and Yang Xiao and Zhe Lang and Wei Tang and Yang Liu and Zhiqiang Shi and Hong Li and Limin Sun", title = "Towards Practical Binary Code Similarity Detection: Vulnerability Verification via Patch Semantic Analysis", journal = j-TOSEM, volume = "32", number = "6", pages = "158:1--158:??", month = nov, year = "2023", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3604608", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Oct 4 09:43:36 MDT 2023", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3604608", abstract = "Vulnerability is a major threat to software security. It has been proven that binary code similarity detection approaches are efficient to search for recurring vulnerabilities introduced by code sharing in binary software. However, these approaches suffer \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "158", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Rahman:2023:SRA, author = "Mohammad Masudur Rahman and Chanchal K. Roy", title = "A Systematic Review of Automated Query Reformulations in Source Code Search", journal = j-TOSEM, volume = "32", number = "6", pages = "159:1--159:??", month = nov, year = "2023", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3607179", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Oct 4 09:43:36 MDT 2023", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3607179", abstract = "Fixing software bugs and adding new features are two of the major maintenance tasks. Software bugs and features are reported as change requests. Developers consult these requests and often choose a few keywords from them as an ad hoc query. Then they \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "159", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Qin:2023:NTE, author = "Shisong Qin and Fan Hu and Zheyu Ma and Bodong Zhao and Tingting Yin and Chao Zhang", title = "{NSFuzz}: Towards Efficient and State-Aware Network Service Fuzzing", journal = j-TOSEM, volume = "32", number = "6", pages = "160:1--160:??", month = nov, year = "2023", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3580598", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Oct 4 09:43:36 MDT 2023", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3580598", abstract = "As an essential component responsible for communication, network services are security critical, thus, it is vital to find their vulnerabilities. Fuzzing is currently one of the most popular software vulnerability discovery techniques, widely adopted due \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "160", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Hu:2023:NTE, author = "Fan Hu and Shisong Qin and Zheyu Ma and Bodong Zhao and Tingting Yin and Chao Zhang", title = "{NSFuzz}: Towards Efficient and State-Aware Network Service Fuzzing --- {RCR} Report", journal = j-TOSEM, volume = "32", number = "6", pages = "161:1--161:??", month = nov, year = "2023", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3580599", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Oct 4 09:43:36 MDT 2023", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3580599", abstract = "We provide artifacts to reproduce the evaluation results of our article: ``NSFuzz: Towards Efficient and State-Aware Network Service Fuzzing''. The provided artifacts can be downloaded from . It includes 14 docker containers, \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "161", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Pezze:2024:ETF, author = "Mauro Pezz{\`e}", title = "Editorial: Toward the Future with Eight Issues Per Year", journal = j-TOSEM, volume = "33", number = "1", pages = "1:1--1:??", month = jan, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3637444", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Apr 10 09:12:06 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3637444", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "1e", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Yang:2024:APE, author = "Shouguo Yang and Chaopeng Dong and Yang Xiao and Yiran Cheng and Zhiqiang Shi and Zhi Li and Limin Sun", title = "{Asteria-Pro}: Enhancing Deep Learning-based Binary Code Similarity Detection by Incorporating Domain Knowledge", journal = j-TOSEM, volume = "33", number = "1", pages = "1:1--1:??", month = jan, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3604611", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Apr 10 09:12:06 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3604611", abstract = "Widespread code reuse allows vulnerabilities to proliferate among a vast variety of firmware. There is an urgent need to detect these vulnerable codes effectively and efficiently. By measuring code similarities, AI-based binary code similarity detection. \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "1", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Liu:2024:APE, author = "Xuanzhe Liu and Chengxu Yang and Ding Li and Yuhan Zhou and Shaofei Li and Jiali Chen and Zhenpeng Chen", title = "{Adonis}: Practical and Efficient Control Flow Recovery through {OS}-level Traces", journal = j-TOSEM, volume = "33", number = "1", pages = "2:1--2:??", month = jan, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3607187", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Apr 10 09:12:06 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3607187", abstract = "Control flow recovery is critical to promise the software quality, especially for large-scale software in production environment. However, the efficiency of most current control flow recovery techniques is compromised due to their runtime overheads along \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "2", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Ma:2024:FLD, author = "Suyu Ma and Chunyang Chen and Hourieh Khalajzadeh and John Grundy", title = "A First Look at Dark Mode in Real-world {Android} Apps", journal = j-TOSEM, volume = "33", number = "1", pages = "3:1--3:??", month = jan, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3604607", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Apr 10 09:12:06 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3604607", abstract = "Android apps often have a ``dark mode'' option used in low-light situations, for those who find the conventional color palette problematic, or because of personal preferences. Typically developers add a dark mode option for their apps with different \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "3", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Wu:2024:PEM, author = "Jiarong Wu and Lili Wei and Yanyan Jiang and Shing-Chi Cheung and Luyao Ren and Chang Xu", title = "Programming by Example Made Easy", journal = j-TOSEM, volume = "33", number = "1", pages = "4:1--4:??", month = jan, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3607185", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Apr 10 09:12:06 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3607185", abstract = "Programming by example (PBE) is an emerging programming paradigm that automatically synthesizes programs specified by user-provided input-output examples. Despite the convenience for end-users, implementing PBE tools often requires strong expertise in \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "4", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Bessghaier:2024:WCD, author = "Narjes Bessghaier and Mohammed Sayagh and Ali Ouni and Mohamed Wiem Mkaouer", title = "What Constitutes the Deployment and Runtime Configuration System? {An} Empirical Study on {OpenStack} Projects", journal = j-TOSEM, volume = "33", number = "1", pages = "5:1--5:??", month = jan, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3607186", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Apr 10 09:12:06 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3607186", abstract = "Modern software systems are designed to be deployed in different configured environments (e.g., permissions, virtual resources, network connections) and adapted at runtime to different situations (e.g., memory limits, enabling/disabling features, database \ldots{})", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "5", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Huang:2024:AER, author = "Qing Huang and Yanbang Sun and Zhenchang Xing and Min Yu and Xiwei Xu and Qinghua Lu", title = "{API} Entity and Relation Joint Extraction from Text via Dynamic Prompt-tuned Language Model", journal = j-TOSEM, volume = "33", number = "1", pages = "6:1--6:??", month = jan, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3607188", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Apr 10 09:12:06 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3607188", abstract = "Extraction of Application Programming Interfaces (APIs) and their semantic relations from unstructured text (e.g., Stack Overflow) is a fundamental work for software engineering tasks (e.g., API recommendation). However, existing approaches are rule based \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "6", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Oh:2024:FNO, author = "Jeho Oh and Don Batory and Rub{\'e}n Heradio", title = "Finding Near-optimal Configurations in Colossal Spaces with Statistical Guarantees", journal = j-TOSEM, volume = "33", number = "1", pages = "7:1--7:??", month = jan, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3611663", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Apr 10 09:12:06 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3611663", abstract = "A Software Product Line (SPL) is a family of similar programs. Each program is defined by a unique set of features, called a configuration, that satisfies all feature constraints. ``What configuration achieves the best performance for a given workload?'' is \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "7", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Sun:2024:IGM, author = "Chang-Ai Sun and Hepeng Dai and Ning Geng and Huai Liu and Tsong Yueh Chen and Peng Wu and Yan Cai and Jinqiu Wang", title = "An Interleaving Guided Metamorphic Testing Approach for Concurrent Programs", journal = j-TOSEM, volume = "33", number = "1", pages = "8:1--8:??", month = jan, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3607182", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Apr 10 09:12:06 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3607182", abstract = "Concurrent programs are normally composed of multiple concurrent threads sharing memory space. These threads are often interleaved, which may lead to some non-determinism in execution results, even for the same program input. This poses huge challenges to \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "8", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Taipalus:2024:FSE, author = "Toni Taipalus and Hilkka Grahn", title = "Framework for {SQL} Error Message Design: a Data-Driven Approach", journal = j-TOSEM, volume = "33", number = "1", pages = "9:1--9:??", month = jan, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3607180", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Apr 10 09:12:06 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3607180", abstract = "Software developers use a significant amount of time reading and interpreting error messages. However, error messages have often been based on either anecdotal evidence or expert opinion, disregarding novices, who arguably are the ones who benefit the \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "9", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Clark:2024:TCS, author = "Andrew G. Clark and Michael Foster and Benedikt Prifling and Neil Walkinshaw and Robert M. Hierons and Volker Schmidt and Robert D. Turner", title = "Testing Causality in Scientific Modelling Software", journal = j-TOSEM, volume = "33", number = "1", pages = "10:1--10:??", month = jan, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3607184", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Apr 10 09:12:06 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3607184", abstract = "From simulating galaxy formation to viral transmission in a pandemic, scientific models play a pivotal role in developing scientific theories and supporting government policy decisions that affect us all. Given these critical applications, a poor \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "10", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Liu:2024:HAK, author = "Jianzhong Liu and Yuheng Shen and Yiru Xu and Hao Sun and Yu Jiang", title = "{Horus}: Accelerating Kernel Fuzzing through Efficient {Host--VM} Memory Access Procedures", journal = j-TOSEM, volume = "33", number = "1", pages = "11:1--11:??", month = jan, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3611665", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Apr 10 09:12:06 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib; https://www.math.utah.edu/pub/tex/bib/virtual-machines.bib", URL = "https://dl.acm.org/doi/10.1145/3611665", abstract = "Kernel fuzzing is an effective technique in operating system vulnerability detection. Fuzzers such as Syzkaller and Moonshine frequently pass highly structured data between fuzzer processes in guest virtual machines and manager processes in the host \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "11", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Entekhabi:2024:AET, author = "Sina Entekhabi and Wojciech Mostowski and Mohammad Reza Mousavi", title = "Automated and Efficient Test-Generation for Grid-Based Multiagent Systems: Comparing Random Input Filtering versus Constraint Solving", journal = j-TOSEM, volume = "33", number = "1", pages = "12:1--12:??", month = jan, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3624736", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Apr 10 09:12:06 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3624736", abstract = "Automatic generation of random test inputs is an approach that can alleviate the challenges of manual test case design. However, random test cases may be ineffective in fault detection and increase testing cost, especially in systems where test execution \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "12", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Furia:2024:TCA, author = "Carlo A. Furia and Richard Torkar and Robert Feldt", title = "Towards Causal Analysis of Empirical Software Engineering Data: The Impact of Programming Languages on Coding Competitions", journal = j-TOSEM, volume = "33", number = "1", pages = "13:1--13:??", month = jan, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3611667", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Apr 10 09:12:06 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3611667", abstract = "There is abundant observational data in the software engineering domain, whereas running large-scale controlled experiments is often practically impossible. Thus, most empirical studies can only report statistical correlations -instead of potentially more \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "13", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Nourry:2024:HSF, author = "Olivier Nourry and Yutaro Kashiwa and Bin Lin and Gabriele Bavota and Michele Lanza and Yasutaka Kamei", title = "The Human Side of Fuzzing: Challenges Faced by Developers during Fuzzing Activities", journal = j-TOSEM, volume = "33", number = "1", pages = "14:1--14:??", month = jan, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3611668", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Apr 10 09:12:06 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3611668", abstract = "Fuzz testing, also known as fuzzing, is a software testing technique aimed at identifying software vulnerabilities. In recent decades, fuzzing has gained increasing popularity in the research community. However, existing studies led by fuzzing experts \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "14", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Liu:2024:ADI, author = "Pei Liu and Yanjie Zhao and Mattia Fazzini and Haipeng Cai and John Grundy and Li Li", title = "Automatically Detecting Incompatible {Android} {APIs}", journal = j-TOSEM, volume = "33", number = "1", pages = "15:1--15:??", month = jan, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3624737", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Apr 10 09:12:06 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3624737", abstract = "Fragmentation is a serious problem in the Android ecosystem, which is mainly caused by the fast evolution of the system itself and the various system customizations. Many efforts have attempted to mitigate its impact via approaches to automatically \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "15", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Zhu:2024:SAG, author = "Hengcheng Zhu and Lili Wei and Valerio Terragni and Yepang Liu and Shing-Chi Cheung and Jiarong Wu and Qin Sheng and Bing Zhang and Lihong Song", title = "{StubCoder}: Automated Generation and Repair of Stub Code for {Mock} Objects", journal = j-TOSEM, volume = "33", number = "1", pages = "16:1--16:??", month = jan, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3617171", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Apr 10 09:12:06 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3617171", abstract = "Mocking is an essential unit testing technique for isolating the class under test from its dependencies. Developers often leverage mocking frameworks to develop stub code that specifies the behaviors of mock objects. However, developing and maintaining \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "16", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Tian:2024:CSS, author = "Yongqiang Tian and Xueyan Zhang and Yiwen Dong and Zhenyang Xu and Mengxiao Zhang and Yu Jiang and Shing-Chi Cheung and Chengnian Sun", title = "On the Caching Schemes to Speed Up Program Reduction", journal = j-TOSEM, volume = "33", number = "1", pages = "17:1--17:??", month = jan, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3617172", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Apr 10 09:12:06 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3617172", abstract = "Program reduction is a highly practical, widely demanded technique to help debug language tools, such as compilers, interpreters and debuggers. Given a program P that exhibits a property $ \psi $, conceptually, program reduction iteratively applies various \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "17", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Mandrioli:2024:TAC, author = "Claudio Mandrioli and Max Nyberg Carlsson and Martina Maggio", title = "Testing Abstractions for Cyber-Physical Control Systems", journal = j-TOSEM, volume = "33", number = "1", pages = "18:1--18:??", month = jan, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3617170", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Apr 10 09:12:06 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3617170", abstract = "Control systems are ubiquitous and often at the core of Cyber-Physical Systems, like cars and aeroplanes. They are implemented as embedded software that interacts in closed loop with the physical world through sensors and actuators. As a consequence, the \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "18", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Fang:2024:DQP, author = "Wang Fang and Mingsheng Ying and Xiaodi Wu", title = "Differentiable Quantum Programming with Unbounded Loops", journal = j-TOSEM, volume = "33", number = "1", pages = "19:1--19:??", month = jan, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3617178", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Apr 10 09:12:06 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3617178", abstract = "The emergence of variational quantum applications has led to the development of automatic differentiation techniques in quantum computing. Existing work has formulated differentiable quantum programming with bounded loops, providing a framework for \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "19", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Yang:2024:TTI, author = "Yuanhang Yang and Wei He and Cuiyun Gao and Zenglin Xu and Xin Xia and Chuanyi Liu", title = "{TopicAns}: Topic-informed Architecture for Answer Recommendation on Technical {Q\&A} Site", journal = j-TOSEM, volume = "33", number = "1", pages = "20:1--20:??", month = jan, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3607189", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Apr 10 09:12:06 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3607189", abstract = "Technical Q\&A sites, such as Stack Overflow and Ask Ubuntu, have been widely utilized by software engineers to seek support for development challenges. However, not all the raised questions get instant feedback, and the retrieved answers can vary in \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "20", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Li:2024:FRF, author = "Tianlin Li and Xiaofei Xie and Jian Wang and Qing Guo and Aishan Liu and Lei Ma and Yang Liu", title = "{Faire}: Repairing Fairness of Neural Networks via Neuron Condition Synthesis", journal = j-TOSEM, volume = "33", number = "1", pages = "21:1--21:??", month = jan, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3617168", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Apr 10 09:12:06 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3617168", abstract = "Deep Neural Networks (DNNs) have achieved tremendous success in many applications, while it has been demonstrated that DNNs can exhibit some undesirable behaviors on concerns such as robustness, privacy, and other trustworthiness issues. Among them, \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "21", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Dang:2024:GMB, author = "Xueqi Dang and Yinghua Li and Mike Papadakis and Jacques Klein and Tegawend{\'e} F. Bissyand{\'e} and Yves {Le Traon}", title = "{GraphPrior}: Mutation-based Test Input Prioritization for Graph Neural Networks", journal = j-TOSEM, volume = "33", number = "1", pages = "22:1--22:??", month = jan, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3607191", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Apr 10 09:12:06 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3607191", abstract = "Graph Neural Networks (GNNs) have achieved promising performance in a variety of practical applications. Similar to traditional DNNs, GNNs could exhibit incorrect behavior that may lead to severe consequences, and thus testing is necessary and crucial. \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "22", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Zhi:2024:SST, author = "Yuhan Zhi and Xiaofei Xie and Chao Shen and Jun Sun and Xiaoyu Zhang and Xiaohong Guan", title = "Seed Selection for Testing Deep Neural Networks", journal = j-TOSEM, volume = "33", number = "1", pages = "23:1--23:??", month = jan, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3607190", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Apr 10 09:12:06 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3607190", abstract = "Deep learning (DL) has been applied in many applications. Meanwhile, the quality of DL systems is becoming a big concern. To evaluate the quality of DL systems, a number of DL testing techniques have been proposed. To generate test cases, a set of initial \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "23", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Guo:2024:SCG, author = "Hanyang Guo and Xiangping Chen and Yuan Huang and Yanlin Wang and Xi Ding and Zibin Zheng and Xiaocong Zhou and Hong-Ning Dai", title = "Snippet Comment Generation Based on Code Context Expansion", journal = j-TOSEM, volume = "33", number = "1", pages = "24:1--24:??", month = jan, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3611664", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Apr 10 09:12:06 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3611664", abstract = "Code commenting plays an important role in program comprehension. Automatic comment generation helps improve software maintenance efficiency. The code comments to annotate a method mainly include header comments and snippet comments. The header comment \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "24", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Hu:2024:LLF, author = "Qiang Hu and Yuejun Guo and Xiaofei Xie and Maxime Cordy and Mike Papadakis and Yves {Le Traon}", title = "{LaF}: Labeling-free Model Selection for Automated Deep Neural Network Reusing", journal = j-TOSEM, volume = "33", number = "1", pages = "25:1--25:??", month = jan, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3611666", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Apr 10 09:12:06 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3611666", abstract = "Applying deep learning (DL) to science is a new trend in recent years, which leads DL engineering to become an important problem. Although training data preparation, model architecture design, and model training are the normal processes to build DL models,. \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "25", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Hu:2024:FLD, author = "Han Hu and Yujin Huang and Qiuyuan Chen and Terry Yue Zhuo and Chunyang Chen", title = "A First Look at On-device Models in {iOS} Apps", journal = j-TOSEM, volume = "33", number = "1", pages = "26:1--26:??", month = jan, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3617177", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Apr 10 09:12:06 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3617177", abstract = "Powered by the rising popularity of deep learning techniques on smartphones, on-device deep learning models are being used in vital fields such as finance, social media, and driving assistance. Because of the transparency of the Android platform and the \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "26", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Golmohammadi:2024:TRA, author = "Amid Golmohammadi and Man Zhang and Andrea Arcuri", title = "Testing {RESTful APIs}: a Survey", journal = j-TOSEM, volume = "33", number = "1", pages = "27:1--27:??", month = jan, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3617175", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Apr 10 09:12:06 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3617175", abstract = "In industry, RESTful APIs are widely used to build modern Cloud Applications. Testing them is challenging, because not only do they rely on network communications, but also they deal with external services like databases. Therefore, there has been a large \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "27", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Weiss:2024:ATSa, author = "Michael Weiss and Paolo Tonella", title = "Adopting Two Supervisors for Efficient Use of Large-Scale Remote Deep Neural Networks", journal = j-TOSEM, volume = "33", number = "1", pages = "28:1--28:??", month = jan, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3617593", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Apr 10 09:12:06 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3617593", abstract = "Recent decades have seen the rise of large-scale Deep Neural Networks (DNNs) to achieve human-competitive performance in a variety of AI tasks. Often consisting of hundreds of million, if not hundreds of billion, parameters, these DNNs are too large to be \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "28", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Weiss:2024:ATSb, author = "Michael Weiss and Paolo Tonella", title = "Adopting Two Supervisors for Efficient Use of Large-Scale Remote Deep Neural Networks --- {RCR} Report", journal = j-TOSEM, volume = "33", number = "1", pages = "29:1--29:??", month = jan, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3617594", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Apr 10 09:12:06 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3617594", abstract = "This is the Replicated Computational Results (RCR) Report for our TOSEM paper ``Adopting Two Supervisors for Efficient Use of Large-Scale Remote Deep Neural Networks'', where we propose a novel client-server architecture allowing to leverage the high \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "29", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Zhou:2024:DDR, author = "Yu Zhou and Weilin Zhan and Zi Li and Tingting Han and Taolue Chen and Harald Gall", title = "{DRIVE}: Dockerfile Rule Mining and Violation Detection", journal = j-TOSEM, volume = "33", number = "2", pages = "30:1--30:??", month = feb, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3617173", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Apr 10 09:12:08 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3617173", abstract = "A Dockerfile defines a set of instructions to build Docker images, which can then be instantiated to support containerized applications. Recent studies have revealed a considerable amount of quality issues with Dockerfiles. In this article, we propose a \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "30", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Huang:2024:FIP, author = "Qing Huang and Zhiqiang Yuan and Zhenchang Xing and Xin Peng and Xiwei Xu and Qinghua Lu", title = "{FQN} Inference in Partial Code by Prompt-tuned Language Model of Code", journal = j-TOSEM, volume = "33", number = "2", pages = "31:1--31:??", month = feb, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3617174", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Apr 10 09:12:08 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3617174", abstract = "Partial code usually involves non-fully-qualified type names (non-FQNs) and undeclared receiving objects. Resolving the FQNs of these non-FQN types and undeclared receiving objects (referred to as type inference) is the prerequisite to effective search \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "31", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Lee:2024:PSW, author = "Jaekwon Lee and Seung Yeob Shin and Lionel C. Briand and Shiva Nejati", title = "Probabilistic Safe {WCET} Estimation for Weakly Hard Real-time Systems at Design Stages", journal = j-TOSEM, volume = "33", number = "2", pages = "32:1--32:??", month = feb, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3617176", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Apr 10 09:12:08 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3617176", abstract = "Weakly hard real-time systems can, to some degree, tolerate deadline misses, but their schedulability still needs to be analyzed to ensure their quality of service. Such analysis usually occurs at early design stages to provide implementation guidelines \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "32", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Rolland:2024:ASN, author = "Knut H. Rolland and Brian Fitzgerald and Torgeir Dings{\o}yr and Klaas-Jan Stol", title = "Acrobats and Safety Nets: Problematizing Large-Scale Agile Software Development", journal = j-TOSEM, volume = "33", number = "2", pages = "33:1--33:??", month = feb, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3617169", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Apr 10 09:12:08 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3617169", abstract = "Agile development methods have become a standard in the software industry, including in large-scale projects. These methods share a set of underlying assumptions that distinguish them from more traditional plan-driven approaches. In this article, we adopt \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "33", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Zheng:2024:CLS, author = "Xiaoye Zheng and Zhiyuan Wan and Yun Zhang and Rui Chang and David Lo", title = "A Closer Look at the Security Risks in the {Rust} Ecosystem", journal = j-TOSEM, volume = "33", number = "2", pages = "34:1--34:??", month = feb, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3624738", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Apr 10 09:12:08 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/rust.bib; https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3624738", abstract = "Rust is an emerging programming language designed for the development of systems software. To facilitate the reuse of Rust code, crates.io, as a central package registry of the Rust ecosystem, hosts thousands of third-party Rust packages. The openness of rates.io enables the growth of the Rust ecosystem but comes with security risks by severe security advisories. Although Rust guarantees a software program to be safe via programming language features and strict compile-time checking, the unsafe keyword in Rust allows developers to bypass compiler safety checks for certain regions of code. Prior studies empirically investigate the memory safety and concurrency bugs in the Rust ecosystem, as well as the usage of unsafe keywords in practice. Nonetheless, the literature lacks a systematic investigation of the security risks in the Rust ecosystem.\par In this article, we perform a comprehensive investigation into the security risks present in the Rust ecosystem, asking ``what are the characteristics of the vulnerabilities, what are the characteristics of the vulnerable packages, and how are the vulnerabilities fixed in practice?''. To facilitate the study, we first compile a dataset of 433 vulnerabilities, 300 vulnerable code repositories, and 218 vulnerability fix commits in the Rust ecosystem, spanning over 7 years. With the dataset, we characterize the types, life spans, and evolution of the disclosed vulnerabilities. We then characterize the popularity, categorization, and vulnerability density of the vulnerable Rust packages, as well as their versions and code regions affected by the disclosed vulnerabilities. Finally, we characterize the complexity of vulnerability fixes and localities of corresponding code changes, and inspect how practitioners fix vulnerabilities in Rust packages with various localities.\par We find that memory safety and concurrency issues account for nearly two thirds of the vulnerabilities in the Rust ecosystem. It takes over 2 years for the vulnerabilities to become publicly disclosed, and one-third of the vulnerabilities have no fixes committed before their disclosure. In terms of vulnerability density, we observe a continuous upward trend at the package level over time, but a decreasing trend at the code level since August 2020. In the vulnerable Rust packages, the vulnerable code tends to be localized at the file level, and contains statistically significantly more unsafe functions and blocks than the rest of the code. More popular packages tend to have more vulnerabilities, while the less popular packages suffer from vulnerabilities for more versions. The vulnerability fix commits tend to be localized to a limited number of lines of code. Developers tend to address vulnerable safe functions by adding safe functions or lines to them, vulnerable unsafe blocks by removing them, and vulnerable unsafe functions by modifying unsafe trait implementations. Based on our findings, we discuss implications, provide recommendations for software practitioners, and outline directions for future research.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "34", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Mandrioli:2024:STC, author = "Claudio Mandrioli and Seung Yeob Shin and Martina Maggio and Domenico Bianculli and Lionel Briand", title = "Stress Testing Control Loops in Cyber-physical Systems", journal = j-TOSEM, volume = "33", number = "2", pages = "35:1--35:??", month = feb, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3624742", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Apr 10 09:12:08 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3624742", abstract = "Cyber-physical Systems (CPSs) are often safety-critical and deployed in uncertain environments. Identifying scenarios where CPSs do not comply with requirements is fundamental but difficult due to the multidisciplinary nature of CPSs. We investigate the \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "35", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Khatoonabadi:2024:UHS, author = "Sayedhassan Khatoonabadi and Diego Elias Costa and Suhaib Mujahid and Emad Shihab", title = "Understanding the Helpfulness of Stale Bot for Pull-Based Development: an Empirical Study of 20 Large Open-Source Projects", journal = j-TOSEM, volume = "33", number = "2", pages = "36:1--36:??", month = feb, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3624739", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Apr 10 09:12:08 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3624739", abstract = "Pull Requests (PRs) that are neither progressed nor resolved clutter the list of PRs, making it difficult for the maintainers to manage and prioritize unresolved PRs. To automatically track, follow up, and close such inactive PRs, Stale bot was introduced \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "36", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Zhang:2024:CDW, author = "Yixuan Zhang and Shangtong Cao and Haoyu Wang and Zhenpeng Chen and Xiapu Luo and Dongliang Mu and Yun Ma and Gang Huang and Xuanzhe Liu", title = "Characterizing and Detecting {WebAssembly} Runtime Bugs", journal = j-TOSEM, volume = "33", number = "2", pages = "37:1--37:??", month = feb, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3624743", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Apr 10 09:12:08 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3624743", abstract = "WebAssembly (abbreviated WASM) has emerged as a promising language of the Web and also been used for a wide spectrum of software applications such as mobile applications and desktop applications. These applications, named WASM applications, commonly run \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "37", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Ding:2024:LPI, author = "Zishuo Ding and Yiming Tang and Xiaoyu Cheng and Heng Li and Weiyi Shang", title = "{LoGenText-Plus}: Improving Neural Machine Translation Based Logging Texts Generation with Syntactic Templates", journal = j-TOSEM, volume = "33", number = "2", pages = "38:1--38:??", month = feb, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3624740", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Apr 10 09:12:08 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3624740", abstract = "Developers insert logging statements in the source code to collect important runtime information about software systems. The textual descriptions in logging statements (i.e., logging texts) are printed during system executions and exposed to multiple \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "38", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Shi:2024:ASE, author = "Weishi Shi and Heather Moses and Qi Yu and Samuel Malachowsky and Daniel E. Krutz", title = "{ALL}: Supporting Experiential Accessibility Education and Inclusive Software Development", journal = j-TOSEM, volume = "33", number = "2", pages = "39:1--39:??", month = feb, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3625292", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Apr 10 09:12:08 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3625292", abstract = "Creating accessible software is imperative for making software inclusive for all users.Unfortunately, the topic of accessibility is frequently excluded from computing education, leading to scenarios where students are unaware of either how to develop \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "39", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Formica:2024:SBS, author = "Federico Formica and Tony Fan and Claudio Menghi", title = "Search-Based Software Testing Driven by Automatically Generated and Manually Defined Fitness Functions", journal = j-TOSEM, volume = "33", number = "2", pages = "40:1--40:??", month = feb, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3624745", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Apr 10 09:12:08 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3624745", abstract = "Search-based software testing (SBST) typically relies on fitness functions to guide the search exploration toward software failures. There are two main techniques to define fitness functions: (a) automated fitness function computation from the \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "40", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Jiang:2024:VBF, author = "Jiajun Jiang and Yumeng Wang and Junjie Chen and Delin Lv and Mengjiao Liu", title = "Variable-based Fault Localization via Enhanced Decision Tree", journal = j-TOSEM, volume = "33", number = "2", pages = "41:1--41:??", month = feb, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3624741", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Apr 10 09:12:08 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3624741", abstract = "Fault localization, aiming at localizing the root cause of the bug under repair, has been a longstanding research topic. Although many approaches have been proposed in past decades, most of the existing studies work at coarse-grained statement or method \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "41", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Huang:2024:HDA, author = "Wei Huang and Xingyu Zhao and Alec Banks and Victoria Cox and Xiaowei Huang", title = "Hierarchical Distribution-aware Testing of Deep Learning", journal = j-TOSEM, volume = "33", number = "2", pages = "42:1--42:??", month = feb, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3625290", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Apr 10 09:12:08 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3625290", abstract = "With its growing use in safety/security-critical applications, Deep Learning (DL) has raised increasing concerns regarding its dependability. In particular, DL has a notorious problem of lacking robustness. Input added with adversarial perturbations, i.e.,. \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "42", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Cao:2024:LDM, author = "Sicong Cao and Xiaobing Sun and Lili Bo and Rongxin Wu and Bin Li and Xiaoxue Wu and Chuanqi Tao and Tao Zhang and Wei Liu", title = "Learning to Detect Memory-related Vulnerabilities", journal = j-TOSEM, volume = "33", number = "2", pages = "43:1--43:??", month = feb, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3624744", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Apr 10 09:12:08 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3624744", abstract = "Memory-related vulnerabilities can result in performance degradation or even program crashes, constituting severe threats to the security of modern software. Despite the promising results of deep learning (DL)-based vulnerability detectors, there exist \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "43", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Ismayilzada:2024:PTP, author = "Elkhan Ismayilzada and Md Mazba Ur Rahman and Dongsun Kim and Jooyong Yi", title = "{Poracle}: Testing Patches under Preservation Conditions to Combat the Overfitting Problem of Program Repair", journal = j-TOSEM, volume = "33", number = "2", pages = "44:1--44:??", month = feb, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3625293", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Apr 10 09:12:08 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3625293", abstract = "To date, the users of test-driven program repair tools suffer from the overfitting problem; a generated patch may pass all available tests without being correct. In the existing work, users are treated as merely passive consumers of the tests. However, \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "44", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Zhou:2024:CVD, author = "Yuanhang Zhou and Fuchen Ma and Yuanliang Chen and Meng Ren and Yu Jiang", title = "{CLFuzz}: Vulnerability Detection of Cryptographic Algorithm Implementation via Semantic-aware Fuzzing", journal = j-TOSEM, volume = "33", number = "2", pages = "45:1--45:??", month = feb, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3628160", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Apr 10 09:12:08 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3628160", abstract = "Cryptography is a core component of many security applications, and flaws hidden in its implementation will affect the functional integrity or, more severely, pose threats to data security. Hence, guaranteeing the correctness of the implementation is \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "45", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Xiang:2024:ATS, author = "Yi Xiang and Han Huang and Sizhe Li and Miqing Li and Chuan Luo and Xiaowei Yang", title = "Automated Test Suite Generation for Software Product Lines Based on Quality-Diversity Optimization", journal = j-TOSEM, volume = "33", number = "2", pages = "46:1--46:??", month = feb, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3628158", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Apr 10 09:12:08 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3628158", abstract = "A Software Product Line (SPL) is a set of software products that are built from a variability model. Real-world SPLs typically involve a vast number of valid products, making it impossible to individually test each of them. This arises the need for \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "46", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Hu:2024:AMA, author = "Han Hu and Ruiqi Dong and John Grundy and Thai Minh Nguyen and Huaxiao Liu and Chunyang Chen", title = "Automated Mapping of Adaptive App {GUIs} from Phones to {TVs}", journal = j-TOSEM, volume = "33", number = "2", pages = "47:1--47:??", month = feb, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3631968", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Apr 10 09:12:08 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3631968", abstract = "With the increasing interconnection of smart devices, users often desire to adopt the same app on quite different devices for identical tasks, such as watching the same movies on both their smartphones and TVs. However, the significant differences in \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "47", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Guo:2024:KKN, author = "Yuejun Guo and Qiang Hu and Xiaofei Xie and Maxime Cordy and Mike Papadakis and {Yves Le Traon}", title = "{KAPE}: $k$ {NN}-based Performance Testing for Deep Code Search", journal = j-TOSEM, volume = "33", number = "2", pages = "48:1--48:??", month = feb, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3624735", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Apr 10 09:12:08 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3624735", abstract = "Code search is a common yet important activity of software developers. An efficient code search model can largely facilitate the development process and improve the programming quality. Given the superb performance of learning the contextual \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "48", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Sun:2024:ALI, author = "Jiamou Sun and Zhenchang Xing and Xin Xia and Qinghua Lu and Xiwei Xu and Liming Zhu", title = "Aspect-level Information Discrepancies across Heterogeneous Vulnerability Reports: Severity, Types and Detection Methods", journal = j-TOSEM, volume = "33", number = "2", pages = "49:1--49:??", month = feb, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3624734", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Apr 10 09:12:08 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3624734", abstract = "Vulnerable third-party libraries pose significant threats to software applications that reuse these libraries. At an industry scale of reuse, manual analysis of third-party library vulnerabilities can be easily overwhelmed by the sheer number of \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "49", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Liu:2024:GBD, author = "Jiawei Liu and Yuheng Huang and Zhijie Wang and Lei Ma and Chunrong Fang and Mingzheng Gu and Xufan Zhang and Zhenyu Chen", title = "Generation-based Differential Fuzzing for Deep Learning Libraries", journal = j-TOSEM, volume = "33", number = "2", pages = "50:1--50:??", month = feb, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3628159", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Apr 10 09:12:08 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3628159", abstract = "Deep learning (DL) libraries have become the key component in developing and deploying DL-based software nowadays. With the growing popularity of applying DL models in both academia and industry across various domains, any bugs inherent in the DL \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "50", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Shin:2024:GBM, author = "Jiho Shin and Moshi Wei and Junjie Wang and Lin Shi and Song Wang", title = "The Good, the Bad, and the Missing: Neural Code Generation for Machine Learning Tasks", journal = j-TOSEM, volume = "33", number = "2", pages = "51:1--51:??", month = feb, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3630009", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Apr 10 09:12:08 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3630009", abstract = "Machine learning (ML) has been increasingly used in a variety of domains, while solving ML programming tasks poses unique challenges due to the fundamental difference in the nature and the construct of general programming tasks, especially for developers \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "51", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Li:2024:LAM, author = "Siyuan Li and Yongpan Wang and Chaopeng Dong and Shouguo Yang and Hong Li and Hao Sun and Zhe Lang and Zuxin Chen and Weijie Wang and Hongsong Zhu and Limin Sun", title = "{LibAM}: an Area Matching Framework for Detecting Third-Party Libraries in Binaries", journal = j-TOSEM, volume = "33", number = "2", pages = "52:1--52:??", month = feb, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3625294", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Apr 10 09:12:08 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3625294", abstract = "Third-party libraries (TPLs) are extensively utilized by developers to expedite the software development process and incorporate external functionalities. Nevertheless, insecure TPL reuse can lead to significant security risks. Existing methods, which \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "52", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Dutra:2024:FEF, author = "Rafael Dutra and Rahul Gopinath and Andreas Zeller", title = "{FormatFuzzer}: Effective Fuzzing of Binary File Formats", journal = j-TOSEM, volume = "33", number = "2", pages = "53:1--53:??", month = feb, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3628157", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Apr 10 09:12:08 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3628157", abstract = "Effective fuzzing of programs that process structured binary inputs, such as multimedia files, is a challenging task, since those programs expect a very specific input format. Existing fuzzers, however, are mostly format-agnostic, which makes them \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "53", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Xie:2024:SCS, author = "Yutao Xie and Jiayi Lin and Hande Dong and Lei Zhang and Zhonghai Wu", title = "Survey of Code Search Based on Deep Learning", journal = j-TOSEM, volume = "33", number = "2", pages = "54:1--54:??", month = feb, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3628161", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Apr 10 09:12:08 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3628161", abstract = "Code writing is repetitive and predictable, inspiring us to develop various code intelligence techniques. This survey focuses on code search, that is, to retrieve code that matches a given natural language query by effectively capturing the semantic \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "54", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Zhang:2024:SLB, author = "Quanjun Zhang and Chunrong Fang and Yuxiang Ma and Weisong Sun and Zhenyu Chen", title = "A Survey of Learning-based Automated Program Repair", journal = j-TOSEM, volume = "33", number = "2", pages = "55:1--55:??", month = feb, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3631974", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Apr 10 09:12:08 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3631974", abstract = "Automated program repair (APR) aims to fix software bugs automatically and plays a crucial role in software development and maintenance. With the recent advances in deep learning (DL), an increasing number of APR techniques have been proposed to leverage \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "55", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Xiao:2024:MEC, author = "Ya Xiao and Wenjia Song and Salman Ahmed and Xinyang Ge and Bimal Viswanath and Na Meng and Danfeng (Daphne) Yao", title = "Measurement of Embedding Choices on Cryptographic {API} Completion Tasks", journal = j-TOSEM, volume = "33", number = "3", pages = "56:1--56:??", month = mar, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3625291", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Apr 10 09:12:11 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/cryptography2020.bib; https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3625291", abstract = "In this article, we conduct a measurement study to comprehensively compare the accuracy impacts of multiple embedding options in cryptographic API completion tasks. Embedding is the process of automatically learning vector representations of program \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "56", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Russo:2024:UDWa, author = "Daniel Russo and Paul H. P. Hanel and Niels {Van Berkel}", title = "Understanding Developers Well-Being and Productivity: a 2-year Longitudinal Analysis during the {COVID-19} Pandemic", journal = j-TOSEM, volume = "33", number = "3", pages = "57:1--57:??", month = mar, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3638244", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Apr 10 09:12:11 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3638244", abstract = "The COVID-19 pandemic has brought significant and enduring shifts in various aspects of life, including increased flexibility in work arrangements. In a longitudinal study, spanning 24 months with six measurement points from April 2020 to April 2022, we \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "57", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Lustosa:2024:LVL, author = "Andre Lustosa and Tim Menzies", title = "Learning from Very Little Data: On the Value of Landscape Analysis for Predicting Software Project Health", journal = j-TOSEM, volume = "33", number = "3", pages = "58:1--58:??", month = mar, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3630252", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Apr 10 09:12:11 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3630252", abstract = "When data is scarce, software analytics can make many mistakes. For example, consider learning predictors for open source project health (e.g., the number of closed pull requests in 12 months time). The training data for this task may be very small (e.g., \ldots{})", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "58", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Yang:2024:LWC, author = "Yanming Yang and Xing Hu and Xin Xia and Xiaohu Yang", title = "The Lost World: Characterizing and Detecting Undiscovered Test Smells", journal = j-TOSEM, volume = "33", number = "3", pages = "59:1--59:??", month = mar, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3631973", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Apr 10 09:12:11 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3631973", abstract = "Test smell refers to poor programming and design practices in testing and widely spreads throughout software projects. Considering test smells have negative impacts on the comprehension and maintenance of test code and even make code-under-test more \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "59", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Yang:2024:HIG, author = "Guang Yang and Yu Zhou and Wenhua Yang and Tao Yue and Xiang Chen and Taolue Chen", title = "How Important Are Good Method Names in Neural Code Generation? {A} Model Robustness Perspective", journal = j-TOSEM, volume = "33", number = "3", pages = "60:1--60:??", month = mar, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3630010", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Apr 10 09:12:11 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3630010", abstract = "Pre-trained code generation models (PCGMs) have been widely applied in neural code generation, which can generate executable code from functional descriptions in natural languages, possibly together with signatures. Despite substantial performance \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "60", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Jiang:2024:PTF, author = "Jiajun Jiang and Junjie Yang and Yingyi Zhang and Zan Wang and Hanmo You and Junjie Chen", title = "A Post-training Framework for Improving the Performance of Deep Learning Models via Model Transformation", journal = j-TOSEM, volume = "33", number = "3", pages = "61:1--61:??", month = mar, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3630011", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Apr 10 09:12:11 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3630011", abstract = "Deep learning (DL) techniques have attracted much attention in recent years and have been applied to many application scenarios. To improve the performance of DL models regarding different properties, many approaches have been proposed in the past decades,. \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "61", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{xexx:2024:PAP, author = "Jia Li and Zhuo Li and Huangzhao Zhang and Ge Li and Zhi Jin and Xing Hu and Xin Xia", title = "Poison Attack and Poison Detection on Deep Source Code Processing Models", journal = j-TOSEM, volume = "33", number = "3", pages = "62:1--62:??", month = mar, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3630008", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Apr 10 09:12:11 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3630008", abstract = "In the software engineering (SE) community, deep learning (DL) has recently been applied to many source code processing tasks, achieving state-of-the-art results. Due to the poor interpretability of DL models, their security vulnerabilities require \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "62", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Li:2024:HMS, author = "Wen Li and Austin Marino and Haoran Yang and Na Meng and Li Li and Haipeng Cai", title = "How Are Multilingual Systems Constructed: Characterizing Language Use and Selection in Open-Source Multilingual Software", journal = j-TOSEM, volume = "33", number = "3", pages = "63:1--63:??", month = mar, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3631967", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Apr 10 09:12:11 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3631967", abstract = "For many years now, modern software is known to be developed in multiple languages (hence termed as multilingual or multi-language software). Yet, to date, we still only have very limited knowledge about how multilingual software systems are constructed. \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "63", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Kochanthara:2024:SPS, author = "Sangeeth Kochanthara and Tajinder Singh and Alexandru Forrai and Loek Cleophas", title = "Safety of Perception Systems for Automated Driving: a Case Study on {Apollo}", journal = j-TOSEM, volume = "33", number = "3", pages = "64:1--64:??", month = mar, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3631969", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Apr 10 09:12:11 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3631969", abstract = "The automotive industry is now known for its software-intensive and safety-critical nature. The industry is on a path to the holy grail of completely automating driving, starting from relatively simple operational areas like highways. One of the most \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "64", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Zirak:2024:IAP, author = "Armin Zirak and Hadi Hemmati", title = "Improving Automated Program Repair with Domain Adaptation", journal = j-TOSEM, volume = "33", number = "3", pages = "65:1--65:??", month = mar, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3631972", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Apr 10 09:12:11 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3631972", abstract = "Automated Program Repair (APR) is defined as the process of fixing a bug/defect in the source code, by an automated tool. APR tools have recently experienced promising results by leveraging state-of-the-art Neural Language Processing (NLP) techniques. APR \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "65", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Tang:2024:OSV, author = "Wensheng Tang and Dejun Dong and Shijie Li and Chengpeng Wang and Peisen Yao and Jinguo Zhou and Charles Zhang", title = "{Octopus}: Scaling Value-Flow Analysis via Parallel Collection of Realizable Path Conditions", journal = j-TOSEM, volume = "33", number = "3", pages = "66:1--66:??", month = mar, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3632743", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Apr 10 09:12:11 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3632743", abstract = "Value-flow analysis is a fundamental technique in program analysis, benefiting various clients, such as memory corruption detection and taint analysis. However, existing efforts suffer from the low potential speedup that leads to a deficiency in \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "66", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Zhu:2024:DBE, author = "Tingwei Zhu and Zhong Li and Minxue Pan and Chaoxuan Shi and Tian Zhang and Yu Pei and Xuandong Li", title = "Deep Is Better? {An} Empirical Comparison of Information Retrieval and Deep Learning Approaches to Code Summarization", journal = j-TOSEM, volume = "33", number = "3", pages = "67:1--67:??", month = mar, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3631975", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Apr 10 09:12:11 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3631975", abstract = "Code summarization aims to generate short functional descriptions for source code to facilitate code comprehension. While Information Retrieval (IR) approaches that leverage similar code snippets and corresponding summaries have led the early research, \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "67", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Zhao:2024:ADU, author = "Zhe Zhao and Guangke Chen and Tong Liu and Taishan Li and Fu Song and Jingyi Wang and Jun Sun", title = "Attack as Detection: Using Adversarial Attack Methods to Detect Abnormal Examples", journal = j-TOSEM, volume = "33", number = "3", pages = "68:1--68:??", month = mar, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3631977", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Apr 10 09:12:11 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3631977", abstract = "As a new programming paradigm, deep learning (DL) has achieved impressive performance in areas such as image processing and speech recognition, and has expanded its application to solve many real-world problems. However, neural networks and DL are \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "68", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{He:2024:RLS, author = "Junda He and Xin Zhou and Bowen Xu and Ting Zhang and Kisub Kim and Zhou Yang and Ferdian Thung and Ivana Clairine Irsan and David Lo", title = "Representation Learning for {Stack Overflow} Posts: How Far Are We?", journal = j-TOSEM, volume = "33", number = "3", pages = "69:1--69:??", month = mar, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3635711", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Apr 10 09:12:11 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3635711", abstract = "The tremendous success of Stack Overflow has accumulated an extensive corpus of software engineering knowledge, thus motivating researchers to propose various solutions for analyzing its content. The performance of such solutions hinges significantly on \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "69", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Qi:2024:RCN, author = "Binhang Qi and Hailong Sun and Hongyu Zhang and Xiang Gao", title = "Reusing Convolutional Neural Network Models through Modularization and Composition", journal = j-TOSEM, volume = "33", number = "3", pages = "70:1--70:??", month = mar, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3632744", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Apr 10 09:12:11 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3632744", abstract = "With the widespread success of deep learning technologies, many trained deep neural network (DNN) models are now publicly available. However, directly reusing the public DNN models for new tasks often fails due to mismatching functionality or performance. \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "70", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Misu:2024:SJB, author = "Md Rakib Hossain Misu and Rohan Achar and Cristina V. Lopes", title = "{SourcererJBF}: a {Java} Build Framework For Large-Scale Compilation", journal = j-TOSEM, volume = "33", number = "3", pages = "71:1--71:??", month = mar, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3635710", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Apr 10 09:12:11 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2020.bib; https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3635710", abstract = "Researchers and tool developers working on dynamic analysis, software testing, automated program repair, verification, and validation, need large compiled, compilable, and executable code corpora to test their ideas. The publicly available corpora are \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "71", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Li:2024:PAL, author = "Zhihao Li and Chuanyi Li and Ze Tang and Wanhong Huang and Jidong Ge and Bin Luo and Vincent Ng and Ting Wang and Yucheng Hu and Xiaopeng Zhang", title = "{PTM-APIRec}: Leveraging Pre-trained Models of Source Code in {API} Recommendation", journal = j-TOSEM, volume = "33", number = "3", pages = "72:1--72:??", month = mar, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3632745", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Apr 10 09:12:11 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3632745", abstract = "Recommending APIs is a practical and essential feature of IDEs. Improving the accuracy of API recommendations is an effective way to improve coding efficiency. With the success of deep learning in software engineering, the state-of-the-art (SOTA) \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "72", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Biagiola:2024:TDR, author = "Matteo Biagiola and Paolo Tonella", title = "Testing of Deep Reinforcement Learning Agents with Surrogate Models", journal = j-TOSEM, volume = "33", number = "3", pages = "73:1--73:??", month = mar, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3631970", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Apr 10 09:12:11 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3631970", abstract = "Deep Reinforcement Learning (DRL) has received a lot of attention from the research community in recent years. As the technology moves away from game playing to practical contexts, such as autonomous vehicles and robotics, it is crucial to evaluate the \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "73", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Giamattei:2024:CDT, author = "Luca Giamattei and Antonio Guerriero and Roberto Pietrantuono and Stefano Russo", title = "Causality-driven Testing of Autonomous Driving Systems", journal = j-TOSEM, volume = "33", number = "3", pages = "74:1--74:??", month = mar, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3635709", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Apr 10 09:12:11 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3635709", abstract = "Testing Autonomous Driving Systems (ADS) is essential for safe development of self-driving cars. For thorough and realistic testing, ADS are usually embedded in a simulator and tested in interaction with the simulated environment. However, their high \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "74", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Sun:2024:EAF, author = "Weisong Sun and Chunrong Fang and Yuchen Chen and Quanjun Zhang and Guanhong Tao and Yudu You and Tingxu Han and Yifei Ge and Yuling Hu and Bin Luo and Zhenyu Chen", title = "An Extractive-and-Abstractive Framework for Source Code Summarization", journal = j-TOSEM, volume = "33", number = "3", pages = "75:1--75:??", month = mar, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3632742", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Apr 10 09:12:11 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3632742", abstract = "(Source) Code summarization aims to automatically generate summaries/comments for given code snippets in the form of natural language. Such summaries play a key role in helping developers understand and maintain source code. Existing code summarization \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "75", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Leeson:2024:ASS, author = "Will Leeson and Matthew B. Dwyer", title = "Algorithm Selection for Software Verification Using Graph Neural Networks", journal = j-TOSEM, volume = "33", number = "3", pages = "76:1--76:??", month = mar, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3637225", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Apr 10 09:12:11 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3637225", abstract = "The field of software verification has produced a wide array of algorithmic techniques that can prove a variety of properties of a given program. It has been demonstrated that the performance of these techniques can vary up to 4 orders of magnitude on the \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "76", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Belgacem:2024:LBR, author = "Hichem Belgacem and Xiaochen Li and Domenico Bianculli and Lionel Briand", title = "Learning-based Relaxation of Completeness Requirements for Data Entry Forms", journal = j-TOSEM, volume = "33", number = "3", pages = "77:1--77:??", month = mar, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3635708", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Apr 10 09:12:11 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3635708", abstract = "Data entry forms use completeness requirements to specify the fields that are required or optional to fill for collecting necessary information from different types of users. However, because of the evolving nature of software, some required fields may \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "77", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Fu:2024:VTI, author = "Michael Fu and Van Nguyen and Chakkrit Tantithamthavorn and Dinh Phung and Trung Le", title = "Vision Transformer Inspired Automated Vulnerability Repair", journal = j-TOSEM, volume = "33", number = "3", pages = "78:1--78:??", month = mar, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3632746", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Apr 10 09:12:11 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3632746", abstract = "Recently, automated vulnerability repair approaches have been widely adopted to combat increasing software security issues. In particular, transformer-based encoder-decoder models achieve competitive results. Whereas vulnerable programs may only consist \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "78", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Gao:2024:CVF, author = "Pengfei Gao and Fu Song and Taolue Chen", title = "Compositional Verification of First-Order Masking Countermeasures against Power Side-Channel Attacks", journal = j-TOSEM, volume = "33", number = "3", pages = "79:1--79:??", month = mar, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3635707", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Apr 10 09:12:11 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3635707", abstract = "Power side-channel attacks allow an adversary to efficiently and effectively steal secret information (e.g., keys) by exploiting the correlation between secret data and runtime power consumption, hence posing a serious threat to software security, \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "79", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Pant:2024:EAA, author = "Aastha Pant and Rashina Hoda and Simone V. Spiegler and Chakkrit Tantithamthavorn and Burak Turhan", title = "Ethics in the Age of {AI}: an Analysis of {AI} Practitioners' Awareness and Challenges", journal = j-TOSEM, volume = "33", number = "3", pages = "80:1--80:??", month = mar, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3635715", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Apr 10 09:12:11 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3635715", abstract = "Ethics in AI has become a debated topic of public and expert discourse in recent years. But what do people who build AI-AI practitioners-have to say about their understanding of AI ethics and the challenges associated with incorporating it into the AI-. \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "80", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Cederbladh:2024:EVV, author = "Johan Cederbladh and Antonio Cicchetti and Jagadish Suryadevara", title = "Early Validation and Verification of System Behaviour in Model-based Systems Engineering: a Systematic Literature Review", journal = j-TOSEM, volume = "33", number = "3", pages = "81:1--81:??", month = mar, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3631976", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Apr 10 09:12:11 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3631976", abstract = "In the Systems Engineering (SE) domain there has been a paradigm shift from document-based to model-based system development artefacts; in fact, new methodologies are emerging to meet the increasing complexity of current systems and the corresponding \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "81", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Russo:2024:UDWb, author = "Daniel Russo and Paul H. P. Hanel and Niels van Berkel", title = "Understanding Developers Well-being and Productivity: a 2-year Longitudinal Analysis during the {COVID-19} {Pandemic-RCR} Report", journal = j-TOSEM, volume = "33", number = "3", pages = "82:1--82:??", month = mar, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3640338", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Apr 10 09:12:11 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3640338", abstract = "The artifact accompanying the paper ``Understanding Developers Well-Being and Productivity: A 2-year Longitudinal Analysis during the COVID-19 Pandemic'' provides a comprehensive set of tools, data, and scripts that were utilized in the longitudinal study. \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "82", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Pezze:2024:EII, author = "Mauro Pezz{\`e}", title = "Editorial: {ICSE} and the Incredible Contradictions of Software Engineering", journal = j-TOSEM, volume = "33", number = "4", pages = "83:1--83:??", month = may, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3656301", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Apr 24 13:33:37 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3656301", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "83", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Pan:2024:EEA, author = "Weifeng Pan and Marouane Kessentini and Hua Ming and Zijiang Yang", title = "{EASE}: an Effort-aware Extension of Unsupervised Key Class Identification Approaches", journal = j-TOSEM, volume = "33", number = "4", pages = "84:1--84:??", month = may, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3635714", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Apr 24 13:33:37 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3635714", abstract = "Key class identification approaches aim at identifying the most important classes to help developers, especially newcomers, start the software comprehension process. So far, many supervised and unsupervised approaches have been proposed; however, they \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "84", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Biringa:2024:PPA, author = "Chidera Biringa and G{\"o}khan Kul", title = "{PACE}: a Program Analysis Framework for Continuous Performance Prediction", journal = j-TOSEM, volume = "33", number = "4", pages = "85:1--85:??", month = may, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3637230", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Apr 24 13:33:37 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3637230", abstract = "Software development teams establish elaborate continuous integration pipelines containing automated test cases to accelerate the development process of software. Automated tests help to verify the correctness of code modifications decreasing the response \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "85", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Zhang:2024:AET, author = "Peng Zhang and Yang Wang and Xutong Liu and Zeyu Lu and Yibiao Yang and Yanhui Li and Lin Chen and Ziyuan Wang and Chang-Ai Sun and Xiao Yu and Yuming Zhou", title = "Assessing Effectiveness of Test Suites: What Do We Know and What Should We Do?", journal = j-TOSEM, volume = "33", number = "4", pages = "86:1--86:??", month = may, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3635713", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Apr 24 13:33:37 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3635713", abstract = "Background. Software testing is a critical activity for ensuring the quality and reliability of software systems. To evaluate the effectiveness of different test suites, researchers have developed a variety of metrics. Problem. However, comparing these \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "86", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Ferrari:2024:UVB, author = "Alessio Ferrari and Thaide Huichapa and Paola Spoletini and Nicole Novielli and Davide Fucci and Daniela Girardi", title = "Using Voice and Biofeedback to Predict User Engagement during Product Feedback Interviews", journal = j-TOSEM, volume = "33", number = "4", pages = "87:1--87:??", month = may, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3635712", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Apr 24 13:33:37 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3635712", abstract = "Capturing users' engagement is crucial for gathering feedback about the features of a software product. In a market-driven context, current approaches to collecting and analyzing users' feedback are based on techniques leveraging information extracted \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "87", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Karre:2024:RMV, author = "Sai Anirudh Karre and Y. Raghu Reddy and Raghav Mittal", title = "{RE} Methods for Virtual Reality Software Product Development: a Mapping Study", journal = j-TOSEM, volume = "33", number = "4", pages = "88:1--88:??", month = may, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3649595", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Apr 24 13:33:37 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3649595", abstract = "Software practitioners use various methods in Requirements Engineering (RE) to elicit, analyze, and specify the requirements of enterprise products. The methods impact the final product characteristics and influence product delivery. Ad-hoc usage of the \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "88", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Chen:2024:SSB, author = "Zhe Chen and Rui Yan and Yingzi Ma and Yulei Sui and Jingling Xue", title = "A Smart Status Based Monitoring Algorithm for the Dynamic Analysis of Memory Safety", journal = j-TOSEM, volume = "33", number = "4", pages = "89:1--89:??", month = may, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3637227", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Apr 24 13:33:37 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3637227", abstract = "C is a dominant programming language for implementing system and low-level embedded software. Unfortunately, the unsafe nature of its low-level control of memory often leads to memory errors. Dynamic analysis has been widely used to detect memory errors \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "89", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Canizares:2024:MCH, author = "Pablo C. Ca{\~n}izares and Jose Mar{\'\i}a L{\'o}pez-Morales and Sara P{\'e}rez-Soler and Esther Guerra and Juan de Lara", title = "Measuring and Clustering Heterogeneous Chatbot Designs", journal = j-TOSEM, volume = "33", number = "4", pages = "90:1--90:??", month = may, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3637228", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Apr 24 13:33:37 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3637228", abstract = "Conversational agents, or chatbots, have become popular to access all kind of software services. They provide an intuitive natural language interface for interaction, available from a wide range of channels including social networks, web pages, \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "90", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Oakes:2024:BDS, author = "Bentley James Oakes and Michalis Famelis and Houari Sahraoui", title = "Building Domain-Specific Machine Learning Workflows: a Conceptual Framework for the State of the Practice", journal = j-TOSEM, volume = "33", number = "4", pages = "91:1--91:??", month = may, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3638243", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Apr 24 13:33:37 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3638243", abstract = "Domain experts are increasingly employing machine learning to solve their domain-specific problems. This article presents to software engineering researchers the six key challenges that a domain expert faces in addressing their problem with a \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "91", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Shao:2024:ESR, author = "Changjie Shao and Gaolei Li and Jun Wu and Xi Zheng", title = "Exploring Semantic Redundancy using Backdoor Triggers: a Complementary Insight into the Challenges Facing {DNN}-based Software Vulnerability Detection", journal = j-TOSEM, volume = "33", number = "4", pages = "92:1--92:??", month = may, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3640333", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Apr 24 13:33:37 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3640333", abstract = "To detect software vulnerabilities with better performance, deep neural networks (DNNs) have received extensive attention recently. However, these vulnerability detection DNN models trained with code representations are vulnerable to specific \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "92", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Jodat:2024:TGS, author = "Baharin A. Jodat and Abhishek Chandar and Shiva Nejati and Mehrdad Sabetzadeh", title = "Test Generation Strategies for Building Failure Models and Explaining Spurious Failures", journal = j-TOSEM, volume = "33", number = "4", pages = "93:1--93:??", month = may, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3638246", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Apr 24 13:33:37 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3638246", abstract = "Test inputs fail not only when the system under test is faulty but also when the inputs are invalid or unrealistic. Failures resulting from invalid or unrealistic test inputs are spurious. Avoiding spurious failures improves the effectiveness of testing \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "93", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Neelofar:2024:IES, author = "Neelofar Neelofar and Aldeida Aleti", title = "Identifying and Explaining Safety-critical Scenarios for Autonomous Vehicles via Key Features", journal = j-TOSEM, volume = "33", number = "4", pages = "94:1--94:??", month = may, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3640335", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Apr 24 13:33:37 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3640335", abstract = "Ensuring the safety of autonomous vehicles (AVs) is of utmost importance, and testing them in simulated environments is a safer option than conducting in-field operational tests. However, generating an exhaustive test suite to identify critical test \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "94", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Clun:2024:RAM, author = "Donato Clun and Donghwan Shin and Antonio Filieri and Domenico Bianculli", title = "Rigorous Assessment of Model Inference Accuracy using Language Cardinality", journal = j-TOSEM, volume = "33", number = "4", pages = "95:1--95:??", month = may, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3640332", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Apr 24 13:33:37 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3640332", abstract = "Models such as finite state automata are widely used to abstract the behavior of software systems by capturing the sequences of events observable during their execution. Nevertheless, models rarely exist in practice and, when they do, get easily outdated; \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "95", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Zhou:2024:AFC, author = "Anshunkang Zhou and Yikun Hu and Xiangzhe Xu and Charles Zhang", title = "{ARCTURUS}: Full Coverage Binary Similarity Analysis with Reachability-guided Emulation", journal = j-TOSEM, volume = "33", number = "4", pages = "96:1--96:??", month = may, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3640337", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Apr 24 13:33:37 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3640337", abstract = "Binary code similarity analysis is extremely useful, since it provides rich information about an unknown binary, such as revealing its functionality and identifying reused libraries. Robust binary similarity analysis is challenging, as heavy compiler \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "96", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Gao:2024:CDL, author = "Kai Gao and Runzhi He and Bing Xie and Minghui Zhou", title = "Characterizing Deep Learning Package Supply Chains in {PyPI}: Domains, Clusters, and Disengagement", journal = j-TOSEM, volume = "33", number = "4", pages = "97:1--97:??", month = may, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3640336", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Apr 24 13:33:37 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/python.bib; https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3640336", abstract = "Deep learning (DL) frameworks have become the cornerstone of the rapidly developing DL field. Through installation dependencies specified in the distribution metadata, numerous packages directly or transitively depend on DL frameworks, layer after layer, \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "97", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Chowdhury:2024:MLB, author = "Shaiful Chowdhury and Gias Uddin and Hadi Hemmati and Reid Holmes", title = "Method-level Bug Prediction: Problems and Promises", journal = j-TOSEM, volume = "33", number = "4", pages = "98:1--98:??", month = may, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3640331", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Apr 24 13:33:37 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3640331", abstract = "Fixing software bugs can be colossally expensive, especially if they are discovered in the later phases of the software development life cycle. As such, bug prediction has been a classic problem for the research community. As of now, the Google Scholar \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "98", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Song:2024:IPC, author = "Qunying Song and Emelie Engstr{\"o}m and Per Runeson", title = "Industry Practices for Challenging Autonomous Driving Systems with Critical Scenarios", journal = j-TOSEM, volume = "33", number = "4", pages = "99:1--99:??", month = may, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3640334", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Apr 24 13:33:37 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3640334", abstract = "Testing autonomous driving systems for safety and reliability is essential, yet complex. A primary challenge is identifying relevant test scenarios, especially the critical ones that may expose hazards or harm to autonomous vehicles and other road users. \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "99", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Zhu:2024:CAT, author = "Mingxuan Zhu and Dan Hao and Junjie Chen", title = "Compiler Autotuning through Multiple-phase Learning", journal = j-TOSEM, volume = "33", number = "4", pages = "100:1--100:??", month = may, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3640330", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Apr 24 13:33:37 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3640330", abstract = "Widely used compilers like GCC and LLVM usually have hundreds of optimizations controlled by optimization flags, which are enabled or disabled during compilation to improve the runtime performance (e.g., small execution time) of the compiler program. Due \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "100", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{LoiolaDeSantana:2024:BAJ, author = "Taijara {Loiola De Santana} and Paulo {Anselmo Da Mota Silveira Neto} and Eduardo {Santana De Almeida} and Iftekhar Ahmed", title = "Bug Analysis in {Jupyter Notebook} Projects: an Empirical Study", journal = j-TOSEM, volume = "33", number = "4", pages = "101:1--101:??", month = may, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3641539", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Apr 24 13:33:37 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3641539", abstract = "Computational notebooks, such as Jupyter, have been widely adopted by data scientists to write code for analyzing and visualizing data. Despite their growing adoption and popularity, few studies have been found to understand Jupyter development challenges \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "101", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Huang:2024:MAD, author = "Zhenfei Huang and Junjie Chen and Jiajun Jiang and Yihua Liang and Hanmo You and Fengjie Li", title = "Mapping {APIs} in Dynamic-typed Programs by Leveraging Transfer Learning", journal = j-TOSEM, volume = "33", number = "4", pages = "102:1--102:??", month = may, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3641848", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Apr 24 13:33:37 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3641848", abstract = "Application Programming Interface (API) migration is a common task for adapting software across different programming languages and platforms, where manually constructing the mapping relations between APIs is indeed time-consuming and error-prone. To \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "102", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Kang:2024:DHM, author = "Sungmin Kang and Robert Feldt and Shin Yoo", title = "Deceiving Humans and Machines Alike: Search-based Test Input Generation for {DNNs} Using Variational Autoencoders", journal = j-TOSEM, volume = "33", number = "4", pages = "103:1--103:??", month = may, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3635706", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Apr 24 13:33:37 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3635706", abstract = "Due to the rapid adoption of Deep Neural Networks (DNNs) into larger software systems, testing of DNN-based systems has received much attention recently. While many different test adequacy criteria have been suggested, we lack effective test input \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "103", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Wang:2024:BAE, author = "Han Wang and Sijia Yu and Chunyang Chen and Burak Turhan and Xiaodong Zhu", title = "Beyond Accuracy: an Empirical Study on Unit Testing in Open-source Deep Learning Projects", journal = j-TOSEM, volume = "33", number = "4", pages = "104:1--104:??", month = may, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3638245", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Apr 24 13:33:37 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3638245", abstract = "Deep Learning (DL) models have rapidly advanced, focusing on achieving high performance through testing model accuracy and robustness. However, it is unclear whether DL projects, as software systems, are tested thoroughly or functionally correct when \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "104", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Guo:2024:EUL, author = "Shikai Guo and Dongmin Li and Lin Huang and Sijia Lv and Rong Chen and Hui Li and Xiaochen Li and He Jiang", title = "Estimating Uncertainty in Labeled Changes by {SZZ} Tools on Just-In-Time Defect Prediction", journal = j-TOSEM, volume = "33", number = "4", pages = "105:1--105:??", month = may, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3637226", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Apr 24 13:33:37 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3637226", abstract = "The aim of Just-In-Time (JIT) defect prediction is to predict software changes that are prone to defects in a project in a timely manner, thereby improving the efficiency of software development and ensuring software quality. Identifying changes that \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "105", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Guo:2024:SCC, author = "Hanyang Guo and Yingye Chen and Xiangping Chen and Yuan Huang and Zibin Zheng", title = "Smart Contract Code Repair Recommendation based on Reinforcement Learning and Multi-metric Optimization", journal = j-TOSEM, volume = "33", number = "4", pages = "106:1--106:??", month = may, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3637229", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Apr 24 13:33:37 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3637229", abstract = "A smart contract is a kind of code deployed on the blockchain that executes automatically once an event triggers a clause in the contract. Since smart contracts involve businesses such as asset transfer, they are more vulnerable to attacks, so it is \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "106", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Pizzolotto:2024:MDB, author = "Davide Pizzolotto and Stefano Berlato and Mariano Ceccato", title = "Mitigating Debugger-based Attacks to {Java} Applications with Self-debugging", journal = j-TOSEM, volume = "33", number = "4", pages = "107:1--107:??", month = may, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3631971", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Apr 24 13:33:37 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2020.bib; https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3631971", abstract = "Java bytecode is a quite high-level language and, as such, it is fairly easy to analyze and decompile with malicious intents, e.g., to tamper with code and skip license checks. Code obfuscation was a first attempt to mitigate malicious reverse-engineering \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "107", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Liu:2024:BAP, author = "Puzhuo Liu and Yaowen Zheng and Chengnian Sun and Hong Li and Zhi Li and Limin Sun", title = "Battling against Protocol Fuzzing: Protecting Networked Embedded Devices from Dynamic Fuzzers", journal = j-TOSEM, volume = "33", number = "4", pages = "108:1--108:??", month = may, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3641847", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Apr 24 13:33:37 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3641847", abstract = "Networked Embedded Devices (NEDs) are increasingly targeted by cyberattacks, mainly due to their widespread use in our daily lives. Vulnerabilities in NEDs are the root causes of these cyberattacks. Although deployed NEDs go through thorough code audits, \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "108", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Gunatilake:2024:EBE, author = "Hashini Gunatilake and John Grundy and Rashina Hoda and Ingo Mueller", title = "Enablers and Barriers of Empathy in Software Developer and User Interactions: a Mixed Methods Case Study", journal = j-TOSEM, volume = "33", number = "4", pages = "109:1--109:??", month = may, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3641849", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Apr 24 13:33:37 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3641849", abstract = "Software engineering (SE) requires developers to collaborate with stakeholders, and understanding their emotions and perspectives is often vital. Empathy is a concept characterising a person's ability to understand and share the feelings of another. \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "109", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Tan:2024:URT, author = "Xin Tan and Xinyue Lv and Jing Jiang and Li Zhang", title = "Understanding Real-Time Collaborative Programming: a Study of {Visual Studio Live Share}", journal = j-TOSEM, volume = "33", number = "4", pages = "110:1--110:??", month = may, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3643672", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Apr 24 13:33:37 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3643672", abstract = "Real-time collaborative programming (RCP) entails developers working simultaneously, regardless of their geographic locations. RCP differs from traditional asynchronous online programming methods, such as Git or SVN, where developers work independently \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "110", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Hu:2024:TOD, author = "Qiang Hu and Yuejun Guo and Xiaofei Xie and Maxime Cordy and Lei Ma and Mike Papadakis and Yves {Le Traon}", title = "Test Optimization in {DNN} Testing: a Survey", journal = j-TOSEM, volume = "33", number = "4", pages = "111:1--111:??", month = may, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3643678", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Apr 24 13:33:37 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3643678", abstract = "This article presents a comprehensive survey on test optimization in deep neural network (DNN) testing. Here, test optimization refers to testing with low data labeling effort. We analyzed 90 papers, including 43 from the software engineering (SE) \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "111", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Robillard:2024:CSD, author = "Martin P. Robillard and Deeksha M. Arya and Neil A. Ernst and Jin L. C. Guo and Maxime Lamothe and Mathieu Nassif and Nicole Novielli and Alexander Serebrenik and Igor Steinmacher and Klaas-Jan Stol", title = "Communicating Study Design Trade-offs in Software Engineering", journal = j-TOSEM, volume = "33", number = "5", pages = "112:1--112:??", month = jun, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3649598", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Jun 7 08:54:10 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3649598", abstract = "Reflecting on the limitations of a study is a crucial part of the research process. In software engineering studies, this reflection is typically conveyed through discussions of study limitations or threats to validity. In current practice, such \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "112", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Ollando:2024:LFI, author = "Rapha{\"e}l Ollando and Seung Yeob Shin and Lionel C. Briand", title = "Learning Failure-Inducing Models for Testing Software-Defined Networks", journal = j-TOSEM, volume = "33", number = "5", pages = "113:1--113:??", month = jun, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3641541", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Jun 7 08:54:10 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3641541", abstract = "Software-defined networks (SDN) enable flexible and effective communication systems that are managed by centralized software controllers. However, such a controller can undermine the underlying communication network of an SDN-based system and thus must be \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "113", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Gao:2024:SML, author = "Cuifeng Gao and Wenzhang Yang and Jiaming Ye and Yinxing Xue and Jun Sun", title = "{sGuard+}: Machine Learning Guided Rule-Based Automated Vulnerability Repair on Smart Contracts", journal = j-TOSEM, volume = "33", number = "5", pages = "114:1--114:??", month = jun, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3641846", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Jun 7 08:54:10 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3641846", abstract = "Smart contracts are becoming appealing targets for hackers because of the vast amount of cryptocurrencies under their control. Asset loss due to the exploitation of smart contract codes has increased significantly in recent years. To guarantee that smart \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "114", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Yang:2024:TSE, author = "Lin Yang and Junjie Chen and Shutao Gao and Zhihao Gong and Hongyu Zhang and Yue Kang and Huaan Li", title = "Try with Simpler --- an Evaluation of Improved Principal Component Analysis in Log-based Anomaly Detection", journal = j-TOSEM, volume = "33", number = "5", pages = "115:1--115:??", month = jun, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3644386", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Jun 7 08:54:10 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3644386", abstract = "With the rapid development of deep learning (DL), the recent trend of log-based anomaly detection focuses on extracting semantic information from log events (i.e., templates of log messages) and designing more advanced DL models for anomaly detection. \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "115", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Liu:2024:RCG, author = "Yue Liu and Thanh Le-Cong and Ratnadira Widyasari and Chakkrit Tantithamthavorn and Li Li and Xuan-Bach D. Le and David Lo", title = "Refining {ChatGPT}-Generated Code: Characterizing and Mitigating Code Quality Issues", journal = j-TOSEM, volume = "33", number = "5", pages = "116:1--116:??", month = jun, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3643674", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Jun 7 08:54:10 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3643674", abstract = "Since its introduction in November 2022, ChatGPT has rapidly gained popularity due to its remarkable ability in language understanding and human-like responses. ChatGPT, based on GPT-3.5 architecture, has shown great promise for revolutionizing various \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "116", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Sulun:2024:EAI, author = "Emre S{\"u}l{\"u}n and Metehan Sa{\c{c}}ak{\c{c}}i and Eray T{\"u}z{\"u}n", title = "An Empirical Analysis of Issue Templates Usage in Large-Scale Projects on {GitHub}", journal = j-TOSEM, volume = "33", number = "5", pages = "117:1--117:??", month = jun, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3643673", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Jun 7 08:54:10 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3643673", abstract = "GitHub Issues is a widely used issue tracking tool in open-source software projects. Originally designed with broad flexibility, its lack of standardization led to incomplete issue reports, impeding software development and maintenance efficiency. To \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "117", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Xia:2024:EVN, author = "Xinmeng Xia and Yang Feng and Qingkai Shi and James A. Jones and Xiangyu Zhang and Baowen Xu", title = "Enumerating Valid Non-Alpha-Equivalent Programs for Interpreter Testing", journal = j-TOSEM, volume = "33", number = "5", pages = "118:1--118:??", month = jun, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3647994", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Jun 7 08:54:10 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3647994", abstract = "Skeletal program enumeration (SPE) can generate a great number of test programs for validating the correctness of compilers or interpreters. The classic SPE generates programs by exhaustively enumerating all possible variable usage patterns into a given \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "118", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Ren:2024:DTC, author = "Jiawei Ren and Yulei Sui and Xiao Cheng and Yuan Feng and Jianjun Zhao", title = "Dynamic Transitive Closure-based Static Analysis through the Lens of Quantum Search", journal = j-TOSEM, volume = "33", number = "5", pages = "119:1--119:??", month = jun, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3644389", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Jun 7 08:54:10 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3644389", abstract = "Many existing static analysis algorithms suffer from cubic bottlenecks because of the need to compute a dynamic transitive closure (DTC). For the first time, this article studies the quantum speedups on searching subtasks in DTC-based static analysis \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "119", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Liu:2024:NAL, author = "Fang Liu and Zhiyi Fu and Ge Li and Zhi Jin and Hui Liu and Yiyang Hao and Li Zhang", title = "Non-Autoregressive Line-Level Code Completion", journal = j-TOSEM, volume = "33", number = "5", pages = "120:1--120:??", month = jun, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3649594", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Jun 7 08:54:10 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3649594", abstract = "Software developers frequently use code completion tools to accelerate software development by suggesting the following code elements. Researchers usually employ AutoRegressive (AR) decoders to complete code sequences in a left-to-right, token-by-token \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "120", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Miltenberger:2024:PEC, author = "Marc Miltenberger and Steven Arzt", title = "Precisely Extracting Complex Variable Values from {Android} Apps", journal = j-TOSEM, volume = "33", number = "5", pages = "121:1--121:??", month = jun, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3649591", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Jun 7 08:54:10 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3649591", abstract = "Millions of users nowadays rely on their smartphones to process sensitive data through apps from various vendors and sources. Therefore, it is vital to assess these apps for security vulnerabilities and privacy violations. Information such as to which \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "121", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Zhao:2024:DTA, author = "Yu Zhao and Brent Harrison and Tingting Yu", title = "{DinoDroid}: Testing {Android} Apps Using Deep {Q}-Networks", journal = j-TOSEM, volume = "33", number = "5", pages = "122:1--122:??", month = jun, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3652150", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Jun 7 08:54:10 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3652150", abstract = "The large demand of mobile devices creates significant concerns about the quality of mobile applications (apps). Developers need to guarantee the quality of mobile apps before it is released to the market. There have been many approaches using different \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "122", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Guo:2024:GPT, author = "Yimeng Guo and Zhifei Chen and Lin Chen and Wenjie Xu and Yanhui Li and Yuming Zhou and Baowen Xu", title = "Generating {Python} Type Annotations from Type Inference: How Far Are We?", journal = j-TOSEM, volume = "33", number = "5", pages = "123:1--123:??", month = jun, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3652153", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Jun 7 08:54:10 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/python.bib; https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3652153", abstract = "In recent years, dynamic languages such as Python have become popular due to their flexibility and productivity. The lack of static typing makes programs face the challenges of fixing type errors, early bug detection, and code understanding. To alleviate \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "123", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Cheng:2024:PSL, author = "Yu Cheng and Jieshan Chen and Qing Huang and Zhenchang Xing and Xiwei Xu and Qinghua Lu", title = "Prompt Sapper: a {LLM}-Empowered Production Tool for Building {AI} Chains", journal = j-TOSEM, volume = "33", number = "5", pages = "124:1--124:??", month = jun, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3638247", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Jun 7 08:54:10 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3638247", abstract = "The emergence of foundation models, such as large language models (LLMs) GPT-4 and text-to-image models DALL-E, has opened up numerous possibilities across various domains. People can now use natural language (i.e., prompts) to communicate with AI to \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "124", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Zhang:2024:MTT, author = "Quanjun Zhang and Juan Zhai and Chunrong Fang and Jiawei Liu and Weisong Sun and Haichuan Hu and Qingyu Wang", title = "Machine Translation Testing via Syntactic Tree Pruning", journal = j-TOSEM, volume = "33", number = "5", pages = "125:1--125:??", month = jun, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3640329", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Jun 7 08:54:10 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3640329", abstract = "Machine translation systems have been widely adopted in our daily life, making life easier and more convenient. Unfortunately, erroneous translations may result in severe consequences, such as financial losses. This requires to improve the accuracy and \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "125", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Liu:2024:REL, author = "Yue Liu and Chakkrit Tantithamthavorn and Yonghui Liu and Li Li", title = "On the Reliability and Explainability of Language Models for Program Generation", journal = j-TOSEM, volume = "33", number = "5", pages = "126:1--126:??", month = jun, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3641540", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Jun 7 08:54:10 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3641540", abstract = "Recent studies have adopted pre-trained language models, such as CodeT5 and CodeGPT, for automated program generation tasks like code generation, repair, and translation. Numerous language model based approaches have been proposed and evaluated on various \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "126", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Cheng:2024:BFE, author = "Baijun Cheng and Shengming Zhao and Kailong Wang and Meizhen Wang and Guangdong Bai and Ruitao Feng and Yao Guo and Lei Ma and Haoyu Wang", title = "Beyond Fidelity: Explaining Vulnerability Localization of Learning-Based Detectors", journal = j-TOSEM, volume = "33", number = "5", pages = "127:1--127:??", month = jun, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3641543", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Jun 7 08:54:10 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3641543", abstract = "Vulnerability detectors based on deep learning (DL) models have proven their effectiveness in recent years. However, the shroud of opacity surrounding the decision-making process of these detectors makes it difficult for security analysts to comprehend. \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "127", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Fan:2024:RZS, author = "Guodong Fan and Shizhan Chen and Cuiyun Gao and Jianmao Xiao and Tao Zhang and Zhiyong Feng", title = "{RAPID}: Zero-Shot Domain Adaptation for Code Search with Pre-Trained Models", journal = j-TOSEM, volume = "33", number = "5", pages = "128:1--128:??", month = jun, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3641542", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Jun 7 08:54:10 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3641542", abstract = "Code search, which refers to the process of identifying the most relevant code snippets for a given natural language query, plays a crucial role in software maintenance. However, current approaches heavily rely on labeled data for training, which results \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "128", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Liu:2024:ART, author = "Jiaxiang Liu and Yunhan Xing and Xiaomu Shi and Fu Song and Zhiwu Xu and Zhong Ming", title = "Abstraction and Refinement: Towards Scalable and Exact Verification of Neural Networks", journal = j-TOSEM, volume = "33", number = "5", pages = "129:1--129:??", month = jun, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3644387", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Jun 7 08:54:10 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3644387", abstract = "As a new programming paradigm, deep neural networks (DNNs) have been increasingly deployed in practice, but the lack of robustness hinders their applications in safety-critical domains. While there are techniques for verifying DNNs with formal guarantees, \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "129", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Attaoui:2024:SSA, author = "Mohammed Oualid Attaoui and Hazem Fahmy and Fabrizio Pastore and Lionel Briand", title = "Supporting Safety Analysis of Image-processing {DNNs} through Clustering-based Approaches", journal = j-TOSEM, volume = "33", number = "5", pages = "130:1--130:??", month = jun, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3643671", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Jun 7 08:54:10 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3643671", abstract = "The adoption of deep neural networks (DNNs) in safety-critical contexts is often prevented by the lack of effective means to explain their results, especially when they are erroneous. In our previous work, we proposed a white-box approach (HUDD) and a \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "130", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Shang:2024:ADI, author = "Xiuwei Shang and Shuai Zhang and Yitong Zhang and Shikai Guo and Yulong Li and Rong Chen and Hui Li and Xiaochen Li and He Jiang", title = "Analyzing and Detecting Information Types of Developer Live Chat Threads", journal = j-TOSEM, volume = "33", number = "5", pages = "131:1--131:??", month = jun, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3643677", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Jun 7 08:54:10 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3643677", abstract = "Online chatrooms serve as vital platforms for information exchange among software developers. With multiple developers engaged in rapid communication and diverse conversation topics, the resulting chat messages often manifest complexity and lack \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "131", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Li:2024:TIP, author = "Yinghua Li and Xueqi Dang and Lei Ma and Jacques Klein and Yves {Le Traon} and Tegawend{\'e} F. Bissyand{\'e}", title = "Test Input Prioritization for {$3$D} Point Clouds", journal = j-TOSEM, volume = "33", number = "5", pages = "132:1--132:??", month = jun, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3643676", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Jun 7 08:54:10 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3643676", abstract = "3D point cloud applications have become increasingly prevalent in diverse domains, showcasing their efficacy in various software systems. However, testing such applications presents unique challenges due to the high-dimensional nature of 3D point cloud \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "132", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Tao:2024:KKA, author = "Wei Tao and Yucheng Zhou and Yanlin Wang and Hongyu Zhang and Haofen Wang and Wenqiang Zhang", title = "{KADEL}: Knowledge-Aware Denoising Learning for Commit Message Generation", journal = j-TOSEM, volume = "33", number = "5", pages = "133:1--133:??", month = jun, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3643675", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Jun 7 08:54:10 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3643675", abstract = "Commit messages are natural language descriptions of code changes, which are important for software evolution such as code understanding and maintenance. However, previous methods are trained on the entire dataset without considering the fact that a \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "133", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Hommersom:2024:AMV, author = "Daan Hommersom and Antonino Sabetta and Bonaventura Coppola and Dario {Di Nucci} and Damian A. Tamburri", title = "Automated Mapping of Vulnerability Advisories onto their Fix Commits in Open Source Repositories", journal = j-TOSEM, volume = "33", number = "5", pages = "134:1--134:??", month = jun, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3649590", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Jun 7 08:54:10 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3649590", abstract = "The lack of comprehensive sources of accurate vulnerability data represents a critical obstacle to studying and understanding software vulnerabilities (and their corrections). In this article, we present an approach that combines heuristics stemming from \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "134", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Russo:2024:NCGa, author = "Daniel Russo", title = "Navigating the Complexity of Generative {AI} Adoption in Software Engineering", journal = j-TOSEM, volume = "33", number = "5", pages = "135:1--135:??", month = jun, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3652154", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Jun 7 08:54:10 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3652154", abstract = "This article explores the adoption of Generative Artificial Intelligence (AI) tools within the domain of software engineering, focusing on the influencing factors at the individual, technological, and social levels. We applied a convergent mixed-methods \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "135", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Betz:2024:LLD, author = "Stefanie Betz and Birgit Penzenstadler and Leticia Duboc and Ruzanna Chitchyan and Sedef Akinli Kocak and Ian Brooks and Shola Oyedeji and Jari Porras and Norbert Seyff and Colin C. Venters", title = "Lessons Learned from Developing a Sustainability Awareness Framework for Software Engineering Using Design Science", journal = j-TOSEM, volume = "33", number = "5", pages = "136:1--136:??", month = jun, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3649597", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Jun 7 08:54:10 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3649597", abstract = "To foster a sustainable society within a sustainable environment, we must dramatically reshape our work and consumption activities, most of which are facilitated through software. Yet, most software engineers hardly consider the effects on the \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "136", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Chen:2024:FTC, author = "Zhenpeng Chen and Jie M. Zhang and Max Hort and Mark Harman and Federica Sarro", title = "Fairness Testing: a Comprehensive Survey and Analysis of Trends", journal = j-TOSEM, volume = "33", number = "5", pages = "137:1--137:??", month = jun, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3652155", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Jun 7 08:54:10 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3652155", abstract = "Unfair behaviors of Machine Learning (ML) software have garnered increasing attention and concern among software engineers. To tackle this issue, extensive research has been dedicated to conducting fairness testing of ML software, and this article offers \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "137", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Wu:2024:FGCa, author = "Wei-Cheng Wu and Bernard Nongpoh and Marwan Nour and Micha{\"e}l Marcozzi and S{\'e}bastien Bardin and Christophe Hauser", title = "Fine-grained Coverage-based Fuzzing", journal = j-TOSEM, volume = "33", number = "5", pages = "138:1--138:??", month = jun, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3587158", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Jun 7 08:54:10 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3587158", abstract = "Fuzzing is a popular software testing method that discovers bugs by massively feeding target applications with automatically generated inputs. Many state-of-the-art fuzzers use branch coverage as a feedback metric to guide the fuzzing process. The fuzzer \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "138", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Wu:2024:FGCb, author = "Wei-Cheng Wu and Bernard Nongpoh and Marwan Nour and Micha{\"e}l Marcozzi and S{\'e}bastien Bardin and Christophe Hauser", title = "Fine-grained Coverage-based Fuzzing --- {RCR} Report", journal = j-TOSEM, volume = "33", number = "5", pages = "139:1--139:??", month = jun, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3649592", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Jun 7 08:54:10 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3649592", abstract = "This is the RCR report of the artifact for the article ``Fine-grained Coverage-based Fuzzing.'' This report contains scripts and pre-build binary programs to reproduce the results presented in the main article. The artifact is released on Zenodo with DOI: \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "139", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Chen:2024:RDT, author = "Zhifei Chen and Lin Chen and Yibiao Yang and Qiong Feng and Xuansong Li and Wei Song", title = "Risky Dynamic Typing-related Practices in {Python}: an Empirical Study", journal = j-TOSEM, volume = "33", number = "6", pages = "140:1--140:??", month = jul, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3649593", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon Sep 30 08:52:15 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/python.bib; https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3649593", abstract = "Python's dynamic typing nature provides developers with powerful programming abstractions. However, many type-related bugs are accumulated in code bases of Python due to the misuse of dynamic typing. The goal of this article is to aid in the understanding \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "140", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Wan:2024:DCN, author = "Xiaohui Wan and Zheng Zheng and Fangyun Qin and Xuhui Lu", title = "Data Complexity: a New Perspective for Analyzing the Difficulty of Defect Prediction Tasks", journal = j-TOSEM, volume = "33", number = "6", pages = "141:1--141:??", month = jul, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3649596", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon Sep 30 08:52:15 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3649596", abstract = "Defect prediction is crucial for software quality assurance and has been extensively researched over recent decades. However, prior studies rarely focus on data complexity in defect prediction tasks, and even less on understanding the difficulties of \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "141", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Arcuri:2024:AWB, author = "Andrea Arcuri and Man Zhang and Juan Galeotti", title = "Advanced White-Box Heuristics for Search-Based Fuzzing of {REST APIs}", journal = j-TOSEM, volume = "33", number = "6", pages = "142:1--142:??", month = jul, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3652157", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon Sep 30 08:52:15 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3652157", abstract = "Due to its importance and widespread use in industry, automated testing of REST APIs has attracted major interest from the research community in the last few years. However, most of the work in the literature has been focused on black-box fuzzing. \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "142", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Guglielmi:2024:HTU, author = "Emanuela Guglielmi and Giovanni Rosa and Simone Scalabrino and Gabriele Bavota and Rocco Oliveto", title = "Help Them Understand: Testing and Improving Voice User Interfaces", journal = j-TOSEM, volume = "33", number = "6", pages = "143:1--143:??", month = jul, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3654438", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon Sep 30 08:52:15 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3654438", abstract = "Voice-based virtual assistants are becoming increasingly popular. Such systems provide frameworks to developers for building custom apps. End-users can interact with such apps through a Voice User Interface (VUI), which allows the user to use natural \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "143", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Perera:2024:ILR, author = "Anjana Perera and Burak Turhan and Aldeida Aleti and Marcel B{\"o}hme", title = "On the Impact of Lower Recall and Precision in Defect Prediction for Guiding Search-based Software Testing", journal = j-TOSEM, volume = "33", number = "6", pages = "144:1--144:??", month = jul, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3655022", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon Sep 30 08:52:15 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3655022", abstract = "Defect predictors, static bug detectors, and humans inspecting the code can propose locations in the program that are more likely to be buggy before they are discovered through testing. Automated test generators such as search-based software testing (SBST). \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "144", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Zhang:2024:EFS, author = "Guofu Zhang and Lei Li and Zhaopin Su and Feng Yue and Yang Chen and Miqing Li and Xin Yao", title = "On Estimating the Feasible Solution Space of Multi-objective Testing Resource Allocation", journal = j-TOSEM, volume = "33", number = "6", pages = "145:1--145:??", month = jul, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3654444", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon Sep 30 08:52:15 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3654444", abstract = "The multi-objective testing resource allocation problem (MOTRAP) is concerned on how to reasonably plan the testing time of software testers to save the cost and improve the reliability as much as possible. The feasible solution space of a MOTRAP is \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "145", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Iannone:2024:ERE, author = "Emanuele Iannone and Giulia Sellitto and Emanuele Iaccarino and Filomena Ferrucci and Andrea {De Lucia} and Fabio Palomba", title = "Early and Realistic Exploitability Prediction of Just-Disclosed Software Vulnerabilities: How Reliable Can It Be?", journal = j-TOSEM, volume = "33", number = "6", pages = "146:1--146:??", month = jul, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3654443", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon Sep 30 08:52:15 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3654443", abstract = "With the rate of discovered and disclosed vulnerabilities escalating, researchers have been experimenting with machine learning to predict whether a vulnerability will be exploited. Existing solutions leverage information unavailable when a CVE is created,. \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "146", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Long:2024:TMS, author = "Peixun Long and Jianjun Zhao", title = "Testing Multi-Subroutine Quantum Programs: From Unit Testing to Integration Testing", journal = j-TOSEM, volume = "33", number = "6", pages = "147:1--147:??", month = jul, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3656339", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon Sep 30 08:52:15 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3656339", abstract = "Quantum computing has emerged as a promising field with the potential to revolutionize various domains by harnessing the principles of quantum mechanics. As quantum hardware and algorithms continue to advance, developing high-quality quantum software has \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "147", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Wang:2024:MTL, author = "Xu Wang and Hongwei Yu and Xiangxin Meng and Hongliang Cao and Hongyu Zhang and Hailong Sun and Xudong Liu and Chunming Hu", title = "{MTL-TRANSFER}: Leveraging Multi-task Learning and Transferred Knowledge for Improving Fault Localization and Program Repair", journal = j-TOSEM, volume = "33", number = "6", pages = "148:1--148:??", month = jul, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3654441", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon Sep 30 08:52:15 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3654441", abstract = "Fault localization (FL) and automated program repair (APR) are two main tasks of automatic software debugging. Compared with traditional methods, deep learning-based approaches have been demonstrated to achieve better performance in FL and APR tasks. \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "148", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Bi:2024:WSI, author = "Tingting Bi and Boming Xia and Zhenchang Xing and Qinghua Lu and Liming Zhu", title = "On the Way to {SBOMs}: Investigating Design Issues and Solutions in Practice", journal = j-TOSEM, volume = "33", number = "6", pages = "149:1--149:??", month = jul, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3654442", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon Sep 30 08:52:15 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3654442", abstract = "The increase of software supply chain threats has underscored the necessity for robust security mechanisms, among which the Software Bill of Materials (SBOM) stands out as a promising solution. SBOMs, by providing a machine-readable inventory of software \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "149", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Xu:2024:MSA, author = "Congying Xu and Valerio Terragni and Hengcheng Zhu and Jiarong Wu and Shing-Chi Cheung", title = "{MR-Scout}: Automated Synthesis of Metamorphic Relations from Existing Test Cases", journal = j-TOSEM, volume = "33", number = "6", pages = "150:1--150:??", month = jul, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3656340", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon Sep 30 08:52:15 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3656340", abstract = "Metamorphic Testing (MT) alleviates the oracle problem by defining oracles based on metamorphic relations (MRs) that govern multiple related inputs and their outputs. However, designing MRs is challenging, as it requires domain-specific knowledge. This \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "150", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Abualhaija:2024:RRE, author = "Sallam Abualhaija and F. Basak Aydemir and Fabiano Dalpiaz and Davide Dell'Anna and Alessio Ferrari and Xavier Franch and Davide Fucci", title = "Replication in Requirements Engineering: The {NLP} for {RE} Case", journal = j-TOSEM, volume = "33", number = "6", pages = "151:1--151:??", month = jul, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3658669", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon Sep 30 08:52:15 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3658669", abstract = "Natural language processing (NLP) techniques have been widely applied in the requirements engineering (RE) field to support tasks such as classification and ambiguity detection. Despite its empirical vocation, RE research has given limited attention to \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "151", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Zohdinasab:2024:FTG, author = "Tahereh Zohdinasab and Vincenzo Riccio and Paolo Tonella", title = "Focused Test Generation for Autonomous Driving Systems", journal = j-TOSEM, volume = "33", number = "6", pages = "152:1--152:??", month = jul, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3664605", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon Sep 30 08:52:15 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3664605", abstract = "Testing Autonomous Driving Systems (ADSs) is crucial to ensure their reliability when navigating complex environments. ADSs may exhibit unexpected behaviours when presented, during operation, with driving scenarios containing features inadequately \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "152", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Madampe:2024:SEI, author = "Kashumi Madampe and Rashina Hoda and John Grundy", title = "Supporting Emotional Intelligence, Productivity and Team Goals while Handling Software Requirements Changes", journal = j-TOSEM, volume = "33", number = "6", pages = "153:1--153:??", month = jul, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3664600", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon Sep 30 08:52:15 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3664600", abstract = "Background: Research shows that emotional intelligence (EI) should be used alongside cognitive intelligence during requirements change (RC) handling in Software Engineering (SE), especially in agile settings. Objective: We wanted to study the role of EI \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "153", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Li:2024:ARQ, author = "Yuechen Li and Hanyu Pei and Linzhi Huang and Beibei Yin and Kai-Yuan Cai", title = "Automatic Repair of Quantum Programs via Unitary Operation", journal = j-TOSEM, volume = "33", number = "6", pages = "154:1--154:??", month = jul, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3664604", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon Sep 30 08:52:15 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3664604", abstract = "With the continuous advancement of quantum computing (QC), the demand for high-quality quantum programs (QPs) is growing. To avoid program failure, in software engineering, the technology of automatic program repair (APR) employs appropriate patches to \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "154", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Ngo:2024:TUA, author = "Chanh Duc Ngo and Fabrizio Pastore and Lionel Briand", title = "Testing Updated Apps by Adapting Learned Models", journal = j-TOSEM, volume = "33", number = "6", pages = "155:1--155:??", month = jul, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3664601", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon Sep 30 08:52:15 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3664601", abstract = "Although App updates are frequent and software engineers would like to verify updated features only, automated testing techniques verify entire Apps and are thus wasting resources. We present Continuous Adaptation of Learned Models (CALM), an automated \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "155", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Sun:2024:FTM, author = "Zeyu Sun and Zhenpeng Chen and Jie Zhang and Dan Hao", title = "Fairness Testing of Machine Translation Systems", journal = j-TOSEM, volume = "33", number = "6", pages = "156:1--156:??", month = jul, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3664608", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon Sep 30 08:52:15 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3664608", abstract = "Machine translation is integral to international communication and extensively employed in diverse human-related applications. Despite remarkable progress, fairness issues persist within current machine translation systems. In this article, we propose \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "156", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Jiang:2024:MAO, author = "Siyu Jiang and Zhenhang He and Yuwen Chen and Mingrong Zhang and Le Ma", title = "Mobile Application Online Cross-Project Just-in-Time Software Defect Prediction Framework", journal = j-TOSEM, volume = "33", number = "6", pages = "157:1--157:??", month = jul, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3664607", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon Sep 30 08:52:15 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3664607", abstract = "As mobile applications evolve rapidly, their fast iterative update nature leads to an increase in software defects. Just-In-Time Software Defect Prediction (JIT-SDP) offers immediate feedback on code changes. For new applications without historical data, \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "157", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Aghababaeyan:2024:DMO, author = "Zohreh Aghababaeyan and Manel Abdellatif and Mahboubeh Dadkhah and Lionel Briand", title = "{DeepGD}: a Multi-Objective Black-{Box} Test Selection Approach for Deep Neural Networks", journal = j-TOSEM, volume = "33", number = "6", pages = "158:1--158:??", month = jul, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3644388", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon Sep 30 08:52:15 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3644388", abstract = "Deep neural networks (DNNs) are widely used in various application domains such as image processing, speech recognition, and natural language processing. However, testing DNN models may be challenging due to the complexity and size of their input domain. \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "158", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Li:2024:RIT, author = "Zhen Li and Shasha Zhao and Chen Chen and Qian Chen", title = "Reducing the Impact of Time Evolution on Source Code Authorship Attribution via Domain Adaptation", journal = j-TOSEM, volume = "33", number = "6", pages = "159:1--159:??", month = jul, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3652151", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon Sep 30 08:52:15 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3652151", abstract = "Source code authorship attribution is an important problem in practical applications such as plagiarism detection, software forensics, and copyright disputes. Recent studies show that existing methods for source code authorship attribution can be \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "159", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Ding:2024:DCS, author = "Xi Ding and Rui Peng and Xiangping Chen and Yuan Huang and Jing Bian and Zibin Zheng", title = "Do Code Summarization Models Process Too Much Information? Function Signature May Be All That Is Needed", journal = j-TOSEM, volume = "33", number = "6", pages = "160:1--160:??", month = jul, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3652156", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon Sep 30 08:52:15 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3652156", abstract = "With the fast development of large software projects, automatic code summarization techniques, which summarize the main functionalities of a piece of code using natural languages as comments, play essential roles in helping developers understand and \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "160", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Ramos:2024:BRL, author = "Daniel Ramos and In{\^e}s Lynce and Vasco Manquinho and Ruben Martins and Claire {Le Goues}", title = "{BatFix}: Repairing language model-based transpilation", journal = j-TOSEM, volume = "33", number = "6", pages = "161:1--161:??", month = jul, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3658668", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon Sep 30 08:52:15 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3658668", abstract = "To keep up with changes in requirements, frameworks, and coding practices, software organizations might need to migrate code from one language to another. Source-to-source migration, or transpilation, is often a complex, manual process. Transpilation \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "161", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Nguyen:2024:DDA, author = "Van Nguyen and Trung Le and Chakkrit Tantithamthavorn and John Grundy and Dinh Phung", title = "Deep Domain Adaptation With Max-Margin Principle for Cross-Project Imbalanced Software Vulnerability Detection", journal = j-TOSEM, volume = "33", number = "6", pages = "162:1--162:??", month = jul, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3664602", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon Sep 30 08:52:15 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3664602", abstract = "Software vulnerabilities (SVs) have become a common, serious, and crucial concern due to the ubiquity of computer software. Many AI-based approaches have been proposed to solve the software vulnerability detection (SVD) problem to ensure the security and \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "162", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Hu:2024:EGE, author = "Han Hu and Han Wang and Ruiqi Dong and Xiao Chen and Chunyang Chen", title = "Enhancing {GUI} Exploration Coverage of {Android} Apps with Deep Link-Integrated Monkey", journal = j-TOSEM, volume = "33", number = "6", pages = "163:1--163:??", month = jul, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3664810", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon Sep 30 08:52:15 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3664810", abstract = "Mobile apps are ubiquitous in our daily lives for supporting different tasks such as reading and chatting. Despite the availability of many GUI testing tools, app testers still struggle with low testing code coverage due to tools frequently getting stuck \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "163", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Gavidia-Calderon:2024:IUI, author = "Carlos Gavidia-Calderon and Anastasia Kordoni and Amel Bennaceur and Mark Levine and Bashar Nuseibeh", title = "The {IDEA} of Us: an Identity-Aware Architecture for Autonomous Systems", journal = j-TOSEM, volume = "33", number = "6", pages = "164:1--164:??", month = jul, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3654439", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon Sep 30 08:52:15 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3654439", abstract = "Autonomous systems, such as drones and rescue robots, are increasingly used during emergencies. They deliver services and provide situational awareness that facilitate emergency management and response. To do so, they need to interact and cooperate with \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "164", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Wang:2024:WMG, author = "Haoye Wang and Zhipeng Gao and Tingting Bi and John Grundy and Xinyu Wang and Minghui Wu and Xiaohu Yang", title = "What Makes a Good {TODO} Comment?", journal = j-TOSEM, volume = "33", number = "6", pages = "165:1--165:??", month = jul, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3664811", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon Sep 30 08:52:15 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3664811", abstract = "Software development is a collaborative process that involves various interactions among individuals and teams. TODO comments in source code play a critical role in managing and coordinating diverse tasks during this process. However, this study finds \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "165", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Sun:2024:SSC, author = "Weisong Sun and Chunrong Fang and Yifei Ge and Yuling Hu and Yuchen Chen and Quanjun Zhang and Xiuting Ge and Yang Liu and Zhenyu Chen", title = "A Survey of Source Code Search: a $3$-Dimensional Perspective", journal = j-TOSEM, volume = "33", number = "6", pages = "166:1--166:??", month = jul, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3656341", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon Sep 30 08:52:15 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3656341", abstract = "(Source) code search is widely concerned by software engineering researchers because it can improve the productivity and quality of software development. Given a functionality requirement usually described in a natural language sentence, a code search \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "166", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Wan:2024:KAT, author = "Chengcheng Wan and Shicheng Liu and Sophie Xie and Yuhan Liu and Henry Hoffmann and Michael Maire and Shan Lu", title = "Keeper: Automated Testing and Fixing of Machine Learning Software", journal = j-TOSEM, volume = "33", number = "7", pages = "167:1--167:??", month = sep, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3672451", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon Sep 30 08:52:18 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3672451", abstract = "The increasing number of software applications incorporating machine learning (ML) solutions has led to the need for testing techniques. However, testing ML software requires tremendous human effort to design realistic and relevant test inputs and to \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "167", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Fungprasertkul:2024:TDM, author = "Suwichak Fungprasertkul and Rami Bahsoon and Rick Kazman", title = "Technical Debt Monitoring Decision Making with Skin in the Game", journal = j-TOSEM, volume = "33", number = "7", pages = "168:1--168:??", month = sep, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3664805", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon Sep 30 08:52:18 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3664805", abstract = "Technical Debt Management (TDM) can suffer from unpredictability, communication gaps and the inaccessibility of relevant information, which hamper the effectiveness of its decision making. These issues can stem from division among decision-makers which \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "168", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Ma:2024:UCP, author = "Wei Ma and Shangqing Liu and Mengjie Zhao and Xiaofei Xie and Wenhang Wang and Qiang Hu and Jie Zhang and Yang Liu", title = "Unveiling Code Pre-Trained Models: Investigating Syntax and Semantics Capacities", journal = j-TOSEM, volume = "33", number = "7", pages = "169:1--169:??", month = sep, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3664606", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon Sep 30 08:52:18 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3664606", abstract = "Code models have made significant advancements in code intelligence by encoding knowledge about programming languages. While previous studies have explored the capabilities of these models in learning code syntax, there has been limited investigation on \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "169", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Jiang:2024:UVI, author = "Muhui Jiang and Jinan Jiang and Tao Wu and Zuchao Ma and Xiapu Luo and Yajin Zhou", title = "Understanding Vulnerability Inducing Commits of the {Linux} Kernel", journal = j-TOSEM, volume = "33", number = "7", pages = "170:1--170:??", month = sep, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3672452", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon Sep 30 08:52:18 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/linux.bib; https://www.math.utah.edu/pub/tex/bib/tosem.bib; https://www.math.utah.edu/pub/tex/bib/unix.bib", URL = "https://dl.acm.org/doi/10.1145/3672452", abstract = "The Linux kernel is popular and well-maintained. Over the past decade, around 860 thousand commits were merged with hundreds of vulnerabilities (i.e., 223 on average) disclosed every year, taking the total lines of code to 35.1 million in 2022. Many algorithms have been proposed to detect the vulnerabilities, but few studied how they were induced. To fill this gap, we conduct the first empirical study on the Kernel Vulnerability Inducing Commits (KVIC), the commits that induced vulnerabilities in the Linux kernel. We utilized six different methods on identifying the Kernel Vulnerability Fixing Commits (KVFCs), the commits that fix vulnerabilities in the Linux kernel, and proposed the other four different methods for identifying KVICs by using the identified KVFCs as a bridge. In total, we constructed the first dataset of KVICs with 1,240 KVICs for 1,335 CVEs. We conducted a thorough analysis on the characteristics, purposes, and involved human factors of the KVICs and obtained many interesting findings and insights. For example, KVICs usually have limited reviewers and can still be induced by experienced authors or maintainers. Based on these insights, we proposed several suggestions to the Linux community to help mitigate the induction of KVICs.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "170", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Dejon:2024:CQP, author = "Nicolas Dejon and Chrystel Gaber and Gilles Grimaud and Narjes Jomaa", title = "Code to Qed, the Project Manager's Guide to Proof Engineering", journal = j-TOSEM, volume = "33", number = "7", pages = "171:1--171:??", month = sep, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3664807", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon Sep 30 08:52:18 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3664807", abstract = "Despite growing efforts and encouraging successes in recent decades, fully formally verified projects are still rare in the industrial landscape. The industry often lacks the tools and methodologies to efficiently scale the proof development process. In \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "171", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Mahdavi-Hezaveh:2024:PPC, author = "Rezvan Mahdavi-Hezaveh and Sameeha Fatima and Laurie Williams", title = "Paving a Path for a Combined Family of Feature Toggle and Configuration Option Research", journal = j-TOSEM, volume = "33", number = "7", pages = "172:1--172:??", month = sep, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3672555", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon Sep 30 08:52:18 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3672555", abstract = "Feature toggles and configuration options are techniques to include or exclude functionality in software. The research contributions to these two techniques have most often been focused on either one of them. However, focusing on the similarities of these \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "172", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Gu:2024:SVM, author = "Rong Gu and Eduard Baranov and Afshin Ameri and Cristina Seceleanu and Eduard Paul Enoiu and Baran C{\"u}r{\"u}kl{\"u} and Axel Legay and Kristina Lundqvist", title = "Synthesis and Verification of Mission Plans for Multiple Autonomous Agents under Complex Road Conditions", journal = j-TOSEM, volume = "33", number = "7", pages = "173:1--173:??", month = sep, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3672445", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon Sep 30 08:52:18 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3672445", abstract = "Mission planning for multi-agent autonomous systems aims to generate feasible and optimal mission plans that satisfy given requirements. In this article, we propose a tool-supported mission-planning methodology that combines (i) a path-planning algorithm \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "173", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Li:2024:MLM, author = "Yao Li and Dawei Yuan and Tao Zhang and Haipeng Cai and David Lo and Cuiyun Gao and Xiapu Luo and He Jiang", title = "Meta-Learning for Multi-Family {Android} Malware Classification", journal = j-TOSEM, volume = "33", number = "7", pages = "174:1--174:??", month = sep, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3664806", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon Sep 30 08:52:18 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3664806", abstract = "With the emergence of smartphones, Android has become a widely used mobile operating system. However, it is vulnerable when encountering various types of attacks. Every day, new malware threatens the security of users' devices and private data. Many \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "174", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Yu:2024:EPI, author = "Shengcheng Yu and Chunrong Fang and Xin Li and Yuchen Ling and Zhenyu Chen and Zhendong Su", title = "Effective, Platform-Independent {GUI} Testing via Image Embedding and Reinforcement Learning", journal = j-TOSEM, volume = "33", number = "7", pages = "175:1--175:??", month = sep, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3674728", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon Sep 30 08:52:18 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3674728", abstract = "Software applications (apps) have been playing an increasingly important role in various aspects of society. In particular, mobile apps and web apps are the most prevalent among all applications and are widely used in various industries as well as in \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "175", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Lee:2024:ATL, author = "Jaeseong Lee and Simin Chen and Austin Mordahl and Cong Liu and Wei Yang and Shiyi Wei", title = "Automated Testing Linguistic Capabilities of {NLP} Models", journal = j-TOSEM, volume = "33", number = "7", pages = "176:1--176:??", month = sep, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3672455", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon Sep 30 08:52:18 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3672455", abstract = "Natural language processing (NLP) has gained widespread adoption in the development of real-world applications. However, the black-box nature of neural networks in NLP applications poses a challenge when evaluating their performance, let alone ensuring \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "176", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Perera:2024:SMS, author = "Judith Perera and Ewan Tempero and Yu-Cheng Tu and Kelly Blincoe", title = "A Systematic Mapping Study Exploring Quantification Approaches to Code, Design, and Architecture Technical Debt", journal = j-TOSEM, volume = "33", number = "7", pages = "177:1--177:??", month = sep, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3675393", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon Sep 30 08:52:18 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3675393", abstract = "To effectively manage Technical Debt (TD), we need reliable means to quantify it. We conducted a Systematic Mapping Study (SMS) where we identified 39 quantification approaches for Code, Design, and Architecture TD. We analyzed concepts and metrics \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "177", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Freire:2024:CVT, author = "S{\'a}vio Freire and Alexia Pacheco and Nicolli Rios and Boris P{\'e}rez and Camilo Castellanos and Dar{\'\i}o Correal and Robert Ramac and Vladimir Mandi{\'c} and Nebojsa Tausan and Gustavo L{\'o}pez and Manoel Mendon{\c{c}}a and Davide Falessi and Clemente Izurieta and Carolyn Seaman and Rodrigo Sp{\'\i}nola", title = "A Comprehensive View on {TD} Prevention Practices and Reasons for Not Preventing It", journal = j-TOSEM, volume = "33", number = "7", pages = "178:1--178:??", month = sep, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3674727", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon Sep 30 08:52:18 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3674727", abstract = "Context. Technical debt (TD) prevention allows software practitioners to apply practices to avoid potential TD items in their projects. Aims. To uncover and prioritize, from the point of view of software practitioners, the practices that could be used to \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "178", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Zolduoarrati:2024:HCE, author = "Elijah Zolduoarrati and Sherlock A. Licorish and Nigel Stanger", title = "Harmonising Contributions: Exploring Diversity in Software Engineering through {CQA} Mining on {Stack Overflow}", journal = j-TOSEM, volume = "33", number = "7", pages = "179:1--179:??", month = sep, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3672453", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon Sep 30 08:52:18 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3672453", abstract = "The need for collective intelligence in technology means that online Q\&A platforms, such as Stack Overflow and Reddit, have become invaluable in building the global knowledge ecosystem. Despite literature demonstrating a prevalence of inclusion and \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "179", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Lou:2024:WAP, author = "Yiling Lou and Jun Yang and Samuel Benton and Dan Hao and Lin Tan and Zhenpeng Chen and Lu Zhang and Lingming Zhang", title = "When Automated Program Repair Meets Regression Testing --- An Extensive Study on Two Million Patches", journal = j-TOSEM, volume = "33", number = "7", pages = "180:1--180:??", month = sep, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3672450", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon Sep 30 08:52:18 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3672450", abstract = "In recent years, Automated Program Repair (APR) has been extensively studied in academia and even drawn wide attention from the industry. However, APR techniques can be extremely time consuming since (1) a large number of patches can be generated for a \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "180", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Liu:2024:ESC, author = "Wei Liu and Shouvick Mondal and Tse-Hsun (Peter) Chen", title = "An Empirical Study on the Characteristics of Database Access Bugs in {Java} Applications", journal = j-TOSEM, volume = "33", number = "7", pages = "181:1--181:??", month = sep, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3672449", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon Sep 30 08:52:18 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2020.bib; https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3672449", abstract = "Database-backed applications rely on the database access code to interact with the underlying database management systems (DBMSs). Although many prior studies aim at database access issues like SQL anti-patterns or SQL code smells, there is a lack of \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "181", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Jiang:2024:SPC, author = "Xue Jiang and Yihong Dong and Lecheng Wang and Zheng Fang and Qiwei Shang and Ge Li and Zhi Jin and Wenpin Jiao", title = "Self-Planning Code Generation with Large Language Models", journal = j-TOSEM, volume = "33", number = "7", pages = "182:1--182:??", month = sep, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3672456", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon Sep 30 08:52:18 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3672456", abstract = "Although large language models (LLMs) have demonstrated impressive ability in code generation, they are still struggling to address the complicated intent provided by humans. It is widely acknowledged that humans typically employ planning to decompose \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "182", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Huang:2024:RUA, author = "Qing Huang and Zhiwen Luo and Zhenchang Xing and Jinshan Zeng and Jieshan Chen and Xiwei Xu and Yong Chen", title = "Revealing the Unseen: {AI} Chain on {LLMs} for Predicting Implicit Dataflows to Generate Dataflow Graphs in Dynamically Typed Code", journal = j-TOSEM, volume = "33", number = "7", pages = "183:1--183:??", month = sep, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3672458", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon Sep 30 08:52:18 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3672458", abstract = "Dataflow graphs (DFGs) capture definitions (defs) and uses across program blocks, which is a fundamental program representation for program analysis, testing and maintenance. However, dynamically typed programming languages like Python present implicit \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "183", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Lyu:2024:MUS, author = "Yingzhe Lyu and Heng Li and Zhen Ming (Jack) Jiang and Ahmed E. Hassan", title = "On the Model Update Strategies for Supervised Learning in {AIOps} Solutions", journal = j-TOSEM, volume = "33", number = "7", pages = "184:1--184:??", month = sep, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3664599", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon Sep 30 08:52:18 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3664599", abstract = "AIOps (Artificial Intelligence for IT Operations) solutions leverage the massive data produced during the operation of large-scale systems and machine learning models to assist software engineers in their system operations. As operation data produced in \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "184", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Xu:2024:GDD, author = "Hang Xu and Liheng Chen and Shuitao Gan and Chao Zhang and Zheming Li and Jiangan Ji and Baojian Chen and Fan Hu", title = "{Graphuzz}: Data-driven Seed Scheduling for Coverage-guided Greybox Fuzzing", journal = j-TOSEM, volume = "33", number = "7", pages = "185:1--185:??", month = sep, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3664603", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon Sep 30 08:52:18 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3664603", abstract = "Seed scheduling is a critical step of greybox fuzzing, which assigns different weights to seed test cases during seed selection, and significantly impacts the efficiency of fuzzing. Existing seed scheduling strategies rely on manually designed models to \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "185", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Feng:2024:LUT, author = "Xiaoning Feng and Xiaohong Han and Simin Chen and Wei Yang", title = "{LLMEffiChecker}: Understanding and Testing Efficiency Degradation of Large Language Models", journal = j-TOSEM, volume = "33", number = "7", pages = "186:1--186:??", month = sep, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3664812", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon Sep 30 08:52:18 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3664812", abstract = "Large Language Models (LLMs) have received much recent attention due to their human-level accuracy. While existing works mostly focus on either improving accuracy or testing accuracy robustness, the computation efficiency of LLMs, which is of paramount \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "186", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Yu:2024:FEJ, author = "Jinqiang Yu and Michael Fu and Alexey Ignatiev and Chakkrit Tantithamthavorn and Peter Stuckey", title = "A Formal Explainer for Just-In-Time Defect Predictions", journal = j-TOSEM, volume = "33", number = "7", pages = "187:1--187:??", month = sep, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3664809", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon Sep 30 08:52:18 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3664809", abstract = "Just-in-Tim e (JIT) defect prediction has been proposed to help teams prioritize the limited resources on the most risky commits (or pull requests), yet it remains largely a black box, whose predictions are not explainable or actionable to practitioners. \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "187", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Huang:2024:NSG, author = "Dong Huang and Qingwen Bu and Yichao Fu and Yuhao Qing and Xiaofei Xie and Junjie Chen and Heming Cui", title = "Neuron Sensitivity-Guided Test Case Selection", journal = j-TOSEM, volume = "33", number = "7", pages = "188:1--188:??", month = sep, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3672454", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon Sep 30 08:52:18 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3672454", abstract = "Deep neural networks (DNNs) have been widely deployed in software to address various tasks (e.g., autonomous driving, medical diagnosis). However, they can also produce incorrect behaviors that result in financial losses and even threaten human safety. To \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "188", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Dong:2024:SCC, author = "Yihong Dong and Xue Jiang and Zhi Jin and Ge Li", title = "Self-Collaboration Code Generation via {ChatGPT}", journal = j-TOSEM, volume = "33", number = "7", pages = "189:1--189:??", month = sep, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3672459", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon Sep 30 08:52:18 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3672459", abstract = "Although large language models (LLMs) have demonstrated remarkable code-generation ability, they still struggle with complex tasks. In real-world software development, humans usually tackle complex tasks through collaborative teamwork, a strategy that \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "189", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Wang:2024:CCC, author = "Zhiyu Wang and Sihan Xu and Lingling Fan and Xiangrui Cai and Linyu Li and Zheli Liu", title = "Can Coverage Criteria Guide Failure Discovery for Image Classifiers? {An} Empirical Study", journal = j-TOSEM, volume = "33", number = "7", pages = "190:1--190:??", month = sep, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3672446", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon Sep 30 08:52:18 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3672446", abstract = "Quality assurance of deep neural networks (DNNs) is crucial for the deployment of DNN-based software, especially in mission- and safety-critical tasks. Inspired by structural white-box testing in traditional software, many test criteria have been proposed \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "190", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Ye:2024:FFO, author = "Mingxi Ye and Yuhong Nan and Hong-Ning Dai and Shuo Yang and Xiapu Luo and Zibin Zheng", title = "{FunFuzz}: a Function-Oriented Fuzzer for Smart Contract Vulnerability Detection with High Effectiveness and Efficiency", journal = j-TOSEM, volume = "33", number = "7", pages = "191:1--191:??", month = sep, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3674725", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon Sep 30 08:52:18 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3674725", abstract = "With the increasing popularity of Decentralized Applications (DApps) in blockchain, securing smart contracts has been a long-term, high-priority subject in the domain. Among the various research directions for vulnerability detection, fuzzing has received \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "191", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Peng:2024:BBS, author = "Anni Peng and Dongliang Fang and Le Guan and Erik van der Kouwe and Yin Li and Wenwen Wang and Limin Sun and Yuqing Zhang", title = "Bitmap-Based Security Monitoring for Deeply Embedded Systems", journal = j-TOSEM, volume = "33", number = "7", pages = "192:1--192:??", month = sep, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3672460", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon Sep 30 08:52:18 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3672460", abstract = "Deeply embedded systems powered by microcontrollers are becoming popular with the emergence of Internet-of-Things (IoT) technology. However, these devices primarily run C/C \({+}{+}\) code and are susceptible to memory bugs, which can potentially lead to \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "192", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Karas:2024:TTC, author = "Zachary Karas and Aakash Bansal and Yifan Zhang and Toby Li and Collin McMillan and Yu Huang", title = "A Tale of Two Comprehensions? {Analyzing} Student Programmer Attention during Code Summarization", journal = j-TOSEM, volume = "33", number = "7", pages = "193:1--193:??", month = sep, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3664808", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon Sep 30 08:52:18 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3664808", abstract = "Code summarization is the task of creating short, natural language descriptions of source code. It is an important part of code comprehension and a powerful method of documentation. Previous work has made progress in identifying where programmers focus in \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "193", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Parra-Calderon:2024:IIH, author = "Carlos Parra-Calder{\'o}n and Juli{\'a}n Alberto Garc{\'\i}a-Garc{\'\i}a and Juan Manuel Ramos-Cueli and Celia Alvarez-Romero and Esther Rom{\'a}n-Villar{\'a}n and Alicia Mart{\'\i}nez-Garc{\'\i}a and Mar{\'\i}a Jos{\'e} Escalona", title = "{IDE 4 ICDS}: a Human-Centric and Model-Driven Proposal to Improve the Digitization of Clinical Practice Guideline", journal = j-TOSEM, volume = "33", number = "7", pages = "194:1--194:??", month = sep, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3674732", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon Sep 30 08:52:18 MDT 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3674732", abstract = "Clinical practice guidelines (CPGs) are a formalization of specific clinical knowledge that states the best evidence-based clinical practices for treating pathologies. However, CPGs are limited because they are usually expressed as text. This gives rise \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "194", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Storey:2024:DRP, author = "Margaret-Anne Storey and Daniel Russo and Nicole Novielli and Takashi Kobayashi and Dong Wang", title = "A Disruptive Research Playbook for Studying Disruptive Innovations", journal = j-TOSEM, volume = "33", number = "8", pages = "195:1--195:??", month = nov, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3678172", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sat Dec 21 07:49:25 MST 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3678172", abstract = "As researchers today, we are witnessing a fundamental change in our technologically-enabled world due to the advent and diffusion of highly disruptive technologies such as generative Artificial Intelligence (AI), Augmented Reality (AR) and Virtual Reality \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "195", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Guizzo:2024:SGI, author = "Giovani Guizzo and David Williams and Mark Harman and Justyna Petke and Federica Sarro", title = "Speeding Up Genetic Improvement via Regression Test Selection", journal = j-TOSEM, volume = "33", number = "8", pages = "196:1--196:??", month = nov, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3680466", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sat Dec 21 07:49:25 MST 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3680466", abstract = "Genetic Improvement (GI) uses search-based optimisation algorithms to automatically improve software with respect to both functional and non-functional properties. Our previous work showed that Regression Test Selection (RTS) can help speed up the use of \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "196", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Ghammam:2024:EMC, author = "Anwar Ghammam and Rania Khalsi and Marouane Kessentini and Foyzul Hassan", title = "Efficient Management of Containers for Software Defined Vehicles", journal = j-TOSEM, volume = "33", number = "8", pages = "197:1--197:??", month = nov, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3672461", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sat Dec 21 07:49:25 MST 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3672461", abstract = "Containerization technology, such as Docker, is gaining in popularity in newly established software-defined vehicle architectures (SDVA). However, executing those containers can quickly become computationally expensive in constrained environments, given \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "197", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Zhang:2024:MMM, author = "Xiao-Yi Zhang and Yang Liu and Paolo Arcaini and Mingyue Jiang and Zheng Zheng", title = "{MET-MAPF}: a Metamorphic Testing Approach for Multi-Agent Path Finding Algorithms", journal = j-TOSEM, volume = "33", number = "8", pages = "198:1--198:??", month = nov, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3669663", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sat Dec 21 07:49:25 MST 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3669663", abstract = "The Multi-Agent Path Finding (MAPF) problem, i.e., the scheduling of multiple agents to reach their destinations, has been widely investigated. Testing MAPF systems is challenging, due to the complexity and variety of scenarios and the agents' \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "198", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Graf-Vlachy:2024:CCA, author = "Lorenz Graf-Vlachy and Stefan Wagner", title = "Cleaning Up Confounding: Accounting for Endogeneity Using Instrumental Variables and Two-Stage Models", journal = j-TOSEM, volume = "33", number = "8", pages = "199:1--199:??", month = nov, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3674730", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sat Dec 21 07:49:25 MST 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3674730", abstract = "Studies in empirical software engineering are often most useful if they make causal claims because this allows practitioners to identify how they can purposefully influence (rather than only predict) outcomes of interest. Unfortunately, many non-. \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "199", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Zhu:2024:HFG, author = "Zhouruixing Zhu and Cheryl Lee and Xiaoying Tang and Pinjia He", title = "{HeMiRCA}: Fine-Grained Root Cause Analysis for Microservices with Heterogeneous Data Sources", journal = j-TOSEM, volume = "33", number = "8", pages = "200:1--200:??", month = nov, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3674726", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sat Dec 21 07:49:25 MST 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3674726", abstract = "Microservices architecture improves software scalability, resilience, and agility but also poses significant challenges to system reliability due to their complexity and dynamic nature. Identifying and resolving anomalies promptly is crucial because they \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "200", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Liu:2024:ACI, author = "Shangqing Liu and Yanzhou Li and Xiaofei Xie and Wei Ma and Guozhu Meng and Yang Liu", title = "Automated Commit Intelligence by Pre-training", journal = j-TOSEM, volume = "33", number = "8", pages = "201:1--201:??", month = nov, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3674731", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sat Dec 21 07:49:25 MST 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3674731", abstract = "GitHub commits, which record the code changes with natural language messages for description, play a critical role in software developers' comprehension of software evolution. Due to their importance in software development, several learning-based works \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "201", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Zhang:2024:DDS, author = "Tiehua Zhang and Rui Xu and Jianping Zhang and Yuze Liu and Xin Chen and Jun Yin and Xi Zheng", title = "{DSHGT}: Dual-Supervisors Heterogeneous Graph Transformer-A Pioneer Study of Using Heterogeneous Graph Learning for Detecting Software Vulnerabilities", journal = j-TOSEM, volume = "33", number = "8", pages = "202:1--202:??", month = nov, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3674729", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sat Dec 21 07:49:25 MST 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3674729", abstract = "Vulnerability detection is a critical problem in software security and attracts growing attention both from academia and industry. Traditionally, software security is safeguarded by designated rule-based detectors that heavily rely on empirical expertise, \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "202", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Xie:2024:WCB, author = "Xiaoyuan Xie and Shuo Jin and Songqiang Chen and Shing-Chi Cheung", title = "Word Closure-Based Metamorphic Testing for Machine Translation", journal = j-TOSEM, volume = "33", number = "8", pages = "203:1--203:??", month = nov, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3675396", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sat Dec 21 07:49:25 MST 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3675396", abstract = "With the wide application of machine translation, the testing of Machine Translation Systems (MTSs) has attracted much attention. Recent works apply Metamorphic Testing (MT) to address the oracle problem in MTS testing. Existing MT methods for MTS \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "203", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Li:2024:AEP, author = "Jia Li and Yunfei Zhao and Yongmin Li and Ge Li and Zhi Jin", title = "{AceCoder}: an Effective Prompting Technique Specialized in Code Generation", journal = j-TOSEM, volume = "33", number = "8", pages = "204:1--204:??", month = nov, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3675395", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sat Dec 21 07:49:25 MST 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3675395", abstract = "Large language models (LLMs) have shown great success in code generation. LLMs take as the input a prompt and output the code. How to make prompts (i.e., Prompting Techniques ) is a key question. Existing prompting techniques are designed for natural \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "204", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Jiang:2024:SOM, author = "Yanjie Jiang and Hui Liu and Shing Chi Cheung and Lu Zhang", title = "Shortening Overlong Method Names with Abbreviations", journal = j-TOSEM, volume = "33", number = "8", pages = "205:1--205:??", month = nov, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3676959", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sat Dec 21 07:49:25 MST 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3676959", abstract = "Methods should be named to summarize their responsibilities meaningfully. When a method has a non-trivial responsibility, it may require a naming using multiple words. However, overlong method names are susceptible to typos and reduced readability \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "205", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Ruan:2024:TSC, author = "Haifeng Ruan and Yannic Noller and Saeid Tizpaz-Niari and Sudipta Chattopadhyay and Abhik Roychoudhury", title = "Timing Side-Channel Mitigation via Automated Program Repair", journal = j-TOSEM, volume = "33", number = "8", pages = "206:1--206:??", month = nov, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3678169", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sat Dec 21 07:49:25 MST 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3678169", abstract = "Side-channel vulnerability detection has gained prominence recently due to Spectre and Meltdown attacks. Techniques for side-channel detection range from fuzz testing to program analysis and program composition. Existing side-channel mitigation techniques \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "206", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Meng:2024:EAC, author = "Fanyi Meng and Ying Wang and Chun Yong Chong and Hai Yu and Zhiliang Zhu", title = "Evolution-Aware Constraint Derivation Approach for Software Remodularization", journal = j-TOSEM, volume = "33", number = "8", pages = "207:1--207:??", month = nov, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3676960", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sat Dec 21 07:49:25 MST 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3676960", abstract = "Existing software clustering techniques tend to ignore prior knowledge from domain experts, leading to results (suggested big-bang remodularization actions) that cannot be acceptable to developers. Incorporating domain experts knowledge or constraints \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "207", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Sundermann:2024:RDD, author = "Chico Sundermann and Heiko Raab and Tobias He{\ss} and Thomas Th{\"u}m and Ina Schaefer", title = "Reusing {d-DNNFs} for Efficient Feature-Model Counting", journal = j-TOSEM, volume = "33", number = "8", pages = "208:1--208:??", month = nov, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3680465", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sat Dec 21 07:49:25 MST 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3680465", abstract = "Feature models are commonly used to specify valid configurations of a product line. In industry, feature models are often complex due to numerous features and constraints. Thus, a multitude of automated analyses have been proposed. Many of those rely on \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "208", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Abedini:2024:CGI, author = "Yasaman Abedini and Abbas Heydarnoori", title = "Can {GitHub} Issues Help in App Review Classifications?", journal = j-TOSEM, volume = "33", number = "8", pages = "209:1--209:??", month = nov, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3678170", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sat Dec 21 07:49:25 MST 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3678170", abstract = "App reviews reflect various user requirements that can aid in planning maintenance tasks. Recently, proposed approaches for automatically classifying user reviews rely on machine learning algorithms. A previous study demonstrated that models trained on \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "209", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Song:2024:SVF, author = "Yi Song and Xihao Zhang and Xiaoyuan Xie and Songqiang Chen and Quanming Liu and Ruizhi Gao", title = "{SURE}: a Visualized Failure Indexing Approach Using Program Memory Spectrum", journal = j-TOSEM, volume = "33", number = "8", pages = "210:1--210:??", month = nov, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3676958", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sat Dec 21 07:49:25 MST 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3676958", abstract = "Failure indexing is a longstanding crux in software debugging, the goal of which is to automatically divide failures (e.g., failed test cases) into distinct groups according to the culprit root causes, as such multiple faults residing in a faulty program \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "210", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Rajput:2024:EEA, author = "Saurabhsingh Rajput and Tim Widmayer and Ziyuan Shang and Maria Kechagia and Federica Sarro and Tushar Sharma", title = "Enhancing Energy-Awareness in Deep Learning through Fine-Grained Energy Measurement", journal = j-TOSEM, volume = "33", number = "8", pages = "211:1--211:??", month = nov, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3680470", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sat Dec 21 07:49:25 MST 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3680470", abstract = "With the increasing usage, scale, and complexity of Deep Learning (dl) models, their rapidly growing energy consumption has become a critical concern. Promoting green development and energy awareness at different granularities is the need of the hour to \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "211", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Huang:2024:LDM, author = "Qing Huang and Yanbang Sun and Zhenchang Xing and Yuanlong Cao and Jieshan Chen and Xiwei Xu and Huan Jin and Jiaxing Lu", title = "Let's Discover More {API} Relations: a Large Language Model-Based {AI} Chain for Unsupervised {API} Relation Inference", journal = j-TOSEM, volume = "33", number = "8", pages = "212:1--212:??", month = nov, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3680469", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sat Dec 21 07:49:25 MST 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3680469", abstract = "APIs have intricate relations that can be described in text and represented as knowledge graphs to aid software engineering tasks. Existing relation extraction methods have limitations, such as limited API text corpus, and are affected by the \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "212", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Chouchen:2024:MPM, author = "Moataz Chouchen and Ali Ouni and Mohamed Wiem Mkaouer", title = "{MULTICR}: Predicting Merged and Abandoned Code Changes in Modern Code Review Using Multi-Objective Search", journal = j-TOSEM, volume = "33", number = "8", pages = "213:1--213:??", month = nov, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3680472", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sat Dec 21 07:49:25 MST 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3680472", abstract = "Modern Code Review (MCR) is an essential process in software development to ensure high-quality code. However, developers often spend considerable time reviewing code changes before being merged into the main code base. Previous studies attempted to \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "213", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Tambon:2024:GGI, author = "Florian Tambon and Foutse Khomh and Giuliano Antoniol", title = "{GIST}: Generated Inputs Sets Transferability in Deep Learning", journal = j-TOSEM, volume = "33", number = "8", pages = "214:1--214:??", month = nov, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3672457", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sat Dec 21 07:49:25 MST 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3672457", abstract = "To foster the verifiability and testability of deep neural networks (DNN), an increasing number of methods for test case generation techniques are being developed. When confronted with testing DNN models, the user can apply any existing test generation \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "214", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Yu:2024:NSU, author = "Shiwen Yu and Zengyu Liu and Ting Wang and Ji Wang", title = "Neural Solving Uninterpreted Predicates with Abstract Gradient Descent", journal = j-TOSEM, volume = "33", number = "8", pages = "215:1--215:??", month = nov, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3675394", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sat Dec 21 07:49:25 MST 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3675394", abstract = "Uninterpreted predicate solving is a fundamental problem in formal verification, including loop invariant and constrained horn clauses predicate solving. Existing approaches have been mostly in symbolic ways. While achieving sustainable progress, they \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "215", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Humeniuk:2024:RLI, author = "Dmytro Humeniuk and Foutse Khomh and Giuliano Antoniol", title = "Reinforcement Learning Informed Evolutionary Search for Autonomous Systems Testing", journal = j-TOSEM, volume = "33", number = "8", pages = "216:1--216:??", month = nov, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3680468", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sat Dec 21 07:49:25 MST 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3680468", abstract = "Evolutionary search (ES)-based techniques are commonly used for testing autonomous robotic systems. However, these approaches often rely on computationally expensive simulator-based models for test scenario evaluation. To improve the computational \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "216", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Liu:2024:ARC, author = "Yue Liu and Chakkrit Tantithamthavorn and Yonghui Liu and Patanamon Thongtanunam and Li Li", title = "Automatically Recommend Code Updates: Are We There Yet?", journal = j-TOSEM, volume = "33", number = "8", pages = "217:1--217:??", month = nov, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3678167", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sat Dec 21 07:49:25 MST 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3678167", abstract = "In recent years, large pre-trained Language Models of Code (CodeLMs) have shown promising results on various software engineering tasks. One such task is automatic code update recommendation, which transforms outdated code snippets into their approved and \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "217", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Trinkenreich:2024:PAA, author = "Bianca Trinkenreich and Fabio Santos and Klaas-Jan Stol", title = "Predicting Attrition among Software Professionals: Antecedents and Consequences of Burnout and Engagement", journal = j-TOSEM, volume = "33", number = "8", pages = "218:1--218:??", month = nov, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3691629", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sat Dec 21 07:49:25 MST 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3691629", abstract = "In this study of burnout and engagement, we address three major themes. First, we offer a review of prior studies of burnout among IT professionals and link these studies to the Job Demands-Resources (JD-R) model. Informed by the JD-R model, we identify \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "218", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Xu:2024:TUT, author = "Ming Xu and Jianling Fu and Hui Jiang and Yuxin Deng and Zhi-Bin Li", title = "Termination and Universal Termination Problems for Nondeterministic Quantum Programs", journal = j-TOSEM, volume = "33", number = "8", pages = "219:1--219:??", month = nov, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3691632", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sat Dec 21 07:49:25 MST 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3691632", abstract = "Verifying quantum programs has attracted a lot of interest in recent years. In this article, we consider the following two categories of termination problems of quantum programs with nondeterminism, namely: (termination) Is an input of a program \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "219", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Hou:2024:LLM, author = "Xinyi Hou and Yanjie Zhao and Yue Liu and Zhou Yang and Kailong Wang and Li Li and Xiapu Luo and David Lo and John Grundy and Haoyu Wang", title = "Large Language Models for Software Engineering: a Systematic Literature Review", journal = j-TOSEM, volume = "33", number = "8", pages = "220:1--220:??", month = nov, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3695988", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sat Dec 21 07:49:25 MST 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3695988", abstract = "Large Language Models (LLMs) have significantly impacted numerous domains, including Software Engineering (SE). Many recent publications have explored LLMs applied to various SE tasks. Nevertheless, a comprehensive understanding of the application, \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "220", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Russo:2024:NCGb, author = "Daniel Russo", title = "Navigating the Complexity of Generative {AI} Adoption in Software Engineering --- {RCR} Report", journal = j-TOSEM, volume = "33", number = "8", pages = "221:1--221:??", month = nov, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3680471", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sat Dec 21 07:49:25 MST 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3680471", abstract = "This Replicated Computational Results (RCR) report complements the study ``Navigating the Complexity of Generative AI Adoption in Software Engineering,'' which examines the factors influencing the integration of AI tools in software engineering practices. \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "221", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Pezze:2024:EEJ, author = "Mauro Pezz{\`e}", title = "Editorial: The End of the Journey", journal = j-TOSEM, volume = "33", number = "8", pages = "222:1--222:??", month = nov, year = "2024", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3705711", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sat Dec 21 07:49:25 MST 2024", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3705711", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "222", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Roychoudhury:2025:ETJ, author = "Abhik Roychoudhury", title = "Editorial: {TOSEM} Journal in 2025 and Beyond", journal = j-TOSEM, volume = "34", number = "1", pages = "1:1--1:??", month = jan, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3708477", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Feb 4 06:23:17 MST 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3708477", abstract = "TOSEM is ACM's flagship journal for publishing software engineering (SE) research. TOSEM stays true to the foundations of the discipline while meaningfully engaging with the wave of disruptive innovations in the field. In this light, we discuss the plans \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "1", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Gao:2025:ATM, author = "Zhipeng Gao and Yanqi Su and Xing Hu and Xin Xia", title = "Automating {TODO}-missed Methods Detection and Patching", journal = j-TOSEM, volume = "34", number = "1", pages = "2:1--2:??", month = jan, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3700793", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Feb 4 06:23:17 MST 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3700793", abstract = "TODO comments are widely used by developers to remind themselves or others about incomplete tasks. In other words, TODO comments are usually associated with temporary or suboptimal solutions. In practice, all the equivalent suboptimal implementations \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "2", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Rehse:2025:PDE, author = "Jana-Rebecca Rehse and Sander J. J. Leemans and Peter Fettke and Jan Martijn E. M. van der Werf", title = "On Process Discovery Experimentation: Addressing the Need for Research Methodology in Process Discovery", journal = j-TOSEM, volume = "34", number = "1", pages = "3:1--3:??", month = jan, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3672447", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Feb 4 06:23:17 MST 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3672447", abstract = "Process mining aims to derive insights into business processes from event logs recorded from information systems. Process discovery algorithms construct process models that describe the executed process. With the increasing availability of large-scale \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "3", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Robillard:2025:UTC, author = "Martin P. Robillard and Mathieu Nassif and Muhammad Sohail", title = "Understanding Test Convention Consistency as a Dimension of Test Quality", journal = j-TOSEM, volume = "34", number = "1", pages = "4:1--4:??", month = jan, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3672448", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Feb 4 06:23:17 MST 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3672448", abstract = "Unit tests must be readable to help developers understand and evolve production code. Most existing test quality metrics assess test code's ability to detect bugs. Few metrics focus on test code's readability. One standard approach to improve readability \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "4", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Wang:2025:TCM, author = "Xinyi Wang and Asmar Muqeet and Tao Yue and Shaukat Ali and Paolo Arcaini", title = "Test Case Minimization with Quantum Annealers", journal = j-TOSEM, volume = "34", number = "1", pages = "5:1--5:??", month = jan, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3680467", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Feb 4 06:23:17 MST 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3680467", abstract = "Quantum annealers are specialized quantum computers for solving combinatorial optimization problems with special quantum computing characteristics, e.g., superposition and entanglement. Theoretically, quantum annealers can outperform classic computers. \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "5", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Ntentos:2025:UDL, author = "Evangelos Ntentos and Nicole Elisabeth Lueger and Georg Simhandl and Uwe Zdun and Simon Schneider and Riccardo Scandariato and Nicol{\'a}s E. D{\'\i}az Ferreyra", title = "On the Understandability of Design-Level Security Practices in Infrastructure-as-Code Scripts and Deployment Architectures", journal = j-TOSEM, volume = "34", number = "1", pages = "6:1--6:??", month = jan, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3691630", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Feb 4 06:23:17 MST 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3691630", abstract = "Infrastructure as Code (IaC) automates IT infrastructure deployment, which is particularly beneficial for continuous releases, for instance, in the context of microservices and cloud systems. Despite its flexibility in application architecture, \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "6", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Openja:2025:EST, author = "Moses Openja and Foutse Khomh and Armstrong Foundjem and Zhen Ming (Jack) Jiang and Mouna Abidi and Ahmed E. Hassan", title = "An Empirical Study of Testing Machine Learning in the Wild", journal = j-TOSEM, volume = "34", number = "1", pages = "7:1--7:??", month = jan, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3680463", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Feb 4 06:23:17 MST 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3680463", abstract = "Background: Recently, machine and deep learning (ML/DL) algorithms have been increasingly adopted in many software systems. Due to their inductive nature, ensuring the quality of these systems remains a significant challenge for the research community. \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "7", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Wang:2025:CAF, author = "Haipeng Wang and Zhengyuan Wei and Qilin Zhou and Wing-Kwong Chan", title = "Context-Aware Fuzzing for Robustness Enhancement of Deep Learning Models", journal = j-TOSEM, volume = "34", number = "1", pages = "8:1--8:??", month = jan, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3680464", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Feb 4 06:23:17 MST 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3680464", abstract = "In the testing-retraining pipeline for enhancing the robustness property of deep learning (DL) models, many state-of-the-art robustness-oriented fuzzing techniques are metric-oriented. The pipeline generates adversarial examples as test cases via such a \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "8", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Zhao:2025:MFR, author = "Haojun Zhao and Yueming Wu and Deqing Zou and Yang Liu and Hai Jin", title = "{MalSensor}: Fast and Robust {Windows} Malware Classification", journal = j-TOSEM, volume = "34", number = "1", pages = "9:1--9:??", month = jan, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3688833", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Feb 4 06:23:17 MST 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3688833", abstract = "Driven by the substantial profits, the evolution of Portable Executable (PE) malware has posed persistent threats. PE malware classification has been an important research field, and numerous classification methods have been proposed. With the development \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "9", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Mazloomzadeh:2025:RGC, author = "Iren Mazloomzadeh and Gias Uddin and Foutse Khomh and Ashkan Sami", title = "Reputation Gaming in Crowd Technical Knowledge Sharing", journal = j-TOSEM, volume = "34", number = "1", pages = "10:1--10:??", month = jan, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3691627", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Feb 4 06:23:17 MST 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3691627", abstract = "Stack Overflow incentive system awards users with reputation scores to ensure quality. The decentralized nature of the forum may make the incentive system prone to manipulation. This article offers, for the first time, a comprehensive study of the \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "10", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Zhong:2025:BCP, author = "Wenkang Zhong and Chuanyi Li and Kui Liu and Jidong Ge and Bin Luo and Tegawend{\'e} F. Bissyand{\'e} and Vincent Ng", title = "Benchmarking and Categorizing the Performance of Neural Program Repair Systems for {Java}", journal = j-TOSEM, volume = "34", number = "1", pages = "11:1--11:??", month = jan, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3688834", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Feb 4 06:23:17 MST 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3688834", abstract = "Recent years have seen a rise in Neural Program Repair (NPR) systems in the software engineering community, which adopt advanced deep learning techniques to automatically fix bugs. Having a comprehensive understanding of existing systems can facilitate \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "11", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Zhang:2025:MMC, author = "Jierui Zhang and Liang Wang and Ying Li and Jing Jiang and Tao Wang and Xianping Tao", title = "Measuring and Mining Community Evolution in Developer Social Networks with Entropy-Based Indices", journal = j-TOSEM, volume = "34", number = "1", pages = "12:1--12:??", month = jan, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3688832", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Feb 4 06:23:17 MST 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3688832", abstract = "This work presents four novel entropy-based indices for measuring the community evolution of developer social networks (DSNs) in open source software (OSS) projects. The proposed indices offer a quantitative measure of community split, shrink, merge, and \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "12", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Luo:2025:SWC, author = "Chuan Luo and Jianping Song and Qiyuan Zhao and Binqi Sun and Junjie Chen and Hongyu Zhang and Jinkun Lin and Chunming Hu", title = "Solving the $t$-Wise Coverage Maximum Problem via Effective and Efficient Local Search-Based Sampling", journal = j-TOSEM, volume = "34", number = "1", pages = "13:1--13:??", month = jan, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3688836", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Feb 4 06:23:17 MST 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3688836", abstract = "To meet the increasing demand for customized software, highly configurable systems become essential in practice. Such systems offer many options to configure, and ensuring the reliability of these systems is critical. A widely used evaluation metric for \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "13", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Yu:2025:FTL, author = "Yongda Yu and Guoping Rong and Haifeng Shen and He Zhang and Dong Shao and Min Wang and Zhao Wei and Yong Xu and Juhong Wang", title = "Fine-Tuning Large Language Models to Improve Accuracy and Comprehensibility of Automated Code Review", journal = j-TOSEM, volume = "34", number = "1", pages = "14:1--14:??", month = jan, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3695993", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Feb 4 06:23:17 MST 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3695993", abstract = "As code review is a tedious and costly software quality practice, researchers have proposed several machine learning-based methods to automate the process. The primary focus has been on accuracy, that is, how accurately the algorithms are able to detect \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "14", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Huang:2025:NSG, author = "Li Huang and Weifeng Sun and Meng Yan and Zhongxin Liu and Yan Lei and David Lo", title = "Neuron Semantic-Guided Test Generation for Deep Neural Networks Fuzzing", journal = j-TOSEM, volume = "34", number = "1", pages = "15:1--15:??", month = jan, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3688835", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Feb 4 06:23:17 MST 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3688835", abstract = "In recent years, significant progress has been made in testing methods for deep neural networks (DNNs) to ensure their correctness and robustness. Coverage-guided criteria, such as neuron-wise, layer-wise, and path-/trace-wise, have been proposed for DNN \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "15", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Latendresse:2025:ESM, author = "Jasmine Latendresse and Samuel Abedu and Ahmad Abdellatif and Emad Shihab", title = "An Exploratory Study on Machine Learning Model Management", journal = j-TOSEM, volume = "34", number = "1", pages = "16:1--16:??", month = jan, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3688841", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Feb 4 06:23:17 MST 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3688841", abstract = "Effective model management is crucial for ensuring performance and reliability in Machine Learning (ML) systems, given the dynamic nature of data and operational environments. However, standard practices are lacking, often resulting in ad hoc approaches. \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "16", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Yang:2025:SDT, author = "Xu Yang and Gopi Krishnan Rajbahadur and Dayi Lin and Shaowei Wang and Zhen Ming (Jack) Jiang", title = "{SimClone}: Detecting Tabular Data Clones Using Value Similarity", journal = j-TOSEM, volume = "34", number = "1", pages = "17:1--17:??", month = jan, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3676961", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Feb 4 06:23:17 MST 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3676961", abstract = "Data clones are defined as multiple copies of the same data among datasets. The presence of data clones between datasets can cause issues such as difficulties in managing data assets and data license violations when using datasets with clones to build AI \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "17", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Ayerdi:2025:MMR, author = "Jon Ayerdi and Asier Iriarte and Pablo Valle and Ibai Roman and Miren Illarramendi and Aitor Arrieta", title = "{MarMot}: Metamorphic Runtime Monitoring of Autonomous Driving Systems", journal = j-TOSEM, volume = "34", number = "1", pages = "18:1--18:??", month = jan, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3678171", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Feb 4 06:23:17 MST 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3678171", abstract = "Autonomous driving systems (ADSs) are complex cyber-physical systems (CPSs) that must ensure safety even in uncertain conditions. Modern ADSs often employ deep neural networks (DNNs), which may not produce correct results in every possible driving \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "18", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Harzevili:2025:HDF, author = "Nima Shiri Harzevili and Mohammad Mahdi Mohajer and Moshi Wei and Hung Viet Pham and Song Wang", title = "History-Driven Fuzzing for Deep Learning Libraries", journal = j-TOSEM, volume = "34", number = "1", pages = "19:1--19:??", month = jan, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3688838", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Feb 4 06:23:17 MST 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3688838", abstract = "Recently, many Deep Learning (DL) fuzzers have been proposed for API-level testing of DL libraries. However, they either perform unguided input generation (e.g., not considering the relationship between API arguments when generating inputs) or only \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "19", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Li:2025:SIT, author = "Hao Li and Gopi Krishnan Rajbahadur and Cor-Paul Bezemer", title = "Studying the Impact of {TensorFlow} and {PyTorch} Bindings on Machine Learning Software Quality", journal = j-TOSEM, volume = "34", number = "1", pages = "20:1--20:??", month = jan, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3678168", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Feb 4 06:23:17 MST 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/python.bib; https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3678168", abstract = "Bindings for machine learning frameworks (such as TensorFlow and PyTorch) allow developers to integrate a framework's functionality using a programming language different from the framework's default language (usually Python). In this article, we study \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "20", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Sun:2025:DCI, author = "Zhensu Sun and Xiaoning Du and Fu Song and Shangwen Wang and Mingze Ni and Li Li and David Lo", title = "Don't Complete It! {Preventing} Unhelpful Code Completion for Productive and Sustainable Neural Code Completion Systems", journal = j-TOSEM, volume = "34", number = "1", pages = "21:1--21:??", month = jan, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3688831", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Feb 4 06:23:17 MST 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3688831", abstract = "Currently, large pre-trained language models are widely applied in neural code completion systems. Though large code models significantly outperform their smaller counterparts, around 70\% of displayed code completions from Github Copilot are not accepted \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "21", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Yao:2025:CUC, author = "Kaichun Yao and Hao Wang and Chuan Qin and Hengshu Zhu and Yanjun Wu and Libo Zhang", title = "{CARL}: Unsupervised Code-Based Adversarial Attacks for Programming Language Models via Reinforcement Learning", journal = j-TOSEM, volume = "34", number = "1", pages = "22:1--22:??", month = jan, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3688839", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Feb 4 06:23:17 MST 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3688839", abstract = "Code based adversarial attacks play a crucial role in revealing vulnerabilities of software system. Recently, pre-trained programming language models (PLMs) have demonstrated remarkable success in various significant software engineering tasks, \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "22", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Ahmadjee:2025:DSM, author = "Sabreen Ahmadjee and Carlos Mera-G{\'o}mez and Siamak Farshidi and Rami Bahsoon and Rick Kazman", title = "Decision Support Model for Selecting the Optimal Blockchain Oracle Platform: an Evaluation of Key Factors", journal = j-TOSEM, volume = "34", number = "1", pages = "23:1--23:??", month = jan, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3697011", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Feb 4 06:23:17 MST 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/bitcoin.bib; https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3697011", abstract = "Smart contract-based applications are executed in a blockchain environment, and they cannot directly access data from external systems, which is required for the service provision of these applications. Instead, smart contracts use agents known as \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "23", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Mason:2025:DDE, author = "Shandler A. Mason and Sandeep Kaur Kuttal", title = "Diversity's Double-Edged Sword: Analyzing Race's Effect on Remote Pair Programming Interactions", journal = j-TOSEM, volume = "34", number = "1", pages = "24:1--24:??", month = jan, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3699601", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Feb 4 06:23:17 MST 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3699601", abstract = "Remote pair programming is widely used in software development, but no research has examined how race affects these interactions between developers. We embarked on this study due to the historical underrepresentation of Black developers in the tech \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "24", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Gong:2025:DCP, author = "Jingzhi Gong and Tao Chen", title = "Deep Configuration Performance Learning: a Systematic Survey and Taxonomy", journal = j-TOSEM, volume = "34", number = "1", pages = "25:1--25:??", month = jan, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3702986", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Feb 4 06:23:17 MST 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3702986", abstract = "Performance is arguably the most crucial attribute that reflects the quality of a configurable software system. However, given the increasing scale and complexity of modern software, modeling and predicting how various configurations can impact \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "25", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Qian:2025:DDBa, author = "Ruixiang Qian and Quanjun Zhang and Chunrong Fang and Ding Yang and Shun Li and Binyu Li and Zhenyu Chen", title = "{DiPri}: Distance-Based Seed Prioritization for Greybox Fuzzing", journal = j-TOSEM, volume = "34", number = "1", pages = "26:1--26:??", month = jan, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3654440", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Feb 4 06:23:17 MST 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3654440", abstract = "Greybox fuzzing is a powerful testing technique. Given a set of initial seeds, greybox fuzzing continuously generates new test inputs to execute the program under test and drives executions with code coverage as feedback. Seed prioritization is an \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "26", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Qian:2025:DDBb, author = "Ruixiang Qian and Quanjun Zhang and Chunrong Fang and Ding Yang and Shun Li and Binyu Li and Zhenyu Chen", title = "{DiPri}: Distance-Based Seed Prioritization for Greybox Fuzzing --- {RCR} Report", journal = j-TOSEM, volume = "34", number = "1", pages = "27:1--27:??", month = jan, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3701298", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Feb 4 06:23:17 MST 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3701298", abstract = "This replicated computational results (RCR) report describes how to (1) set up DiPri and (2) replicate the experimental results. The primary artifact is the C/C++ prototype of DiPri, which is essentially an extension of the state-of-the-art greybox fuzzer \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "27", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Uyaguari:2025:RIT, author = "Fernando Uyaguari and Silvia T. Acu{\~n}a and John W. Castro and Davide Fucci and Oscar Dieste and Sira Vegas", title = "Relevant Information in {TDD} Experiment Reporting", journal = j-TOSEM, volume = "34", number = "2", pages = "28:1--28:??", month = feb, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3688837", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Feb 21 09:26:24 MST 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3688837", abstract = "Experiments are a commonly used method of research in software engineering (SE). Researchers report their experiments following detailed guidelines. However, researchers do not, in the field of test-driven development (TDD) at least, specify how they \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "28", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Nourry:2025:MFW, author = "Olivier Nourry and Yutaro Kashiwa and Weiyi Shang and Honglin Shu and Yasutaka Kamei", title = "My Fuzzers Won't Build: an Empirical Study of Fuzzing Build Failures", journal = j-TOSEM, volume = "34", number = "2", pages = "29:1--29:??", month = feb, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3688842", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Feb 21 09:26:24 MST 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3688842", abstract = "Fuzzing is an automated software testing technique used to find software vulnerabilities that works by sending large amounts of inputs to a software system to trigger bad behaviors. In recent years, the open source software ecosystem has seen a \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "29", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Pan:2025:TFD, author = "Weifeng Pan and Wei Wu and Hua Ming and Dae-Kyoo Kim and Zijiang Yang and Yutao Ma", title = "Toward the Fractal Dimension of Classes", journal = j-TOSEM, volume = "34", number = "2", pages = "30:1--30:??", month = feb, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3688844", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Feb 21 09:26:24 MST 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3688844", abstract = "The fractal property has been regarded as a fundamental property of complex networks, characterizing the self-similarity of a network. Such a property is usually numerically characterized by the fractal dimension metric, and it not only helps the \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "30", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{deSouza:2025:SPL, author = "Leandro Oliveria de Souza and Eduardo Santana de Almeida and Paulo Anselmo da Mota Silveira Neto and Earl T. Barr and Justyna Petke", title = "Software Product Line Engineering via Software Transplantation", journal = j-TOSEM, volume = "34", number = "2", pages = "31:1--31:??", month = feb, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3695987", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Feb 21 09:26:24 MST 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3695987", abstract = "Software Product Lines (SPLs) improve time-to-market, enhance software quality, and reduce maintenance costs. Current SPL reengineering practices are largely manual and require domain knowledge. Thus, adopting and, to a lesser extent, maintaining SPLs are \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "31", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Selvaraj:2025:LSS, author = "Madhu Selvaraj and Gias Uddin", title = "A Large-Scale Study of {IoT} Security Weaknesses and Vulnerabilities in the Wild", journal = j-TOSEM, volume = "34", number = "2", pages = "32:1--32:??", month = feb, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3691628", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Feb 21 09:26:24 MST 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3691628", abstract = "Internet of Things (IoT) is defined as the connection between places and physical objects (i.e., things) over the internet/network via smart computing devices. IoT is a rapidly emerging paradigm that now encompasses almost every aspect of our modern life. \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "32", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Li:2025:SLR, author = "Xuetao Li and Yuxia Zhang and Cailean Osborne and Minghui Zhou and Zhi Jin and Hui Liu", title = "Systematic Literature Review of Commercial Participation in Open Source Software", journal = j-TOSEM, volume = "34", number = "2", pages = "33:1--33:??", month = feb, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3690632", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Feb 21 09:26:24 MST 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3690632", abstract = "Open source software (OSS) has been playing a fundamental role in not only information technology but also our social lives. Attracted by various advantages of OSS, increasing commercial companies are participating extensively in open source development, \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "33", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Xu:2025:RFG, author = "Zhenyang Xu and Yongqiang Tian and Mengxiao Zhang and Jiarui Zhang and Puzhuo Liu and Yu Jiang and Chengnian Sun", title = "{T-Rec}: Fine-Grained Language-Agnostic Program Reduction Guided by Lexical Syntax", journal = j-TOSEM, volume = "34", number = "2", pages = "34:1--34:??", month = feb, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3690631", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Feb 21 09:26:24 MST 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3690631", abstract = "Program reduction strives to eliminate bug-irrelevant code elements from a bug-triggering program, so that (1) a smaller and more straightforward bug-triggering program can be obtained, (2) and the difference among duplicates (i.e., different programs \ldots{})", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "34", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Park:2025:IFL, author = "Jongchan Park and Tae Eun Kim and Dongsun Kim and Kihong Heo", title = "Improving Fault Localization with External Oracle by Using Counterfactual Execution", journal = j-TOSEM, volume = "34", number = "2", pages = "35:1--35:??", month = feb, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3695997", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Feb 21 09:26:24 MST 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3695997", abstract = "We present Flex, a new approach to improve fault localization with external oracles. Spectrum-based fault localization techniques estimate suspicious statements based on the execution trace of the test suite. State-of-the-art techniques rely on test \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "35", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Wang:2025:IHG, author = "Guoqing Wang and Zeyu Sun and Jinhao Dong and Yuxia Zhang and Mingxuan Zhu and Qingyuan Liang and Dan Hao", title = "Is It Hard to Generate Holistic Commit Message?", journal = j-TOSEM, volume = "34", number = "2", pages = "36:1--36:??", month = feb, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3695996", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Feb 21 09:26:24 MST 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3695996", abstract = "Commit messages are important for developers to understand the content and the reason for code changes. However, poor and even empty commit messages widely exist. To improve the quality of commit messages and development efficiency, many commit message \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "36", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Li:2025:SCT, author = "Jia Li and Ge Li and Yongmin Li and Zhi Jin", title = "Structured Chain-of-Thought Prompting for Code Generation", journal = j-TOSEM, volume = "34", number = "2", pages = "37:1--37:??", month = feb, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3690635", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Feb 21 09:26:24 MST 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3690635", abstract = "Large Language Models (LLMs) have shown impressive abilities in code generation. Chain-of-Thought (CoT) prompting is the state-of-the-art approach to utilizing LLMs. CoT prompting asks LLMs first to generate CoTs (i.e., intermediate natural language \ldots{})", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "37", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Guglielmi:2025:AIG, author = "Emanuela Guglielmi and Gabriele Bavota and Rocco Oliveto and Simone Scalabrino", title = "Automatic Identification of Game Stuttering via Gameplay Videos Analysis", journal = j-TOSEM, volume = "34", number = "2", pages = "38:1--38:??", month = feb, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3695992", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Feb 21 09:26:24 MST 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3695992", abstract = "Modern video games are extremely complex software systems and, as such, they might suffer from several types of post-release issues. A particularly insidious issue is constituted by drops in the frame rate (i.e., stuttering events), which might have a \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "38", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Lee:2025:ZIF, author = "Ahcheong Lee and Youngseok Choi and Shin Hong and Yunho Kim and Kyutae Cho and Moonzoo Kim", title = "{ZigZagFuzz}: Interleaved Fuzzing of Program Options and Files", journal = j-TOSEM, volume = "34", number = "2", pages = "39:1--39:??", month = feb, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3697014", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Feb 21 09:26:24 MST 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3697014", abstract = "Command-line options (e.g., -l, -F, -R for ls) given to a command-line program can significantly alternate the behaviors of the program. Thus, fuzzing not only file input but also program options can improve test coverage and bug detection. In this \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "39", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Alikhanifard:2025:NRS, author = "Pouria Alikhanifard and Nikolaos Tsantalis", title = "A Novel Refactoring and Semantic Aware Abstract Syntax Tree Differencing Tool and a Benchmark for Evaluating the Accuracy of Diff Tools", journal = j-TOSEM, volume = "34", number = "2", pages = "40:1--40:??", month = feb, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3696002", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Feb 21 09:26:24 MST 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3696002", abstract = "Software undergoes constant changes to support new requirements, address bugs, enhance performance, and ensure maintainability. Thus, developers spend a great portion of their workday trying to understand and review the code changes of their teammates. \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "40", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Zheng:2025:IFR, author = "Zheng Zheng and Daixu Ren and Huai Liu and Tsong Yueh Chen and Tiancheng Li", title = "Identifying the Failure-Revealing Test Cases in Metamorphic Testing: a Statistical Approach", journal = j-TOSEM, volume = "34", number = "2", pages = "41:1--41:??", month = feb, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3695990", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Feb 21 09:26:24 MST 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3695990", abstract = "Metamorphic testing, thanks to its high failure-detection effectiveness especially in the absence of test oracle, has been widely applied in both the traditional context of software testing and other relevant fields such as fault localization and program \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "41", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Ouyang:2025:ESN, author = "Shuyin Ouyang and Jie M. Zhang and Mark Harman and Meng Wang", title = "An Empirical Study of the Non-Determinism of {ChatGPT} in Code Generation", journal = j-TOSEM, volume = "34", number = "2", pages = "42:1--42:??", month = feb, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3697010", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Feb 21 09:26:24 MST 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3697010", abstract = "There has been a recent explosion of research on Large Language Models (LLMs) for software engineering tasks, in particular code generation. However, results from LLMs can be highly unstable; non-deterministically returning very different code for the \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "42", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Zhao:2025:KVM, author = "Jianhong Zhao and Yongwang Zhao and Peisen Yao and Fanlang Zeng and Bohua Zhan and Kui Ren", title = "{KBX}: Verified Model Synchronization via Formal Bidirectional Transformation", journal = j-TOSEM, volume = "34", number = "2", pages = "43:1--43:??", month = feb, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3696000", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Feb 21 09:26:24 MST 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3696000", abstract = "Complex safety-critical systems require multiple models for a comprehensive description, resulting in error-prone development and laborious verification. Bidirectional transformation (BX) is an approach to automatically synchronizing these models. However,. \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "43", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Huang:2025:DAS, author = "Yuekai Huang and Junjie Wang and Song Wang and Moshi Wei and Lin Shi and Zhe Liu and Qing Wang", title = "Deep {API} Sequence Generation via {Golden} Solution Samples and {API} Seeds", journal = j-TOSEM, volume = "34", number = "2", pages = "44:1--44:??", month = feb, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3695995", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Feb 21 09:26:24 MST 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3695995", abstract = "Automatic API recommendation can accelerate developers' programming and has been studied for years. There are two orthogonal lines of approaches for this task, i.e., information retrieval-based (IR-based) approaches and sequence to sequence (seq2seq) \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "44", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Pei:2025:NFN, author = "Yu Pei and Jeongju Sohn and Sarra Habchi and Mike Papadakis", title = "Non-Flaky and Nearly Optimal Time-Based Treatment of Asynchronous Wait {Web} Tests", journal = j-TOSEM, volume = "34", number = "2", pages = "45:1--45:??", month = feb, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3695989", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Feb 21 09:26:24 MST 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3695989", abstract = "Asynchronous waits are a common root cause of flaky tests and a major time-influential factor of Web application testing. We build a dataset of 49 reproducible asynchronous wait flaky tests and their fixes from 26 open source projects to study their \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "45", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Chen:2025:DTT, author = "Jianming Chen and Yawen Wang and Junjie Wang and Xiaofei Xie and Dandan Wang and Qing Wang and Fanjiang Xu", title = "{Demo2Test}: Transfer Testing of Agent in Competitive Environment with Failure Demonstrations", journal = j-TOSEM, volume = "34", number = "2", pages = "46:1--46:??", month = feb, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3696001", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Feb 21 09:26:24 MST 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3696001", abstract = "The competitive game between agents exists in many critical applications, such as military unmanned aerial vehicles. It is urgent to test these agents to reduce the significant losses caused by their failures. Existing studies mainly are to construct a \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "46", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Wang:2025:ADL, author = "Qipeng Wang and Shiqi Jiang and Zhenpeng Chen and Xu Cao and Yuanchun Li and Aoyu Li and Yun Ma and Ting Cao and Xuanzhe Liu", title = "Anatomizing Deep Learning Inference in {Web} Browsers", journal = j-TOSEM, volume = "34", number = "2", pages = "47:1--47:??", month = feb, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3688843", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Feb 21 09:26:24 MST 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3688843", abstract = "Web applications have increasingly adopted Deep Learning (DL) through in-browser inference, wherein DL inference performs directly within Web browsers. The actual performance of in-browser inference and its impacts on the Quality of Experience ( QoE ) \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "47", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Shi:2025:QEG, author = "Jinjing Shi and Zimeng Xiao and Heyuan Shi and Yu Jiang and Xuelong Li", title = "{QuanTest}: Entanglement-Guided Testing of Quantum Neural Network Systems", journal = j-TOSEM, volume = "34", number = "2", pages = "48:1--48:??", month = feb, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3688840", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Feb 21 09:26:24 MST 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3688840", abstract = "Quantum Neural Network (QNN) combines the deep learning (DL) principle with the fundamental theory of quantum mechanics to achieve machine learning tasks with quantum acceleration. Recently, QNN systems have been found to manifest robustness issues \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "48", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Ji:2025:NAT, author = "Pin Ji and Yang Feng and Ruohao Zhang and Ruichen Xue and Yichi Zhang and Weitao Huang and Jia Liu and Zhihong Zhao", title = "{NLPLego}: Assembling Test Generation for Natural Language Processing Applications", journal = j-TOSEM, volume = "34", number = "2", pages = "49:1--49:??", month = feb, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3691631", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Feb 21 09:26:24 MST 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3691631", abstract = "With the development of Deep Learning, Natural Language Processing (NLP) applications have reached or even exceeded human-level capabilities in certain tasks. Although NLP applications have shown good performance, they can still have bugs like traditional \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "49", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Sun:2025:AAN, author = "Xinyu Sun and Wanwei Liu and Shangwen Wang and Tingyu Chen and Ye Tao and Xiaoguang Mao", title = "{AutoRIC}: Automated Neural Network Repairing Based on Constrained Optimization", journal = j-TOSEM, volume = "34", number = "2", pages = "50:1--50:??", month = feb, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3690634", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Feb 21 09:26:24 MST 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3690634", abstract = "Neural networks are important computational models used in the domains of artificial intelligence and software engineering. Parameters of a neural network are obtained via training it against a specific dataset with a standard process, which guarantees \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "50", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Nasab:2025:FCA, author = "Ali Rezaei Nasab and Maedeh Dashti and Mojtaba Shahin and Mansooreh Zahedi and Hourieh Khalajzadeh and Chetan Arora and Peng Liang", title = "Fairness Concerns in App Reviews: a Study on {AI}-Based Mobile Apps", journal = j-TOSEM, volume = "34", number = "2", pages = "51:1--51:??", month = feb, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3690633", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Feb 21 09:26:24 MST 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3690633", abstract = "Fairness is one of the socio-technical concerns that must be addressed in software systems. Considering the popularity of mobile software applications (apps) among a wide range of individuals worldwide, mobile apps with unfair behaviors and outcomes can \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "51", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Sun:2025:IFL, author = "Yongqian Sun and Zihan Lin and Binpeng Shi and Shenglin Zhang and Shiyu Ma and Pengxiang Jin and Zhenyu Zhong and Lemeng Pan and Yicheng Guo and Dan Pei", title = "Interpretable Failure Localization for Microservice Systems Based on Graph Autoencoder", journal = j-TOSEM, volume = "34", number = "2", pages = "52:1--52:??", month = feb, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3695999", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Feb 21 09:26:24 MST 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3695999", abstract = "Accurate and efficient localization of root cause instances in large-scale microservice systems is of paramount importance. Unfortunately, prevailing methods face several limitations. Notably, some recent methods rely on supervised learning which \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "52", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Torre:2025:TEP, author = "Damiano Torre and Anitha Chennamaneni and JaeYun Jo and Gitika Vyas and Brandon Sabrsula", title = "Toward Enhancing Privacy Preservation of a Federated Learning {CNN} Intrusion Detection System in {IoT}: Method and Empirical Study", journal = j-TOSEM, volume = "34", number = "2", pages = "53:1--53:??", month = feb, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3695998", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Feb 21 09:26:24 MST 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3695998", abstract = "Enormous risks and hidden dangers of information security exist in the applications of Internet of Things (IoT) technologies. To secure IoT software systems, software engineers have to deploy advanced security software such as Intrusion Detection Systems \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "53", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Nassif:2025:NLS, author = "Mathieu Nassif and Martin P. Robillard", title = "Non-Linear Software Documentation with Interactive Code Examples", journal = j-TOSEM, volume = "34", number = "2", pages = "54:1--54:??", month = feb, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3702976", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Feb 21 09:26:24 MST 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3702976", abstract = "Documentation enables sharing knowledge between the developers of a technology and its users. Creating quality documents, however, is challenging: Documents must satisfy the needs of a large audience without being overwhelming for individuals. We address \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "54", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Fei:2025:PCA, author = "Zhiwei Fei and Jidong Ge and Chuanyi Li and Tianqi Wang and Yuning Li and Haodong Zhang and LiGuo Huang and Bin Luo", title = "Patch Correctness Assessment: a Survey", journal = j-TOSEM, volume = "34", number = "2", pages = "55:1--55:??", month = feb, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3702972", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Feb 21 09:26:24 MST 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3702972", abstract = "Most automated program repair methods rely on test cases to determine the correctness of the generated patches. However, due to the incompleteness of available test suites, some patches that pass all the test cases may still be incorrect. This issue is \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "55", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Belgacem:2025:MLA, author = "Hichem Belgacem and Xiaochen Li and Domenico Bianculli and Lionel Briand", title = "A Machine Learning Approach for Automated Filling of Categorical Fields in Data Entry Forms --- {RCR} Report", journal = j-TOSEM, volume = "34", number = "2", pages = "56:1--56:??", month = feb, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3702985", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Feb 21 09:26:24 MST 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", URL = "https://dl.acm.org/doi/10.1145/3702985", abstract = "This article represents the Replicated Computational Results (RCR) related to our TOSEM paper ``A Machine Learning Approach for Automated Filling of Categorical Fields in Data Entry Forms,'' where we proposed LAFF, an approach to automatically suggest \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "56", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Zemin:2025:ESS, author = "Luciano Zem{\'\i}n and Ariel Godio and C{\'e}sar Cornejo and Renzo Degiovanni and Sim{\'o}n Guti{\'e}rrez Brida and Germ{\'a}n Regis and Nazareno Aguirre and Marcelo Fabi{\'a}n Frias", title = "An Empirical Study on the Suitability of Test-based Patch Acceptance Criteria", journal = j-TOSEM, volume = "34", number = "3", pages = "57:1--57:??", month = mar, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3702971", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sat Jun 14 16:50:49 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "In this article, we empirically study the suitability of tests as acceptance criteria for automated program fixes, by checking patches produced by automated repair tools using a bug-finding tool, as opposed to previous works that used tests or manual \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "57", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Wang:2025:DCA, author = "Shangwen Wang and Bo Lin and Liqian Chen and Xiaoguang Mao", title = "Divide-and-Conquer: Automating Code Revisions via Localization-and-Revision", journal = j-TOSEM, volume = "34", number = "3", pages = "58:1--58:??", month = mar, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3697013", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sat Jun 14 16:50:49 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Despite its effectiveness in ensuring software quality, code review remains a labor-intensive and time-consuming task. In order to alleviate this burden on developers, researchers have proposed the automation of code review activities, particularly \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "58", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Perez:2025:PIS, author = "Beatriz P{\'e}rez and {\'A}ngel Luis Rubio Garcia and Mar{\'\i}a A. Zapata", title = "{PROV-IDEA}: Supporting Interoperable Schema and Data Provenance within Database Evolution", journal = j-TOSEM, volume = "34", number = "3", pages = "59:1--59:??", month = mar, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3697008", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sat Jun 14 16:50:49 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Database evolution and data provenance are two closely related research fields. On the one hand, the registry (via provenance) of the schema evolution allows the maintenance of its version record. On the other hand, the origin of the data (i.e., its \ldots{})", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "59", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Zhang:2025:RSA, author = "Ting Zhang and Ivana Clairine Irsan and Ferdian Thung and David Lo", title = "Revisiting Sentiment Analysis for Software Engineering in the Era of Large Language Models", journal = j-TOSEM, volume = "34", number = "3", pages = "60:1--60:??", month = mar, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3697009", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sat Jun 14 16:50:49 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Software development involves collaborative interactions where stakeholders express opinions across various platforms. Recognizing the sentiments conveyed in these interactions is crucial for the effective development and ongoing maintenance of software \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "60", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Crespo-Rodriguez:2025:ISA, author = "Victor Crespo-Rodriguez and Neelofar and Aldeida Aleti and Burak Turhan", title = "Instance Space Analysis of Testing of Autonomous Vehicles in Critical Scenarios", journal = j-TOSEM, volume = "34", number = "3", pages = "61:1--61:??", month = mar, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3699596", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sat Jun 14 16:50:49 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Before being deployed on roads, Autonomous Vehicles (AVs) must undergo comprehensive testing. Safety-critical situations, however, are infrequent in usual driving conditions, so simulated scenarios are used to create them. A test scenario comprises static \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "61", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Yu:2025:LMU, author = "Xiao Yu and Guancheng Lin and Xing Hu and Jacky Wai Keung and Xin Xia", title = "Less Is More: Unlocking Semi-Supervised Deep Learning for Vulnerability Detection", journal = j-TOSEM, volume = "34", number = "3", pages = "62:1--62:??", month = mar, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3699602", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sat Jun 14 16:50:49 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Deep learning has demonstrated its effectiveness in software vulnerability detection, but acquiring a large number of labeled code snippets for training deep learning models is challenging due to labor-intensive annotation. With limited labeled data, \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "62", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Notland:2025:ESG, author = "Jakob Svennevik Notland and Mariusz Nowostawski and Jingyue Li", title = "An Empirical Study on Governance in {Bitcoin}'s Consensus Evolution", journal = j-TOSEM, volume = "34", number = "3", pages = "63:1--63:??", month = mar, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3699600", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sat Jun 14 16:50:49 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/bitcoin.bib; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Consensus rule changes in public permissionless blockchains are challenging. Changes can be contentious, and getting all participants to agree could be tedious. Notably, Bitcoin has seen centralisation tendencies in mining and development. However, how these tendencies influence governance processes of consensus evolution has received minimal attention. We explore how the evolution of blockchain systems and the governance of consensus intertwine from socio-technical aspects. Our study analyses the governmental structures in blockchain by looking into Bitcoin. We investigate consensus change processes through grounded theory, comprising quantitative and qualitative data from 34 consensus forks in two different blockchains, Bitcoin Core and Bitcoin Cash. We explore how decentralisation and governance unfold in practice. In contrast to existing studies, we revealed that centralisation tendencies among miners and developers have no direct control over consensus rules in a blockchain. Furthermore, centralisation tendencies do not affect decision-making for consensus evolution governance in the same way as they facilitate consensus attacks, such as 51\% attacks. We also discovered that consensus governance is constrained by the technicalities of change and deployment techniques. Consequently, even though miners have the authority to make consensus changes and propose new blocks, they are restricted by deployment techniques and dependence on user adoption.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "63", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Gu:2025:IPI, author = "Wenwei Gu and Jinyang Liu and Zhuangbin Chen and Jianping Zhang and Yuxin Su and Jiazhen Gu and Cong Feng and Zengyin Yang and Yongqiang Yang and Michael R. Lyu", title = "Identifying Performance Issues in Cloud Service Systems Based on Relational--Temporal Features", journal = j-TOSEM, volume = "34", number = "3", pages = "64:1--64:??", month = mar, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3702978", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sat Jun 14 16:50:49 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Cloud systems, typically comprised of various components (e.g., microservices), are susceptible to performance issues, which may cause service-level agreement violations and financial losses. Identifying performance issues is thus of paramount importance \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "64", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Ren:2025:VPD, author = "Luyao Ren and Xing Zhang and Ziyue Hua and Yanyan Jiang and Xiao He and Yingfei Xiong and Tao Xie", title = "Validity-Preserving Delta Debugging via Generator Trace Reduction", journal = j-TOSEM, volume = "34", number = "3", pages = "65:1--65:??", month = mar, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3705305", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sat Jun 14 16:50:49 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Reducing test inputs that trigger bugs is crucial for efficient debugging. Delta debugging is the most popular approach for this purpose. When test inputs need to conform to certain specifications, existing delta debugging practice encounters a validity \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "65", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{deLara:2025:AML, author = "Juan de Lara and Esther Guerra", title = "Adaptive Modelling Languages: Abstract Syntax and Model Migration", journal = j-TOSEM, volume = "34", number = "3", pages = "66:1--66:??", month = mar, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3702975", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sat Jun 14 16:50:49 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Modelling languages are heavily used in many disciplines, including software engineering. However, current languages are rigid, since they do not get adapted to fit the users' expertise, the modelling task or the usage platform. This may turn some \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "66", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Albert:2025:CCB, author = "Elvira Albert and Reiner H{\"a}hnle and Alicia Merayo and Dominic Steinh{\"o}fel", title = "Certified Cost Bounds for Abstract Programs", journal = j-TOSEM, volume = "34", number = "3", pages = "67:1--67:??", month = mar, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3705298", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sat Jun 14 16:50:49 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "A program containing placeholders for unspecified statements or expressions is called an abstract (or schematic) program. Placeholder symbols occur naturally in program transformation rules, as used in refactoring, compilation or optimization. Static cost \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "67", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Noei:2025:DRC, author = "Shayan Noei and Heng Li and Ying Zou", title = "Detecting Refactoring Commits in Machine Learning {Python} Projects: a Machine Learning-Based Approach", journal = j-TOSEM, volume = "34", number = "3", pages = "68:1--68:??", month = mar, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3705309", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sat Jun 14 16:50:49 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/python.bib; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Refactoring aims to improve the quality of software without altering its functional behaviors. Understanding developers' refactoring activities is essential to improve software maintainability. The use of machine learning (ML) libraries and frameworks in \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "68", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Zhang:2025:EEE, author = "Yuntong Zhang and Andreea Costea and Ridwan Shariffdeen and Davin McCall and Abhik Roychoudhury", title = "{EffFix}: Efficient and Effective Repair of Pointer Manipulating Programs", journal = j-TOSEM, volume = "34", number = "3", pages = "69:1--69:??", month = mar, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3705310", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sat Jun 14 16:50:49 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "This work introduces EffFix, a tool that applies a novel static analysis-driven automated program repair (APR) technique for fixing memory errors. APR tools typically rely on a given test-suite to guide the repair process. Apart from the need to provide \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "69", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Chen:2025:UOC, author = "Yunqi Chen and Zhiyuan Wan and Yifei Zhuang and Ning Liu and David Lo and Xiaohu Yang", title = "Understanding the {OSS} Communities of Deep Learning Frameworks: a Comparative Case Study of {PyTorch} and {TensorFlow}", journal = j-TOSEM, volume = "34", number = "3", pages = "70:1--70:??", month = mar, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3705303", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sat Jun 14 16:50:49 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/python.bib; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Over the past two decades, deep learning has received tremendous success in developing software systems across various domains. Deep learning frameworks have been proposed to facilitate the development of such software systems, among which, PyTorch and T. \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "70", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Zhang:2025:BVA, author = "Yuan Zhang and Lei Qu and Yifei Wu and Leihuan Wu and Tingting Yu and Rui Chen and Weiqiang Kong", title = "Bounded Verification of Atomicity Violations for Interrupt-Driven Programs via Lazy Sequentialization", journal = j-TOSEM, volume = "34", number = "3", pages = "71:1--71:??", month = mar, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3705311", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sat Jun 14 16:50:49 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Detecting atomicity violations effectively in interrupt-driven programs is difficult due to the asymmetric concurrency interleaving of interrupts. Current approaches face two main challenges: (1) A large number of false positives are generated by \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "71", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Evtikhiev:2025:WCP, author = "Mikhail Evtikhiev and Ekaterina Koshchenko and Vladimir Kovalenko", title = "What Could Possibly Go Wrong: Undesirable Patterns in Collective Development", journal = j-TOSEM, volume = "34", number = "3", pages = "72:1--72:??", month = mar, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3707451", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sat Jun 14 16:50:49 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Software development, often perceived as a technical endeavor, is fundamentally a social activity requiring collaboration among team members. Acknowledging this, the software development community has devised strategies to address possible collaboration-. \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "72", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Zhou:2025:RCL, author = "Yufei Zhou and Haihua Tang and Longtao Zhu and Hao Ding and Junyan Qian", title = "Refining Code-Line-Level Bugginess Identification: Getting the Best of Both Worlds by Fusing Syntactic and Semantic Features", journal = j-TOSEM, volume = "34", number = "3", pages = "73:1--73:??", month = mar, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3707456", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sat Jun 14 16:50:49 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Background: Code-line-level bugginess identification (CLBI) is an important area within software quality assurance, aiming to pinpoint potential buggy source code lines in a given software product. Recently, two concurrent approaches, GLANCE and \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "73", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Fu:2025:DFR, author = "Xiaoqin Fu and Asif Zaman and Haipeng Cai", title = "{DistMeasure}: a Framework for Runtime Characterization and Quality Assessment of Distributed Software via Interprocess Communications", journal = j-TOSEM, volume = "34", number = "3", pages = "74:1--74:??", month = mar, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3708476", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sat Jun 14 16:50:49 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "A defining, unique aspect of distributed systems lies in interprocess communication (IPC) through which distributed components interact and collaborate toward the holistic system behaviors. This highly decoupled construction intuitively contributes to the \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "74", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Chen:2025:TCT, author = "Yinan Chen and Yuan Huang and Xiangping Chen and Zibin Zheng", title = "{TG-CUP}: a Transformer and {GNN}-Based Multi-Modal Comment Updating Method", journal = j-TOSEM, volume = "34", number = "3", pages = "75:1--75:??", month = mar, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3708474", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sat Jun 14 16:50:49 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Comments play a crucial role in code comprehension and maintenance. This is particularly vital when the code is changed, as comments should be promptly updated to maintain consistency between the code and the comments. Existing comment update methods \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "75", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Fan:2025:EHN, author = "Ye Fan and Chuanyi Li and Jidong Ge and LiGuo Huang and Bin Luo", title = "Effective Hard Negative Mining for Contrastive Learning-Based Code Search", journal = j-TOSEM, volume = "34", number = "3", pages = "76:1--76:??", month = mar, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3695994", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sat Jun 14 16:50:49 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Background. Code search aims to find the most relevant code snippet in a large codebase based on a given natural language query. An accurate code search engine can increase code reuse and improve programming efficiency. The focus of code search is how to \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "76", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Dong:2025:CEC, author = "Yihong Dong and Jiazheng Ding and Xue Jiang and Ge Li and Zhuo Li and Zhi Jin", title = "{CodeScore}: Evaluating Code Generation by Learning Code Execution", journal = j-TOSEM, volume = "34", number = "3", pages = "77:1--77:??", month = mar, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3695991", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sat Jun 14 16:50:49 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "A proper code evaluation metric (CEM) profoundly impacts the evolution of code generation, which is an important research field in NLP and software engineering. Prevailing match-based CEMs (e.g., BLEU, Accuracy, and CodeBLEU) suffer from two significant \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "77", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Gu:2025:ELL, author = "Xiaodong Gu and Meng Chen and Yalan Lin and Yuhan Hu and Hongyu Zhang and Chengcheng Wan and Zhao Wei and Yong Xu and Juhong Wang", title = "On the Effectiveness of Large Language Models in Domain-Specific Code Generation", journal = j-TOSEM, volume = "34", number = "3", pages = "78:1--78:??", month = mar, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3697012", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sat Jun 14 16:50:49 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Large language models (LLMs) such as ChatGPT have shown remarkable capabilities in code generation. Despite significant achievements, they rely on enormous training data to acquire a broad spectrum of open-domain knowledge. Besides, their evaluation \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "78", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Xiang:2025:ACG, author = "Jianhang Xiang and Zhipeng Gao and Lingfeng Bao and Xing Hu and Jiayuan Chen and Xin Xia", title = "Automating Comment Generation for Smart Contract from Bytecode", journal = j-TOSEM, volume = "34", number = "3", pages = "79:1--79:??", month = mar, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3699597", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sat Jun 14 16:50:49 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Recently, smart contracts have played a vital role in automatic financial and business transactions. To help end users without programming background to better understand the logic of smart contracts, previous studies have proposed models for \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "79", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Zou:2025:ISC, author = "Wentao Zou and Qi Li and Chuanyi Li and Jidong Ge and Xiang Chen and LiGuo Huang and Bin Luo", title = "Improving Source Code Pre-Training via Type-Specific Masking", journal = j-TOSEM, volume = "34", number = "3", pages = "80:1--80:??", month = mar, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3699599", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sat Jun 14 16:50:49 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "The Masked Language Modeling (MLM) task is widely recognized as one of the most effective pre-training tasks and currently derives many variants in the Software Engineering (SE) field. However, most of these variants mainly focus on code representation \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "80", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Zhang:2025:EAA, author = "Quanjun Zhang and Weifeng Sun and Chunrong Fang and Bowen Yu and Hongyan Li and Meng Yan and Jianyi Zhou and Zhenyu Chen", title = "Exploring Automated Assertion Generation via Large Language Models", journal = j-TOSEM, volume = "34", number = "3", pages = "81:1--81:??", month = mar, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3699598", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sat Jun 14 16:50:49 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Unit testing aims to validate the correctness of software system units and has become an essential practice in software development and maintenance. However, it is incredibly time-consuming and labor-intensive for testing experts to write unit test cases \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "81", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Li:2025:BBW, author = "Xinyue Li and Zhenpeng Chen and Jie M. Zhang and Federica Sarro and Ying Zhang and Xuanzhe Liu", title = "Bias behind the Wheel: Fairness Testing of Autonomous Driving Systems", journal = j-TOSEM, volume = "34", number = "3", pages = "82:1--82:??", month = mar, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3702989", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sat Jun 14 16:50:49 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "This article conducts fairness testing of automated pedestrian detection, a crucial but under-explored issue in autonomous driving systems. We evaluate eight state-of-the-art deep learning-based pedestrian detectors across demographic groups on large-. \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "82", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Liu:2025:LPS, author = "Puzhuo Liu and Chengnian Sun and Yaowen Zheng and Xuan Feng and Chuan Qin and Yuncheng Wang and Zhenyang Xu and Zhi Li and Peng Di and Yu Jiang and Limin Sun", title = "{LLM}-Powered Static Binary Taint Analysis", journal = j-TOSEM, volume = "34", number = "3", pages = "83:1--83:??", month = mar, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3711816", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sat Jun 14 16:50:49 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "This article proposes LATTE, the first static binary taint analysis that is powered by a large language model (LLM). LATTE is superior to the state of the art (e.g., Emtaint, Arbiter, Karonte) in three aspects. First, LATTE is fully automated while prior \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "83", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Zeng:2025:BAP, author = "Yicheng Zeng and Zhanwei Song and Guo Lv and Yu Zhou and Hongsong Zhu and Limin Sun", title = "Backsolver: Adapting Preceding Execution Paths to Solve Constraints for Concolic Execution", journal = j-TOSEM, volume = "34", number = "3", pages = "84:1--84:??", month = mar, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3712194", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sat Jun 14 16:50:49 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Concolic execution follows the execution paths of concrete inputs, capable of generating new inputs for unexplored code by solving negated path constraints. However, implicit flows can hinder concolic execution, reducing the code coverage. Implicit flows \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "84", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Schiller:2025:NFEa, author = "Nico Schiller and Xinyi Xu and Lukas Bernhard and Nils Bars and Moritz Schloegel and Thorsten Holz", title = "Novelty Not Found: Exploring Input Shadowing in Fuzzing through Adaptive Fuzzer Restarts", journal = j-TOSEM, volume = "34", number = "3", pages = "85:1--85:??", month = mar, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3712186", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sat Jun 14 16:50:49 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Greybox fuzzing enhances software security through unprecedented effectiveness in automated fault detection. Its success lies in the coverage feedback extracted from the system under test, guiding the fuzzer to explore different program parts. The most \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "85", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Schiller:2025:NFEb, author = "Nico Schiller and Xinyi Xu and Lukas Bernhard and Nils Bars and Moritz Schloegel and Thorsten Holz", title = "Novelty Not Found: Exploring Input Shadowing in Fuzzing through Adaptive Fuzzer Restarts --- {RCR} Report", journal = j-TOSEM, volume = "34", number = "3", pages = "86:1--86:??", month = mar, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3712590", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sat Jun 14 16:50:49 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "This is the Replicated Computational Results (RCR) Report for our ACM TOSEM paper, ``Novelty Not Found: Exploring Input Shadowing in Fuzzing through Adaptive Fuzzer Restarts''. In this paper, we demonstrate how input shadowing can impact the fuzzing process \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "86", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Majdinasab:2025:TMC, author = "Vahid Majdinasab and Amin Nikanjam and Foutse Khomh", title = "Trained without My Consent: Detecting Code Inclusion in Language Models Trained on Code", journal = j-TOSEM, volume = "34", number = "4", pages = "87:1--87:??", month = may, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3702980", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sat Jun 14 16:50:51 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Code auditing ensures that the developed code adheres to standards, regulations, and copyright protection by verifying that it does not contain code from protected sources. The recent advent of Large Language Models (LLMs) as coding assistants in the \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "87", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Wei:2025:GMG, author = "Jialiang Wei and Anne-Lise Courbis and Thomas Lambolais and Binbin Xu and Pierre Louis Bernard and G{\'e}rard Dray and Walid Maalej", title = "{GUing}: a Mobile {GUI} Search Engine using a Vision-Language Model", journal = j-TOSEM, volume = "34", number = "4", pages = "88:1--88:??", month = may, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3702993", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sat Jun 14 16:50:51 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Graphical User Interfaces (GUIs) are central to app development projects. App developers may use the GUIs of other apps as a means of requirements refinement and rapid prototyping or as a source of inspiration for designing and improving their own apps. \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "88", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Sun:2025:EMT, author = "Yongqian Sun and Minghan Liang and Shenglin Zhang and Zeyu Che and Zhiyao Luo and Dongwen Li and Yuzhi Zhang and Dan Pei and Lemeng Pan and Liping Hou", title = "Efficient Multivariate Time Series Anomaly Detection through Transfer Learning for Large-Scale Software Systems", journal = j-TOSEM, volume = "34", number = "4", pages = "89:1--89:??", month = may, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3702984", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sat Jun 14 16:50:51 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Timely anomaly detection of multivariate time series (MTS) is of vital importance for managing large-scale software systems. However, many deep learning-based MTS anomaly detection models require long-term MTS training data to achieve optimal performance, \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "89", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Kabir:2025:ZZS, author = "Azmain Kabir and Shaowei Wang and Yuan Tian and Chen, Tse-Hsun (Peter) and Muhammad Asaduzzaman and Wenbin Zhang", title = "{ZS4C}: Zero-Shot Synthesis of Compilable Code for Incomplete Code Snippets Using {LLMs}", journal = j-TOSEM, volume = "34", number = "4", pages = "90:1--90:??", month = may, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3702979", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sat Jun 14 16:50:51 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Technical Q\&A sites are valuable for software developers seeking knowledge, but the code snippets they provide are often uncompilable and incomplete due to unresolved types and missing libraries. This poses a challenge for users who wish to reuse or \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "90", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Xu:2025:DLG, author = "Xiaodan Xu and Chao Ni and Xinrong Guo and Shaoxuan Liu and Xiaoya Wang and Kui Liu and Xiaohu Yang", title = "Distinguishing {LLM}-Generated from Human-Written Code by Contrastive Learning", journal = j-TOSEM, volume = "34", number = "4", pages = "91:1--91:??", month = may, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3705300", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sat Jun 14 16:50:51 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Large language models (LLMs), such as ChatGPT released by OpenAI, have attracted significant attention from both industry and academia due to their demonstrated ability to generate high-quality content for various tasks. Despite the impressive \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "91", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Han:2025:RTR, author = "Ruidong Han and Shangzhi Xu and Juanru Li and Elisa Bertino and David Lo and JianFeng Ma and Siqi Ma", title = "Real-time Rectifying Flight Control Misconfiguration Using Intelligent Agent", journal = j-TOSEM, volume = "34", number = "4", pages = "92:1--92:??", month = may, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3702994", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sat Jun 14 16:50:51 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Configurations are supported by most flight control systems, allowing users to control a flying drone adapted to complexities such as environmental changes or mission alterations. Such an advanced functionality also introduces a significant problem-. \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "92", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Sha:2025:LNF, author = "Zihan Sha and Hao Wang and Zeyu Gao and Hui Shu and Bolun Zhang and Ziqing Wang and Chao Zhang", title = "{\tt llasm}: Naming Functions in Binaries by Fusing Encoder-only and Decoder-only {LLMs}", journal = j-TOSEM, volume = "34", number = "4", pages = "93:1--93:??", month = may, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3702988", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sat Jun 14 16:50:51 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Predicting function names in stripped binaries, which requires succinctly summarizing semantics of binary code in natural languages, is a crucial but challenging task. Recently, many machine learning based solutions have been proposed. However, they have \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "93", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Ishimoto:2025:RBP, author = "Yuta Ishimoto and Masanari Kondo and Lei Ma and Naoyasu Ubayashi and Yasutaka Kamei", title = "Repairs and Breaks Prediction for Deep Neural Networks", journal = j-TOSEM, volume = "34", number = "4", pages = "94:1--94:??", month = may, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3702983", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sat Jun 14 16:50:51 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "With the increasing prevalence of software incorporating deep neural networks (DNNs), quality assurance for these software systems has become a crucial concern. To this end, various methods have been proposed to repair the misbehavior of DNNs by modifying \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "94", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Zhang:2025:DDR, author = "Xiaoyu Zhang and Juan Zhai and Shiqing Ma and Xiaohong Guan and Chao Shen", title = "{DREAM}: Debugging and Repairing {AutoML} Pipelines", journal = j-TOSEM, volume = "34", number = "4", pages = "95:1--95:??", month = may, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3702992", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sat Jun 14 16:50:51 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Deep Learning models have become an integrated component of modern software systems. In response to the challenge of model design, researchers proposed Automated Machine Learning (AutoML) systems, which automatically search for model architecture and \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "95", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Zhang:2025:CBT, author = "Lehuan Zhang and Shikai Guo and Yi Guo and Hui Li and Yu Chai and Rong Chen and Xiaochen Li and He Jiang", title = "Context-based Transfer Learning for Structuring Fault Localization and Program Repair Automation", journal = j-TOSEM, volume = "34", number = "4", pages = "96:1--96:??", month = may, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3705302", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sat Jun 14 16:50:51 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Automated software debugging plays a crucial role in aiding software developers to swiftly identify and attempt to rectify faults, thereby significantly reducing developers' workload. Previous researches have predominantly relied on simplistic semantic \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "96", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Xie:2025:IIA, author = "Ruilin Xie and Xiang Chen and Qifan He and Bixin Li and Zhanqi Cui", title = "{IATT}: Interpretation Analysis-based Transferable Test Generation for Convolutional Neural Networks", journal = j-TOSEM, volume = "34", number = "4", pages = "97:1--97:??", month = may, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3705301", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sat Jun 14 16:50:51 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Convolutional Neural Networks (CNNs) have been widely used in various fields. However, it is essential to perform sufficient testing to detect internal defects before deploying CNNs, especially in security-sensitive scenarios. Generating error-inducing \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "97", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Chen:2025:IAT, author = "Tianyu Chen and Lin Li and Bingjie Shan and Guangtai Liang and Ding Li and Qianxiang Wang and Tao Xie", title = "Identifying Affected Third-Party {Java} Libraries from Textual Descriptions of Vulnerabilities and Libraries", journal = j-TOSEM, volume = "34", number = "4", pages = "98:1--98:27", month = may, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3717060", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Oct 24 12:44:58 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2020.bib; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "To address security vulnerabilities arising from third-party libraries, security researchers maintain databases monitoring and curating vulnerability reports. Application developers can identify libraries affected by vulnerability reports (in short, \ldots{})", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "98", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Qian:2025:FGF, author = "Ruixiang Qian and Quanjun Zhang and Chunrong Fang and Lihua Guo and Zhenyu Chen", title = "{FunFuzz}: Greybox Fuzzing with Function Significance", journal = j-TOSEM, volume = "34", number = "4", pages = "99:1--99:34", month = may, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3702974", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Oct 24 12:44:58 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Greybox fuzzing is dedicated to revealing software bugs by maximizing code coverage. Concentrating on code coverage, greybox fuzzing effectively exposes bugs in real-world programs by continuously executing the program under test (PUT) with the test \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "99", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Chen:2025:WCM, author = "Chong Chen and Jianzhong Su and Jiachi Chen and Yanlin Wang and Tingting Bi and Jianxing Yu and Yanli Wang and Xingwei Lin and Ting Chen and Zibin Zheng", title = "When {ChatGPT} Meets Smart Contract Vulnerability Detection: How Far Are We?", journal = j-TOSEM, volume = "34", number = "4", pages = "100:1--100:30", month = may, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3702973", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Oct 24 12:44:58 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "With the development of blockchain technology, smart contracts have become an important component of blockchain applications. Despite their crucial role, the development of smart contracts may introduce vulnerabilities and potentially lead to severe \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "100", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Sun:2025:TIL, author = "Tiezhu Sun and Nadia Daoudi and Weiguo Pian and Kisub Kim and Kevin Allix and Tegawend{\'e} F. Bissyand{\'e} and Jacques Klein", title = "Temporal-Incremental Learning for {Android} Malware Detection", journal = j-TOSEM, volume = "34", number = "4", pages = "101:1--101:30", month = may, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3702990", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Oct 24 12:44:58 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Malware classification is a specific and refined task within the broader malware detection problem. Effective classification aids in understanding attack techniques and developing robust defenses, ensuring application security and timely mitigation of \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "101", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Chen:2025:CSO, author = "Xiangxiang Chen and Xingwei Lin and Jingyi Wang and Jun Sun and Jiashui Wang and Wenhai Wang", title = "{Scuzer}: a Scheduling Optimization Fuzzer for {TVM}", journal = j-TOSEM, volume = "34", number = "4", pages = "102:1--102:28", month = may, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3705308", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Oct 24 12:44:58 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "The concept of Deep Learning (DL) compiler was proposed to deploy DL models more efficiently on diverse hardware through optimization techniques. As one of the most popular DL compilers, TVM incorporates three levels (high-level, schedule, and low-level) \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "102", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Houy:2025:TYL, author = "Sabine Houy and Alexandre Bartel", title = "Twenty Years Later: Evaluating the Adoption of Control Flow Integrity", journal = j-TOSEM, volume = "34", number = "4", pages = "103:1--103:30", month = may, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3702982", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Oct 24 12:44:58 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Memory corruption vulnerabilities still allow compromising computers through software written in a memory-unsafe language such as C/C++. This highlights that mitigation techniques to prevent such exploitations are not all widely deployed. In this article, \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "103", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Zhang:2025:KTB, author = "Junan Zhang and Kaifeng Huang and Yiheng Huang and Bihuan Chen and Ruisi Wang and Chong Wang and Xin Peng", title = "Killing Two Birds with One Stone: Malicious Package Detection in {NPM} and {PyPI} using a Single Model of Malicious Behavior Sequence", journal = j-TOSEM, volume = "34", number = "4", pages = "104:1--104:28", month = may, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3705304", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Oct 24 12:44:58 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/python.bib; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Open source software (OSS) supply chain enlarges the attack surface of a software system, which makes package registries attractive targets for attacks. Recently, multiple package registries have received intensified attacks with malicious packages. Of \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "104", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Shariffdeen:2025:VRC, author = "Ridwan Shariffdeen and Christopher S. Timperley and Yannic Noller and Claire {Le Goues} and Abhik Roychoudhury", title = "Vulnerability Repair via Concolic Execution and Code Mutations", journal = j-TOSEM, volume = "34", number = "4", pages = "105:1--105:27", month = may, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3707454", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Oct 24 12:44:58 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Security vulnerabilities detected via techniques like greybox fuzzing are often fixed with a significant time lag. This increases the exposure of the software to vulnerabilities. Automated fixing of vulnerabilities where a tool can generate fix \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "105", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Liang:2025:TED, author = "Ruichao Liang and Jing Chen and Cong Wu and Kun He and Yueming Wu and Weisong Sun and Ruiying Du and Qingchuan Zhao and Yang Liu", title = "Towards Effective Detection of {Ponzi} Schemes on {Ethereum} with Contract Runtime Behavior Graph", journal = j-TOSEM, volume = "34", number = "4", pages = "106:1--106:32", month = may, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3707458", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Oct 24 12:44:58 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/bitcoin.bib; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Ponzi schemes, a form of scam, have been discovered in Ethereum smart contracts in recent years, causing massive financial losses. Existing detection methods primarily focus on rule-based approaches and machine learning techniques that utilize static \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "106", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Liu:2025:DRN, author = "Yonghui Liu and Xiao Chen and Pei Liu and Jordan Samhi and John Grundy and Chunyang Chen and Li Li", title = "Demystifying React Native {Android} Apps for Static Analysis", journal = j-TOSEM, volume = "34", number = "4", pages = "107:1--107:33", month = may, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3702977", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Oct 24 12:44:58 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "React Native, an open source framework, simplifies cross-platform app development by allowing JavaScript-side code to interact with native-side code. Previous studies disregarded React Native, resulting in insufficient static analysis of React Native app \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "107", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Foster:2025:UME, author = "Simon Foster and Chung-Kil Hur and Jim Woodcock", title = "Unifying Model Execution and Deductive Verification with Interaction Trees in {Isabelle\slash HOL}", journal = j-TOSEM, volume = "34", number = "4", pages = "108:1--108:40", month = may, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3702981", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Oct 24 12:44:58 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Model execution allows us to prototype and analyse software engineering models by stepping through their possible behaviours, using techniques like animation and simulation. On the other hand, deductive verification allows us to construct formal proofs \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "108", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Yang:2025:PST, author = "Zhou Yang and Jieke Shi and Muhammad Hilmi Asyrofi and Bowen Xu and Xin Zhou and Donggyun Han and David Lo", title = "Prioritizing Speech Test Cases", journal = j-TOSEM, volume = "34", number = "4", pages = "109:1--109:27", month = may, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3707450", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Oct 24 12:44:58 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "As Automated Speech Recognition (ASR) systems gain widespread acceptance, there is a pressing need to rigorously test and enhance their performance. Nonetheless, the process of collecting and executing speech test cases is typically both costly and \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "109", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Lyu:2025:SFL, author = "Deyun Lyu and Zhenya Zhang and Paolo Arcaini and Xiao-Yi Zhang and Fuyuki Ishikawa and Jianjun Zhao", title = "{SpectAcle}: Fault Localisation of {AI-Enabled} {CPS} by Exploiting Sequences of {DNN} Controller Inferences", journal = j-TOSEM, volume = "34", number = "4", pages = "110:1--110:35", month = may, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3705307", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Oct 24 12:44:58 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Cyber-physical systems (CPSs) are increasingly adopting deep neural networks (DNNs) as controllers, giving birth to AI-enabled CPSs. Despite their advantages, many concerns arise about the safety of DNN controllers. Numerous efforts have been made to \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "110", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Kong:2025:TBC, author = "Dezhen Kong and Jiakun Liu and Lingfeng Bao and David Lo", title = "Toward Better Comprehension of Breaking Changes in the {NPM} Ecosystem", journal = j-TOSEM, volume = "34", number = "4", pages = "111:1--111:23", month = may, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3702991", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Oct 24 12:44:58 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Code evolution is prevalent in software ecosystems, which can provide many benefits, such as new features, bug fixes, security patches, while still introducing breaking changes that make downstream projects fail to work. Breaking changes cause a lot of \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "111", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Reiss:2025:RIB, author = "Steven P. Reiss and Xuan Wei and Jiahao Yuan and Qi Xin", title = "{ROSE}: an {IDE}-Based Interactive Repair Framework for Debugging", journal = j-TOSEM, volume = "34", number = "4", pages = "112:1--112:39", month = may, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3705306", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Oct 24 12:44:58 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Debugging is costly. Automated program repair (APR) holds the promise of reducing its cost by automatically fixing errors. However, current techniques are not easily applicable in a realistic debugging scenario because they assume a high-quality test \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "112", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Vitale:2025:CDS, author = "Antonio Vitale and Rocco Oliveto and Simone Scalabrino", title = "A Catalog of Data Smells for Coding Tasks", journal = j-TOSEM, volume = "34", number = "4", pages = "113:1--113:32", month = may, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3707457", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Oct 24 12:44:58 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Large Language Models (LLMs) are increasingly becoming fundamental in supporting software developers in coding tasks. The massive datasets used for training LLMs are often collected automatically, leading to the introduction of data smells. Previous work \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "113", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Jiang:2025:LMA, author = "Yingjie Jiang and Ran Mo and Wenjing Zhan and Dongyu Wang and Zengyang Li and Yutao Ma", title = "Leveraging Modular Architecture for Bug Characterization and Analysis in Automated Driving Software", journal = j-TOSEM, volume = "34", number = "4", pages = "114:1--114:31", month = may, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3707455", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Oct 24 12:44:58 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "With the rapid advancement of automated driving technology, numerous manufacturers deploy vehicles with auto-driving features. This highlights the importance of ensuring the quality of automated driving software. To achieve this, characterizing bugs in \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "114", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Fu:2025:ADL, author = "Michael Fu and Jirat Pasuksmit and Chakkrit Tantithamthavorn", title = "{AI} for {DevSecOps}: a Landscape and Future Opportunities", journal = j-TOSEM, volume = "34", number = "4", pages = "115:1--115:61", month = may, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3712190", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Oct 24 12:44:58 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "DevOps has emerged as one of the most rapidly evolving software development paradigms. With the growing concerns surrounding security in software systems, the DevSecOps paradigm has gained prominence, urging practitioners to incorporate security practices \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "115", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Bendrissou:2025:GMTa, author = "Bachir Bendrissou and Cristian Cadar and Alastair F. Donaldson", title = "Grammar Mutation for Testing Input Parsers", journal = j-TOSEM, volume = "34", number = "4", pages = "116:1--116:21", month = may, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3708517", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Oct 24 12:44:58 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", note = "See RCR report \cite{Bendrissou:2025:GMTb}.", abstract = "Grammar-based fuzzing is an effective method for testing programs that consume structured inputs, particularly input parsers. However, if the available grammar does not accurately represent the input format, or if the system under test (SUT) does not \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "116", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Bendrissou:2025:GMTb, author = "Bachir Bendrissou and Cristian Cadar and Alastair F. Donaldson", title = "Grammar Mutation for Testing Input Parsers --- {RCR} Report", journal = j-TOSEM, volume = "34", number = "4", pages = "117:1--117:5", month = may, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3712192", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Oct 24 12:44:58 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", note = "See \cite{Bendrissou:2025:GMTa}.", abstract = "This document presents the artefact that was used to run experiments and produce results reported in the article `Grammar Mutation for Testing Input Parsers'. The artefact includes a docker image and a dockerfile. The image can be reconstructed by \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "117", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Pezze:2025:RSE, author = "Mauro Pezz{\`e} and Silvia Abrah{\~a}o and Birgit Penzenstadler and Denys Poshyvanyk and Abhik Roychoudhury and Tao Yue", title = "A 2030 Roadmap for Software Engineering", journal = j-TOSEM, volume = "34", number = "5", pages = "118:1--118:??", month = jun, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3731559", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sat Jun 14 16:50:53 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "The landscape of software engineering has dramatically changed in recent years. The impressive advances of artificial intelligence are just the latest and most disruptive innovation that has remarkably changed the software engineering research and \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "118", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Ahmed:2025:AIS, author = "Iftekhar Ahmed and Aldeida Aleti and Haipeng Cai and Alexander Chatzigeorgiou and Pinjia He and Xing Hu and Mauro Pezz{\`e} and Denys Poshyvanyk and Xin Xia", title = "Artificial Intelligence for Software Engineering: The Journey So Far and the Road Ahead", journal = j-TOSEM, volume = "34", number = "5", pages = "119:1--119:27", month = jun, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3719006", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Oct 24 13:02:14 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Artificial intelligence and recent advances in deep learning architectures, including transformer networks and large language models, change the way people think and act to solve problems. Software engineering, as an increasingly complex process to \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "119", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Terragni:2025:FAD, author = "Valerio Terragni and Annie Vella and Partha Roop and Kelly Blincoe", title = "The Future of {AI}-Driven Software Engineering", journal = j-TOSEM, volume = "34", number = "5", pages = "120:1--120:20", month = jun, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3715003", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Oct 24 13:02:14 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "A paradigm shift is underway in Software Engineering, with AI systems such as LLMs playing an increasingly important role in boosting software development productivity. This trend is anticipated to persist. In the next years, we expect a growing \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "120", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Qiu:2025:TCT, author = "Ketai Qiu and Niccol{\`o} Puccinelli and Matteo Ciniselli and Luca {Di Grazia}", title = "From Today's Code to Tomorrow's Symphony: The {AI} Transformation of Developer's Routine by 2030", journal = j-TOSEM, volume = "34", number = "5", pages = "121:1--121:17", month = jun, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3709353", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Oct 24 13:02:14 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "In the rapidly evolving landscape of software engineering, the integration of AI into the Software Development Lifecycle (SDLC) heralds a transformative era for developers. Recently, we have assisted to a pivotal shift toward AI-assisted programming, \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "121", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Burgueno:2025:AMD, author = "Lola Burgue{\~n}o and Davide {Di Ruscio} and Houari Sahraoui and Manuel Wimmer", title = "Automation in Model-Driven Engineering: a Look Back, and Ahead", journal = j-TOSEM, volume = "34", number = "5", pages = "122:1--122:25", month = jun, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3712008", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Oct 24 13:02:14 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Model-Driven Engineering (MDE) provides a huge body of knowledge of automation for many different engineering tasks, especially those involving transitioning from design to implementation. With the huge progress made in AI, questions arise about the \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "122", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Kessel:2025:MGS, author = "Marcus Kessel and Colin Atkinson", title = "Morescient {GAI} for Software Engineering", journal = j-TOSEM, volume = "34", number = "5", pages = "123:1--123:17", month = jun, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3709354", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Oct 24 13:02:14 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "The ability of Generative AI (GAI) technology to automatically check, synthesize, and modify software engineering artifacts promises to revolutionize all aspects of software engineering. Using GAI for software engineering tasks is consequently one of the \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "123", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{He:2025:LBM, author = "Junda He and Christoph Treude and David Lo", title = "{LLM}-Based Multi-Agent Systems for Software Engineering: Literature Review, Vision, and the Road Ahead", journal = j-TOSEM, volume = "34", number = "5", pages = "124:1--124:30", month = jun, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3712003", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Oct 24 13:02:14 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Integrating Large Language Models (LLMs) into autonomous agents marks a significant shift in the research landscape by offering cognitive abilities that are competitive with human planning and reasoning. This article explores the transformative potential \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "124", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Zhao:2025:LAS, author = "Yanjie Zhao and Xinyi Hou and Shenao Wang and Haoyu Wang", title = "{LLM} App Store Analysis: a Vision and Roadmap", journal = j-TOSEM, volume = "34", number = "5", pages = "125:1--125:25", month = jun, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3708530", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Oct 24 13:02:14 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "The rapid growth and popularity of large language model (LLM) app stores have created new opportunities and challenges for researchers, developers, users, and app store managers. As the LLM app ecosystem continues to evolve, it is crucial to understand \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "125", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Lin:2025:OSA, author = "Zhihao Lin and Wei Ma and Tao Lin and Yaowen Zheng and Jingquan Ge and Jun Wang and Jacques Klein and Tegawend{\'e} F. Bissyand{\'e} and Yang Liu and Li Li", title = "Open Source {AI}-based {SE} Tools: Opportunities and Challenges of Collaborative Software Learning", journal = j-TOSEM, volume = "34", number = "5", pages = "126:1--126:24", month = jun, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3708529", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Oct 24 13:02:14 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Large language models (LLMs) have become instrumental in advancing software engineering (SE) tasks, showcasing their efficacy in code understanding and beyond. AI code models have demonstrated their value not only in code generation but also in defect \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "126", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Gao:2025:CCS, author = "Cuiyun Gao and Xing Hu and Shan Gao and Xin Xia and Zhi Jin", title = "The Current Challenges of Software Engineering in the Era of Large Language Models", journal = j-TOSEM, volume = "34", number = "5", pages = "127:1--127:30", month = jun, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3712005", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Oct 24 13:02:14 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "With the advent of large language models (LLMs) in the AI area, the field of software engineering (SE) has also witnessed a paradigm shift. These models, by leveraging the power of deep learning and massive amounts of data, have demonstrated an \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "127", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Chen:2025:LMI, author = "Daihang Chen and Yonghui Liu and Mingyi Zhou and Yanjie Zhao and Haoyu Wang and Shuai Wang and Xiao Chen and Tegawend{\'e} F. Bissyand{\'e} and Jacques Klein and Li Li", title = "{LLM} for Mobile: an Initial Roadmap", journal = j-TOSEM, volume = "34", number = "5", pages = "128:1--128:29", month = jun, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3708528", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Oct 24 13:02:14 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "When mobile meets LLMs, mobile app users deserve to have more intelligent usage experiences. For this to happen, we argue that there is a strong need to apply LLMs for the mobile ecosystem. We therefore provide a research roadmap for guiding our fellow \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "128", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Abrahao:2025:SEH, author = "Silvia Abrah{\~a}o and John Grundy and Mauro Pezz{\`e} and Margaret-Anne Storey and Damian A. Tamburri", title = "Software Engineering by and for Humans in an {AI} Era", journal = j-TOSEM, volume = "34", number = "5", pages = "129:1--129:46", month = jun, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3715111", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Oct 24 13:02:14 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "The landscape of software engineering is undergoing a transformative shift driven by advancements in machine learning, Artificial Intelligence (AI), and autonomous systems. This roadmap article explores how these technologies are reshaping the field, \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "129", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Autili:2025:EDS, author = "Marco Autili and Martina {De Sanctis} and Paola Inverardi and Patrizio Pelliccione", title = "Engineering Digital Systems for Humanity: a Research Roadmap", journal = j-TOSEM, volume = "34", number = "5", pages = "130:1--130:33", month = jun, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3712006", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Oct 24 13:02:14 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "As testified by new regulations like the European AI Act, worries about the human and societal impact of (autonomous) software technologies are becoming of public concern. Human, societal, and environmental values, alongside traditional software quality, \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "130", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Mastropaolo:2025:TUJ, author = "Antonio Mastropaolo and Camilo Escobar-Vel{\'a}squez and Mario Linares-V{\'a}squez", title = "From Triumph to Uncertainty: The Journey of Software Engineering in the {AI} Era", journal = j-TOSEM, volume = "34", number = "5", pages = "131:1--131:34", month = jun, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3709360", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Oct 24 13:02:14 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Over the last 10 years, the realm of AI has experienced an explosion of revolutionary breakthroughs, transforming what seemed like a far-off dream into a reality that is now deeply embedded in our everyday lives. AI's widespread impact is revolutionizing \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "131", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Santos:2025:SFD, author = "Ronnie de Souza Santos and Felipe Fronchetti and S{\'a}vio Freire and Rodrigo Spinola", title = "Software Fairness Debt: Building a Research Agenda for Addressing Bias in {AI} Systems", journal = j-TOSEM, volume = "34", number = "5", pages = "132:1--132:21", month = jun, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3709357", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Oct 24 13:02:14 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Ensuring fairness in software systems has become a critical concern in software engineering. Motivated by this challenge, this article explores the multifaceted nature of bias in software systems, providing a comprehensive understanding of its origins, \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "132", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Jackson:2025:IGA, author = "Victoria Jackson and Bogdan Vasilescu and Daniel Russo and Paul Ralph and Rafael Prikladnicki and Maliheh Izadi and Sarah D'Angelo and Sarah Inman and Anielle Andrade and Andr{\'e} van der Hoek", title = "The Impact of Generative {AI} on Creativity in Software Development: a Research Agenda", journal = j-TOSEM, volume = "34", number = "5", pages = "133:1--133:28", month = jun, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3708523", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Oct 24 13:02:14 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "As GenAI becomes embedded in developer toolchains and practices, and routine code is increasingly generated, human creativity will be increasingly important for generating competitive advantage. This article uses the McLuhan tetrad alongside scenarios of \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "133", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Hyrynsalmi:2025:MSD, author = "Sonja M. Hyrynsalmi and Sebastian Baltes and Chris Brown and Rafael Prikladnicki and Gema Rodriguez-Perez and Alexander Serebrenik and Jocelyn Simmonds and Bianca Trinkenreich and Yi Wang and Grischa Liebel", title = "Making Software Development More Diverse and Inclusive: Key Themes, Challenges, and Future Directions", journal = j-TOSEM, volume = "34", number = "5", pages = "134:1--134:23", month = jun, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3711904", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Oct 24 13:02:14 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Introduction: Digital products increasingly reshape industries, influencing human behavior and decision-making. However, the software development teams developing these systems often lack diversity, which may lead to designs that overlook the needs, equal \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "134", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Konig:2025:SSE, author = "Christoph K{\"o}nig and Daniel J. Lang and Ina Schaefer", title = "Sustainable Software Engineering: Concepts, Challenges, and Vision", journal = j-TOSEM, volume = "34", number = "5", pages = "135:1--135:28", month = jun, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3709352", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Oct 24 13:02:14 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Information and communication technology (ICT) offers promising opportunities to address global sustainability challenges such as climate change and social inequality by enabling energy savings and social innovations. At the same time, ICT threatens to \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "135", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Betz:2025:GPC, author = "Stefanie Betz and Birgit Penzenstadler", title = "With Great Power Comes Great Responsibility: The Role of Software Engineers", journal = j-TOSEM, volume = "34", number = "5", pages = "136:1--136:21", month = jun, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3715112", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Oct 24 13:02:14 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "The landscape of Software Engineering evolves rapidly amidst digital transformation and the ascendancy of AI, leading to profound shifts in the role and responsibilities of Software Engineers. This evolution encompasses both immediate changes, such as \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "136", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Shi:2025:EGL, author = "Jieke Shi and Zhou Yang and David Lo", title = "Efficient and Green Large Language Models for Software Engineering: Literature Review, Vision, and the Road Ahead", journal = j-TOSEM, volume = "34", number = "5", pages = "137:1--137:22", month = jun, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3708525", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Oct 24 13:02:14 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Large Language Models (LLMs) have recently shown remarkable capabilities in various software engineering tasks, spurring the rapid growth of the Large Language Models for Software Engineering (LLM4SE) area. However, limited attention has been paid to \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "137", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Cruz:2025:ITC, author = "Lu{\'\i}s Cruz and Xavier Franch and Silverio Mart{\'\i}nez-Fern{\'a}ndez", title = "Innovating for Tomorrow: The Convergence of Software Engineering and Green {AI}", journal = j-TOSEM, volume = "34", number = "5", pages = "138:1--138:13", month = jun, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3712007", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Oct 24 13:02:14 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "The latest advancements in machine learning, specifically in foundation models, are revolutionizing the frontiers of existing software engineering (SE) processes. This is a bi-directional phenomenon, where (1) software systems are now challenged to \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "138", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Moreira:2025:RIS, author = "Ana Moreira and Patricia Lago and Rogardt Heldal and Stefanie Betz and Ian Brooks and Rafael Capilla and Vlad Constantin Coroam{\u{a}} and Leticia Duboc and Jo{\~a}o Paulo Fernandes and Ola Leifler and Ngoc-Thanh Nguyen and Shola Oyedeji and Birgit Penzenstadler and Anne-Kathrin Peters and Jari Porras and Colin C. Venters", title = "A Roadmap for Integrating Sustainability into Software Engineering Education", journal = j-TOSEM, volume = "34", number = "5", pages = "139:1--139:27", month = jun, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3708526", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Oct 24 13:02:14 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "The world faces escalating crises: record-breaking temperatures, widespread fires, severe flooding, increased oceanic microplastics, and unequal resource distribution. Academia introduces courses around sustainability to meet the new demand, but software \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "139", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Lyu:2025:APL, author = "Michael R. Lyu and Baishakhi Ray and Abhik Roychoudhury and Shin Hwei Tan and Patanamon Thongtanunam", title = "Automatic Programming: Large Language Models and Beyond", journal = j-TOSEM, volume = "34", number = "5", pages = "140:1--140:33", month = jun, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3708519", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Oct 24 13:07:57 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Automatic programming has seen increasing popularity due to the emergence of tools like GitHub Copilot which rely on Large Language Models (LLMs). At the same time, automatically generated code faces challenges during deployment due to concerns around \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "140", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Robinson:2025:RAY, author = "Diana Robinson and Christian Cabrera and Andrew D. Gordon and Neil D. Lawrence and Lars Mennen", title = "Requirements Are All You Need: The Final Frontier for End-User Software Engineering", journal = j-TOSEM, volume = "34", number = "5", pages = "141:1--141:22", month = jun, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3708524", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Oct 24 13:07:57 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "What if end-users could own the software development lifecycle from conception to deployment using only requirements expressed in language, images, video or audio? We explore this idea, building on the capabilities that Generative AI brings to software \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "141", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Assuncao:2025:CSM, author = "Wesley K. G. Assun{\c{c}}{\~a}o and Luciano Marchezan and Lawrence Arkoh and Alexander Egyed and Rudolf Ramler", title = "Contemporary Software Modernization: Strategies, Driving Forces, and Research Opportunities", journal = j-TOSEM, volume = "34", number = "5", pages = "142:1--142:35", month = jun, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3708527", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Oct 24 13:07:57 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Software modernization is a common activity in software engineering, since technologies advance, requirements change, and business models evolve. Differently from conventional software evolution (e.g., adding new features, enhancing performance, or \ldots{})", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "142", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Ran:2025:FME, author = "Dezhi Ran and Mengzhou Wu and Wei Yang and Tao Xie", title = "Foundation Model Engineering: Engineering Foundation Models Just as Engineering Software", journal = j-TOSEM, volume = "34", number = "5", pages = "143:1--143:18", month = jun, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3719005", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Oct 24 13:07:57 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "By treating data and models as source code, Foundation Models (FMs) become a new type of software. Mirroring the concept of software crisis, the increasing complexity of FMs makes FM crisis a tangible concern in the coming decade, appealing for new \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "143", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Bohme:2025:SSA, author = "Marcel B{\"o}hme and Eric Bodden and Tevfik Bultan and Cristian Cadar and Yang Liu and Giuseppe Scanniello", title = "Software Security Analysis in 2030 and Beyond: a Research Roadmap", journal = j-TOSEM, volume = "34", number = "5", pages = "144:1--144:26", month = jun, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3708533", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Oct 24 13:02:14 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "As our lives, our businesses, and indeed our world economy become increasingly reliant on the secure operation of many interconnected software systems, the software engineering research community is faced with unprecedented research challenges, but also \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "144", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Zhou:2025:LLM, author = "Xin Zhou and Sicong Cao and Xiaobing Sun and David Lo", title = "Large Language Model for Vulnerability Detection and Repair: Literature Review and the Road Ahead", journal = j-TOSEM, volume = "34", number = "5", pages = "145:1--145:31", month = jun, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3708522", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Oct 24 13:02:14 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "The significant advancements in Large Language Models (LLMs) have resulted in their widespread adoption across various tasks within Software Engineering (SE), including vulnerability detection and repair. Numerous studies have investigated the application \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "145", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Williams:2025:RDS, author = "Laurie Williams and Giacomo Benedetti and Sivana Hamer and Ranindya Paramitha and Imranur Rahman and Mahzabin Tamanna and Greg Tystahl and Nusrat Zahan and Patrick Morrison and Yasemin Acar and Michel Cukier and Christian K{\"a}stner and Alexandros Kapravelos and Dominik Wermke and William Enck", title = "Research Directions in Software Supply Chain Security", journal = j-TOSEM, volume = "34", number = "5", pages = "146:1--146:38", month = jun, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3714464", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Oct 24 13:02:14 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Reusable software libraries, frameworks, and components, such as those provided by open source ecosystems and third-party suppliers, accelerate digital innovation. However, recent years have shown almost exponential growth in attackers leveraging these \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "146", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Wang:2025:LLM, author = "Shenao Wang and Yanjie Zhao and Xinyi Hou and Haoyu Wang", title = "Large Language Model Supply Chain: a Research Agenda", journal = j-TOSEM, volume = "34", number = "5", pages = "147:1--147:46", month = jun, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3708531", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Oct 24 13:02:14 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "The rapid advancement of large language models (LLMs) has revolutionized artificial intelligence, introducing unprecedented capabilities in natural language processing and multimodal content generation. However, the increasing complexity and scale of \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "147", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Wang:2025:RST, author = "Qing Wang and Junjie Wang and Mingyang Li and Yawen Wang and Zhe Liu", title = "A Roadmap for Software Testing in Open-Collaborative and {AI}-Powered Era", journal = j-TOSEM, volume = "34", number = "5", pages = "148:1--148:17", month = jun, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3709355", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Oct 24 13:02:14 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Internet technology has given rise to an open-collaborative software development paradigm, necessitating the open-collaborative schema to software testing. It enables diverse and globally distributed contributions, but also presents significant challenges \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "148", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Li:2025:MRG, author = "Rui Li and Huai Liu and Pak-Lok Poon and Dave Towey and Chang-Ai Sun and Zheng Zheng and Zhi Quan Zhou and Tsong Yueh Chen", title = "Metamorphic Relation Generation: State of the Art and Research Directions", journal = j-TOSEM, volume = "34", number = "5", pages = "149:1--149:25", month = jun, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3708521", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Oct 24 13:02:14 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Metamorphic testing has become one mainstream technique to address the notorious oracle problem in software testing, thanks to its great successes in revealing real-life bugs in a wide variety of software systems. Metamorphic relations, the core component \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "149", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Molina:2025:TOA, author = "Facundo Molina and Alessandra Gorla and Marcelo d'Amorim", title = "Test Oracle Automation in the Era of {LLMs}", journal = j-TOSEM, volume = "34", number = "5", pages = "150:1--150:24", month = jun, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3715107", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Oct 24 13:02:14 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "The effectiveness of a test suite in detecting faults highly depends on the quality of its test oracles. Large Language Models (LLMs) have demonstrated remarkable proficiency in tackling diverse software testing tasks. This article aims to present a \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "150", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Cederbladh:2025:RMR, author = "Johan Cederbladh and Antonio Cicchetti and Robbert Jongeling", title = "A Road-Map to Readily Available Early Validation and Verification of System Behaviour in Model-Based Systems Engineering using Software Engineering Best Practices", journal = j-TOSEM, volume = "34", number = "5", pages = "151:1--151:30", month = jun, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3708520", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Oct 24 13:02:14 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "In this article, we discuss how we can facilitate the growing need for early validation and verification (V\&V) of system behaviour in Model-Based Systems Engineering (MBSyE). Several aspects, such as reducing cost and time to market, push companies \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "151", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Birchler:2025:RSB, author = "Christian Birchler and Sajad Khatiri and Pooja Rani and Timo Kehrer and Sebastiano Panichella", title = "A Roadmap for Simulation-Based Testing of Autonomous Cyber-Physical Systems: Challenges and Future Direction", journal = j-TOSEM, volume = "34", number = "5", pages = "152:1--152:9", month = jun, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3711906", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Oct 24 13:02:14 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "As the era of autonomous cyber-physical systems (ACPSs), such as unmanned aerial vehicles and self-driving cars, unfolds, the demand for robust testing methodologies is key to realizing the adoption of such systems in real-world scenarios. However, \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "152", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Casadei:2025:SEC, author = "Roberto Casadei and Gianluca Aguzzi and Giorgio Audrito and Ferruccio Damiani and Danilo Pianini and Giordano Scarso and Gianluca Torta and Mirko Viroli", title = "Software Engineering for Collective Cyber-Physical Ecosystems", journal = j-TOSEM, volume = "34", number = "5", pages = "153:1--153:40", month = jun, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3712004", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Oct 24 13:02:14 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Today's distributed and pervasive computing addresses large-scale cyber-physical ecosystems, characterised by dense and large networks of devices capable of computation, communication and interaction with the environment and people. While most research \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "153", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Murillo:2025:QSE, author = "Juan Manuel Murillo and Jose Garcia-Alonso and Enrique Moguel and Johanna Barzen and Frank Leymann and Shaukat Ali and Tao Yue and Paolo Arcaini and Ricardo P{\'e}rez-Castillo and Ignacio Garc{\'\i}a-Rodr{\'\i}guez de Guzm{\'a}n and Mario Piattini and Antonio Ruiz-Cort{\'e}s and Antonio Brogi and Jianjun Zhao and Andriy Miranskyy and Manuel Wimmer", title = "Quantum Software Engineering: Roadmap and Challenges Ahead", journal = j-TOSEM, volume = "34", number = "5", pages = "154:1--154:48", month = jun, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3712002", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Oct 24 13:02:14 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "As quantum computers advance, the complexity of the software they can execute increases as well. To ensure this software is efficient, maintainable, reusable, and cost-effective-key qualities of any industry-grade software-mature software engineering \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "154", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Ramalho:2025:TDQ, author = "Neilson Carlos Leite Ramalho and Higor Amario de Souza and Marcos Lordello Chaim", title = "Testing and Debugging Quantum Programs: The Road to 2030", journal = j-TOSEM, volume = "34", number = "5", pages = "155:1--155:46", month = jun, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3715106", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Oct 24 13:02:14 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Quantum computing has existed in the theoretical realm for several decades. Recently, quantum computing has re-emerged as a promising technology to solve problems that a classical computer could take hundreds of years to solve. However, there are \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "155", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Zhang:2025:EAB, author = "Sai Zhang and Zhenchang Xing and Ronghui Guo and Fangzhou Xu and Lei Chen and Zhaoyuan Zhang and Xiaowang Zhang and Zhiyong Feng and Zhiqiang Zhuang", title = "Empowering Agile-Based Generative Software Development through Human--{AI} Teamwork", journal = j-TOSEM, volume = "34", number = "6", pages = "156:1--156:??", month = jul, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3702987", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Jul 25 08:10:07 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "In software development, the raw requirements proposed by users are frequently incomplete, which impedes the complete implementation of software functionalities. With the emergence of large language models, the exploration of generating software through \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "156", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Manke:2025:LDC, author = "Ruchira Manke and Mohammad Wardat and Foutse Khomh and Hridesh Rajan", title = "Leveraging Data Characteristics for Bug Localization in Deep Learning Programs", journal = j-TOSEM, volume = "34", number = "6", pages = "157:1--157:??", month = jul, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3708473", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Jul 25 08:10:07 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Deep Learning (DL) is a class of machine learning algorithms that are used in a wide variety of applications. Like any software system, DL programs can have bugs. To support bug localization in DL programs, several tools have been proposed in the past. As \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "157", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Sartaj:2025:MMD, author = "Hassan Sartaj and Shaukat Ali and Julie Marie Gj{\o}by", title = "{MeDeT}: Medical Device Digital Twins Creation with Few-shot Meta-learning", journal = j-TOSEM, volume = "34", number = "6", pages = "158:1--158:??", month = jul, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3708534", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Jul 25 08:10:07 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Testing healthcare Internet of Things (IoT) applications at system and integration levels necessitates integrating numerous medical devices. Challenges of incorporating medical devices are: (i) their continuous evolution, making it infeasible to include \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "158", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Fan:2025:ECL, author = "Lishui Fan and Jiakun Liu and Zhongxin Liu and David Lo and Xin Xia and Shanping Li", title = "Exploring the Capabilities of {LLMs} for Code-Change-Related Tasks", journal = j-TOSEM, volume = "34", number = "6", pages = "159:1--159:??", month = jul, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3709358", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Jul 25 08:10:07 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Developers deal with code-change-related tasks daily, e.g., reviewing code. Pre-trained code and code-change-oriented models have been adapted to help developers with such tasks. Recently, large language models (LLMs) have shown their effectiveness in \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "159", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Song:2025:OCS, author = "Leo Song and Steven H. H. Ding and Yuan Tian and Li Tao Li and Weihan Ou and Philippe Charland and Andrew Walenstein", title = "Obfuscated Clone Search in {JavaScript} based on Reinforcement Subsequence Learning", journal = j-TOSEM, volume = "34", number = "6", pages = "160:1--160:??", month = jul, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3711903", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Jul 25 08:10:07 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2020.bib; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Finding similar code is important for software engineering, defense of intellectual property, and security, and one of the increasingly common ways adversaries use to defeat the detection of similar code is through obfuscations such as code \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "160", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{He:2025:PDL, author = "Zilong He and Pengfei Chen and Zibin Zheng", title = "On the Practicability of Deep Learning Based Anomaly Detection for Modern Online Software Systems: a Pre-Train-and-Align Framework", journal = j-TOSEM, volume = "34", number = "6", pages = "161:1--161:??", month = jul, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3712195", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Jul 25 08:10:07 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Operation and maintenance are critical activities in the whole lifecycle of modern online software systems, and anomaly detection is a crucial step of these activities. Recent studies mainly develop deep learning techniques to complete this task. Notably, \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "161", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Nan:2025:DDD, author = "Siyu Nan and Jian Wang and Neng Zhang and Duantengchuan Li and Bing Li", title = "{DDASR}: Deep Diverse {API} Sequence Recommendation", journal = j-TOSEM, volume = "34", number = "6", pages = "162:1--162:??", month = jul, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3712188", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Jul 25 08:10:07 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Recommending API sequences is crucial in software development, saving developers time and effort. While previous studies primarily focus on accuracy, often recommending popular APIs, they tend to overlook less frequent, or ``tail,'' APIs. This oversight, \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "162", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Sharifi:2025:SSM, author = "Sepehr Sharifi and Andrea Stocco and Lionel C. Briand", title = "System Safety Monitoring of Learned Components Using Temporal Metric Forecasting", journal = j-TOSEM, volume = "34", number = "6", pages = "163:1--163:??", month = jul, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3712196", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Jul 25 08:10:07 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "In learning-enabled autonomous systems, safety monitoring of learned components is crucial to ensure their outputs do not lead to system safety violations, given the operational context of the system. However, developing a safety monitor for practical \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "163", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Pian:2025:YDS, author = "Weiguo Pian and Yinghua Li and Haoye Tian and Tiezhu Sun and Yewei Song and Xunzhu Tang and Andrew Habib and Jacques Klein and Tegawend{\'e} F. Bissyand{\'e}", title = "You Don't Have to Say Where to Edit! {jLED}-Joint Learning to Localize and Edit Source Code", journal = j-TOSEM, volume = "34", number = "6", pages = "164:1--164:??", month = jul, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3712187", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Jul 25 08:10:07 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Learning to edit code automatically is becoming more and more feasible. Thanks to recent advances in Neural Machine Translation (NMT), various case studies are being investigated where patches are automatically produced and assessed either automatically \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "164", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Xv:2025:MFL, author = "Ke Xv and Shikai Guo and Hui Li and Chenchen Li and Rong Chen and Xiaochen Li and He Jiang", title = "Making Fault Localization in Online Service Systems More Actionable and Interpretable", journal = j-TOSEM, volume = "34", number = "6", pages = "165:1--165:??", month = jul, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3714466", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Jul 25 08:10:07 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Online service systems struggle with accurately and quickly pinpointing and resolving failures within their intricate systems, and it therefore emerges the solutions for fault localization in the code. However, the previous fault localization models \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "165", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Li:2025:TPS, author = "Ding Li and Ziqi Zhang and Mengyu Yao and Yifeng Cai and Yao Guo and Xiangqun Chen", title = "{TEESlice}: Protecting Sensitive Neural Network Models in Trusted Execution Environments when Attackers Have Pre-Trained Models", journal = j-TOSEM, volume = "34", number = "6", pages = "166:1--166:??", month = jul, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3707453", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Jul 25 08:10:07 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Trusted Execution Environments (TEEs) are used to safeguard on-device models. However, directly employing TEEs to secure the entire DNN model is challenging due to the limited computational speed. Utilizing GPU can accelerate DNN's computation speed but \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "166", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Wang:2025:MAU, author = "Shenao Wang and Yuekang Li and Kailong Wang and Yi Liu and Hui Li and Yang Liu and Haoyu Wang", title = "{MiniScope}: Automated {UI} Exploration and Privacy Inconsistency Detection of {MiniApps} via Two-phase Iterative Hybrid Analysis", journal = j-TOSEM, volume = "34", number = "6", pages = "167:1--167:??", month = jul, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3709351", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Jul 25 08:10:07 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "The advent of MiniApps, operating within larger SuperApps, has revolutionized user experiences by offering a wide range of services without the need for individual app downloads. However, this convenience has raised significant privacy concerns, as these \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "167", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Liang:2025:USS, author = "Hongliang Liang and Luming Yin and Wenying Hu and Yuxiang Li and Wuwei Shen", title = "Unified and Split Symbolic Execution for Exposing Semantic Differences", journal = j-TOSEM, volume = "34", number = "6", pages = "168:1--168:??", month = jul, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3705299", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Jul 25 08:10:07 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Software evolution is an important activity during a software development lifecycle. Understanding semantic differences between two versions of a software system is a crucial yet challenging task, especially in many safety critical sectors. Consequently, \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "168", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Zhang:2025:RFD, author = "Yehong Zhang and Jun Wu and Hui Xu", title = "{RuMono}: Fuzz Driver Synthesis for {Rust} Generic {APIs}", journal = j-TOSEM, volume = "34", number = "6", pages = "169:1--169:??", month = jul, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3709359", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Jul 25 08:10:07 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/rust.bib; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Fuzzing is a popular technique for detecting bugs, which can be extended to libraries by constructing executables that call library APIs, known as fuzz drivers. Automated fuzz driver synthesis has been an important research topic in recent years since it can facilitate the library fuzzing process. Nevertheless, existing approaches generally ignore generic APIs or simply treat them as non-generic APIs. As a result, they cannot generate effective fuzz drivers for generic APIs.\par This article explores the challenge of automating fuzz driver synthesis for Rust libraries with generic APIs. The problem is essential because Rust prioritizes security and generic APIs are widely employed in Rust libraries. We propose a novel approach and develop a prototype, RuMono, to tackle the problem. Our approach initially infers the API reachability from the generic API dependency graph, discovering the reachable and valid monomorphic APIs within the library. Further, we apply a similarity-based filter to eliminate redundant monomorphic APIs. Experimental results from 29 popular open source libraries demonstrate that RuMono can achieve promising generic API coverage with a low rate of invalid fuzz drivers. Besides, we have identified 23 previously unknown bugs in these libraries, with 18 related to generic APIs.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "169", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Zhao:2025:ALP, author = "Yifan Zhao and Zeyu Sun and Guoqing Wang and Qingyuan Liang and Yakun Zhang and Yiling Lou and Dan Hao and Lu Zhang", title = "Automatically Learning a Precise Measurement for Fault Diagnosis Capability of Test Cases", journal = j-TOSEM, volume = "34", number = "6", pages = "170:1--170:??", month = jul, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3712189", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Jul 25 08:10:07 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Prevalent Fault Localization (FL) techniques rely on tests to localize buggy program elements. Tests could be treated as fuel to further boost FL by providing more debugging information. Therefore, it is highly valuable to measure the Fault Diagnosis \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "170", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{You:2025:MRF, author = "Hanmo You and Zan Wang and Xuyang Chen and Junjie Chen and Jun Sun and Shuang Liu and Zishuo Dong", title = "Mitigating Regression Faults Induced by Feature Evolution in Deep Learning Systems", journal = j-TOSEM, volume = "34", number = "6", pages = "171:1--171:??", month = jul, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3712199", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Jul 25 08:10:07 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Deep learning (DL) systems have been widely utilized across various domains. However, the evolution of DL systems can result in regression faults. In addition to the evolution of DL systems through the incorporation of new data, feature evolution, such as \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "171", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Gu:2025:SSA, author = "Sijia Gu and Ali Mesbah", title = "Scalable Similarity-Aware Test Suite Minimization with Reinforcement Learning", journal = j-TOSEM, volume = "34", number = "6", pages = "172:1--172:??", month = jul, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3715008", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Jul 25 08:10:07 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "The Multi-Criteria Test Suite Minimization (MCTSM) problem aims to remove redundant test cases, guided by adequacy criteria such as code coverage or fault detection capability. However, current techniques either exhibit a high loss of fault detection \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "172", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Pourasghar:2025:BCC, author = "Babak Pourasghar and Habib Izadkhah and Maryam Akhtari", title = "Beyond Cohesion and Coupling: Integrating Control Flow in Software Modularization Process for Better Code Comprehensibility", journal = j-TOSEM, volume = "34", number = "6", pages = "173:1--173:??", month = jul, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3707452", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Jul 25 08:10:07 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "As software systems evolve to meet the changing needs of users, understanding the source code becomes a critical step in the process. Clustering techniques, also known as modularization techniques, offer a solution to breaking down complex source code \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "173", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Liu:2025:WCR, author = "Mugeng Liu and Haiyang Shen and Yixuan Zhang and Hong Mei and Yun Ma", title = "{WebAssembly} for Container Runtime: Are We There Yet?", journal = j-TOSEM, volume = "34", number = "6", pages = "174:1--174:??", month = jul, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3712197", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Jul 25 08:10:07 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "To pursue more efficient software deployment with containers, WebAssembly (abbreviated as Wasm) has long been regarded as a promising alternative to native container runtime (such as Docker container) due to its features of secure memory sandbox, \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "174", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Krupke:2025:HLC, author = "Dominik M. Krupke and Ahmad Moradi and Michael Perk and Phillip Keldenich and Gabriel Gehrke and Sebastian Krieter and Thomas Th{\"u}m and S{\'a}ndor P. Fekete", title = "How Low Can We Go? {Minimizing} Interaction Samples for Configurable Systems", journal = j-TOSEM, volume = "34", number = "6", pages = "175:1--175:??", month = jul, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3712193", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Jul 25 08:10:07 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Modern software systems are typically configurable, a fundamental prerequisite for wide applicability and reusability. This flexibility poses an extraordinary challenge for quality assurance, as the enormous number of possible configurations makes it \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "175", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Annunziata:2025:UCS, author = "Giusy Annunziata and Stefano Lambiase and Damian A. Tamburri and Willem-Jan van den Heuvel and Fabio Palomba and Gemma Catolino and Filomena Ferrucci and Andrea {De Lucia}", title = "Uncovering Community Smells in Machine Learning-Enabled Systems: Causes, Effects, and Mitigation Strategies", journal = j-TOSEM, volume = "34", number = "6", pages = "176:1--176:??", month = jul, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3712198", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Jul 25 08:10:07 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Successful software development hinges on effective communication and collaboration, which are significantly influenced by human and social dynamics. Poor management of these elements can lead to the emergence of `community smells', i.e., negative \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "176", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Widyasari:2025:EEE, author = "Ratnadira Widyasari and Ting Zhang and Abir Bouraffa and Walid Maalej and David Lo", title = "Explaining Explanations: an Empirical Study of Explanations in Code Reviews", journal = j-TOSEM, volume = "34", number = "6", pages = "177:1--177:??", month = jul, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3708518", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Jul 25 08:10:07 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Code reviews are central for software quality assurance. Ideally, reviewers should explain their feedback to enable authors of code changes to understand the feedback and act accordingly. Different developers might need different explanations in different \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "177", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Kim:2025:HWD, author = "Kisub Kim and Xin Zhou and Dongsun Kim and Julia Lawall and Kui Liu and Tegawende F. Bissyande and Jacques Klein and Jaekwon Lee and David Lo", title = "How Are We Detecting Inconsistent Method Names? {An} Empirical Study from Code Review Perspective", journal = j-TOSEM, volume = "34", number = "6", pages = "178:1--178:??", month = jul, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3711901", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Jul 25 08:10:07 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Proper naming of methods can make program code easier to understand, and thus enhance software maintainability. Yet, developers may use inconsistent names due to poor communication or a lack of familiarity with conventions within the software development \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "178", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Fan:2025:ESC, author = "Fu Fan and Yanjie Jiang and Tianyi Chen and Hengshun Zhang and Yuxia Zhang and Nan Niu and Hui Liu", title = "An Empirical Study on Common Sense-Violating Bugs in Mobile Apps", journal = j-TOSEM, volume = "34", number = "6", pages = "179:1--179:??", month = jul, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3709356", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Jul 25 08:10:07 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Mobile applications are widely used by billions of users in their daily work and life. Such GUI software is prone to bugs, potentially degrading user experience. Notably, many bugs in mobile apps are reported by end-users who cannot access the \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "179", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Wang:2025:RVN, author = "Taiming Wang and Hui Liu and Yuxia Zhang and Yanjie Jiang", title = "Recommending Variable Names for Extract Local Variable Refactorings", journal = j-TOSEM, volume = "34", number = "6", pages = "180:1--180:??", month = jul, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3712191", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Jul 25 08:10:07 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Extract local variable is one of the most popular refactorings. It is frequently employed to replace occurrences of a complex expression with simple accesses to a newly introduced variable that is initialized by the original complex expression. \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "180", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Cortellessa:2025:IIM, author = "Vittorio Cortellessa and Jorge Andr{\'e}s Diaz-Pace and Daniele {Di Pompeo} and Sebastian Frank and Pooyan Jamshidi and Michele Tucci and Andr{\'e} van Hoorn", title = "Introducing Interactions in Multi-Objective Optimization of Software Architectures", journal = j-TOSEM, volume = "34", number = "6", pages = "181:1--181:??", month = jul, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3712185", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Jul 25 08:10:07 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Software architecture optimization aims to enhance non-functional attributes like performance and reliability while meeting functional requirements. Multi-objective optimization employs metaheuristic search techniques, such as genetic algorithms, to \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "181", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Do:2025:AQP, author = "Canh Minh Do and Tsubasa Takagi and Kazuhiro Ogata", title = "Automated Quantum Protocol Verification Based on Concurrent Dynamic Quantum Logic", journal = j-TOSEM, volume = "34", number = "6", pages = "182:1--182:??", month = jul, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3708475", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Jul 25 08:10:07 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "While constructing practical quantum computers by big companies remains a challenge, the application of quantum communication and cryptography has made remarkable progress. Therefore, it is crucial to verify quantum protocols before they can be trusted in \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "182", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Hamalainen:2025:SLR, author = "Joonas H{\"a}m{\"a}l{\"a}inen and Teerath Das and Tommi Mikkonen", title = "A Systematic Literature Review of Multi-Label Learning in Software Engineering", journal = j-TOSEM, volume = "34", number = "6", pages = "183:1--183:??", month = jul, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3708532", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Jul 25 08:10:07 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "In this article, we provide the first systematic literature review of the intersection of two research areas: Multi-Label Learning (MLL) and Software Engineering (SE). We refer to this intersection as MLL4SE. In recent years, MLL problems have increased \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "183", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Gruner:2025:FILa, author = "Bernd Gruner and Clemens-Alexander Brust and Andreas Zeller", title = "Finding Information Leaks with Information Flow Fuzzing", journal = j-TOSEM, volume = "34", number = "6", pages = "184:1--184:??", month = jul, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3711902", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Jul 25 08:10:07 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "We present information flow fuzzing, an approach that guides fuzzers towards detecting information leaks --- information that reaches a third party, but should not. The approach detects information flow by means of mutations, checking whether and how \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "184", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Gruner:2025:FILb, author = "Bernd Gruner and Clemens-Alexander Brust and Andreas Zeller", title = "Finding Information Leaks with Information Flow Fuzzing --- {RCR} Report", journal = j-TOSEM, volume = "34", number = "6", pages = "185:1--185:??", month = jul, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3711905", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Jul 25 08:10:07 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "This is the Replicated Computational Results (RCR) report for our ACM TOSEM paper, ``,'' in which we propose information flow fuzzing. This approach directs fuzzers toward detecting information leaks. \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "185", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Zou:2025:EEP, author = "Wentao Zou and Zongwen Shen and Qi Li and Jidong Ge and Chuanyi Li and Xiang Chen and Xiaoyu Shen and Liguo Huang and Bin Luo", title = "Experimental Evaluation of Parameter-Efficient Fine-Tuning for Software Engineering Tasks", journal = j-TOSEM, volume = "34", number = "7", pages = "186:1--186:34", month = sep, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3722107", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Sep 30 09:27:41 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Pre-trained models (PTMs) have succeeded in various software engineering (SE) tasks following the ``pre-train then fine-tune'' paradigm. As fully fine-tuning all parameters of PTMs can be computationally expensive, a potential solution is parameter-. \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "186", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Yu:2025:WTE, author = "Hao Yu and Bo Shen and Jiaxin Zhang and Shaoxin Lin and Lin Li and Guangtai Liang and Ying Li and Qianxiang Wang and Tao Xie", title = "{Wenwang}: Toward Effectively Generating Code Beyond Standalone Functions via Generative Pre-trained Models", journal = j-TOSEM, volume = "34", number = "7", pages = "187:1--187:27", month = sep, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3725213", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Sep 30 09:27:41 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Code generation models based on the pre-training and fine-tuning paradigm have been increasingly attempted by both academia and industry, resulting in well-known industrial models such as Codex, CodeGen, and PanGu-Coder. After being pre-trained on a \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "187", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Yang:2025:ESR, author = "Zezhou Yang and Sirong Chen and Cuiyun Gao and Zhenhao Li and Xing Hu and Kui Liu and Xin Xia", title = "An Empirical Study of Retrieval-Augmented Code Generation: Challenges and Opportunities", journal = j-TOSEM, volume = "34", number = "7", pages = "188:1--188:28", month = sep, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3717061", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Sep 30 09:27:41 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Code generation aims to automatically generate code snippets of specific programming language according to natural language descriptions. The continuous advancements in deep learning, particularly pre-trained models, have empowered the code generation \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "188", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Wu:2025:HBC, author = "Jie JW Wu and Fatemeh H. Fard", title = "{HumanEvalComm}: Benchmarking the Communication Competence of Code Generation for {LLMs} and {LLM} Agents", journal = j-TOSEM, volume = "34", number = "7", pages = "189:1--189:42", month = sep, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3715109", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Sep 30 09:27:41 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Large language models (LLMs) have significantly improved their ability to perform tasks in the field of code generation. However, there is still a gap between LLMs being capable coders and being top-tier software engineers. The most recent trend is using \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "189", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Li:2025:LLM, author = "Jia Li and Chongyang Tao and Jia Li and Ge Li and Zhi Jin and Huangzhao Zhang and Zheng Fang and Fang Liu", title = "Large Language Model-Aware In-Context Learning for Code Generation", journal = j-TOSEM, volume = "34", number = "7", pages = "190:1--190:33", month = sep, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3715908", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Sep 30 09:27:41 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Large Language Models (LLMs) have shown impressive In-Context Learning (ICL) ability in code generation. LLMs take a prompt context consisting of a few demonstration examples and a new requirement as input, and output new programs without any parameter \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "190", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Wang:2025:TCL, author = "Chong Wang and Jian Zhang and Yebo Feng and Tianlin Li and Weisong Sun and Yang Liu and Xin Peng", title = "Teaching Code {LLMs} to Use Autocompletion Tools in Repository-Level Code Generation", journal = j-TOSEM, volume = "34", number = "7", pages = "191:1--191:27", month = sep, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3714462", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Sep 30 09:27:41 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Recent code large language models (LLMs) have shown promising performance in generating standalone functions. However, they face limitations in repository-level code generation due to their lack of awareness of repository --- level dependencies (e.g., user-\ldots{})", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "191", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Xu:2025:WSB, author = "Wenjie Xu and Yanhui Li and Mingliang Ma and Lin Chen and Yuming Zhou", title = "Weighted Suspiciousness and Balanced Aggregation to Boost Spectrum-based Fault Localization of Deep Learning Models", journal = j-TOSEM, volume = "34", number = "7", pages = "192:1--192:28", month = sep, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3716849", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Sep 30 09:27:41 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Deep learning (DL) models have proven to be highly successful and are now essential to our everyday routines. However, DL models, like traditional software, inevitably contain bugs that affect their performance in real-world scenarios. Effective software \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "192", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Blasco:2025:IPS, author = "Daniel Blasco and Antonio Iglesias and Jorge Echeverr{\'\i}a and Francisca P{\'e}rez and Carlos Cetina", title = "Introducing Phylogenetics in Search-based Software Engineering: Phylogenetics-aware {SBSE}", journal = j-TOSEM, volume = "34", number = "7", pages = "193:1--193:38", month = sep, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3715002", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Sep 30 09:27:41 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Phylogenetics studies the relationships, in terms of biological history and kinship, of a set of taxa (e.g., species). We argue that in Search-based Software Engineering (SBSE), the individuals of an evolutionary computation-driven population could be \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "193", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Mo:2025:AAC, author = "Ran Mo and Dongyu Wang and Wenjing Zhan and Yingjie Jiang and Yepeng Wang and Yuqi Zhao and Zengyang Li and Yutao Ma", title = "Assessing and Analyzing the Correctness of {GitHub} {Copilot}'s Code Suggestions", journal = j-TOSEM, volume = "34", number = "7", pages = "194:1--194:32", month = sep, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3715108", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Sep 30 09:27:41 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "AI programming has become a popular topic in recent years. Code suggestion, with code suggestion being a key capability of AI programming. Copilot, an ``AI programmer'' that provides code suggestions from natural language descriptions, has been launched by \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "194", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Hu:2025:ART, author = "Qiang Hu and Yuejun Guo and Xiaofei Xie and Maxime Cordy and Wei Ma and Mike Papadakis and Lei Ma and Yves {Le Traon}", title = "Assessing the Robustness of Test Selection Methods for Deep Neural Networks", journal = j-TOSEM, volume = "34", number = "7", pages = "195:1--195:26", month = sep, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3715693", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Sep 30 09:27:41 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Regularly testing deep learning-powered systems on newly collected data is critical to ensure their reliability, robustness, and efficacy in real-world applications. This process is demanding due to the significant time and human effort required for \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "195", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Wu:2025:BDA, author = "Chunlian Wu and Sen Chen and Jiaming Li and Renchao Chai and Lingling Fan and Xiaofei Xie and Ruitao Feng", title = "Beyond Decision: {Android} Malware Description Generation through Profiling Malicious Behavior Trajectory", journal = j-TOSEM, volume = "34", number = "7", pages = "196:1--196:39", month = sep, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3715909", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Sep 30 09:27:41 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Malware family labels and key features used for the decision-making of Android malware detection models fall short of precise comprehension of malicious behaviors due to their coarse granularity. To solve these problems, in this article, we first \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "196", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Chen:2025:JSD, author = "Tianyu Chen and Ding Li and Ying Zhang and Tao Xie", title = "{JSimpo}: Structural Deobfuscation of {JavaScript} Programs", journal = j-TOSEM, volume = "34", number = "7", pages = "197:1--197:28", month = sep, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3714460", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Sep 30 09:27:41 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2020.bib; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "JavaScript (JS) obfuscation is now prevalent among popular websites and introduces challenges for malware detection and code review. Given an obfuscated JS program, existing deobfuscation techniques aim to recover the original JS program. However, these \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "197", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Oldfield:2025:FBQ, author = "Noah H. Oldfield and Christoph Laaber and Tao Yue and Shaukat Ali", title = "Faster and Better Quantum Software Testing through Specification Reduction and Projective Measurements", journal = j-TOSEM, volume = "34", number = "7", pages = "198:1--198:39", month = sep, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3714468", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Sep 30 09:27:41 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Quantum computing (QC) promises polynomial and exponential speedups in many domains, such as unstructured search and prime number factoring. However, quantum programs yield probabilistic outputs from exponentially growing distributions and are vulnerable \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "198", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Bartocci:2025:SFC, author = "Ezio Bartocci and Leonardo Mariani and Dejan Nickovic and Drishti Yadav", title = "Signal Feature Coverage and Testing for {CPS} Dataflow Models", journal = j-TOSEM, volume = "34", number = "7", pages = "199:1--199:37", month = sep, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3714467", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Sep 30 09:27:41 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Design of cyber-physical systems (CPS) typically involves dataflow modeling. The structure of dataflow models differs from the traditional software, making standard coverage metrics not appropriate for measuring the thoroughness of testing. To address \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "199", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Ji:2025:TAF, author = "Shunhui Ji and Changrong Huang and Bin Ren and Hai Dong and Lars Grunske and Yan Xiao and Pengcheng Zhang", title = "{TAEFuzz}: Automatic Fuzzing for Image-based Deep Learning Systems via Transferable Adversarial Examples", journal = j-TOSEM, volume = "34", number = "7", pages = "200:1--200:31", month = sep, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3714463", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Sep 30 09:27:41 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Deep Learning (DL) components have been broadly applied in diverse applications. Similar to traditional software engineering, effective test case generation methods are needed by industry to enhance the quality and robustness of these DL components. To \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "200", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Ji:2025:ADS, author = "Xinyu Ji and Lei Xue and Zhijian He and Xiapu Luo", title = "Autonomous Driving System Testing via Diversity-Oriented Driving Scenario Exploration", journal = j-TOSEM, volume = "34", number = "7", pages = "201:1--201:28", month = sep, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3727875", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Sep 30 09:27:41 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Testing Autonomous Driving Systems (ADS) is critical for validating their safety in operational environments. High-fidelity simulators enable the testing of ADS through virtual driving scenarios, especially those that are hazardous to replicate in real-. \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "201", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Li:2025:HAP, author = "Fengjie Li and Jiajun Jiang and Jiajun Sun and Hongyu Zhang", title = "Hybrid Automated Program Repair by Combining Large Language Models and Program Analysis", journal = j-TOSEM, volume = "34", number = "7", pages = "202:1--202:28", month = sep, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3715004", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Sep 30 09:27:41 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Automated Program Repair (APR) has garnered significant attention due to its potential to streamline the bug repair process for human developers. Recently, LLM-based APR methods have shown promise in repairing real-world bugs. However, existing APR \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "202", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Liu:2025:ADR, author = "Jiawei Liu and Xufan Zhang and Lurong Xu and Chunrong Fang and Mingzheng Gu and Weisi Luo and Dong Chai and Jiang Wang and Zhihong Zhao and Zhenyu Chen", title = "Automated Detection and Repair of Floating-point Precision Problems in Convolutional Neural Network Operators", journal = j-TOSEM, volume = "34", number = "7", pages = "203:1--203:32", month = sep, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3715104", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Sep 30 09:27:41 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/fparith.bib; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Convolutional Neural Network (CNN) operators, mostly based on mathematical linear computations, are of vital importance to developing CNN-based software. Existing studies reveal that these operators are prone to floating-point precision problems (FPPs). In a CNN-based application, such problems can be propagated and result in catastrophic consequences. Thus, it is highly desired to detect and repair the FPPs in CNN operators. Considering the FPPs in CNN operators are mainly caused by accumulated floating-point errors and diverse floating-point tensors instead of wrong codes or bad implementations, it requires much time cost and is difficult to tackle these FPPs.\par In this article, we propose the first method for the automated detection and repair of FPPs in CNN operators from the perspective of floating-point tensors. To generate diverse tensors with floating-point numbers, we design two levels of mutation rules, namely computation-level mutation and input-level mutation, containing a total of five mutation methods. To detect the FPPs caused by the accumulated floating-point errors, our method uses a weight matrix to guide the progressive mutation. To repair the detected FPPs, our method transforms the error-prone floating-point tensors based on the mathematical rewriting of the floating-point linear computational properties without destroying the original computation. Experimental results show that our methods can detect and repair FPPs in CNN operators effectively and efficiently and could reduce 93.32\% to 100\% of the FPPs in CNN operators. We conduct a case study on six different widely used CNN models and confirm that the proposed FPP method is generalizable and effective across a variety of tasks and architectures. Our detection and repair method offers an intuitive way to handle FPPs during development, allowing users to continue building and fine-tuning their models without being slowed down by numerical precision errors. We believe that our method could open up a new way to enhance the quality of CNN operators and CNN-based software.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "203", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Weyssow:2025:EPE, author = "Martin Weyssow and Xin Zhou and Kisub Kim and David Lo and Houari Sahraoui", title = "Exploring Parameter-Efficient Fine-Tuning Techniques for Code Generation with Large Language Models", journal = j-TOSEM, volume = "34", number = "7", pages = "204:1--204:25", month = sep, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3714461", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Sep 30 09:27:41 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Large language models (LLMs) demonstrate impressive capabilities to generate accurate code snippets given natural language intents in a zero-shot manner, i.e., without the need for specific fine-tuning. While prior studies have highlighted the advantages \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "204", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Chen:2025:ESC, author = "Xiang Chen and Chaoyang Gao and Chunyang Chen and Guangbei Zhang and Yong Liu", title = "An Empirical Study on Challenges for {LLM} Application Developers", journal = j-TOSEM, volume = "34", number = "7", pages = "205:1--205:37", month = sep, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3715007", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Sep 30 09:27:41 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "In recent years, large language models (LLMs) have seen rapid advancements, significantly impacting various fields such as computer vision, natural language processing, and software engineering. These LLMs, exemplified by OpenAI's ChatGPT, have \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "205", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Shi:2025:FSV, author = "Jieke Shi and Zhou Yang and Junda He and Bowen Xu and Dongsun Kim and DongGyun Han and David Lo", title = "Finding Safety Violations of {AI-Enabled} Control Systems through the Lens of Synthesized Proxy Programs", journal = j-TOSEM, volume = "34", number = "7", pages = "206:1--206:35", month = sep, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3715105", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Sep 30 09:27:41 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Given the increasing adoption of modern AI-enabled control systems, ensuring their safety and reliability has become a critical task in software testing. One prevalent approach to testing control systems is falsification, which aims to find an input \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "206", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Zhang:2025:TUF, author = "Yi Zhang and He Jiang and Shikai Guo and Xiaochen Li and Hui Liu and Chongyang Shi", title = "Toward Understanding {FPGA} Synthesis Tool Bugs", journal = j-TOSEM, volume = "34", number = "7", pages = "207:1--207:37", month = sep, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3718737", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Sep 30 09:27:41 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Field Programmable Gate Array (FPGA) synthesis tools are crucial for hardware development and AI acceleration, and their bugs could compromise hardware reliability and risk downstream applications. However, it remains unknown in understanding the \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "207", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Ma:2025:CSG, author = "Wei Ma and Chenguang Zhu and Ye Liu and Xiaofei Xie and Yi Li", title = "A Comprehensive Study of Governance Issues in Decentralized Finance Applications", journal = j-TOSEM, volume = "34", number = "7", pages = "208:1--208:31", month = sep, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3717062", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Sep 30 09:27:41 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Decentralized Finance (DeFi) is a prominent application of smart contracts, representing a novel financial paradigm in contrast to centralized finance. While DeFi applications are rapidly emerging on mainstream blockchain platforms, their quality varies \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "208", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Zhang:2025:IDA, author = "Quanjun Zhang and Chunrong Fang and Yi Zheng and Yaxin Zhang and Yuan Zhao and Rubing Huang and Jianyi Zhou and Yun Yang and Tao Zheng and Zhenyu Chen", title = "Improving Deep Assertion Generation via Fine-Tuning Retrieval-Augmented Pre-Trained Language Models", journal = j-TOSEM, volume = "34", number = "7", pages = "209:1--209:23", month = sep, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3721128", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Sep 30 09:27:41 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Unit testing validates the correctness of the units of the software system under test and serves as the cornerstone in improving software quality and reliability. To reduce manual efforts in writing unit tests, some techniques have been proposed to \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "209", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Chen:2025:CSC, author = "Xiangping Chen and Ziang Qian and Peiyong Liao and Yuan Huang and Changlin Yang and Zibin Zheng", title = "Characterizing Smart Contract Evolution", journal = j-TOSEM, volume = "34", number = "7", pages = "210:1--210:22", month = sep, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3719004", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Sep 30 09:27:41 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Smart contracts are programs that permanently store and automatically execute on the blockchain system such as Ethereum. Due to the non-tamperable nature of the underlying blockchain, smart contracts are difficult to update once deployed, which requires \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "210", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Mockus:2025:LRM, author = "Audris Mockus and Rui Abreu and Peter C. Rigby and David Amsallem and Parveen Bansal and Kaavya Chinniah and Brian Ellis and Peng Fan and Jun Ge and Bingjie He and Kelly Hirano and Sahil Kumar and Ajay Lingapuram and Andrew Loe and Megh Mehta and Venus Montes and Maher Saba and Gursharan Singh and Matt Steiner and Weiyan Sun and Siri Uppalapati and Nachiappan Nagappan", title = "Leveraging Risk Models to Improve Productivity for Effective Code Un-Freeze at Scale", journal = j-TOSEM, volume = "34", number = "7", pages = "211:1--211:24", month = sep, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3722216", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Sep 30 09:27:41 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Changing software is essential to add needed functionality and to fix problems, but changes may introduce defects that lead to outages. This motivates one of the oldest software quality control techniques: a temporary prevention of non-critical changes \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "211", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Chowdhury:2025:GBM, author = "Shaiful Chowdhury", title = "The Good, the Bad, and the Monstrous: Predicting Highly Change-Prone Source Code Methods at Their Inception", journal = j-TOSEM, volume = "34", number = "7", pages = "212:1--212:29", month = sep, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3715006", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Sep 30 09:27:41 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "The cost of software maintenance often surpasses the initial development expenses, making it a significant concern for the software industry. A key strategy for alleviating future maintenance burdens is the early prediction and identification of change-. \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "212", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Le-Cong:2025:TRE, author = "Thanh Le-Cong and Dat Nguyen and Bach Le and Toby Murray", title = "Towards Reliable Evaluation of Neural Program Repair with Natural Robustness Testing", journal = j-TOSEM, volume = "34", number = "7", pages = "213:1--213:44", month = sep, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3716167", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Sep 30 09:27:41 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Automated program repair (APR) has recently gained ground, with numerous research efforts being conducted in the area that have been adopted in the industry. One notable class of APR is neural program repair (NPR), which typically employs deep learning \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "213", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Liu:2025:ESV, author = "Shuhan Liu and Jiayuan Zhou and Xing Hu and Filipe Roseiro Cogo and Xin Xia and Xiaohu Yang", title = "An Empirical Study on Vulnerability Disclosure Management of Open Source Software Systems", journal = j-TOSEM, volume = "34", number = "7", pages = "214:1--214:31", month = sep, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3716822", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Sep 30 09:27:41 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Vulnerability disclosure is critical for ensuring the security and reliability of open source software (OSS). However, in practice, many vulnerabilities are reported and discussed on public platforms before being formally disclosed, posing significant \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "214", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Silva:2025:PCC, author = "Geovana Ramos Sousa Silva and Edna Dias Canedo", title = "Privacy in Chatbot Conversation-Driven Development: a Comprehensive Review and Requirements Proposal", journal = j-TOSEM, volume = "34", number = "7", pages = "215:1--215:44", month = sep, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3730578", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Sep 30 09:27:41 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Ensuring data privacy is a major challenge for software developers, especially in chatbots, where balancing privacy protection with response quality is key, given the need for conversation-driven development and data protection regulations. This research \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "215", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Kong:2025:CEC, author = "Jiaolong Kong and Xiaofei Xie and Mingfei Cheng and Shangqing Liu and Xiaoning Du and Qi Guo", title = "{ContrastRepair}: Enhancing Conversation-Based Automated Program Repair via Contrastive Test Case Pairs", journal = j-TOSEM, volume = "34", number = "8", pages = "216:1--216:31", month = nov, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3719345", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Oct 24 12:34:08 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Automated Program Repair (APR) aims to automatically generate patches for rectifying software bugs. Recent strides in Large Language Models (LLM), such as ChatGPT, have yielded encouraging outcomes in APR, especially within the conversation-driven APR \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "216", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Shen:2025:ESC, author = "Zongwen Shen and Yuning Li and Jidong Ge and Xiang Chen and Chuanyi Li and LiGuo Huang and Bin Luo", title = "An Empirical Study of Code Simplification Methods in Code Intelligence Tasks", journal = j-TOSEM, volume = "34", number = "8", pages = "217:1--217:31", month = nov, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3720540", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Oct 24 12:34:08 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "In recent years, pre-trained language models have seen significant success in natural language processing and have been increasingly applied to code-related tasks. Code intelligence tasks have shown promising performance with the support of code pre-. \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "217", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Fu:2025:SWC, author = "Yujia Fu and Peng Liang and Amjed Tahir and Zengyang Li and Mojtaba Shahin and Jiaxin Yu and Jinfu Chen", title = "Security Weaknesses of {Copilot}-Generated Code in {GitHub} Projects: an Empirical Study", journal = j-TOSEM, volume = "34", number = "8", pages = "218:1--218:34", month = nov, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3716848", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Oct 24 12:34:08 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Modern code generation tools utilizing AI models like Large Language Models have gained increased popularity due to their ability to produce functional code. However, their usage presents security challenges, often resulting in insecure code merging into \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "218", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{VenkataKeerthy:2025:VAN, author = "S. VenkataKeerthy and Soumya Banerjee and Sayan Dey and Yashas Andaluri and Raghul P. S. and Subrahmanyam Kalyanasundaram and Fernando Magno Quint{\~a}o Pereira and Ramakrishna Upadrasta", title = "{VexIR2Vec}: an Architecture-Neutral Embedding Framework for Binary Similarity", journal = j-TOSEM, volume = "34", number = "8", pages = "219:1--219:54", month = nov, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3721481", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Oct 24 12:34:08 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Binary similarity involves determining whether two binary programs exhibit similar functionality with applications in vulnerability detection, malware analysis, and copyright detection. However, variations in compiler settings, target architectures, and \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "219", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Li:2025:DCF, author = "Jiapeng Li and Zheng Zheng and Xiaoting Du and Haoyu Wang and Yanwen Liu", title = "{DRLMutation}: a Comprehensive Framework for Mutation Testing in Deep Reinforcement Learning Systems", journal = j-TOSEM, volume = "34", number = "8", pages = "220:1--220:32", month = nov, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3721978", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Oct 24 12:34:08 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Deep reinforcement learning systems have been increasingly applied in various domains. Testing them, however, remains a major open research problem. Mutation testing is a popular test suite evaluation technique that analyzes the extent to which test \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "220", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Liu:2025:AEC, author = "Junlin Liu and Mengyu Yao and Shaofei Li and Dingyu Yang and Zheshun Wu and Xiaojun Qu and Ziqi Zhang and Ding Li and Yao Guo and Xiangqun Chen", title = "Not All Exceptions Are Created Equal: Triaging Error Logs in Real-World Enterprises", journal = j-TOSEM, volume = "34", number = "8", pages = "221:1--221:28", month = nov, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3721126", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Oct 24 12:34:08 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Error logs like Java exceptions play a crucial role in diagnosing and resolving errors within the industry. Nonetheless, the extensive logging of Java exceptions may result in exception fatigue in large-scale Java systems at an industrial level, where \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "221", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Zhang:2025:DGC, author = "Mengxi Zhang and Huaxiao Liu and Changhao Du and Tengmei Wang and Han Li and Pei Huang and Chunyang Chen", title = "Distinguishing {GUI} Component States for Blind Users Using Large Language Models", journal = j-TOSEM, volume = "34", number = "8", pages = "222:1--222:35", month = nov, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3722106", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Oct 24 12:34:08 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Graphical User Interfaces (GUIs) serve as the primary medium for user interaction with mobile applications (apps). Within these GUIs, editable text views, buttons, and other visual elements exhibit different states following user actions. However, \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "222", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Tian:2025:LLS, author = "Zhao Tian and Junjie Chen and Dong Wang and Qihao Zhu and Xingyu Fan and Lingming Zhang", title = "{LEAM++}: Learning for Selective Mutation Fault Construction", journal = j-TOSEM, volume = "34", number = "8", pages = "223:1--223:41", month = nov, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3725528", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Oct 24 12:34:08 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Mutation faults are the core of mutation testing and have been widely used in many software testing tasks. Hence, efficiently constructing high-quality mutation faults is critical. To address the effectiveness limitations of traditional and deep learning-. \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "223", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Liu:2025:SEF, author = "Jianzhong Liu and Yuheng Shen and Yiru Xu and Hao Sun and Yu Jiang", title = "{SnapCC}: Effective File System Consistency Testing Using Systematic State Exploration", journal = j-TOSEM, volume = "34", number = "8", pages = "224:1--224:24", month = nov, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3718738", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Oct 24 12:34:08 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Modern file systems have become increasingly feature-rich and highly complex, making crash consistency increasingly difficult to perform correctly. Thoroughly testing file systems for crash consistency bugs, however, is difficult to achieve good results \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "224", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Tony:2025:PTS, author = "Catherine Tony and Nicol{\'a}s E. D{\'\i}az Ferreyra and Markus Mutas and Salem Dhif and Riccardo Scandariato", title = "Prompting Techniques for Secure Code Generation: a Systematic Investigation", journal = j-TOSEM, volume = "34", number = "8", pages = "225:1--225:53", month = nov, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3722108", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Oct 24 12:34:08 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Large Language Models (LLMs) are gaining momentum in software development with prompt-driven programming enabling developers to create code from Natural Language (NL) instructions. However, studies have questioned their ability to produce secure code and,. \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "225", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Li:2025:EAM, author = "Yao Li and Sen Fang and Tao Zhang and Haipeng Cai", title = "Enhancing {Android} Malware Detection: The Influence of {ChatGPT} on Decision-centric Task", journal = j-TOSEM, volume = "34", number = "8", pages = "226:1--226:30", month = nov, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3720541", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Oct 24 12:34:08 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "With the rise of large language models, such as ChatGPT, non-decisional models have been applied to various tasks. Moreover, ChatGPT has drawn attention to the traditional decision-centric task of Android malware detection. Despite effective detection \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "226", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Wen:2025:SPT, author = "Jinfeng Wen and Zhenpeng Chen and Jianshu Zhao and Federica Sarro and Haodi Ping and Ying Zhang and Shangguang Wang and Xuanzhe Liu", title = "{SCOPE}: Performance Testing for Serverless Computing", journal = j-TOSEM, volume = "34", number = "8", pages = "227:1--227:30", month = nov, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3717609", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Oct 24 12:34:08 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Serverless computing is a popular cloud computing paradigm that has found widespread adoption across various online workloads. It allows software engineers to develop cloud applications as a set of functions (called serverless functions ). However, \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "227", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Shamsujjoha:2025:BSH, author = "Md Shamsujjoha and John Grundy and Qinghua Lu and Hourieh Khalajzadeh and Li Li", title = "Better Supporting Human Aspects in Mobile {eHealth} Apps: Development and Validation of Enhanced Guidelines", journal = j-TOSEM, volume = "34", number = "8", pages = "228:1--228:43", month = nov, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3721429", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Oct 24 12:34:08 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "eHealth apps are mobile apps that help in self-management of critical illnesses, provide home-based disease management, and assist with personalized care through education, sensing, and interaction. Users of eHealth apps are naturally very diverse in \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "228", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Wang:2025:SSI, author = "Jiayi Wang and Yu Wang and Ke Wang and Linzhang Wang", title = "{SILVA}: a Scalable Incremental Layered Sparse Value-Flow Analysis", journal = j-TOSEM, volume = "34", number = "8", pages = "229:1--229:40", month = nov, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3725214", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Oct 24 12:34:08 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Layered sparse value-flow analysis (SVFA) is a prominent static analysis for resolving program dependencies. Despite the significant progress, SVFA still suffers from scalability issue. In light of the natural, continuous evolution of software, we \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "229", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Jiang:2025:ARE, author = "Yanjie Jiang and Xiaye Chi and Yuxia Zhang and Weixing Ji and Guangjie Li and Weixiao Wang and Yunni Xia and Lu Zhang and Hui Liu", title = "Automated Recommendation of Extracting Local Variable Refactorings", journal = j-TOSEM, volume = "34", number = "8", pages = "230:1--230:42", month = nov, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3715110", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Oct 24 12:34:08 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Extracting local variable refactoring is frequently employed to replace one or more occurrences of a complex expression with simple accesses to a newly introduced variable. To facilitate refactoring, most IDEs can automate the extract local variable \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "230", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Japke:2025:MOS, author = "Nils Japke and Martin Grambow and Christoph Laaber and David Bermbach", title = "{$ \mu $OpTime}: Statically Reducing the Execution Time of Microbenchmark Suites Using Stability Metrics", journal = j-TOSEM, volume = "34", number = "8", pages = "231:1--231:26", month = nov, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3715322", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Oct 24 12:34:08 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Performance regressions have a tremendous impact on the quality of software. One way to catch regressions before they reach production is executing performance tests before deployment, e.g., using microbenchmarks, which measure performance at subroutine \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "231", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Assi:2025:UCC, author = "Maram Assi and Safwat Hassan and Ying Zou", title = "Unraveling Code Clone Dynamics in Deep Learning Frameworks", journal = j-TOSEM, volume = "34", number = "8", pages = "232:1--232:39", month = nov, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3721125", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Oct 24 12:34:08 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Deep Learning (DL) frameworks play a critical role in advancing AI, and their rapid growth underscores the need for a comprehensive understanding of software quality and maintainability. DL frameworks, like other systems, are prone to code clones. Code \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "232", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Alami:2025:ACR, author = "Adam Alami and Victor Jensen and Neil Ernst", title = "Accountability in Code Review: The Role of Intrinsic Drivers and the Impact of {LLMs}", journal = j-TOSEM, volume = "34", number = "8", pages = "233:1--233:44", month = nov, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3721127", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Oct 24 12:34:08 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Accountability is an innate part of social systems. It maintains stability and ensures positive pressure on individuals' decision-making. As actors in a social system, software developers are accountable to their team and organization for their \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "233", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Ghanmi:2025:ENE, author = "Hanouf {Al Ghanmi} and Sabreen Ahmadjee and Rami Bahsoon", title = "Evaluating the Need for Explanations in Blockchain Smart Contracts to Reconcile Surprises", journal = j-TOSEM, volume = "34", number = "8", pages = "234:1--234:35", month = nov, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3721283", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Oct 24 12:34:08 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Smart contracts on the blockchain play an important role in decentralised systems by automating and executing agreements without the need for intermediaries. As these contracts become integral to various domains, ensuring users' understanding of their \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "234", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Jahanshahi:2025:BDR, author = "Mahmoud Jahanshahi and David Reid and Audris Mockus", title = "Beyond Dependencies: The Role of Copy-Based Reuse in Open Source Software Development", journal = j-TOSEM, volume = "34", number = "8", pages = "235:1--235:49", month = nov, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3715907", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Oct 24 12:34:08 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "In Open Source Software, resources of any project are open for reuse by introducing dependencies or copying the resource itself. In contrast to dependency-based reuse, the infrastructure to systematically support copy-based reuse appears to be entirely \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "235", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Jiang:2025:ESR, author = "Yanjie Jiang and Hui Liu and Jinyan Liu and Yuxia Zhang and Weixing Ji and Hao Zhong and Lu Zhang", title = "An Empirical Study on the Relationship between Defects and Source Code's Unnaturalness", journal = j-TOSEM, volume = "34", number = "8", pages = "236:1--236:30", month = nov, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3718083", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Oct 24 12:34:08 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Natural languages are ``natural'' in that texts in natural languages are repetitive and predictable. Recent research indicates that programming languages share similar characteristics (naturalness), with source code displaying patterns of repetition and \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "236", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Martinez:2025:SFA, author = "Matias Martinez and Silverio Mart{\'\i}nez-Fern{\'a}ndez and Xavier Franch", title = "The Sustainability Face of Automated Program Repair Tools", journal = j-TOSEM, volume = "34", number = "8", pages = "237:1--237:37", month = nov, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3744900", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Oct 24 12:34:08 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Automated program repair (APR) aims to automatize the process of repairing software bugs in order to reduce the cost of maintaining software programs. While APR accuracy has significantly improved in recent years, its energy impact remains unstudied. The \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "237", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Li:2025:PUM, author = "Yuechen Li and Kai-Yuan Cai and Beibei Yin", title = "Preparation and Utilization of Mixed States for Testing Quantum Programs", journal = j-TOSEM, volume = "34", number = "8", pages = "238:1--238:44", month = nov, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3736757", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Oct 24 12:34:08 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Due to the growing demand for high-quality quantum programs (QPs), unit testing is employed to check the behavior of QPs. As for quantum inputs of testing, most studies limit test inputs to pure states, whereas mixed states representing probabilistic \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "238", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Zhang:2025:RWR, author = "Yixuan Zhang and Mugeng Liu and Haoyu Wang and Yun Ma and Gang Huang and Xuanzhe Liu", title = "Research on {WebAssembly} Runtimes: a Survey", journal = j-TOSEM, volume = "34", number = "8", pages = "239:1--239:47", month = nov, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3714465", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Oct 24 12:34:08 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "WebAssembly (abbreviated as Wasm) was initially introduced for the Web and quickly extended its reach into various domains beyond the Web. To create Wasm applications, developers can compile high-level programming languages into Wasm binaries or manually \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "239", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Zhao:2025:DCLa, author = "Zixiao Zhao and Fatemeh Fard", title = "Do Current Language Models Support Code Intelligence for {R} Programming Language?", journal = j-TOSEM, volume = "34", number = "8", pages = "240:1--240:39", month = nov, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3735635", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Oct 24 12:34:08 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2020.bib; https://www.math.utah.edu/pub/tex/bib/s-plus.bib; https://www.math.utah.edu/pub/tex/bib/tosem.bib", note = "See RCR report \cite{Zhao:2025:DCLb}.", abstract = "Recent advancements in developing Pre-trained Language Models for Code (Code-PLMs) have urged many areas of Software Engineering (SE) and brought breakthrough results for many SE tasks. Though these models have achieved the state-of-the-art performance for SE tasks for many popular programming languages, such as Java and Python, the Scientific Software and its related languages like R programming language have rarely benefited or even been evaluated with the Code-PLMs. Research has shown that R has many differences with other programming languages and requires specific techniques. In this study, we provide the first insights for code intelligence for R. For this purpose, we collect and open source an R dataset, and evaluate Code-PLMs for the two tasks of code summarization and method name prediction using several settings and strategies, including the differences in two R styles, Tidy-verse and Base R. Our results demonstrate that the studied models have experienced varying degrees of performance degradation when processing R programming language code, which is supported by human evaluation. Additionally, not all models show performance improvement in R-specific tasks even after multi-language fine-tuning. The dual syntax paradigms in R significantly impact the models' performance, particularly in code summarization tasks. Furthermore, the project-specific context inherent in R codebases significantly impacts the performance when attempting cross-project training. Interestingly, even when Large Language Models like CodeLlama and StarCoder2 are used for code generation, the Pass@K () results lag significantly behind Python scores. Our research shows that R as a low-resource language requires different techniques to collect high-quality data. Specifically separating the two R styles has a great impact on the results and the separate dataset could increase the performance of the models. Our research sheds light on the capabilities of Code-PLMs and opens new research directions for researchers and practitioners for developing code intelligence tools and techniques for R. With R's widespread use and popularity, the results of our study can potentially benefit a large community of R developers, both in research and industry.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "240", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Mandrioli:2025:STC, author = "Claudio Mandrioli and Seung Yeob Shin and Martina Maggio and Domenico Bianculli and Lionel Briand", title = "Stress Testing Control Loops in Cyber-Physical Systems --- {RCR} Report", journal = j-TOSEM, volume = "34", number = "8", pages = "241:1--241:6", month = nov, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3733715", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Oct 24 12:34:08 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "This is the Replicated Computational Results (RCR) Report for the article ` Stress Testing Control Loops in Cyber-Physical Systems '. The article proposes a novel approach for testing Cyber-Physical Systems (CPS) based on the integration of the guarantees \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "241", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Zhao:2025:DCLb, author = "Zixiao Zhao and Fatemeh Fard", title = "Do Current Language Models Support Code Intelligence for {R} Programming Language? {RCR} Report", journal = j-TOSEM, volume = "34", number = "8", pages = "242:1--242:2", month = nov, year = "2025", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3744902", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Oct 24 12:34:08 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2020.bib; https://www.math.utah.edu/pub/tex/bib/s-plus.bib; https://www.math.utah.edu/pub/tex/bib/tosem.bib", note = "See \cite{Zhao:2025:DCLa}.", abstract = "In this report, we introduce the dataset curated to replicate and extend experiments on R programming tasks, particularly code summarization and method name prediction. The dataset was generated by collecting R repositories from GitHub, parsing the code \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "242", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Roychoudhury:2026:YTN, author = "Abhik Roychoudhury", title = "A Year in {TOSEM}: New Research Award, Agentic {AI} Special Issue and Much More", journal = j-TOSEM, volume = "35", number = "1", pages = "1:1--1:3", month = jan, year = "2026", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3785329", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sat Jan 17 07:15:37 MST 2026", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "TOSEM is ACM's flagship journal for publishing software engineering research. TOSEM stays true to the foundations of the discipline while meaningfully engaging with the wave of disruptive technological innovations that are currently sweeping not only \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "1", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Zhang:2026:FDM, author = "Shenglin Zhang and Sibo Xia and Wenzhao Fan and Binpeng Shi and Xiao Xiong and Zhenyu Zhong and Minghua Ma and Yongqian Sun and Dan Pei", title = "Failure Diagnosis in Microservice Systems: a Comprehensive Survey and Analysis", journal = j-TOSEM, volume = "35", number = "1", pages = "2:1--2:55", month = jan, year = "2026", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3715005", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sat Jan 17 07:15:37 MST 2026", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Widely adopted for their scalability and flexibility, modern microservice systems present unique failure diagnosis challenges due to their independent deployment and dynamic interactions. This complexity can lead to cascading failures that negatively \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "2", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Zhang:2026:PEL, author = "Yuwei Zhang and Zhi Jin and Ying Xing and Ge Li and Fang Liu and Jiaxin Zhu and Wensheng Dou and Jun Wei", title = "{PATCH}: Empowering Large Language Model with Programmer-Intent Guidance and Collaborative-Behavior Simulation for Automatic Bug Fixing", journal = j-TOSEM, volume = "35", number = "1", pages = "3:1--3:35", month = jan, year = "2026", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3718739", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sat Jan 17 07:15:37 MST 2026", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Bug fixing holds significant importance in software development and maintenance. Recent research has made substantial strides in exploring the potential of large language models (LLMs) for automatically resolving software bugs. However, a noticeable gap \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "3", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Hu:2026:TFC, author = "Xing Hu and Weixin Lin and Zhuang Liu and Michael Ling and Xin Xia and Yuan Wang and David Lo", title = "Towards On-the-Fly Code Performance Profiling", journal = j-TOSEM, volume = "35", number = "1", pages = "4:1--4:25", month = jan, year = "2026", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3725212", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sat Jan 17 07:15:37 MST 2026", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Improving the performance of software applications is one of the most important tasks in software evolution and maintenance. In the Intel Microarchitecture, CPUs employ pipelining to utilize resources as effectively as possible. Some types of software \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "4", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Huang:2026:BTM, author = "Dong Huang and Jie M. Zhang and Qingwen Bu and Xiaofei Xie and Junjie Chen and Heming Cui", title = "Bias Testing and Mitigation in {LLM}-based Code Generation", journal = j-TOSEM, volume = "35", number = "1", pages = "5:1--5:31", month = jan, year = "2026", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3724117", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sat Jan 17 07:15:37 MST 2026", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "As the adoption of LLMs becomes more widespread in software coding ecosystems, a pressing issue has emerged: does the generated code contain social bias and unfairness, such as those related to age, gender, and race? This issue concerns the integrity, \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "5", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Wen:2026:VRB, author = "Jin Wen and Qiang Hu and Yuejun Guo and Maxime Cordy and Yves {Le Traon}", title = "Variable Renaming-Based Adversarial Test Generation for Code Model: Benchmark and Enhancement", journal = j-TOSEM, volume = "35", number = "1", pages = "6:1--6:28", month = jan, year = "2026", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3723353", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sat Jan 17 07:15:37 MST 2026", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Robustness testing is essential for evaluating deep learning models, particularly under unforeseen circumstances. Adversarial test generation, a fundamental approach in robustness testing, is prevalent in computer vision and natural language processing, \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "6", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Ma:2026:RTM, author = "Pingchuan Ma and Zhaoyu Wang and Zongjie Li and Zhenlan Ji and Ao Sun and Juergen Rahmel and Shuai Wang", title = "{Reeq}: Testing and Mitigating Ethically Inconsistent Suggestions of Large Language Models with Reflective Equilibrium", journal = j-TOSEM, volume = "35", number = "1", pages = "7:1--7:27", month = jan, year = "2026", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3722554", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sat Jan 17 07:15:37 MST 2026", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "LLMs increasingly serve as general-purpose AI assistants in daily life, and their subtly unethical suggestions become a serious and real concern. It is demanding to test and mitigate such unethical suggestions from LLMs. Despite existing efforts to \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "7", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Zhang:2026:JUD, author = "Xiaoyu Zhang and Cen Zhang and Tianlin Li and Yihao Huang and Xiaojun Jia and Ming Hu and Jie Zhang and Yang Liu and Shiqing Ma and Chao Shen", title = "{JailGuard}: a Universal Detection Framework for Prompt-based Attacks on {LLM} Systems", journal = j-TOSEM, volume = "35", number = "1", pages = "8:1--8:40", month = jan, year = "2026", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3724393", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sat Jan 17 07:15:37 MST 2026", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "The systems and software powered by Large Language Models (LLMs) and Multi-Modal Large Language Models (MLLMs) have played a critical role in numerous scenarios. However, current LLM systems are vulnerable to prompt-based attacks, with jailbreaking ... \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "8", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Tan:2026:PBC, author = "Hanzhuo Tan and Qi Luo and Ling Jiang and Zizheng Zhan and Jing Li and Haotian Zhang and Yuqun Zhang", title = "Prompt-Based Code Completion via Multi-Retrieval Augmented Generation", journal = j-TOSEM, volume = "35", number = "1", pages = "9:1--9:28", month = jan, year = "2026", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3725812", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sat Jan 17 07:15:37 MST 2026", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Automated code completion, aiming at generating subsequent tokens from unfinished code, has significantly benefited from recent progress in pre-trained Large Language Models (LLMs). However, these models often suffer from coherence issues and \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "9", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Giagnorio:2026:WPD, author = "Alessandro Giagnorio and Alberto Martin-Lopez and Gabriele Bavota", title = "Why Personalizing Deep Learning-Based Code Completion Tools Matters", journal = j-TOSEM, volume = "35", number = "1", pages = "10:1--10:37", month = jan, year = "2026", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3725732", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sat Jan 17 07:15:37 MST 2026", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Deep learning (DL)-based code completion tools have revolutionized software development by providing unprecedented code generation capabilities. The DL models behind these tools are usually trained on large amounts of code from thousands of software \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "10", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Zhou:2026:NTE, author = "Shide Zhou and Tianlin Li and Yihao Huang and Ling Shi and Kailong Wang and Yang Liu and Haoyu Wang", title = "{NeuSemSlice}: Towards Effective {DNN} Model Maintenance via Neuron-Level Semantic Slicing", journal = j-TOSEM, volume = "35", number = "1", pages = "11:1--11:27", month = jan, year = "2026", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3731556", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sat Jan 17 07:15:37 MST 2026", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Deep Neural Networks (DNNs), extensively applied across diverse disciplines, are characterized by their integrated and monolithic architectures, setting them apart from conventional software systems. This architectural difference introduces particular \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "11", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Yang:2026:ELL, author = "Zhou Yang and Jieke Shi and Premkumar Devanbu and David Lo", title = "Ecosystem of Large Language Models for Code", journal = j-TOSEM, volume = "35", number = "1", pages = "12:1--12:30", month = jan, year = "2026", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3731753", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sat Jan 17 07:15:37 MST 2026", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "The extensive availability of publicly accessible source code and the advances in language models, coupled with increasing computational resources, have led to a remarkable rise of large language models for code (LLM4Code). These models do not exist in \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "12", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Joshi:2026:FEF, author = "Hem Chandra Joshi and Sandeep Kumar", title = "{FairGenerate}: Enhancing Fairness through Synthetic Data Generation and Two-Fold Biased Labels Removal", journal = j-TOSEM, volume = "35", number = "1", pages = "13:1--13:42", month = jan, year = "2026", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3730579", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sat Jan 17 07:15:37 MST 2026", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "We are increasingly using Machine Learning (ML) software to make autonomous decisions such as identifying credit risks, criminal sentencing, discharge of a patient, predicting heart diseases, hiring employees, and so on. However, the biased decision made \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "13", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Chang:2026:VTV, author = "Zhiyuan Chang and Mingyang Li and Junjie Wang and Cheng Li and Qing Wang", title = "{VEglue}: Testing Visual Entailment Systems via Object-Aligned Joint Erasing", journal = j-TOSEM, volume = "35", number = "1", pages = "14:1--14:27", month = jan, year = "2026", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3731244", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sat Jan 17 07:15:37 MST 2026", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Visual entailment (VE) is a multimodal reasoning task consisting of image-sentence pairs whereby a promise is defined by an image, and a sentence describes a hypothesis. The goal is to predict whether the image semantically entails the sentence. VE \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "14", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Shang:2026:FFC, author = "Xiuwei Shang and Guoqiang Chen and Shaoyin Cheng and Shikai Guo and Yanming Zhang and Weiming Zhang and Nenghai Yu", title = "{FoC}: Figure Out the Cryptographic Functions in Stripped Binaries with {LLMs}", journal = j-TOSEM, volume = "35", number = "1", pages = "15:1--15:38", month = jan, year = "2026", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3731449", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sat Jan 17 07:15:37 MST 2026", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Analyzing the behavior of cryptographic functions in stripped binaries is a challenging but essential task, which is crucial in software security fields such as malware analysis and legacy code inspection. However, the inherent high logical complexity of \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "15", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Zhong:2026:LAD, author = "Renyi Zhong and Yichen Li and Jinxi Kuang and Wenwei Gu and Yintong Huo and Michael R. Lyu", title = "{LogUpdater}: Automated Detection and Repair of Specific Defects in Logging Statements", journal = j-TOSEM, volume = "35", number = "1", pages = "16:1--16:31", month = jan, year = "2026", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3731754", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sat Jan 17 07:15:37 MST 2026", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Developers write logging statements to monitor software runtime behaviors and system state. However, poorly constructed or misleading log messages can inadvertently obfuscate actual program execution patterns, thereby impeding effective software \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "16", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Wang:2026:EGT, author = "Yong Wang and Wenzhong Cui and Gai-Ge Wang and Jian Wang and Dunwei Gong", title = "Efficient Generation of Test Cases for {MPI} Program Path Coverage through Elite Individual Selection", journal = j-TOSEM, volume = "35", number = "1", pages = "17:1--17:37", month = jan, year = "2026", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3723354", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sat Jan 17 07:15:37 MST 2026", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "In the field of message-passing interface (MPI) program path coverage test case generation, evolutionary algorithms (EAs) have been frequently utilized to generate test cases. However, relying solely on EAs will incur excessive computational costs. In \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "17", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Yu:2026:TSI, author = "Shengcheng Yu and Chunrong Fang and Jia Liu and Zhenyu Chen", title = "Test Script Intention Generation for Mobile Application via {GUI} Image and Code Understanding", journal = j-TOSEM, volume = "35", number = "1", pages = "18:1--18:30", month = jan, year = "2026", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3722105", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sat Jan 17 07:15:37 MST 2026", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Testing is the most direct and effective technique to ensure software quality. Test scripts always play a more important role in mobile app testing than test cases for source code, due to the GUI-intensive and event-driven characteristics of mobile \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "18", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Alonso:2026:TOG, author = "Juan C. Alonso and Michael D. Ernst and Sergio Segura and Antonio Ruiz-Cort{\'e}s", title = "Test Oracle Generation for {REST APIs}", journal = j-TOSEM, volume = "35", number = "1", pages = "19:1--19:37", month = jan, year = "2026", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3726524", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sat Jan 17 07:15:37 MST 2026", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "The number and complexity of test case generation tools for REST APIs have significantly increased in recent years. These tools excel in automating input generation but are limited by their test oracles, which can only detect crashes, regressions, and \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "19", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Lu:2026:ITE, author = "Yifei Lu and Minxue Pan and Haochuan Lu and Yuetang Deng and Tian Zhang and Linzhang Wang and Xuandong Li", title = "Improving Test Efficacy for Large-Scale {Android} Applications by Exploiting {GUI} and Functional Equivalence", journal = j-TOSEM, volume = "35", number = "1", pages = "20:1--20:50", month = jan, year = "2026", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3729225", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sat Jan 17 07:15:37 MST 2026", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Large-scale Android apps that provide complex functions are gradually becoming the mainstream in Android app markets. They tend to display many GUI widgets on a single GUI page, which, unfortunately, can cause more redundant test actions-actions with \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "20", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Guo:2026:CIR, author = "Jiawei Guo and Xiaoqin Fu and Li Li and Tao Zhang and Mattia Fazzini and Haipeng Cai", title = "Characterizing Installation- and Run-time Compatibility Issues in {Android} Benign Apps and Malware", journal = j-TOSEM, volume = "35", number = "1", pages = "21:1--21:44", month = jan, year = "2026", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3725810", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sat Jan 17 07:15:37 MST 2026", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "The Android ecosystem has experienced rapid growth, resulting in a diverse range of platforms and devices. This expansion has also brought about compatibility issues that negatively impact user experiences and hinder app development productivity. \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "21", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Zhang:2026:WSU, author = "Qingyu Zhang and Junzhe Li and Jiayi Lin and Jie Ding and Lanteng Lin and Chenxiong Qian", title = "{WizardMerge} --- Save Us from Merging without Any Clues", journal = j-TOSEM, volume = "35", number = "1", pages = "22:1--22:28", month = jan, year = "2026", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3731751", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sat Jan 17 07:15:37 MST 2026", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Modern software development necessitates efficient version-oriented collaboration among developers. While Git is the most popular version control system, it generates unsatisfactory version merging results due to textual-based workflow, leading to \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "22", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Lambiase:2026:IRC, author = "Stefano Lambiase and Gemma Catolino and Fabio Palomba and Filomena Ferrucci and Daniel Russo", title = "Investigating the Role of Cultural Values in Adopting Large Language Models for Software Engineering", journal = j-TOSEM, volume = "35", number = "1", pages = "23:1--23:43", month = jan, year = "2026", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3725529", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sat Jan 17 07:15:37 MST 2026", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "As a socio-technical activity, software development involves the close interconnection of people and technology. The integration of Large Language Models (LLMs) into this process exemplifies the socio-technical nature of software development. Although \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "23", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Rigby:2026:ICR, author = "Peter C. Rigby and Seth Rogers and Sadruddin Saleem and Parth Suresh and Daniel Suskin and Patrick Riggs and Chandra Maddila and Nachiappan Nagappan and Audris Mockus", title = "Improving Code Reviewer Recommendation: Accuracy, Latency, Workload, and Bystanders", journal = j-TOSEM, volume = "35", number = "1", pages = "24:1--24:23", month = jan, year = "2026", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3736405", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sat Jan 17 07:15:37 MST 2026", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Aim. The code review team at Meta is continuously improving the code review process. In this work, we report on three randomized controlled experimental trials to improve code reviewer recommendation. Method. To evaluate the recommenders, we conduct \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "24", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Wang:2026:ELS, author = "Xiaohui Wang and Youshuai Tan and Zishuo Ding and Jinfu Chen and Jifeng Xuan and Weiyi Shang", title = "Enhancing Log Sentiments: an Exploratory Study of Sentiments and Emotions with Software Logs", journal = j-TOSEM, volume = "35", number = "1", pages = "25:1--25:28", month = jan, year = "2026", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3723355", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sat Jan 17 07:15:37 MST 2026", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Software logs serve as valuable resources for understanding system running and are extensively used in diverse software maintenance tasks. Logs are generated by logging statements in the code, which are written by developers. Therefore, logs may reflect \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "25", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Tang:2026:UMB, author = "Ye Tang and Honghao Chen and Zhixing He and Hao Zhong", title = "Understanding Mirror Bugs in Multiple-Language Projects", journal = j-TOSEM, volume = "35", number = "1", pages = "26:1--26:27", month = jan, year = "2026", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3727145", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sat Jan 17 07:15:37 MST 2026", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "As software is widely used in daily life, bugs can introduce catastrophic consequences. Researchers have conducted empirical studies to delve into bug characteristics, exploring topics such as buggy locations, symptoms, causes, and repair patterns. To \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "26", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Kuiter:2026:HCLa, author = "Elias Kuiter and Chico Sundermann and Thomas Th{\"u}m and Tobias He{\ss} and Sebastian Krieter and Gunter Saake", title = "How Configurable Is the {Linux} Kernel? {Analyzing} Two Decades of Feature-Model History", journal = j-TOSEM, volume = "35", number = "1", pages = "27:1--27:48", month = jan, year = "2026", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3729423", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sat Jan 17 07:15:37 MST 2026", bibsource = "https://www.math.utah.edu/pub/tex/bib/linux.bib; https://www.math.utah.edu/pub/tex/bib/tosem.bib; https://www.math.utah.edu/pub/tex/bib/unix.bib", note = "See RCR report \cite{Kuiter:2026:HCLb}.", abstract = "Today, the open source operating system Linux plays a huge role throughout all of computing, as it is widely applied in diverse environments [38] (e.g., PCs, smartphones, servers, or cars). To adapt to all these different requirements, the kernel of Linux is organized as a feature-oriented software product line [13, 14, 149]; that is, each distinctive, user-visible characteristic in the kernel constitutes a feature [87], which can be selected or deselected in a configuration. By only compiling the code associated with selected features, unneeded functionality is omitted in the deployed configuration, which may improve its performance, security, or energy efficiency [70, 80, 148]. On the one hand, this variability makes the Linux kernel very adaptable, which is likely to have contributed to its success story. On the other hand, variability also introduces many new issues in the kernel (e.g., inconsistencies [161], broken configurations [124], configuration mismatches [55], and feature interactions [1]), which are difficult and costly to find, debug, and fix manually.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "27", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Yu:2026:SFA, author = "Guangba Yu and Gou Tan and Haojia Huang and Zhenyu Zhang and Pengfei Chen and Roberto Natella and Zibin Zheng and Michael R. Lyu", title = "A Survey on Failure Analysis and Fault Injection in {AI} Systems", journal = j-TOSEM, volume = "35", number = "1", pages = "28:1--28:42", month = jan, year = "2026", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3732777", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sat Jan 17 07:15:37 MST 2026", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "The rapid advancement of AI has led to its integration into various areas, especially with Large Language Models (LLMs) significantly enhancing capabilities in Artificial Intelligence Generated Content (AIGC). However, the complexity of AI systems has \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "28", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Li:2026:HPGa, author = "Ao Li and Madonna Huang and Vasudev Vikram and Caroline Lemieux and Rohan Padhye", title = "The Havoc Paradox in Generator-Based Fuzzing", journal = j-TOSEM, volume = "35", number = "1", pages = "29:1--29:26", month = jan, year = "2026", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3742894", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sat Jan 17 07:15:37 MST 2026", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Parametric generators combine coverage-guided and generator-based fuzzing for testing programs requiring structured inputs. They function as decoders that transform arbitrary byte sequences into structured inputs, allowing mutations on byte sequences to \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "29", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Mandrioli:2026:TAC, author = "Claudio Mandrioli and Max Nyberg Carlsson and Martina Maggio", title = "Testing Abstractions for Cyber-Physical Control {Systems-RCR} Report", journal = j-TOSEM, volume = "35", number = "1", pages = "30:1--30:8", month = jan, year = "2026", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3736577", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sat Jan 17 07:15:37 MST 2026", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "This is the Replicated Computational Results (RCR) Report for the article `` Testing Abstractions for Cyber-Physical Control Systems.'' The article empirically studies how substituting different components in Cyber-Physical Systems (CPSs) testing with \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "30", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Li:2026:HPGb, author = "Ao Li and Madonna Huang and Vasudev Vikram and Caroline Lemieux and Rohan Padhye", title = "The Havoc Paradox in Generator-Based Fuzzing --- {RCR} Report", journal = j-TOSEM, volume = "35", number = "1", pages = "31:1--31:5", month = jan, year = "2026", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3767167", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sat Jan 17 07:15:37 MST 2026", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "This artifact is associated with the paper ``The Havoc Paradox in Generator-Based Fuzzing.'' It contains the implementation of various fuzzing techniques discussed in the paper, along with benchmarks, experimental data, and analysis scripts that support \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "31", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Meng:2026:LMF, author = "Linghan Meng and Yanhui Li and Lin Chen and Mingliang Ma and Yuming Zhou and Baowen Xu", title = "Less Is More: Feature Engineering for Fairness and Performance of Machine Learning Software", journal = j-TOSEM, volume = "35", number = "2", pages = "32:1--32:36", month = feb, year = "2026", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3730577", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Feb 3 06:21:48 MST 2026", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Machine Learning (ML) software employs statistical algorithms to perform high-stake tasks in our daily lives, whose results are usually discriminatory due to protected features (e.g., gender), i.e., one part (called privileged, e.g., male) may be more \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "32", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Ni:2026:AMO, author = "Chao Ni and Xin Yin and Xinrui Li and Xiaodan Xu and Zhi Yu", title = "Abundant Modalities Offer More Nutrients: Multi-Modal-Based Function-Level Vulnerability Detection", journal = j-TOSEM, volume = "35", number = "2", pages = "33:1--33:31", month = feb, year = "2026", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3731557", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Feb 3 06:21:48 MST 2026", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Software vulnerabilities are weaknesses in software systems that can lead to significant cybersecurity risks. Recently, several deep learning (DL)-based approaches have been proposed to detect vulnerabilities at the function level. These approaches \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "33", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Harzevili:2026:EAL, author = "Nima Shiri Harzevili and Moshi Wei and Mohammad Mahdi Mohajer and Hung Viet Pham and Song Wang", title = "Evaluating {API}-Level Deep Learning Fuzzers: a Comprehensive Benchmarking Study", journal = j-TOSEM, volume = "35", number = "2", pages = "34:1--34:34", month = feb, year = "2026", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3729533", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Feb 3 06:21:48 MST 2026", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "In recent years, the practice of fuzzing Deep Learning (DL) APIs has received significant attention in the software engineering community. Many API-level DL fuzzers have been proposed to test individual DL APIs by generating malformed input. Although \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "34", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Li:2026:PPT, author = "Yinghua Li and Xueqi Dang and Jacques Klein and Yves {Le Traon} and Tegawend{\'e} F. Bissyand{\'e}", title = "{PriCod}: Prioritizing Test Inputs for Compressed Deep Neural Networks", journal = j-TOSEM, volume = "35", number = "2", pages = "35:1--35:48", month = feb, year = "2026", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3730435", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Feb 3 06:21:48 MST 2026", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "The widespread adoption of Deep Neural Networks (DNNs) has brought remarkable advances in machine learning. However, the computational and memory demands of complex DNNs hinder their deployment in resource-constrained environments. To address this \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "35", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Liang:2026:BGA, author = "Qingyuan Liang and Zeyu Sun and Yifan Zhao and Zhihao Gong and Guoqing Wang and Yizhou Chen and Lu Zhang and Guangtai Liang and Qianxiang Wang", title = "Bipartite-Grammar-Aware Pretraining for {XML-SQL} Code Updating", journal = j-TOSEM, volume = "35", number = "2", pages = "36:1--36:26", month = feb, year = "2026", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3731752", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Feb 3 06:21:48 MST 2026", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "The eXtensible Markup Language (XML) is a file format widely used for data transmission in modern software development. In recent years, embedding SQL statements in XML files (i.e., XML-SQL) has become a popular way for developing applications with \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "36", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Chen:2026:PHE, author = "Jinze Chen and Jieli Liu and Jianlin Wu and Dan Lin and Jiajing Wu and Zibin Zheng", title = "{PonziHunter}: Hunting {Ethereum} {Ponzi} Contract via Static Analysis and Contrastive Learning on the Bytecode Level", journal = j-TOSEM, volume = "35", number = "2", pages = "37:1--37:21", month = feb, year = "2026", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3735971", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Feb 3 06:21:48 MST 2026", bibsource = "https://www.math.utah.edu/pub/tex/bib/bitcoin.bib; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "In recent years, blockchain technology has developed rapidly and received widespread attention. However, its pseudonymous and decentralized nature has also attracted many criminal activities. Ponzi schemes, a kind of classic financial scam, also hide their true face in smart contracts, causing massive financial losses to blockchain users. Although several methods have been proposed to detect Ponzi contracts, there are still limitations in broad applicability, semantics understanding, and adversarial robustness. In this article, we propose PonziHunter, an intelligent framework for hunting Ponzi contracts on Ethereum. To tackle the problem of broad applicability, we train a detection model that does not require expert experience based on publicly available on-chain bytecode and off-chain contract labels. To tackle the problem of semantics understanding, we employ cross-function control flows and state variable dependencies to understand the logic of Ponzi contracts. Specifically, we decompile bytecodes into higher-order representations to analyze control flows and state variable dependencies and model the information as graph data. By combining the idea of code slicing, we identify the basic blocks related to Ponzi contract recognition. To tackle the problem of adversarial robustness, we model Ponzi contract recognition as a graph classification problem based on contrastive pre-training. We propose a data augmentation method for control flow graphs (CFGs), which preserves the basic blocks related to Ponzi contract recognition as much as possible during data perturbation. Experimental results show that PonziHunter outperforms state-of-the-art tools with average improvements of at least 4.77\% on real-world ground-truth data and can newly discover 85 Ponzi contracts in the wild. More importantly, PonziHunter is robust against adversarial examples and can locate the critical basic blocks for smart Ponzi detection.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "37", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Yang:2026:MTL, author = "Boyang Yang and Haoye Tian and Jiadong Ren and Hongyu Zhang and Jacques Klein and Tegawend{\'e} F. Bissyand{\'e} and Claire {Le Goues} and Shunfu Jin", title = "{MORepair}: Teaching {LLMs} to Repair Code via Multi-Objective Fine-Tuning", journal = j-TOSEM, volume = "35", number = "2", pages = "38:1--38:38", month = feb, year = "2026", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3735129", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Feb 3 06:21:48 MST 2026", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Within the realm of software engineering, specialized tasks on code, such as program repair, present unique challenges, necessitating fine-tuning Large language models (LLMs) to unlock state-of-the-art performance. Fine-tuning approaches proposed in the \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "38", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Alabdulwahab:2026:ASC, author = "Saleh Alabdulwahab and JaeCheol Kim and Young-Tak Kim and Yunsik Son", title = "Advanced Side-Channel Evaluation Using Contextual Deep Learning-Based Leakage Modeling", journal = j-TOSEM, volume = "35", number = "2", pages = "39:1--39:20", month = feb, year = "2026", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3734219", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Feb 3 06:21:48 MST 2026", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Side-channel attacks (SCAs) exploit power analysis to extract secret information. Researchers have employed this technique to disassemble software and retrieve cryptographic keys by examining power consumption or electromagnetic emissions. They utilized \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "39", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Xie:2026:TTO, author = "Shuaiyu Xie and Jian Wang and Hanbin He and Zhihao Wang and Yuqi Zhao and Neng Zhang and Bing Li", title = "{TVDiag}: a Task-oriented and View-invariant Failure Diagnosis Framework for Microservice-based Systems with Multimodal Data", journal = j-TOSEM, volume = "35", number = "2", pages = "40:1--40:39", month = feb, year = "2026", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3734868", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Feb 3 06:21:48 MST 2026", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Microservice-based systems often suffer from reliability issues due to their intricate interactions and expanding scale. With the rapid growth of observability techniques, various methods have been proposed to achieve failure diagnosis, including root \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "40", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Yang:2026:LMD, author = "Guang Yang and Yu Zhou and Wei Cheng and Xiangyu Zhang and Xiang Chen and Terry Yue Zhuo and Ke Liu and Xin Zhou and David Lo and Taolue Chen", title = "Less Is More: {DocString} Compression in Code Generation", journal = j-TOSEM, volume = "35", number = "2", pages = "41:1--41:31", month = feb, year = "2026", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3735636", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Feb 3 06:21:48 MST 2026", bibsource = "https://www.math.utah.edu/pub/tex/bib/datacompression.bib; https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "The widespread use of Large Language Models (LLMs) in software engineering has intensified the need for improved model and resource efficiency. In particular, for neural code generation, LLMs are used to translate function/method signature and DocString \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "41", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Yang:2026:DCL, author = "Guang Yang and Yu Zhou and Xiangyu Zhang and Xiang Chen and Terry Yue Zhuo and David Lo and Taolue Chen", title = "Defending Code Language Models against Backdoor Attacks with Deceptive Cross-Entropy Loss", journal = j-TOSEM, volume = "35", number = "2", pages = "42:1--42:27", month = feb, year = "2026", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3728639", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Feb 3 06:21:48 MST 2026", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Code Language Models (CLMs), particularly those leveraging deep learning, have achieved significant success in code intelligence domain. However, the issue of security, particularly backdoor attacks, is often overlooked in this process. The previous \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "42", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Ge:2026:OME, author = "Jingquan Ge and Yaowen Zheng and Yuekang Li and Wei Ma and Sheikh Mahbub Habib and Praveen Kakkolangara and Gabriel Wayne Byman and Yang Liu", title = "{OptRCA}: a More Efficient and Accurate Approach for Automated Root Cause Analysis and Explanation", journal = j-TOSEM, volume = "35", number = "2", pages = "43:1--43:32", month = feb, year = "2026", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3736718", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Feb 3 06:21:48 MST 2026", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "With the development of automated software testing technology, software developers can get a large number of crash test cases in a short period of time. However, analyzing these crash test cases and finding their root cause is a time-consuming and labor-. \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "43", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Zhang:2026:DLA, author = "Yixuan Zhang and Ningyu He and Jianting Gao and Shangtong Cao and Kaibo Liu and Haoyu Wang and Yun Ma and Gang Huang and Xuanzhe Liu", title = "{DrWASI}: {LLM}-assisted Differential Testing for {WebAssembly} System Interface Implementations", journal = j-TOSEM, volume = "35", number = "2", pages = "44:1--44:25", month = feb, year = "2026", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3716379", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Feb 3 06:21:48 MST 2026", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "WebAssembly (Wasm) is an emerging binary format that serves as a compilation target for over 40 programming languages. Wasm runtimes provide execution environments that enhance portability by abstracting away operating systems and hardware details. A \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "44", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Zhang:2026:GTM, author = "Yakun Zhang and Chen Liu and Xiaofei Xie and Yun Lin and Jin Song Dong and Dan Hao and Lu Zhang", title = "{GUI} Test Migration via Abstraction and Concretization", journal = j-TOSEM, volume = "35", number = "2", pages = "45:1--45:29", month = feb, year = "2026", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3726525", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Feb 3 06:21:48 MST 2026", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "GUI test migration aims to produce test cases with events and assertions to test specific functionalities of a target app. Existing migration approaches typically focus on the widget-mapping paradigm that maps widgets from source apps to target apps. \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "45", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Ren:2026:FLE, author = "Zhilei Ren and Yue Ma and Xiaochen Li and Shikai Guo and He Jiang", title = "Is Fault Localization Effective on Industrial Software? {A} Case Study on Computer-Aided Engineering Projects", journal = j-TOSEM, volume = "35", number = "2", pages = "46:1--46:36", month = feb, year = "2026", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3731448", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Feb 3 06:21:48 MST 2026", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "In software engineering, empirical studies on automated fault localization (FL) methods mainly focus on general software, and substantial progress has been made. However, the applicability and efficacy of these methods in specialized, domain-specific \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "46", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Samhi:2026:RCI, author = "Jordan Samhi and Ren{\'e} Just and Michael D. Ernst and Tegawend{\'e} F. Bissyand{\'e} and Jacques Klein", title = "Resolving Conditional Implicit Calls to Improve Static and Dynamic Analysis in {Android} Apps", journal = j-TOSEM, volume = "35", number = "2", pages = "47:1--47:25", month = feb, year = "2026", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3729168", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Feb 3 06:21:48 MST 2026", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "An implicit call is a mechanism that triggers the execution of a method m without a direct call to m in the code being analyzed. For instance, in Android apps the Thread.start() method implicitly executes the Thread.run() method. These implicit calls can \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "47", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Kalita:2026:AAT, author = "Pankaj Kumar Kalita and Thomas Reps and Subhajit Roy", title = "Automated Abstract Transformer Synthesis for Reduced Product Domains", journal = j-TOSEM, volume = "35", number = "2", pages = "48:1--48:41", month = feb, year = "2026", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3733716", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Feb 3 06:21:48 MST 2026", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Designing abstract transformers for program-analysis tools is a challenging task. In the past, bugs have been discovered in such transformers, showing the difficulty of designing such transformers manually, and providing motivation for automated \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "48", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Wolff:2026:FBO, author = "Dylan Wolff and Marcel B{\"o}hme and Abhik Roychoudhury", title = "Fuzzing: On Benchmarking Outcome as a Function of Benchmark Properties", journal = j-TOSEM, volume = "35", number = "2", pages = "49:1--49:26", month = feb, year = "2026", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3732936", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Feb 3 06:21:48 MST 2026", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "In a typical experimental design in fuzzing, we would run two or more fuzzers on an appropriate set of benchmark programs plus seed corpora and consider their ranking in terms of code coverage or bugs found as outcomes. However, the specific \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "49", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Ling:2026:EFI, author = "Hao Ling and Heqing Huang and Yuandao Cai and Charles Zhang", title = "Efficient Fuzzing Infrastructure for Pointer-to-Object Association", journal = j-TOSEM, volume = "35", number = "2", pages = "50:1--50:36", month = feb, year = "2026", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3730580", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Feb 3 06:21:48 MST 2026", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Runtime feedback is at the heart of efficient greybox fuzzing, and the collection of runtime feedback is the most important infrastructure for greybox fuzzing. However, existing fuzzers have difficulty collecting runtime feedback for the memory, which is \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "50", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Seran:2026:HWS, author = "Susruthan Seran and Man Zhang and Onur Duman and Andrea Arcuri", title = "Handling {Web} Service Interactions in Fuzzing with Search-Based Mock-Generation", journal = j-TOSEM, volume = "35", number = "2", pages = "51:1--51:45", month = feb, year = "2026", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3731558", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Feb 3 06:21:48 MST 2026", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Testing large and complex enterprise software systems can be a challenging task. This is especially the case when the functionality of the system depends on interactions with other external services over a network (e.g., external web services accessed \ldots{})", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "51", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Zheng:2026:EJG, author = "Kai Zheng and Zan Wang and Yingquan Zhao and Junjie Chen and Hanmo You and Haoyu Wang and Yiheng Du and Tianchang Gao", title = "Exploring {JVM} Garbage Collector Testing with Event-Coverage", journal = j-TOSEM, volume = "35", number = "2", pages = "52:1--52:38", month = feb, year = "2026", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3733598", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Feb 3 06:21:48 MST 2026", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2020.bib; https://www.math.utah.edu/pub/tex/bib/tosem.bib; https://www.math.utah.edu/pub/tex/bib/virtual-machines.bib", abstract = "Garbage Collection (GC) in the Java Virtual Machine (JVM) serves as an automatic memory management mechanism, efficiently reclaiming unused memory space in different production scenarios. To optimize JVM performance, developers typically fine-tune the garbage collector by identifying an optimal set of GC configurations for specific scenarios. Despite the sophisticated design of garbage collectors, they still have the potential for bugs in different settings, and these bugs can result in more severe consequences. Hence, comprehensive testing of these garbage collectors is imperative before their release. Code coverage criteria are typically employed to assess the comprehensiveness of a test suite. However, traditional code coverage metrics, such as branch coverage, are hardly applicable for GC testing due to their inherent concurrency. Additionally, existing JVM testing techniques do not adequately consider the characteristics of garbage collectors, making it difficult to test these garbage collectors sufficiently. In this article, we make the first effort to design coverage criteria against garbage collectors based on the events of GC called Event-Coverage. Its key insight is to measure the diversity of GC executions for testing purposes by assessing the range of GC events these executions cover. Furthermore, we design a new testing method for maximizing Event-Coverage called GCFuzz. GCFuzz conducts an exhaustive investigation of the memory state space of GC and thoroughly explores the memory state under various GC configurations. To enhance GCFuzz's efficiency in achieving higher Event-Coverage, we have further designed a coverage-driven strategy for preserving candidate seed programs and selecting GC configurations. Extensive evaluations demonstrate a positive correlation between Event-Coverage and the bug-revealing efficiency. Moreover, GCFuzz outperforms state-of-the-art techniques in detecting unique GC-related inconsistencies and achieving higher Event-Coverage. Remarkably, GCFuzz has identified 20 previously undetected GC bugs, with 15 of them already confirmed or fixed by developers.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "52", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Ollando:2026:LGF, author = "Rapha{\"e}l Ollando and Seung Yeob Shin and Lionel C. Briand", title = "Learning-Guided Fuzzing for Testing Stateful {SDN} Controllers", journal = j-TOSEM, volume = "35", number = "2", pages = "53:1--53:45", month = feb, year = "2026", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3733717", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Feb 3 06:21:48 MST 2026", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Controllers for software-defined networks (SDNs) are centralised software components that enable advanced network functionalities, such as dynamic traffic engineering and network virtualisation. However, these functionalities increase the complexity of \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "53", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Wang:2026:DAU, author = "Wei Wang and John Grundy and Hourieh Khalajzadeh and Anuradha Madugalla and Humphrey O. Obie", title = "Designing Adaptive User Interfaces for {mHealth} Applications Targeting Chronic Disease: a User-Centered Approach", journal = j-TOSEM, volume = "35", number = "2", pages = "54:1--54:57", month = feb, year = "2026", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3731750", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Feb 3 06:21:48 MST 2026", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Mobile Health (mHealth) applications have demonstrated considerable potential in supporting chronic disease self-management; however, they remain underutilized due to low engagement, limited accessibility, and poor long-term adherence. These issues are \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "54", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Stalnaker:2026:DPL, author = "Trevor Stalnaker and Nathan Wintersgill and Oscar Chaparro and Laura A. Heymann and Massimiliano {Di Penta} and Daniel M. German and Denys Poshyvanyk", title = "Developer Perspectives on Licensing and Copyright Issues Arising from Generative {AI} for Software Development", journal = j-TOSEM, volume = "35", number = "2", pages = "55:1--55:39", month = feb, year = "2026", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3743133", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Feb 3 06:21:48 MST 2026", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Despite the utility that Generative AI (GenAI) tools provide for tasks such as writing code, the use of these tools raises important legal questions and potential risks, particularly those associated with copyright law. As lawmakers and regulators \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "55", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Anik:2026:PAC, author = "Sheik Murad Hassan Anik and Xinghua Gao and Hao Zhong and Xiaoyin Wang and Na Meng", title = "Programming of Automation Configuration in Smart Home Systems: Challenges and Opportunities", journal = j-TOSEM, volume = "35", number = "2", pages = "56:1--56:25", month = feb, year = "2026", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3731450", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Feb 3 06:21:48 MST 2026", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "As the innovation of smart devices and internet-of-things (IoT), smart homes have become prevalent. People tend to transform residences into smart homes by customizing off-the-shelf smart home platforms, instead of creating IoT systems from scratch. \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "56", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Ghaleb:2026:CCC, author = "Taher A. Ghaleb and Osamah Abduljalil and Safwat Hassan", title = "{CI\slash CD} Configuration Practices in Open Source {Android} Apps: an Empirical Study", journal = j-TOSEM, volume = "35", number = "2", pages = "57:1--57:40", month = feb, year = "2026", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3736758", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Feb 3 06:21:48 MST 2026", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Continuous Integration and Continuous Delivery (CI/CD) is a well-established practice that automatically builds, tests, packages, and deploys software systems. To adopt CI/CD, software developers need to configure their projects using dedicated YML \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "57", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Jiang:2026:SLL, author = "Juyong Jiang and Fan Wang and Jiasi Shen and Sungju Kim and Sunghun Kim", title = "A Survey on Large Language Models for Code Generation", journal = j-TOSEM, volume = "35", number = "2", pages = "58:1--58:72", month = feb, year = "2026", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3747588", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Feb 3 06:21:48 MST 2026", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Large Language Models (LLMs) have garnered remarkable advancements across diverse code-related tasks, known as Code LLMs, particularly in code generation that generates source code with LLM from natural language descriptions. This burgeoning field has \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "58", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Wan:2026:KAT, author = "Chengcheng Wan and Shicheng Liu and Sophie Xie and Yuhan Liu and Michael Maire and Henry Hoffmann and Shan Lu", title = "{Keeper}: Automated Testing and Fixing of Machine Learning Software --- {RCR} Report", journal = j-TOSEM, volume = "35", number = "2", pages = "59:1--59:5", month = feb, year = "2026", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3737284", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Feb 3 06:21:48 MST 2026", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "This artifact aims to provide source code, benchmark suite, results, and materials used in our study ``Keeper: Automated Testing and Fixing of Machine Learning Software'' [ 3 ]. We developed an automated testing and fixing tool Keeper and its IDE plugin for \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "59", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Huang:2026:AAT, author = "Yuheng Huang and Jiayang Song and Qiang Hu and Felix Juefei-Xu and Lei Ma", title = "{AcTracer}: Active Testing of Large Language Model via Multi-Stage Sampling", journal = j-TOSEM, volume = "35", number = "3", pages = "60:1--60:30", month = mar, year = "2026", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3744340", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Mar 17 15:26:53 MDT 2026", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Performance evaluation plays a crucial role in the development lifecycle of large language models (LLMs). It estimates the model's capability, elucidates behavior characteristics, and facilitates the identification of potential issues and limitations, \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "60", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Luo:2026:WFT, author = "Wenqiang Luo and Jacky Wai Keung and Boyang Yang and He Ye and Claire {Le Goues} and Tegawend{\'e} F. Bissyand{\'e} and Haoye Tian and Bach Le", title = "When Fine-Tuning {LLMs} Meets Data Privacy: an Empirical Study of Federated Learning in {LLM}-Based Program Repair", journal = j-TOSEM, volume = "35", number = "3", pages = "61:1--61:46", month = mar, year = "2026", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3733599", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Mar 17 15:26:53 MDT 2026", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Software systems have been evolving rapidly and inevitably introducing bugs at an increasing rate, leading to significant maintenance costs. While large language models (LLMs) have demonstrated remarkable potential in enhancing software development and \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "61", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Akli:2026:AAA, author = "Amal Akli and Maxime Cordy and Mike Papadakis and Yves {Le Traon}", title = "{AutoAdapt}: On the Application of {AutoML} for Parameter-Efficient Fine-Tuning of Pre-Trained Code Models", journal = j-TOSEM, volume = "35", number = "3", pages = "62:1--62:31", month = mar, year = "2026", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3734867", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Mar 17 15:26:53 MDT 2026", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Large Language Models (LLMs) have demonstrated their ability to solve tasks across various domains, including software engineering. However, their extensive number of parameters makes full fine-tuning computationally prohibitive. While Parameter-. \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "62", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Liu:2026:LCR, author = "Zhijie Liu and Yutian Tang and Meiyun Li and Xin Jin and Yunfei Long and Liang Feng Zhang and Xiapu Luo", title = "{LLM-CompDroid}: Repairing Configuration Compatibility Bugs in {Android} Apps with Pre-trained Large Language Models", journal = j-TOSEM, volume = "35", number = "3", pages = "63:1--63:32", month = mar, year = "2026", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3736406", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Mar 17 15:26:53 MDT 2026", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "XML configurations are integral to the Android development framework, particularly in the realm of UI display. However, these configurations can introduce compatibility issues (bugs), resulting in divergent visual outcomes and system crashes across \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "63", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Borovits:2026:ADS, author = "Nemania Borovits and Gianluigi Bardelloni and Hossein Hashemi and Masoom Tulsiani and Damian Andrew Tamburri and Willem-Jan van den Heuvel", title = "Addressing Data Scarcity with Synthetic Data: a Secure and {GDPR}-Compliant Cloud-Based Platform", journal = j-TOSEM, volume = "35", number = "3", pages = "64:1--64:50", month = mar, year = "2026", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3732937", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Mar 17 15:26:53 MDT 2026", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "This study presents a cloud-based platform for synthetic data generation, validation, and evaluation, developed to address data scarcity in the telecommunications sector while ensuring compliance with the General Data Protection Regulation (GDPR). In \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "64", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Wan:2026:DYN, author = "Yao Wan and Guanghua Wan and Shijie Zhang and Hongyu Zhang and Yulei Sui and Pan Zhou and Hai Jin and Lichao Sun", title = "Does Your Neural Code Completion Model Use My Code? {A} Membership Inference Approach", journal = j-TOSEM, volume = "35", number = "3", pages = "65:1--65:24", month = mar, year = "2026", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3742785", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Mar 17 15:26:53 MDT 2026", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Recent years have witnessed significant progress in developing deep learning-based models for automated code completion. Examples of such models include CodeGPT and StarCoder. These models are typically trained from a large amount of source code \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "65", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Zhang:2026:FRF, author = "Peng Zhang and Mike Papadakis and Yuming Zhou", title = "{FuMi}: a Runtime Fuzz-based Machine Learning Precision Measurement and Testing Framework", journal = j-TOSEM, volume = "35", number = "3", pages = "66:1--66:24", month = mar, year = "2026", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3734866", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Mar 17 15:26:53 MDT 2026", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "The rapid evolution of machine learning model training has outpaced the development of corresponding measurement and testing tools, leading to two significant challenges. Firstly, developers of deep learning frameworks struggle to identify operators that \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "66", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Koyuncu:2026:EFG, author = "Anil Koyuncu", title = "Exploring Fine-Grained Bug Report Categorization with Large Language Models and Prompt Engineering: an Empirical Study", journal = j-TOSEM, volume = "35", number = "3", pages = "67:1--67:47", month = mar, year = "2026", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3736408", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Mar 17 15:26:53 MDT 2026", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Accurate classification of issues is essential for effective project management and timely responses, as the volume of issue reports continues to grow. Manual classification is labor-intensive and error-prone, necessitating automated solutions. While \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "67", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Weyssow:2026:CLJ, author = "Martin Weyssow and Aton Kamanda and Xin Zhou and Houari Sahraoui", title = "{CodeUltraFeedback}: an {LLM}-as-a-Judge Dataset for Aligning Large Language Models to Coding Preferences", journal = j-TOSEM, volume = "35", number = "3", pages = "68:1--68:36", month = mar, year = "2026", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3736407", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Mar 17 15:26:53 MDT 2026", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Evaluating the alignment of large language models (LLMs) with user-defined coding preferences is a challenging endeavor that requires a deep assessment of LLMs' outputs. Existing methods and benchmarks rely primarily on automated metrics and static \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "68", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Sha:2026:HRD, author = "Zihan Sha and Hui Shu and Hao Wang and Zeyu Gao and Yang Lan and Chao Zhang", title = "{HyRES}: Recovering Data Structures in Binaries via Semantic Enhanced Hybrid Reasoning", journal = j-TOSEM, volume = "35", number = "3", pages = "69:1--69:28", month = mar, year = "2026", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3736719", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Mar 17 15:26:53 MDT 2026", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Binary reverse engineering is pivotal in the realm of cybersecurity, enabling critical applications such as malware analysis, legacy code hardening, and vulnerability detection. However, the challenge of recovering structural information from binaries, \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "69", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Tian:2026:EFT, author = "Zhao Tian and Minghua Ma and Max Hort and Federica Sarro and Hongyu Zhang and Junjie Chen", title = "Enhanced Fairness Testing via Generating Effective Initial Individual Discriminatory Instances", journal = j-TOSEM, volume = "35", number = "3", pages = "70:1--70:23", month = mar, year = "2026", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3737697", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Mar 17 15:26:53 MDT 2026", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Fairness testing aims at mitigating unintended discrimination in the decision-making process of data-driven AI systems. Individual discrimination may occur when an AI model makes different decisions for two distinct individuals who are distinguishable \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "70", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Zhu:2026:IPS, author = "Shunkai Zhu and Jun Sun and Jingyi Wang and Zhenbang Chen and Peng Cheng", title = "Integrating Path Selection for Symbolic Execution and Variable Selection for Constraint Solving", journal = j-TOSEM, volume = "35", number = "3", pages = "71:1--71:28", month = mar, year = "2026", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3735552", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Mar 17 15:26:53 MDT 2026", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Symbolic execution is a powerful technique that can accurately synthesize program inputs for program testing through constraint solving. Applying symbolic execution effectively means that we must solve two searching problems efficiently. One is to search \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "71", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Peldszus:2026:TMI, author = "Sven Peldszus and Katharina Gro{\ss}er and Marco Konersmann and Wasja Brunotte and Maike Ahrens and Kurt Schneider and Jan J{\"u}rjens", title = "Too Many Issues: Automatically Prioritizing Analyzer Findings by Tracing Security Importance", journal = j-TOSEM, volume = "35", number = "3", pages = "72:1--72:41", month = mar, year = "2026", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3744708", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Mar 17 15:26:53 MDT 2026", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Code-based analyzers often find too many potentially security-related issues to address them all. Therefore, issues likely to lead to vulnerabilities should be fixed first. Such prioritization requires project-specific knowledge, such as quality \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "72", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Liu:2026:JES, author = "Chenxu Liu and Junheng Wang and Wei Yang and Ying Zhang and Tao Xie", title = "Judge: Effective State Abstraction for Guiding Automated {Web} {GUI} Testing", journal = j-TOSEM, volume = "35", number = "3", pages = "73:1--73:40", month = mar, year = "2026", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3736162", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Mar 17 15:26:53 MDT 2026", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Automated web GUI testing approaches aim to maximize the code coverage of a web app within a specific time budget. However, due to the highly dynamic characteristics of web apps, testing approaches often get stuck in loops or repeatedly explore the same \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "73", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Ferrando:2026:RVR, author = "Angelo Ferrando and Vadim Malvone", title = "Runtime Verification via Rational Monitor with Imperfect Information", journal = j-TOSEM, volume = "35", number = "3", pages = "74:1--74:29", month = mar, year = "2026", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3735130", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Mar 17 15:26:53 MDT 2026", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Trusting software systems, particularly autonomous ones, is challenging. To address this, formal verification techniques can ensure these systems behave as expected. Runtime Verification (RV) is a leading, lightweight method for verifying system \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "74", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Lin:2026:APE, author = "Peihong Lin and Pengfei Wang and Xu Zhou and Wei Xie and Gen Zhang and Kai Lu", title = "Not All Paths Are Equal: Multi-path Optimization for Directed Hybrid Fuzzing", journal = j-TOSEM, volume = "35", number = "3", pages = "75:1--75:29", month = mar, year = "2026", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3735555", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Mar 17 15:26:53 MDT 2026", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Directed Grey-Box Fuzzing (DGF) can improve bug exposure efficiency by stressing bug-prone areas. Recent studies have modeled DGF as the problem of finding and optimizing paths to reach target sites. However, they still face the `` multi-path '' challenge. \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "75", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Kummita:2026:VTT, author = "Sriteja Kummita and Miao Miao and Eric Bodden and Shiyi Wei", title = "Visualization Task Taxonomy to Understand the Fuzzing Internals", journal = j-TOSEM, volume = "35", number = "3", pages = "76:1--76:27", month = mar, year = "2026", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3718346", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Mar 17 15:26:53 MDT 2026", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Greybox fuzzing is used extensively in research and practice. There are umpteen publications that improve greybox fuzzing. However, to what extent do these improvements affect the internal components or internals of a given fuzzer is not yet understood \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "76", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Li:2026:LLM, author = "Tao Li and Chenhui Cui and Rubing Huang and Dave Towey and Lei Ma", title = "Large Language Models for Automated {Web}-Form-Test Generation: an Empirical Study", journal = j-TOSEM, volume = "35", number = "3", pages = "77:1--77:37", month = mar, year = "2026", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3735553", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Mar 17 15:26:53 MDT 2026", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Testing web forms is an essential activity for ensuring the quality of web applications. It typically involves evaluating the interactions between users and forms. Automated test-case generation remains a challenge for web-form testing: Due to the \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "77", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Shrestha:2026:NCI, author = "Grishma Shrestha and Shristi Shrestha and Anas Mahmoud", title = "No Country for Indie Developers: a Study of {Google Play}'s Closed Testing Requirements for New Personal Developer Accounts", journal = j-TOSEM, volume = "35", number = "3", pages = "78:1--78:21", month = mar, year = "2026", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3736578", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Mar 17 15:26:53 MDT 2026", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "In November 2023, Google Play introduced new closed testing requirements for apps submitted by developers operating with personal accounts, or indie app developers. These requirements mandate that at least 20 testers must remain opted-in (use the app) \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "78", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Prasetya:2026:PSP, author = "I. S. W. B. Prasetya and Mehdi Dastani and Rui Prada and Tanja E. J. Vos and Frank Dignum and Fitsum Kifetew and Guido Mintjes and Samira Shirzadehhajimahmood and Saba Gholizadeh Ansari", title = "Programming Smart Playtesting", journal = j-TOSEM, volume = "35", number = "3", pages = "79:1--79:47", month = mar, year = "2026", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3742473", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Mar 17 15:26:53 MDT 2026", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Until recently the game industry heavily relied on manual playtesting to test the games it produces. Even if the benefits of introducing automated testing are acknowledged, it is rarely done in practice. Some of the main hurdles include the lack of \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "79", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Xu:2026:MVH, author = "Xiong Xu and Ehsan Ahmad and Shuling Wang and Xiangyu Jin and Bohua Zhan and Naijun Zhan", title = "Modeling and Verification of Hybrid Systems by Extending {AADL}", journal = j-TOSEM, volume = "35", number = "3", pages = "80:1--80:51", month = mar, year = "2026", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3737698", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Mar 17 15:26:53 MDT 2026", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "System-level design, and dependability prediction of safety-critical systems demand integration of architectural and analysis artifacts in a single development environment. Hybrid systems, with mutual dependencies and extensive interactions between the \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "80", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Pan:2026:SBS, author = "Qi Pan and Tiexin Wang and Jianwei Ma and Paolo Arcaini and Tao Yue", title = "Simulation-based Safety Assessment of Vehicle Characteristics Variations in Autonomous Driving Systems", journal = j-TOSEM, volume = "35", number = "3", pages = "81:1--81:30", month = mar, year = "2026", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3743673", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Mar 17 15:26:53 MDT 2026", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Autonomous driving systems (ADSs) must be sufficiently tested to ensure their safety. Though various ADS testing methods have shown promising results, they are limited to a fixed vehicle characteristics setting (VCS). The impact of variations in vehicle \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "81", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Grandel:2026:CEG, author = "Skyler Grandel and Scott Thomas Andersen and Yu Huang and Kevin Leach", title = "{ComCat}: Expertise-Guided Context Generation to Enhance Code Comprehension", journal = j-TOSEM, volume = "35", number = "3", pages = "82:1--82:30", month = mar, year = "2026", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3742475", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Mar 17 15:26:53 MDT 2026", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Software maintenance constitutes a substantial portion of the total lifetime costs of software, with a significant portion attributed to code comprehension. Software comprehension is eased by documentation such as comments that summarize and explain \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "82", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Bergum:2026:IBN, author = "Annabelle Bergum and Norman Peitek and Maurice Rekrut and Janet Siegmund and Sven Apel", title = "On the Influence of the Baseline in Neuroimaging Experiments on Program Comprehension", journal = j-TOSEM, volume = "35", number = "3", pages = "83:1--83:27", month = mar, year = "2026", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3744739", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Mar 17 15:26:53 MDT 2026", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Background: Neuroimaging methods have been proved insightful in program-comprehension research. A key problem is that different baselines have been used in different experiments. A baseline is a task during which the ``normal'' brain activation is captured \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "83", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Tang:2026:PTC, author = "Hanlin Tang and Yanjie Jiang and Yuxia Zhang and Nan Niu and Hui Liu", title = "{POS} Tagging on Code Identifiers: How Far Are We?", journal = j-TOSEM, volume = "35", number = "3", pages = "84:1--84:33", month = mar, year = "2026", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3744919", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Mar 17 15:26:53 MDT 2026", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Part-of-Speech (POS) tags are natural attributes of words in natural languages, and they are fundamental for natural language analysis. Many automated approaches have been proposed to tag natural language texts. Identifiers in source code have POS tags \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "84", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Liu:2026:UOS, author = "Jiawen Liu and Haoxiang Zhang and Ying Zou", title = "Understanding Open Source Contributor Profiles in Popular Machine Learning Libraries", journal = j-TOSEM, volume = "35", number = "3", pages = "85:1--85:59", month = mar, year = "2026", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3747347", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Mar 17 15:26:53 MDT 2026", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "With the increasing popularity of machine learning (ML), many open source software (OSS) contributors are attracted to developing and adopting ML approaches. Comprehensive understanding of ML contributors is crucial for successful ML OSS development and \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "85", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{She:2026:PLM, author = "Xinyu She and Yue Liu and Yanjie Zhao and Yiling He and Li Li and Chakkrit Tantithamthavorn and Zhan Qin and Haoyu Wang", title = "Pitfalls in Language Models for Code Intelligence: a Taxonomy and Survey", journal = j-TOSEM, volume = "35", number = "3", pages = "86:1--86:42", month = mar, year = "2026", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3748647", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Mar 17 15:26:53 MDT 2026", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Modern Language Models (LMs) have been successfully employed in source code generation and understanding, leading to a significant increase in research focused on learning-based code intelligence, such as automated bug repair and test case generation. \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "86", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Kuiter:2026:HCLb, author = "Elias Kuiter and Chico Sundermann and Thomas Th{\"u}m and Tobias He{\ss} and Sebastian Krieter and Gunter Saake", title = "How Configurable Is the {Linux} Kernel? {Analyzing} Two Decades of Feature-Model History --- {RCR} Report", journal = j-TOSEM, volume = "35", number = "3", pages = "87:1--87:4", month = mar, year = "2026", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3764666", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Mar 17 15:26:53 MDT 2026", bibsource = "https://www.math.utah.edu/pub/tex/bib/linux.bib; https://www.math.utah.edu/pub/tex/bib/tosem.bib; https://www.math.utah.edu/pub/tex/bib/unix.bib", note = "See \cite{Kuiter:2026:HCLa}.", abstract = "This is the RCR report accompanying our TOSEM'25 paper How Configurable Is the Linux Kernel? Analyzing Two Decades of Feature-Model History. In this report, we bundle all data relevant to our paper for the purpose of reproducibility and long-term archival. This includes the feature-model extraction tool torte, as well as a comprehensive feature-model dataset and experimental results.", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "87", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Li:2026:EDT, author = "Meiziniu Li and Dongze Li and Jianmeng Liu and Jialun Cao and Yongqiang Tian and Shing-Chi Cheung", title = "Enhancing Differential Testing with {LLMs} for Testing Deep Learning Libraries", journal = j-TOSEM, volume = "35", number = "4", pages = "88:1--88:39", month = apr, year = "2026", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3735637", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sat Mar 28 08:19:00 MDT 2026", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Differential testing offers a promising strategy to alleviate the test oracle problem by comparing the test results between alternative implementations. However, existing differential testing techniques for deep learning (DL) libraries are limited by the \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "88", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Chen:2026:NSR, author = "Junkai Chen and Zhenhao Li and Xing Hu and Xin Xia", title = "{NLPerturbator}: Studying the Robustness of Code {LLMs} to Natural Language Variations", journal = j-TOSEM, volume = "35", number = "4", pages = "89:1--89:20", month = apr, year = "2026", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3745764", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sat Mar 28 08:19:00 MDT 2026", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Large language models achieve promising results in code generation based on a given natural language description. They have been integrated into open source projects and commercial products to facilitate daily coding activities. The natural language \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "89", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Yu:2026:FDB, author = "Xu Yu and Jiaqi Yan and Qinqin Gao and Qinglong Peng and Bin Yu and Junwei Du and Ying Xing and Dunwei Gong", title = "Feature Disentanglement-Based Heterogeneous Defect Prediction", journal = j-TOSEM, volume = "35", number = "4", pages = "90:1--90:35", month = apr, year = "2026", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3742474", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sat Mar 28 08:19:00 MDT 2026", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Cross-Project Defect Prediction (CPDP) utilizes the existing labeled data in the source project to assist with the prediction of unlabeled projects in the target dataset, which effectively improves the prediction performance and has become a research \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "90", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Hrusto:2026:MDA, author = "Adha Hrusto and Nauman bin Ali and Emelie Engstr{\"o}m and Yuqing Wang", title = "Monitoring Data for Anomaly Detection in Cloud-Based Systems: a Systematic Mapping Study", journal = j-TOSEM, volume = "35", number = "4", pages = "91:1--91:36", month = apr, year = "2026", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3744556", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sat Mar 28 08:19:00 MDT 2026", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Context: Anomaly detection is crucial for maintaining cloud-based software systems, as it enables early identification and resolution of unexpected failures. Given rapid and significant advances in the anomaly detection domain and the complexity of its \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "91", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Zhang:2026:AUT, author = "Junwei Zhang and Xing Hu and Xin Xia and Shing-Chi Cheung and Shanping Li", title = "Automated Unit Test Generation via Chain-of-Thought Prompt and Reinforcement Learning from Coverage Feedback", journal = j-TOSEM, volume = "35", number = "4", pages = "92:1--92:30", month = apr, year = "2026", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3745765", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sat Mar 28 08:19:00 MDT 2026", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Recently, Large Language Models (LLMs) have shown promising results in code generation, and several automated test generation approaches based on LLMs have been proposed. Although these approaches achieve promising performance, they suffer from two \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "92", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Liu:2026:ADS, author = "Chunhong Liu and Zihang Sang and Li Duan and Jingxiong Wang and Wei Ni and Wei Wang", title = "Anomaly Detection Services for Blockchain Smart Contracts with Unknown Vulnerabilities", journal = j-TOSEM, volume = "35", number = "4", pages = "93:1--93:28", month = apr, year = "2026", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3744709", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sat Mar 28 08:19:00 MDT 2026", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Security vulnerabilities in smart contracts can have severe economic consequences. Existing smart contract vulnerability detection methods rely primarily on rigid rules defined by experts and have difficulty in detecting unknown vulnerabilities. This \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "93", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Assi:2026:LCL, author = "Maram Assi and Safwat Hassan and Ying Zou", title = "{LLM-Cure}: {LLM}-Based Competitor User Review Analysis for Feature Enhancement", journal = j-TOSEM, volume = "35", number = "4", pages = "94:1--94:25", month = apr, year = "2026", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3744644", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sat Mar 28 08:19:00 MDT 2026", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "The exponential growth of the mobile app market underscores the importance of constant innovation and rapid response to user demands. As user satisfaction is paramount to the success of a mobile application (app), developers typically rely on user \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "94", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Yitagesu:2026:SLR, author = "Sofonias Yitagesu and Zhenchang Xing and Xiaowang Zhang and Zhiyong Feng and Tingting Bi and Linyi Han and Xiaohong Li", title = "Systematic Literature Review on Software Security Vulnerability Information Extraction", journal = j-TOSEM, volume = "35", number = "4", pages = "95:1--95:52", month = apr, year = "2026", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3745026", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sat Mar 28 08:19:00 MDT 2026", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Background. Software vulnerabilities are increasing in complexity and scale, posing great security risks to many software systems. Extracting information about software vulnerabilities is a critical area of research that aims to identify and create a \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "95", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Chafik:2026:TAD, author = "Salmane Chafik and Saad Ezzini and Ismail Berrada", title = "Towards Automating Domain-Specific Data Generation for Text-to-{SQL}: a Comprehensive Approach", journal = j-TOSEM, volume = "35", number = "4", pages = "96:1--96:27", month = apr, year = "2026", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3746226", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sat Mar 28 08:19:00 MDT 2026", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "As software systems increasingly rely on natural language interfaces, ensuring the reliability of these systems is crucial. One critical component is the ability to accurately translate natural language queries into corresponding SQL queries, a field \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "96", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Wu:2026:EUL, author = "Chen Wu and Shikai Guo and Hui Li and Chenchen Li and Rong Chen", title = "Estimating Uncertainty in Line-Level Defect Prediction via Perceptual Borderline Oversampling", journal = j-TOSEM, volume = "35", number = "4", pages = "97:1--97:38", month = apr, year = "2026", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3746225", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sat Mar 28 08:19:00 MDT 2026", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Software defect prediction aims to identify potentially defective software modules using various techniques, while fine-grained line-level defect prediction can pinpoint defective lines of code. This helps developers promptly discover and fix errors, \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "97", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Sun:2026:ADD, author = "Yanchun Sun and Jiawei Wu and Xiaohan Zhao and Haizhou Xu and Ye Zhu and Zhenpeng Chen and Sihan Wang and Huizhen Jiang and Gang Huang", title = "Automatically Deriving Developers' Technical Expertise from the {GitHub} Social Network", journal = j-TOSEM, volume = "35", number = "4", pages = "98:1--98:33", month = apr, year = "2026", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3746451", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sat Mar 28 08:19:00 MDT 2026", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Developers' technical expertise is crucial for numerous tasks within open-source communities, such as identifying suitable developers and maintainers. Despite its significance, GitHub, the world's largest open-source code hosting platform, does not \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "98", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Guo:2026:EIS, author = "Jiawei Guo and Haipeng Cai", title = "{EvoTaint}: Incremental Static {Taint} Analysis of Evolving {Android} Apps", journal = j-TOSEM, volume = "35", number = "4", pages = "99:1--99:46", month = apr, year = "2026", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3743132", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sat Mar 28 08:19:00 MDT 2026", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "In the last decade, Android applications have emerged as a primary interface in consumer technology. With approximately 2.5 billion mobile devices running Android globally, security threats to the Android ecosystem due to vulnerabilities in it become \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "99", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Zhao:2026:FMD, author = "Beibei Zhao and Wenjie Feng and Qingli Guo and Yingli Sun and Fangming Gu and Bolun Zhang and Xiaorui Gong and Hong Li", title = "{FAVDisco}: Modeling and Discovering File Access Vulnerabilities", journal = j-TOSEM, volume = "35", number = "4", pages = "100:1--100:33", month = apr, year = "2026", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3744901", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sat Mar 28 08:19:00 MDT 2026", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "File access vulnerabilities (FAVs) are one type of security weakness arising from adversary manipulations of file access inputs, posing significant threats to system integrity. Despite their prevalence, FAVs remain underexplored due to limited \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "100", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Jia:2026:ESA, author = "Bin Jia and Xiaosong Zhang and Xinze Zhang and Ting Chen and Wenjuan Lian", title = "Enhancing Security and Acuity of Smart Contract Vulnerability Detection Based on Federated Learning and {BiLSTM}-Attention", journal = j-TOSEM, volume = "35", number = "4", pages = "101:1--101:24", month = apr, year = "2026", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3746061", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sat Mar 28 08:19:00 MDT 2026", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Over the course of more than a decade, blockchain technology has made significant advancements and found applications in various domains. Smart contract, as an integral component of blockchain technology, plays a pivotal role in ensuring the security and \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "101", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Li:2026:IIC, author = "Qingyuan Li and Zhixin Yin and Yaopeng Yang and Chuanyi Li and Zongwen Shen and Jidong Ge and Wenkang Zhong and Bin Luo and Vincent Ng", title = "{IMPACT}: Identifying and Classifying Multiple Sourced and Categorized Self-Admitted Technical Debts", journal = j-TOSEM, volume = "35", number = "4", pages = "102:1--102:36", month = apr, year = "2026", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3747180", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sat Mar 28 08:19:00 MDT 2026", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Self-Admitted Technical Debt (SATD) refers to sub-optimal solutions deliberately introduced to accelerate the software development process, often at the expense of software maintainability and sustainability. Therefore, timely identification and \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "102", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Kan:2026:SAA, author = "Shuangxiang Kan and Yuekang Li and Weigang He and Zhenchang Xing and Liming Zhu and Yulei Sui", title = "{Spectre}: Automated Aliasing Specification Generation for Library {APIs} with Fuzzing", journal = j-TOSEM, volume = "35", number = "4", pages = "103:1--103:28", month = apr, year = "2026", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3725811", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sat Mar 28 08:19:00 MDT 2026", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Static program analysis of real-world software that integrates numerous library Application Programming Interfaces (APIs) faces significant challenges due to inaccessible or highly complex source code. A common workaround is to use specifications that \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "103", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Guo:2026:WBT, author = "Hongjing Guo and Chuanqi Tao and Zhiqiu Huang and Weiqin Zou", title = "White-Box Test Input Generation for Enhancing Deep Neural Network Models through Suspicious Neuron Awareness", journal = j-TOSEM, volume = "35", number = "4", pages = "104:1--104:45", month = apr, year = "2026", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3736305", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sat Mar 28 08:19:00 MDT 2026", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Deep Neural Network (DNN) testing has emerged as an effective way of uncovering erroneous behaviors in DNN models and further enhancing their performance. Research on test input generation has gained much attention from both researchers and practitioners,. \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "104", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Shevrin:2026:WPA, author = "Ilia Shevrin and Shahar Maoz", title = "What Properties Affect {Boolean} Formula Comprehension in Formal Specifications?", journal = j-TOSEM, volume = "35", number = "4", pages = "105:1--105:27", month = apr, year = "2026", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3744557", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sat Mar 28 08:19:00 MDT 2026", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Writing formal specifications is an important yet challenging aspect of software engineering. Correct specifications facilitate verification efforts and reduce bugs. However, the declarative nature of specifications differs from the imperative approach \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "105", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Callaghan:2026:FIS, author = "Dylan Callaghan and Bernd Fischer", title = "{FLITSR}: Improved Spectrum-Based Localization of Multiple Faults by Iterative Test Suite Reduction", journal = j-TOSEM, volume = "35", number = "4", pages = "106:1--106:49", month = apr, year = "2026", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3745027", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sat Mar 28 08:19:00 MDT 2026", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Spectrum-based fault localization (SBFL) works well for single-fault programs but its accuracy decays for increasing fault numbers. We present FLITSR (Fault Localization by Iterative Test Suite Reduction), a novel SBFL approach that improves the \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "106", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Ciccone:2026:ANS, author = "Luca Ciccone and Francesco Dagnino and Angelo Ferrando", title = "Ain't No Stopping Us Monitoring Now", journal = j-TOSEM, volume = "35", number = "4", pages = "107:1--107:33", month = apr, year = "2026", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3744241", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sat Mar 28 08:19:00 MDT 2026", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Not all properties are monitorable. This is a well-known fact, and it means there exist properties that cannot be fully verified at runtime. However, given a non-monitorable property, a monitor can still be synthesised, but it could end up in a state \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "107", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Yang:2026:SSF, author = "Huiwen Yang and Yu Zhou and Taolue Chen", title = "{SimADFuzz}: Simulation-Feedback Fuzz Testing for Autonomous Driving Systems", journal = j-TOSEM, volume = "35", number = "4", pages = "108:1--108:32", month = apr, year = "2026", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3744242", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sat Mar 28 08:19:00 MDT 2026", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Autonomous driving systems (ADSs) have achieved remarkable progress in recent years. However, ensuring their safety and reliability remains a critical challenge due to the complexity and uncertainty of driving scenarios. In this article, we focus on \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "108", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Berger:2026:CBT, author = "Thorsten Berger and Wardah Mahmood and Ramzi Abu Zahra and Igor Vassilevski and Andreas Burger and Wenbin Ji and Micha{\l} Antkiewicz and Krzysztof Czarnecki", title = "Cost and Benefit of Tracing Features with Embedded Annotations", journal = j-TOSEM, volume = "35", number = "4", pages = "109:1--109:47", month = apr, year = "2026", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3746060", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sat Mar 28 08:19:00 MDT 2026", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Features are commonly used to describe the functional and non-functional characteristics of software. Especially agile development methods, such as SCRUM, FDD, or XP, use features to plan and manage software development. Features are often the main units \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "109", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Wen:2026:LBM, author = "Jinfeng Wen and Zhenpeng Chen and Zixi Zhu and Federica Sarro and Yi Liu and Haodi Ping and Shangguang Wang", title = "{LLM}-Based Misconfiguration Detection for {AWS} Serverless Computing", journal = j-TOSEM, volume = "35", number = "4", pages = "110:1--110:28", month = apr, year = "2026", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3745766", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sat Mar 28 08:19:00 MDT 2026", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Serverless computing is a popular cloud computing paradigm that enables developers to build applications at the function level, known as serverless applications. The Serverless Application Model (AWS SAM) is the most widely adopted configuration schema. \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "110", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Jin:2026:SAM, author = "Wuxia Jin and Mengjie Sun and Junhui Zhou and Jiaowei Shang and Zhenyu Huang and Ting Liu", title = "Software Architecture Matters: Challenges and Opportunities for {Android} Upgrade Conflicts in Practice", journal = j-TOSEM, volume = "35", number = "4", pages = "111:1--111:39", month = apr, year = "2026", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3744921", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sat Mar 28 08:19:00 MDT 2026", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Ever since its initial release in 2008, the Android OS has rapidly grown to become the world's most widely used mobile OS. Mobile vendors extend the Android Open Source Project (AOSP) led by Google to customize their own Android variants. With the AOSP \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "111", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Chaaben:2026:UDM, author = "Meriem {Ben Chaaben} and Lola Burgue{\~n}o and Istvan David and Houari Sahraoui", title = "On the Utility of Domain Modeling Assistance with Large Language Models", journal = j-TOSEM, volume = "35", number = "4", pages = "112:1--112:38", month = apr, year = "2026", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3744920", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sat Mar 28 08:19:00 MDT 2026", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Model-Driven Engineering (MDE) simplifies software development through abstraction, yet challenges such as time constraints, incomplete domain understanding, and adherence to syntactic constraints hinder the design process. This article presents a study \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "112", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Chen:2026:ELF, author = "Chung-Yang Chen and Jung-Chieh Lee", title = "The Effects of Learning from Failure and Team Cognitive Factors on Software Process Tailoring", journal = j-TOSEM, volume = "35", number = "4", pages = "113:1--113:40", month = apr, year = "2026", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3747179", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sat Mar 28 08:19:00 MDT 2026", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Software project teams often plan and replan their development processes to accommodate a project's particularities and volatility. This continual planning is called software process tailoring (SPT). In SPT, software teams often experiment with \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "113", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Khalfallah:2026:CHM, author = "Hela {Ben Khalfallah}", title = "Code Health Meter: a Quantitative and Graph-Theoretic Foundation for Automated Code Quality and Architecture Assessment", journal = j-TOSEM, volume = "35", number = "4", pages = "114:1--114:30", month = apr, year = "2026", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3737670", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sat Mar 28 08:19:00 MDT 2026", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "Quantifying code quality and architectural soundness remains a persistent challenge in modern software engineering. Existing tools often rely on isolated or superficial metrics, lacking architectural awareness and actionable insight. This article \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "114", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } @Article{Xiao:2026:FSF, author = "Shengping Xiao and Yongkang Li and Shufang Zhu and Jun Sun and Jianwen Li and Geguang Pu and Moshe Y. Vardi", title = "An On-the-Fly Synthesis Framework for {LTL} over Finite Traces", journal = j-TOSEM, volume = "35", number = "4", pages = "115:1--115:33", month = apr, year = "2026", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/3749101", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Sat Mar 28 08:19:00 MDT 2026", bibsource = "https://www.math.utah.edu/pub/tex/bib/tosem.bib", abstract = "We present an on-the-fly synthesis framework for Linear Temporal Logic over Finite Traces (LTL ${}_f $) based on top-down deterministic automata construction. Existing approaches rely on constructing a complete Deterministic Finite Automaton (DFA) \ldots{}", acknowledgement = ack-nhfb, ajournal = "ACM Trans. Softw. Eng. Methodol.", articleno = "115", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "https://dl.acm.org/loi/tosem", } %%% Check for truncated contents of last issue, due to partial delivery %%% of Web pages!