OREGON STATE UNIVERSITY

You are here

To Merge or Not to Merge: Managing Software Families

KEC 1007
2014-03-10 15:45:00
Speaker Information
Julia Rubin
Ph.D. candidate
University of Toronto

Software surrounds us and drives our lives: most modern systems heavily rely on software. Managing the complexity of these large software systems is a challenging task. It is even more challenging for software product lines -- families of software variants with similar yet not identical functionality (think Samsung's Galaxy S line which includes over two dozen smartphone models, each with its own variation of software).

In the last two decades, numerous approaches have been proposed to help develop product lines in an efficient manner. Surprisingly, they are rarely used in practice. In this talk, we investigate reasons for such lack of adoption. We then propose an approach for improving existing practices that relies on a set of software analysis and transformation tasks.

We show that some of the required tasks are barely studied by existing works and look in detail into one of them: matching artifacts from multiple products (a.k.a. n-way match). We explain why the n-way match problem is NP-hard, explore possible approximate solutions, and propose our own heuristic n-way match algorithm that is superior to other practical approaches in terms of its accuracy. We conclude the talk by outlining a future research agenda.

Speaker Bio

Julia Rubin is a PhD candidate at the University of Toronto, Canada and a member of the Emerging Quality Technologies group in IBM Research - Haifa, Israel. Her research interests span a wide range of software engineering areas, including design, analysis, maintenance and evolution of large complex systems. Julia is also working on various aspects of software quality and, specifically, on the use of static and dynamic analysis techniques to ensure information security and privacy of mobile applications. Her most recent area of interest is secure-by-design development of mobile applications.

Julia serves on program committees of several major international conferences, such as FASE, RE, SPLC and ECMFA, and is a PC co-chair for both the SPLC'14 and ECMFA'14. She co-organized international workshops on modeling and software product line engineering, such as MOMPES@ASE and PLEASE@ICSE. Two of her papers received best paper awards in 2013. Julia has been elected an IEEE TCSE member-at-large for 2013-2015.