{"122981":{"#nid":"122981","#data":{"type":"event","title":"Ph.D. Defense of Dissertation:  Raul Santelices","body":[{"value":"\u003Cp\u003EPh.D. Defense of Dissertation Announcement\u003Cbr \/\u003E--------------------------------------------------------------\u003Cbr \/\u003E\u003Cbr \/\u003ERaul Santelices\u003Cbr \/\u003ESchool of Computer Science, College of Computing Georgia Institute of Technology \u003Ca href=\u0022mailto:raul@cc.gatech.edu\u0022\u003Eraul@cc.gatech.edu\u003C\/a\u003E\u003Cbr \/\u003E\u003Cbr \/\u003ETitle:\u003Cstrong\u003E Change-effects Analysis for Effective Testing and Validation of Evolving Software\u003C\/strong\u003E\u003Cbr \/\u003E\u003Cbr \/\u003EDate: Wednesday, April 25, 2012\u003Cbr \/\u003ETime: 11:15am - 1:45pm, EST\u003Cbr \/\u003ELocation: KACB 3100\u003Cbr \/\u003E\u003Cbr \/\u003E\u003Cstrong\u003ECommittee:\u003C\/strong\u003E\u003C\/p\u003E\u003Cul\u003E\u003Cli\u003EDr. Mary Jean Harrold (Advisor, College of Computing, Georgia Tech)\u003C\/li\u003E\u003Cli\u003EDr. David Notkin (Computer Science and Engineering, University of Washington)\u003C\/li\u003E\u003Cli\u003EDr. Alessandro Orso (College of Computing, Georgia Tech)\u003C\/li\u003E\u003Cli\u003EDr. Santosh Pande (College of Computing, Georgia Tech)\u003C\/li\u003E\u003Cli\u003EDr. Spencer Rugaber (College of Computing, Georgia Tech)\u003C\/li\u003E\u003C\/ul\u003E\u003Cp\u003E\u003Cbr \/\u003E\u003Cstrong\u003EAbstract:\u003C\/strong\u003E\u003Cbr \/\u003EThe constant modification of software during its life cycle poses many challenges for developers and testers because changes might not behave as expected or may introduce erroneous side effects. For those reasons, it is of critical importance to analyze, test, and validate software every time it changes.\u003Cbr \/\u003E\u003Cbr \/\u003EThe most common method for validating modified software is regression testing, which identifies differences in the behavior of software caused by changes and determines the correctness of those differences. Most research to this date has focused on the efficiency of re-running existing test cases affected by changes during regression testing. However, little attention has been given to finding whether the test suite adequately tests the effects of changes (i.e., the behavior differences in the modified software) and which of those effects are missed during testing. In practice, it is necessary not only to re-run the test suite, but also to augment it to exercise the untested effects.\u003Cbr \/\u003E\u003Cbr \/\u003EThe thesis of this research is that the effects of changes on software behavior can be computed with unprecedented precision to help testers analyze the consequences of changes and augment test suites effectively. To demonstrate this thesis, this dissertation uses novel insights to introduce a fundamental understanding of how changes affect the behavior of software. Based on these foundations, the dissertation presents and studies new techniques that detect and use these effects in cost-effective ways. These techniques support test-suite augmentation by identifying the effects of individual changes that should be analyzed and tested, identifying the combined effects of multiple changes, and optimizing the computation of these effects.\u003Cbr \/\u003E\u003Cbr \/\u003EThis dissertation makes the following contributions to the fields of software engineering and program analysis:\u003C\/p\u003E\u003Col\u003E\u003Cli\u003EPrincipled foundations for describing precisely how changes in program code affect the behavior of modified software.\u003C\/li\u003E\u003Cli\u003EA new class of precise analyses, called change-effects analysis, that are based on these foundations and compute the effects that a change has or can have on the behavior of a program.\u003C\/li\u003E\u003Cli\u003EA new path-sensitive program analysis that speeds up change-effects analysis and potentially other important software-engineering techniques.\u003C\/li\u003E\u003Cli\u003ENew and cost-effective test-suite-augmentation approaches that, based on these analyses, compute and monitor testing requirements for changes.\u003C\/li\u003E\u003Cli\u003EA new technique, also based on these analyses, that determines whether changes interact in program executions. This technique indicates whether changes interfere unexpectedly before merging them or whether changes interact as expected during testing.\u003C\/li\u003E\u003Cli\u003EEmpirical evidence of the effectiveness of these techniques and the mechanisms for controlling their cost.\u003C\/li\u003E\u003C\/ol\u003E\u003Cp\u003E\u0026nbsp;\u003C\/p\u003E","summary":null,"format":"limited_html"}],"field_subtitle":"","field_summary":"","field_summary_sentence":[{"value":"Change-effects Analysis for Effective Testing and Validation of Evolving Software"}],"uid":"1","created_gmt":"2012-04-09 12:16:10","changed_gmt":"2016-10-08 01:58:41","author":"Jupiter","boilerplate_text":"","field_publication":"","field_article_url":"","field_event_time":{"event_time_start":"2012-04-25T16:15:00-04:00","event_time_end":"2012-04-25T18:45:00-04:00","event_time_end_last":"2012-04-25T18:45:00-04:00","gmt_time_start":"2012-04-25 20:15:00","gmt_time_end":"2012-04-25 22:45:00","gmt_time_end_last":"2012-04-25 22:45:00","rrule":null,"timezone":"America\/New_York"},"extras":[],"groups":[{"id":"47223","name":"College of Computing"},{"id":"50875","name":"School of Computer Science"}],"categories":[],"keywords":[],"core_research_areas":[],"news_room_topics":[],"event_categories":[],"invited_audience":[],"affiliations":[],"classification":[],"areas_of_expertise":[],"news_and_recent_appearances":[],"phone":[],"contact":[{"value":"\u003Cp\u003E\u003Ca href=\u0022mailto:raul@cc.gatech.edu\u0022\u003ERaul Santelices\u003C\/a\u003E\u003C\/p\u003E","format":"limited_html"}],"email":[],"slides":[],"orientation":[],"userdata":""}}}