EAGER: Bio-inspired Assurance and Regression Testing to Secure Organic Programs
Iowa State University, Ames IA
Investigators
Abstract
Software Engineering needs to address an increasingly significant class of programs that are self-adaptive and self-healing. These programs sense changes to their environment and react by modifying configurations, libraries or program code. Furthermore, automated approaches for program repair and program transplantation change a program?s source code directly to fix, optimize or add new functionality. Together, self-modification provides continual availability in the presence of change and can harden a system against intruders. While this organic nature of self-modification is a powerful paradigm, the overall dependability and security of such programs is at risk. Prior test results or assurance cases developed to reason about their functionality, safety and security are invalid as soon as any adaptation occurs. Yet the time needed to run a full regression testing cycle, or to develop new evidence and arguments for an assurance case can take hours, days or weeks. This proposal explores the feasibility of reasoning dynamically and efficiently about the changes made to organic programs and their associated test suites and assurance cases during adaptation. Given that these programs mimic living systems, and many adaptations are already implemented with evolutionary algorithms, the proposed work draws inspiration from nature and uses bio-inspired techniques to achieve its goals. Both traditional functional faults as well as security vulnerabilities are targeted in this proposal, given the criticality of vulnerabilities in an online, unmonitored system. More specifically the proposal will first explore techniques to identify the evolution timeline for assurance, finding intervals at which re-validation must occur. Second, it will model interactions and test coverage in organic programs. Finally, it will use biologically inspired algorithms to select, order and generate tests for regression testing. The results of the research performed in this proposal will form the foundations for being able to validate the correctness and safety of organic programs over time. The broader impacts include co-mentoring undergraduate, inter-disciplinary teams to compete in the International Genetically Engineered Machine (iGEM) competition, and to build assurance cases for reasoning about the safety of their projects.
View original record on NSF Award Search →