Skip to main content
notice

Seminar by Dr.Sarah Nadi (Technische Universität Darmstadt, Germany)

March 3, 2016
|


Speaker: Dr. Sarah Nadi
                Technische Universität Darmstadt, Germany

Title: From the Linux Kernel to Cryptography APIs: Supporting and Leveraging Software Product Lines

Date: Thursday, March 3rd, 2016

Time: 10:30-12pm

Place: EV2.184

ABSTRACT

Software has become increasingly pervasive in every aspect of our lives,
and a one size fits all strategy is no longer sustainable. The same
software system often needs to be customized to support a wide range of
hardware, improve performance, reduce memory footprints, or simply
satisfy different user needs. Software Product Lines (SPLs) provide a
systematic way of developing such highly configurable systems where
different, yet similar, products can be produced based on a given
feature selection. Variability models lie at the heart of SPLs and help
document the commonalities and differences between the supported
products, as well as the configuration constraints that dictate valid
feature combinations.

The first part of this talk will present automated techniques that
address several of the challenges faced in maintaining and creating
SPLs. In terms of maintenance support, I will show how configuration
knowledge from the build system can be used to detect inconsistencies
leading to variability anomalies. To support creating SPLs from existing
implementation artifacts, I will present an automated technique to
reverse-engineer configuration constraints that can later be used to
create variability models. I will discuss how these techniques have been
applied in the systems domain with a particular focus on the Linux
kernel, one of the largest open-source software systems with over 12,000
configurable options. The second part of the talk will show that concepts of
variability modeling and highly configurable software can also be
applied to other domains. Specifically, I will discuss how leveraging
these concepts in the cryptography domain can help application
developers write more secure software.

BIO

Sarah Nadi is a post-doctoral researcher at the Software Technology
Group (STG) at the Technische Universität Darmstadt in Germany. She
received both her MMath (2010) and PhD (2014) degrees from the
University of Waterloo, Canada. Her doctoral work, supported by an NSERC
Alexander Graham Bell Canada Graduate Scholarship, focused on detecting
variability anomalies in software product lines and reverse-engineering
configuration constraints. Her current research incorporates ideas from
highly configurable software into new domains such as cryptography. Her
research interests include providing automated support for developing
and maintaining highly configurable software, variability modeling, mining software
repositories, software evolution, and code recommender systems. For more
information about Sarah’s work, please visit her website
(http://www.sarahnadi.org).




Back to top

© Concordia University