A calculus for reasoning about software composition

被引:12
|
作者
Achermann, F [1 ]
Nierstrasz, O [1 ]
机构
[1] Univ Bern, Software Composit Grp, CH-3012 Bern, Switzerland
关键词
software components; process calculi; software architecture;
D O I
10.1016/j.tcs.2004.09.022
中图分类号
TP301 [理论、方法];
学科分类号
081202 ;
摘要
Although the term software component has become commonplace, there is no universally accepted definition of the term, nor does there exist a common foundation for specifying various kinds of components and their compositions. We propose such a foundation. The Piccola calculus is a process calculus, based on the asynchronous pi-calculus, extended with explicit namespaces. The calculus is high level, rather than minimal, and is consequently convenient for expressing and reasoning about software components, and different styles of composition. We motivate and present the calculus, and outline how it is used to specify the semantics of Piccola, a small composition language. We demonstrate how the calculus can be used to simplify compositions by partial evaluation, and we briefly outline some other applications of the calculus to reasoning about compositional styles. (C) 2004 Elsevier B.V. All rights reserved.
引用
收藏
页码:367 / 396
页数:30
相关论文
共 50 条
  • [1] Reasoning about pointers in refinement calculus
    Back, RJ
    Fan, XC
    Preoteasa, V
    ASIA-PACIFIC SOFTWARE ENGINEERING CONFERENCE, PROCEEDINGS, 2003, : 425 - 434
  • [2] REASONING ABOUT TIME IN THE SITUATION CALCULUS
    PINTO, J
    REITER, R
    ANNALS OF MATHEMATICS AND ARTIFICIAL INTELLIGENCE, 1995, 14 (2-4) : 251 - 268
  • [3] Reasoning about discontinuities the event calculus
    Miller, R
    Shanahan, M
    PRINCIPLES OF KNOWLEDGE REPRESENTATION AND REASONING: PROCEEDINGS OF THE FIFTH INTERNATIONAL CONFERENCE (KR '96), 1996, : 63 - 74
  • [4] Representing and Reasoning about Program in Situation Calculus
    Yang Bo
    Zhang Ming-yi
    Wu Mao-nian
    Xie Gang
    FOURTH INTERNATIONAL CONFERENCE ON MACHINE VISION (ICMV 2011): COMPUTER VISION AND IMAGE ANALYSIS: PATTERN RECOGNITION AND BASIC TECHNOLOGIES, 2012, 8350
  • [5] Reasoning about cryptographic protocols in the spi calculus
    Abadi, M
    Gordon, AD
    CONCUR'97 : CONCURRENCY THEORY, 1997, 1243 : 59 - 73
  • [6] Hypothetical reasoning about actions: From situation calculus to event calculus
    Provetti, A
    COMPUTATIONAL INTELLIGENCE, 1996, 12 (03) : 478 - 498
  • [8] Approximate reasoning about software models
    Ramanna, S
    NAFIPS 2004: ANNUAL MEETING OF THE NORTH AMERICAN FUZZY INFORMATION PROCESSING SOCIETY, VOLS 1AND 2: FUZZY SETS IN THE HEART OF THE CANADIAN ROCKIES, 2004, : 791 - 795
  • [9] A Heuristic Calculus for Transformative Reasoning about Social Information
    Rubin, Stuart H.
    2011 IEEE INTERNATIONAL CONFERENCE ON INFORMATION REUSE AND INTEGRATION (IRI), 2011, : 533 - 538
  • [10] Using session types for reasoning about boundedness in the π-calculus
    Huttel, Hans
    ACTA INFORMATICA, 2020, 57 (06) : 801 - 827