Towards strengthening software library interfaces with granular and interactive type migrations
The interface boundaries of software projects are a crucial perimeter from both a design and security point of view. Design decisions of libraries will inadvertently affect client code which can neither legally nor technically change the library’s contract. Mistakes allowed by the interface design, such as argument selection defects, can only be caught with existing tools once made. This is made worse in C++, as functions may take parameters which types are implicitly convertible to one another. Instead, I proposed a proactive step to detect and improve when a library interface exhibits properties that may lead to inadvertent misuse. Actionable fixes for the reports are possible through an interactive type refactoring method. Existing refactorings for type migration required the new types and the migration process to be well-defined in advance; otherwise, the code might be changed to a non-compilable state.
This paper summarises my thesis proposal in which the problem of weak function interfaces is detected and solved by the Fictive Types method, which first “colours” the software project with new type information, deferring the complete rewrite once the required interface of the new type is fully explored.
Tue 16 MayDisplayed time zone: Hobart change
11:00 - 12:30 | |||
11:00 12mDoctoral symposium paper | Detecting Scattered and Tangled Quality Concerns in Code to Aid Maintenance and Evolution Tasks DS - Doctoral Symposium Rrezarta Krasniqi University of North Carolina at Charlotte | ||
11:12 12mDoctoral symposium paper | Automating Code Review DS - Doctoral Symposium Rosalia Tufano Università della Svizzera Italiana | ||
11:25 12mDoctoral symposium paper | Addressing Performance Regressions in DevOps: Can We Escape from System Performance Testing? DS - Doctoral Symposium Lizhi Liao Concordia University | ||
11:38 12mDoctoral symposium paper | Toward More Effective Deep Learning-based Automated Software Vulnerability Prediction, Classification, and Repair DS - Doctoral Symposium Michael Fu Monash University | ||
11:51 12mDoctoral symposium paper | Enhancing Deep Reinforcement Learning with Executable Specifications DS - Doctoral Symposium Raz Yerushalmi Weizmann | ||
12:04 12mDoctoral symposium paper | Toward Automated Tools to Support Ethical GUI Design DS - Doctoral Symposium S M Hasan Mansur George Mason University | ||
12:17 12mDoctoral symposium paper | Towards strengthening software library interfaces with granular and interactive type migrations DS - Doctoral Symposium Richárd Szalay Eötvös Loránd University, Faculty of Informatics, Department of Programming Languages and Compilers |