AuthorsS. A. Safdar
TitleImproving Post-Deployment Configuration of Cyber- Physical Systems Using Machine Learning and Multi- Objective Search
AfilliationSoftware Engineering
Project(s)Zen-Configurator: Interactive and Optimal Configuration of Cyber Physical System Product Lines 
StatusPublished
Publication TypePhD Thesis
Year of Publication2021
Degree awarding institutionUniversity of Oslo
DegreePhD
Number of Pages254
Date Published04/2021
PublisherUniversity of Oslo
Place PublishedOslo, Norway
Thesis TypeCollection of papers
Abstract

Today, Cyber-Physical Systems (CPSs) are increasingly becoming an essential part of our daily lives and can be found in various domains such as energy, communication, and logistics. To accommodate different needs of users and provide customizations, CPS producers often adopt Product Line Engineering (PLE) methodologies. Consequently, CPSs are developed by integrating multiple products within/across product lines (PLs) that communicate with each other through information networks. Several PLE methodologies exist in the literature, however, their suitability for CPS PLs needs to be evaluated because of unique characteristics of CPS PLs (e.g., variabilities corresponding to multiple domains (e.g., electronics, mechanics), complex configuration processes). Hence, we need to identify key requirements of CPS PLE and evaluate existing PLE methodologies to assess their capabilities of supporting CPS PLE. Furthermore, most of the existing studies address challenges related to the pre-deployment configuration (i.e., making configuration decisions at design time) of individual products. There is a need for studies focusing on the post-deployment configuration (i.e., making configuration decisions at runtime) of interacting products.

In this thesis, first, we conducted a systematic domain analysis and proposed a conceptual framework for CPS PLs, based on which we evaluated existing PLE methodologies. Then, we focused on the post-deployment configuration of CPSs and made another two contributions: we proposed 1) an approach to capture patterns of configurations in the form of configuration rules and, and 2) another approach for recommending configurations to improve the post-deployment configuration experience from the perspective of testers and end-users.

To conduct the domain analysis, we analyzed three real-world CPS case studies. Based on the knowledge collected from the domain analysis and a thorough literature review on PLE, we proposed a conceptual framework, in which we 1) clarify the context of CPS PLE by formalizing CPSs, PLE, and configuration process; 2) present classifications of Variation Point (VP), constraint, and view types in addition to other modeling requirements to support the domain engineering of CPS PLs; and 3) formalize various types of automation that can be enabled to support the application engineering of CPS PLs. The completeness of the framework was evaluated using three real-world case studies containing 2161 VPs, 3943 constraints, and 40 views, 11 configuration tools, and an extensive literature review. Furthermore, we also evaluated four representative variability modeling techniques (VMTs): Feature Model (FM), Cardinality- Based Feature Model (CBFM), Common Variability Language (CVL), and SimPL. With the selected VMTs, we modeled a case study to assess if they can capture variabilities of CPS PLs. Results show that using SimPL, CVL, CBFM, and FM, we can capture only 81%, 75%, 50%, and 15% of the total variabilities, respectively.

To capture the configuration patterns in the form of configuration rules, we proposed the Search-Based Rule Mining (SBRM+) approach. SBRM+ combines multi-objective search with machine learning to mine configuration rules in an incremental and iterative way. We evaluated

the performance of SBRM+ using multiple real-world and open-source case studies from the communication domain and compared its performance with Random Search Based Rule Mining (RBRM+). Results show that SBRM+ performed significantly better than RBRM+ in terms of fitness values, six quality indicators, and 17 Machine Learning Quality Measurements MLQMs. As compared to RBRM+, SBRM+ improved the quality of rules up to 28% in terms of MLQMs.

To improve the post-deployment configuration experience, we proposed the Search-Based Configuration Recommendation (SBCR) approach, which recommends faulty configurations for CPSs with interacting products under test, based on mined rules. These configurations can be used to test CPSs and create guidelines for end-users to improve the post-deployment configuration experience. We evaluated SBCR using the same case studies, for which we mined the rules using SBRM+. Results show that SBCR significantly outperformed Random Search- Based Configuration Recommendation (RBCR) in terms of six quality indicators and the percentage of faulty configurations. Overall, SBCR made up to 22% more accurate recommendations than RBCR.