KERIS: evolving software with extensible modules

被引:7
|
作者
Zenger, M [1 ]
机构
[1] Swiss Fed Inst Technol, Programming Methods Lab, Sch Comp & Commun Sci, INR Ecublens, CH-1015 Lausanne, Switzerland
关键词
module systems; component-oriented programming; software reuse; extensibility; unanticipated software evolution; module refinement; module specialization;
D O I
10.1002/smr.320
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
We present the programming language KERIS, an extension of Java with explicit support for software evolution. KERIS introduces extensible modules as the basic building blocks for software. Modules are composed hierarchically, explicitly revealing the architecture of systems. A distinct feature of the module design is that modules do not get linked manually. Instead, the wiring of modules gets inferred. The module assembly and refinement mechanism of KERIS is not restricted to the unanticipated extensibility of atomic modules. It also allows extensions of already linked systems by replacing selected submodules with compatible versions without needing to re-link the full system. Extensibility is type-safe and noninvasive, i.e., the extension of a module preserves the original version and does not require access to source code. Copyright (c) 2005 John Wiley & Sons, Ltd.
引用
收藏
页码:333 / 362
页数:30
相关论文
共 50 条
  • [1] EXTENSIBLE SOFTWARE SYSTEMS
    POUNTAIN, D
    SZYPERSKI, C
    BYTE, 1994, 19 (05): : 57 - &
  • [2] A quantitative and qualitative assessment of aspectual feature modules for evolving software product lines
    Gaia, Felipe Nunes
    Sousa Ferreira, Gabriel Coutinho
    Figueiredo, Eduardo
    Maia, Marcelo de Almeida
    SCIENCE OF COMPUTER PROGRAMMING, 2014, 96 : 230 - 253
  • [3] Parameterized modules for classes and extensible functions
    Lee, Keunwoo
    Chambers, Craig
    ECOOP 2006 - OBJECT-ORIENTED PROGRAMMING, PROCEEDINGS, 2006, 4067 : 353 - 378
  • [4] Extensible Software Transactional Memory
    Noel, Cyprien
    PROCEEDINGS OF THE THIRD C* CONFERENCE ON COMPUTER SCIENCE AND SOFTWARE ENGINEERING 2010 (C3S2E '10), 2010, : 23 - 34
  • [5] DESIGN AND OPERATION OF EXTENSIBLE SOFTWARE
    TODOROI, DN
    CYBERNETICS, 1987, 23 (05): : 647 - 658
  • [6] Design and operation of extensible software
    Todoroi, D.N.
    1600, (23):
  • [7] Evolving Software
    Mens, Tom
    Klein, Jacques
    ERCIM NEWS, 2012, (88): : 8 - 9
  • [8] An extensible software architecture for mobile components
    Johansen, D
    Lauvset, KJ
    Marzullo, K
    NINTH ANNUAL IEEE INTERNATIONAL CONFERENCE AND WORKSHOP ON THE ENGINEERING OF COMPUTER-BASED SYSTEMS, PROCEEDINGS, 2002, : 231 - 237
  • [9] An extensible framework for collaborative software engineering
    Cook, C
    Churcher, N
    ASIA-PACIFIC SOFTWARE ENGINEERING CONFERENCE, PROCEEDINGS, 2003, : 290 - 299
  • [10] DGALab: an extensible software implementation for DGA
    Ibrahim, Saleh I.
    Ghoneim, Sherif S. M.
    Taha, Ibrahim B. M.
    IET GENERATION TRANSMISSION & DISTRIBUTION, 2018, 12 (18) : 4117 - 4124