{"491561":{"#nid":"491561","#data":{"type":"event","title":"SCS Lecture - Making Software More Reliable by Uncovering Hidden Dependencies - Jonathan Bell, Columbia University","body":[{"value":"\u003Cp class=\u0022p1\u0022\u003EAbstract:\u003C\/p\u003E\u003Cp class=\u0022p1\u0022\u003E\u0026nbsp;\u003C\/p\u003E\u003Cp class=\u0022p1\u0022\u003EAs software grows in size and complexity, it also becomes more interdependent. Multiple internal components often share state and data. Whether these dependencies are intentional or not, I have found that their mismanagement often poses several challenges to testing. My research seeks to make it easier to create reliable software by making testing more efficient and more effective through explicit knowledge of these hidden dependencies.\u003C\/p\u003E\u003Cp class=\u0022p1\u0022\u003E\u0026nbsp;\u003C\/p\u003E\u003Cp class=\u0022p1\u0022\u003EThe first problem I address, reducing testing time, directly impacts the day-to-day work of every software developer, who are likely running tests daily if not more frequently on their code. Typical techniques for accelerating tests (like running only a subset of them, or running them in parallel) often can\u2019t be applied soundly, since there may be hidden dependencies between tests. I have built several systems, VMVM and ElectricTest, that detect different sorts of dependencies between tests and use that information to soundly reduce testing time by several orders of magnitude. To enable more broad use of general dependency information for testing and other analyses, I created Phosphor, the first and only portable and performant dynamic taint tracking system for the JVM. Towards making testing more effective, I created Pebbles, which makes it easy for developers to specify data-related test oracles by thinking in terms of high level objects.\u003C\/p\u003E\u003Cp class=\u0022p1\u0022\u003E\u0026nbsp;\u003C\/p\u003E\u003Cp class=\u0022p1\u0022\u003EBio:\u003C\/p\u003E\u003Cp class=\u0022p1\u0022\u003E\u0026nbsp;\u003C\/p\u003E\u003Cp class=\u0022p1\u0022\u003EJon is a final-year PhD candidate at Columbia University studying Software Engineering and Systems with Prof Gail Kaiser. His research interests mostly fall under the umbrella of Software Testing and Program Analysis. Jon\u0027s recent research in accelerating software testing has been recognized with an ACM SIGSOFT Distinguished Paper Award (ICSE \u002714), and has been the basis for an industrial collaboration with the bay-area software build acceleration company Electric Cloud. Jon actively participates in the artifact evaluation program committees of ISSTA and OOPSLA, and has served several years as the Student Volunteer chair for OOPSLA.\u003C\/p\u003E\u003Cp class=\u0022p1\u0022\u003E\u0026nbsp;\u003C\/p\u003E","summary":null,"format":"limited_html"}],"field_subtitle":"","field_summary":"","field_summary_sentence":[{"value":"SCS Lecture - Making Software More Reliable by Uncovering Hidden Dependencies - Jonathan Bell, Columbia University"}],"uid":"28150","created_gmt":"2016-01-27 12:45:10","changed_gmt":"2017-04-13 21:16:54","author":"Birney Robert","boilerplate_text":"","field_publication":"","field_article_url":"","field_event_time":{"event_time_start":"2016-02-09T10:00:00-05:00","event_time_end":"2016-02-09T11:00:00-05:00","event_time_end_last":"2016-02-09T11:00:00-05:00","gmt_time_start":"2016-02-09 15:00:00","gmt_time_end":"2016-02-09 16:00:00","gmt_time_end_last":"2016-02-09 16:00:00","rrule":null,"timezone":"America\/New_York"},"extras":[],"hg_media":{"491571":{"id":"491571","type":"image","title":"Jonathan Bell","body":null,"created":"1454009867","gmt_created":"2016-01-28 19:37:47","changed":"1475895248","gmt_changed":"2016-10-08 02:54:08","alt":"Jonathan Bell","file":{"fid":"204459","name":"picture_jon.jpg","image_path":"\/sites\/default\/files\/images\/picture_jon_0.jpg","image_full_path":"http:\/\/tlwarc.hg.gatech.edu\/\/sites\/default\/files\/images\/picture_jon_0.jpg","mime":"image\/jpeg","size":196976,"path_740":"http:\/\/tlwarc.hg.gatech.edu\/sites\/default\/files\/styles\/740xx_scale\/public\/images\/picture_jon_0.jpg?itok=DTxVU5b3"}}},"media_ids":["491571"],"groups":[{"id":"47223","name":"College of Computing"},{"id":"50875","name":"School of Computer Science"}],"categories":[],"keywords":[{"id":"654","name":"College of Computing"},{"id":"109","name":"Georgia Tech"},{"id":"168279","name":"Jonathan Bell"},{"id":"166941","name":"School of Computer Science"},{"id":"166940","name":"SCS"}],"core_research_areas":[],"news_room_topics":[],"event_categories":[{"id":"1795","name":"Seminar\/Lecture\/Colloquium"}],"invited_audience":[{"id":"78751","name":"Undergraduate students"},{"id":"78761","name":"Faculty\/Staff"},{"id":"174045","name":"Graduate students"}],"affiliations":[],"classification":[],"areas_of_expertise":[],"news_and_recent_appearances":[],"phone":[],"contact":[{"value":"\u003Cp\u003EFrancella M. Tonge\u003C\/p\u003E\u003Cp class=\u0022p1\u0022\u003E\u003Ca href=\u0022mailto:ftonge3@cc.gatech.edu\u0022\u003Eftonge3@cc.gatech.edu\u003C\/a\u003E\u003C\/p\u003E","format":"limited_html"}],"email":[],"slides":[],"orientation":[],"userdata":""}}}