Constructive Model Inference: Model Learning for Component-based Software Architectures

被引:3
|
作者
Hooimeijer, Bram [1 ]
Geilen, Marc [2 ]
Groote, Jan Friso [3 ,4 ]
Hendriks, Dennis [5 ,6 ]
Schiffelers, Ramon [3 ,4 ]
机构
[1] Prodrive Technol, Eindhoven, Netherlands
[2] Eindhoven Univ Technol, Dept Elect Engn, Eindhoven, Netherlands
[3] Eindhoven Univ Technol, Dept Math & Comp Sci, Eindhoven, Netherlands
[4] ASML, Veldhoven, Netherlands
[5] ESI TNO, Eindhoven, Netherlands
[6] Radboud Univ Nijmegen, Dept Software Sci, Nijmegen, Netherlands
关键词
Model Learning; Component-based Software; Industrial Application; AUTOMATA;
D O I
10.5220/0011145700003266
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Model learning, learning a state machine from software, can be an effective model-based engineering technique, especially to understand legacy software. However, so far the applicability is limited as models that can be learned are quite small, often insufficient to represent the software behavior of large industrial systems. We introduce a novel method, called Constructive Model Inference (CMI). It effectively allows us to learn the behavior of large parts of the industrial software at ASML, where we developed the method and it is now being used. The method uses observations in the form of execution logs to infer behavioral models of concurrent component-based (cyber-physical) systems, relying on knowledge of their architecture, deployment and other characteristics, rather than heuristics or counter examples. We provide a trace-theoretical framework, and prove that if the software satisfies certain architectural assumptions, our approach infers the correct results. We also present a practical approach to deal with situations where the software deviates from the assumptions. In this way we are able to construct accurate and intuitive state machine models. They provide practitioners with valuable insights into the software behavior, and enable all kinds of behavioral analyses.
引用
收藏
页码:146 / 158
页数:13
相关论文
共 50 条
  • [1] A Component-Based Evolution Model for Service-Based Software Architectures
    Berrio-Charry, Eduardo
    Vergara-Vargas, Jeisson
    Umana-Acosta, Henry
    [J]. PROCEEDINGS OF 2020 IEEE 11TH INTERNATIONAL CONFERENCE ON SOFTWARE ENGINEERING AND SERVICE SCIENCE (ICSESS 2020), 2020, : 111 - 115
  • [2] Model-driven Continuous Experimentation on Component-based Software Architectures
    Gottschalk, Sebastian
    Yigitbas, Enes
    Engels, Gregor
    [J]. 2022 IEEE 19TH INTERNATIONAL CONFERENCE ON SOFTWARE ARCHITECTURE COMPANION (ICSA-C 2022), 2022, : 20 - 24
  • [3] A formal model for component-based software
    Cox, PT
    Song, BM
    [J]. IEEE SYMPOSIA ON HUMAN-CENTRIC COMPUTING LANGUAGES AND ENVIRONMENTS, PROCEEDINGS, 2001, : 304 - 311
  • [4] A component-based software development model
    Ning, JQ
    [J]. TWENTIETH ANNUAL INTERNATIONAL COMPUTER SOFTWARE & APPLICATIONS CONFERENCE (COMPSAC'96), PROCEEDINGS, 1996, 20 : 389 - 394
  • [5] New component-based reliability model to predict the reliability of component-based software
    Tomar, Dimpal
    Tomar, Pradeep
    [J]. International Journal of Reliability and Safety, 2019, 13 (1-2): : 83 - 95
  • [6] A general model for component-based software reliability
    Mao, XG
    Deng, YJ
    [J]. PROCEEDINGS OF THE 29TH EUROMICRO CONFERENCE: NEW WAVES IN SYSTEM ARCHITECTURE, 2003, : 395 - 398
  • [7] The W Model for Component-based Software Development
    Lau, Kung-Kiu
    Taweel, Faris M.
    Tran, Cuong M.
    [J]. 2011 37TH EUROMICRO CONFERENCE ON SOFTWARE ENGINEERING AND ADVANCED APPLICATIONS (SEAA 2011), 2011, : 47 - 50
  • [8] Tool Support for Component-Based Software Architectures
    Buchgeher, Georg
    Weinreich, Rainer
    [J]. APSEC 09: SIXTEENTH ASIA-PACIFIC SOFTWARE ENGINEERING CONFERENCE, PROCEEDINGS, 2009, : 127 - +
  • [9] Reliability prediction for component-based software architectures
    Reussner, RH
    Schmidt, HW
    Poernomo, IH
    [J]. JOURNAL OF SYSTEMS AND SOFTWARE, 2003, 66 (03) : 241 - 252
  • [10] Towards a versioning model for component-based software assembly
    Gergic, J
    [J]. INTERNATIONAL CONFERENCE ON SOFTWARE MAINTENANCE, PROCEEDINGS, 2003, : 138 - 147