HaiQ: Synthesis of Software Design Spaces with Structural and Probabilistic Guarantees

被引:8
作者
Camara, Javier [1 ]
机构
[1] Univ York, Dept Comp Sci, York YO10 5DD, N Yorkshire, England
来源
2020 IEEE/ACM 8TH INTERNATIONAL CONFERENCE ON FORMAL METHODS IN SOFTWARE ENGINEERING, FORMALISE | 2020年
关键词
Uncertainty; guarantees; quantitative verification; relational modeling; probabilistic model checking; Alloy; PRISM; HaiQ; M-PCTL; QUANTITATIVE VERIFICATION; MODEL; ALLOY;
D O I
10.1145/3372020.3391562
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Formal methods used to validate software designs, like Alloy, OCL, and B, are powerful tools to analyze complex structures (e.g., architectures, object-relational mappings) captured as sets of relational constraints. However, their applicability is limited when software is subject to uncertainty (derived, e.g., from lack of control over third-party components, interaction with physical elements). In contrast, quantitative verification has emerged as a powerful way of providing quantitative guarantees about the performance, cost, and reliability of systems operating under uncertainty. However, quantitative verification methods do not retain the flexibility of relational modeling in describing structures, forcing engineers to trade structural exploration for analytic capabilities that concern probabilistic and other quantitative guarantees. This paper contributes a method (HaiQ) that enhances structural modeling/synthesis with quantitative guarantees in the style provided by quantitative verification. It includes a language for describing structure and (stochastic) behavior of systems, and a temporal logic that allows checking probability and reward-based properties over sets of feasible design alternatives implicitly described by the relational constraints in a HaiQ model. We report the results of applying a prototype tool in two domains, on which we show the feasibility of synthesizing structural designs that optimize probabilistic and other quantitative guarantees.
引用
收藏
页码:22 / 33
页数:12
相关论文
共 54 条
  • [1] Abrial J.-R., 1991, VDM '91. Formal Software Development Methods. 4th International Symposium of VDM Europe Proceedings. Vol.2: Tutorials, P398, DOI 10.1007/BFb0020001
  • [2] Abrial J.R., 2010, Modeling in Event-B: System and Software engineering
  • [3] ArcheOpterix: An Extendable Tool for Architecture Optimization of AADL Models
    Aleti, Aldeida
    Bjoernander, Stefan
    Grunske, Lars
    Meedeniya, Indika
    [J]. MOMPES: 2009 ICSE WORKSHOP ON MODEL-BASED METHODOLOGIES FOR PERVASIVE AND EMBEDDED SOFTWARE, 2009, : 61 - 71
  • [4] Andova S, 2003, LECT NOTES COMPUT SC, V2791, P88
  • [5] TradeMaker: Automated Dynamic Analysis of Synthesized Tradespaces
    Bagheri, Hamid
    Tang, Chong
    Sullivan, Kevin
    [J]. 36TH INTERNATIONAL CONFERENCE ON SOFTWARE ENGINEERING (ICSE 2014), 2014, : 106 - 116
  • [6] COVERT: Compositional Analysis of Android Inter-App Permission Leakage
    Bagheri, Hamid
    Sadeghi, Alireza
    Garcia, Joshua
    Malek, Sam
    [J]. IEEE TRANSACTIONS ON SOFTWARE ENGINEERING, 2015, 41 (09) : 866 - 886
  • [7] Model-based performance prediction in software development: A survey
    Balsamo, S
    Di Marco, A
    Inverardi, P
    Simeoni, M
    [J]. IEEE TRANSACTIONS ON SOFTWARE ENGINEERING, 2004, 30 (05) : 295 - 310
  • [8] The Palladio component model for model-driven performance prediction
    Becker, Steffen
    Koziolek, Heiko
    Reussner, Ralf
    [J]. JOURNAL OF SYSTEMS AND SOFTWARE, 2009, 82 (01) : 3 - 22
  • [9] Bjorner Dines, 1978, MATH STUDIES INFORM, V75, P326
  • [10] Bondarev Egor., 2007, Proceedings of the 6th international workshop on Software and performance, P153