skip to main content
research-article

Pattern-based Interactive Configuration Derivation for Cyber-physical System Product Lines

Published: 18 June 2020 Publication History

Abstract

Deriving a Cyber-Physical System (CPS) product from a product line requires configuring hundreds to thousands of configurable parameters of components and devices from multiple domains, e.g., computing, control, and communication. A fully automated configuration process for a CPS product line is seldom possible in practice, and a dynamic and interactive process is expected. Therefore, some configurable parameters are to be configured manually, and the rest can be configured either automatically or manually, depending on pre-defined constraints, the order of configuration steps, and previous configuration data in such a dynamic and interactive configuration process. In this article, we propose a pattern-based, interactive configuration derivation methodology (named as Pi-CD) to maximize opportunities of automatically deriving correct configurations of CPSs by benefiting from pre-defined constraints and configuration data of previous configuration steps. Pi-CD requires architectures of CPS product lines modeled with Unified Modeling Language extended with four types of variabilities, along with constraints specified in Object Constraint Language (OCL). Pi-CD is equipped with 324 configuration derivation patterns that we defined by systematically analyzing the OCL constructs and semantics. We evaluated Pi-CD by configuring 20 CPS products of varying complexity from two real-world CPS product lines. Results show that Pi-CD can achieve up to 72% automation degree with a negligible time cost. Moreover, its time performance remains stable with the increase in the number of configuration parameters as well as constraints.

References

[1]
R. R. Rajkumar, I. Lee, L. Sha, and J. Stankovic. 2010. Cyber-physical systems: The next computing revolution. In Proceedings of the 47th Design Automation Conference. ACM, 731--736.
[2]
T. Yue, S. Ali, and B. Selic. 2015. Cyber-physical system product line engineering: Comprehensive domain analysis and experience report. In Proceedings of the 19th International Conference on Software Product Line.
[3]
A. Iglesias, T. Yue, C. Arellano, S. Ali, and G. Sagardui. 2018. Model-based personalized visualization system for monitoring evolving industrial cyber-physical system. In Proceedings of the 25th Asia-Pacific Software Engineering Conference (APSEC’18). IEEE, 532--541.
[4]
A. Iglesias, H. Lu, C. Arellano, T. Yue, S. Ali, and G. Sagardui. 2017. Product line engineering of monitoring functionality in industrial cyber-physical systems: A domain analysis. In Proceedings of the 21st International Systems and Software Product Line Conference-Volume A. 195--204.
[5]
M. García-Valls, D. Perez-Palacin, and R. Mirandola. 2018. Pragmatic cyber-physical systems design based on parametric models. J. Syst. Softw. 144 (2018).
[6]
M. M. Bersani and M. García‐Valls. 2018. Online verification in cyber‐physical systems: Practical bounds for meaningful temporal costs. J. Softw.: Evol. Proc. 30 (2018).
[7]
S. A. Safdar, H. Lu, T. Yue, and S. Ali. 2017. Mining cross product line rules with multi-objective search and machine learning. In Proceedings of the Genetic and Evolutionary Computation Conference, 1319--1326.
[8]
S. A. Safdar, T. Yue, S. Ali, and H. Lu. 2019. Using multi-objective search and machine learning to infer rules constraining product configurations. Autom. Softw. Eng. 15 (2019), 1--62.
[9]
D. Benavides, S. Segura, and A. Ruiz-Cortés. 2010. Automated analysis of feature models 20 years later: A literature review. Inf. Systems. 35 (2010), 615--636.
[10]
J. Krüger, S. Nielebock, S. Krieter, C. Diedrich, T. Leich, G. Saake, et al. 2017. Beyond software product lines: Variability modeling in cyber-physical systems. In Proceedings of the 21st International Systems and Software Product Line Conference-Volume A. ACM, 237--241.
[11]
P. G. G. Queiroz and R. T. V. Braga. 2014. Development of critical embedded systems using model-driven and product lines techniques: A systematic review. In Proceedings of the 8th Brazilian Symposium on Software Components, Architectures and Reuse (SBCARS’14). IEEE, 74--83.
[12]
OMG. 2014. “OCL Specification 2.4”, OMG Adopted Specification (ptc/2014-02-03). https://www.omg.org/spec/OCL/2.4/PDF.
[13]
OMG. 2015. “UML Specification 2.5”, OMG Adopted Specification (ptc/15-03-01). https://www.omg.org/spec/UML/2.5/About-UML/.
[14]
S. Friedenthal, A. Moore, and R. Steiner. 2014. A Practical Guide to SysML: The Systems Modeling Language. Morgan Kaufmann.
[15]
N. Przigoda, M. Soeken, R. Wille, and R. Drechsler. 2016. Verifying the structure and behavior in UML/OCL models using satisfiability solvers. IET Cyber-phys. Syst.: Theor. Applic. 1 (2016), 49--59.
[16]
O. Badreddin, V. Abdelzad, T. Lethbridge, and M. Elaasar. 2016. fSysML: Foundational executable SysML for cyber-physical system modeling. In Proceedings of the GEMOC@ MoDELS Conference. 38--51.
[17]
G. Magureanu, M. Gavrilescu, and D. Pescaru. 2013. Validation of static properties in unified modeling language models for cyber physical systems. J. Zhejiang Univ. SCI. C 14 (2013), 332--346.
[18]
W. Dou, D. Bianculli, and L. Briand. 2014. OCLR: A more expressive, pattern-based temporal extension of OCL. In Proceedings of the European Conference on Modelling Foundations and Applications. Springer, 51--66.
[19]
T. N. Tien, S. Nakajima, and T. H. Quyet. 2013. Modeling and debugging numerical constraints of cyber-physical systems design. In Proceedings of the 4th Symposium on Information and Communication Technology. ACM, 251--260.
[20]
R. Behjati, T. Yue, L. Briand, and B. Selic. 2013. SimPL: A product-line modeling methodology for families of integrated control systems. Inf. Softw. Technol. 55 (2013), 607--629.
[21]
S. A. Safdar, T. Yue, S. Ali, and H. Lu. 2016. Evaluating variability modeling techniques for supporting cyber-physical system product line engineering. In Proceedings of the International Conference on System Analysis and Modeling. Springer, 1--19.
[22]
D. Benavides, P. T. Martín-Arroyo, and A. R. Cortés. Automated reasoning on feature models. In Proceedings of the CAiSE Conference. Springer, 491--503.
[23]
R. Mazo, C. Dumitrescu, C. Salinesi, and D. Diaz. 2014. Recommendation heuristics for improving product line configuration processes. In Recommendation Systems in Software Engineering. Springer, 511--537.
[24]
S. Ali, M. Z. Iqbal, A. Arcuri, and L. Briand. 2013. Generating test data from OCL constraints with search techniques. IEEE Trans. Softw. Eng. 39 (2013), 1376--1402.
[25]
D. Muthig and C. Atkinson. 2002. Model-driven product line architectures. In Proceedings of the International Conference on Software Product Lines. Springer, 110--129.
[26]
K. Schmid, R. Rabiser, and P. Grünbacher. 2011. A comparison of decision modeling approaches in product lines. In Proceedings of the 5th Workshop on Variability Modeling of Software-Intensive Systems.
[27]
K. Nie, T. Yue, S. Ali, L. Zhang, and Z. Fan. 2013. Constraints: The core of supporting automated product configuration of cyber-physical systems. In Proceedings of the International Conference on Model Driven Engineering Languages and Systems. Springer, 370--387.
[28]
T. Yue and Shaukat Ali. 2014. Empirically evaluating OCL and Java for specifying constraints on UML models. Softw. Syst. Model. 15, 3 (2014), 1--25.
[29]
K. Pohl, G. Böckle, and F. J. van Der Linden. 2005. Software Product Line Engineering: Foundations, Principles and Techniques: Springer Science 8 Business Media.
[30]
E. Bagheri, T. D. Noia, D. Gasevic, and A. Ragone. 2012. Formalizing interactive staged feature model configuration. J. Softw.: Evol. Proc. 24 (2012), 375--400.
[31]
M. Janota, G. Botterweck, R. Grigore, and J. Marques-Silva. 2010. How to complete an interactive configuration process? In Proceedings of the International Conference on Current Trends in Theory and Practice of Computer Science. Springer, 528--539.
[32]
M. Vierhauser, P. Grünbacher, A. Egyed, R. Rabiser, and W. Heider. 2010. Flexible and scalable consistency checking on product line variability models. In Proceedings of the IEEE/ACM International Conference on Automated Software Engineering. ACM, 63--72.
[33]
H. Lu, T. Yue, S. Ali, and L. Zhang. 2016. Nonconformity resolving recommendations for product line configuration. In Proceedings of the IEEE International Conference on Software Testing, Verification and Validation (ICST’16). IEEE, 57--68.
[34]
R. Stoiber and M. Glinz. 2010. Supporting stepwise, incremental product derivation in product line requirements engineering. System 1, 2 (2010).
[35]
L. Hong, Y. Tao, S. Ali, N. Kunming, and Z. Li. 2014. Zen-CC: An automated and incremental conformance checking solution to support interactive product configuration. In Proceedings of the IEEE 25th International Symposium on Software Reliability Engineering (ISSRE’14).
[36]
H. Lu, T. Yue, S. Ali, and L. Zhang. 2016. Model-based incremental conformance checking to enable interactive product configuration. Inf. Softw. Techno. 72 (2016), 68--89.
[37]
The Derivation Patterns for OCL. 2018. Simula Research Laboratory. Retrieved from http://zen-tools.com/journal/TCPS.html.
[38]
G. Chai, U. Kivisakk, J. Tokaruk, and J. Eidhagen. 2009. Hyper duplex stainless steel for deep subsea applications. Stainl. Steel World (2009) 27--33.
[39]
H. A. El Maraghy. 2005. Flexible and reconfigurable manufacturing systems paradigms. Int. J. Flex. Manufact. Syst. 17 (2005), 261--276.
[40]
S. Berman and Y. Edan. 2002. Decentralized autonomous AGV system for material handling. Int. J. Prod. Res. 40 (2002), 3995--4006.
[41]
B. Mahadevan and T. Narendran. 1990. Design of an automated guided vehicle-based material handling system for a flexible manufacturing system. Int. J. Prod. Res. 28 (1990), 1611--1622.
[42]
R. Capilla, J. Bosch, and K.-C. Kang (Eds.). 2013. Systems and Software Variability Management: Concepts, Tools and Experiences. Springer.
[43]
R. Behjati, S. Nejati, T. Yue, A. Gotlieb, and L. Briand. 2012. Model-based automated and guided configuration of embedded software systems. In Proceedings of the European Conference on Modelling Foundations and Applications. Springer, 226--243.
[44]
A. Polzer, S. Kowalewski, and G. Botterweck. 2009. Applying software product line techniques in model-based embedded systems engineering. In Proceedings of the ICSE Workshop on Model-based Methodologies for Pervasive and Embedded Software (MOMPES'09). IEEE, 2--10.
[45]
C. Henard, M. Papadakis, M. Harman, and Y. Le Traon. 2015. Combining multi-objective search and constraint solving for configuring large software product lines. In Proceedings of the IEEE/ACM 37th IEEE International Conference on Software Engineering. IEEE, 517--528.
[46]
A. Arcuri and L. Briand. 2011. A practical guide for using statistical tests to assess randomized algorithms in software engineering. In Proceedings of the 33rd International Conference on Software Engineering (ICSE’11). IEEE, 1--10.
[47]
D. Dhungana, R. Rabiser, P. Grünbacher, K. Lehner, and C. Federspiel. 2007. DOPLER: An adaptable tool suite for product line engineering. In Proceedings of the Systems and Software Product Line Conference.
[48]
V. Myllärniemi, T. Asikainen, T. Männistö, and T. Soininen. 2005. Kumbang configurator—A configuration tool for software product families. In Proceedings of the 19th International Joint Conference on Artificial Intelligence (IJCAI’05).
[49]
D. Sellier, M. Mannion, and J. X. Mansell. 2008. Managing requirements inter-dependency for software product line derivation. Requir. Eng. 13 (2008), 299--313.
[50]
K. Czarnecki, M. Antkiewicz, C. H. P. Kim, S. Lau, and K. Pietroszek. 2005. Fmp and fmp2rsm: Eclipse plug-ins for modeling features using model templates. In Proceedings of the 20th Annual ACM SIGPLAN Conference on Object-oriented Programming, Systems, Languages, and Applications.
[51]
T. Thüm, C. Kästner, F. Benduhn, J. Meinicke, G. Saake, and T. Leich. 2014. Featureide: An extensible framework for feature-oriented software development. Sci. Comput. Prog. 79 (2014), 70--85.
[52]
E. Cirilo, U. Kulesza, and C. J. P. de Lucena. 2007. GenArch—A model-based product derivation tool. In Proceedings of the Brazilian Symposium on Software Components, Architectures, and Reuse (SBCARS’07).
[53]
J. White, D. C. Schmidt, E. Wuchner, and A. Nechypurenko. 2007. Automating product-line variant selection for mobile devices. In Proceedings of the 11th International Software Product Line Conference (SPLC’07).
[54]
M. Mendonca, M. Branco, and D. Cowan. 2009. SPLOT: Software product lines online tools. In Proceedings of the 24th ACM SIGPLAN Conference Companion on Object-oriented Programming Systems Languages and Applications.
[55]
D. Beuche. 2012. Modeling and building software product lines with pure: Variants. In Proceedings of the 16th International Software Product Line Conference, Volume 2.
[56]
C. Cawley, D. Nestor, A. Preußner, G. Botterweck, and S. Thiel. 2008. Interactive visualisation to support product configuration in software product lines. In Proceedings of the International Workshop on Variability Modelling of Software-intensive Systems.
[57]
T. Asikainen, T. Männistö, and T. Soininen. 2004. Using a configurator for modelling and configuring software product lines based on feature models. In Proceedings of the International Workshop on Software Variability Management for Product Derivation-Towards Tool Support.
[58]
J. MacGregor. 2004. Expressing domain variability for configuration. In Software Architecture. Springer, 250--256.
[59]
M. La Rosa, W. M. van der Aalst, M. Dumas, and A. H. Ter Hofstede. 2009. Questionnaire-based variability modeling for system configuration. Softw. Syst. Model. 8 (2009), 251--274.
[60]
R. Behjati, S. Nejati, T. Yue, A. Gotlieb, and L. Briand. 2012. Model-based automated and guided configuration of embedded software systems. Model. Found. Applic. 7349 (2012), 226--243.
[61]
D. Benavides, S. Segura, P. Trinidad, and A. R. Cortés. 2007. FAMA: Tooling a framework for the automated analysis of feature models. In Proceedings of the International Working Conference on Variability Modelling of Software-Intensive Systems (VaMoS’07).
[62]
T. Thüm, D. Batory, and C. Kästner. 2009. Reasoning about edits to feature models. In Proceedings of the IEEE 31st International Conference on Software Engineering.
[63]
D. Batory. 2005. Feature Models, Grammars, and Propositional Formulas. Springer.
[64]
K. Czarnecki and A. Wasowski. 2007. Feature diagrams and logics: There and back again. In Proceedings of the 11th International Software Product Line Conference.
[65]
W. Clocksin and C. S. Mellish. 2003. Programming in PROLOG. Springer Science 8 Business Media.
[66]
J. Jaffar and M. J. Maher. 1994. Constraint logic programming: A survey. J. Logic Prog. 19 (1994), 503--581.
[67]
P. Simons, I. Niemelä, and T. Soininen. 2002. Extending and implementing the stable model semantics. Artif. Intell. 138 (2002), 181--234.
[68]
E. Cirilo, I. Nunes, U. Kulesza, and C. Lucena. 2012. Automating the product derivation process of multi-agent systems product lines. J. Syst. Softw. 85 (2012), 258--276.

Index Terms

  1. Pattern-based Interactive Configuration Derivation for Cyber-physical System Product Lines

    Recommendations

    Comments

    Information & Contributors

    Information

    Published In

    cover image ACM Transactions on Cyber-Physical Systems
    ACM Transactions on Cyber-Physical Systems  Volume 4, Issue 4
    Special Issue on Self-Awareness in Resource Constrained CPS and Regular Papers
    October 2020
    293 pages
    ISSN:2378-962X
    EISSN:2378-9638
    DOI:10.1145/3407233
    • Editor:
    • Tei-Wei Kuo
    Issue’s Table of Contents
    Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

    Publisher

    Association for Computing Machinery

    New York, NY, United States

    Journal Family

    Publication History

    Published: 18 June 2020
    Online AM: 07 May 2020
    Accepted: 01 February 2020
    Revised: 01 November 2019
    Received: 01 February 2018
    Published in TCPS Volume 4, Issue 4

    Permissions

    Request permissions for this article.

    Check for updates

    Author Tags

    1. Product line engineering
    2. configuration derivation
    3. object constraint language
    4. product configuration

    Qualifiers

    • Research-article
    • Research
    • Refereed

    Funding Sources

    • Research Council of Norway under the FRIPRO program
    • Co-evolver project
    • National Natural Science Foundation of China

    Contributors

    Other Metrics

    Bibliometrics & Citations

    Bibliometrics

    Article Metrics

    • 0
      Total Citations
    • 157
      Total Downloads
    • Downloads (Last 12 months)15
    • Downloads (Last 6 weeks)3
    Reflects downloads up to 12 Jan 2025

    Other Metrics

    Citations

    View Options

    Login options

    Full Access

    View options

    PDF

    View or Download as a PDF file.

    PDF

    eReader

    View online with eReader.

    eReader

    HTML Format

    View this article in HTML Format.

    HTML Format

    Media

    Figures

    Other

    Tables

    Share

    Share

    Share this Publication link

    Share on social media