DocumentCode
781478
Title
Toward Open-World Software: Issue and Challenges
Author
Baresi, Luciano ; Di Nitto, Elisabetta ; Ghezzi, Carlo
Author_Institution
Politecnico di Milano
Volume
39
Issue
10
fYear
2006
Firstpage
36
Lastpage
43
Abstract
Traditional software development is based on the closed-world assumption that the boundary between system and environment is known and unchanging. However, this assumption no longer works within today´s unpredictable open-world settings, especially in ubiquitous and pervasive computing settings, which demand techniques that let software react to changes by self-organizing its structure and self-adapting its behavior. The more we move toward dynamic and heterogeneous systems, and the more we stress their self-healing and self-adapting capabilities, the more we need new approaches to develop these applications and new ways to structure and program them. Programming open systems requires new programming language features. Two features that bear investigation are introspection mechanisms to get runtime information about newly encountered services and reflective mechanisms to adapt client applications dynamically. Some existing standards, industrial products, and research prototypes that support, to a certain extent, the open-world assumptions are service-oriented technologies, publish/subscribe middleware systems, grid infrastructures, autonomic frameworks
Keywords
grid computing; message passing; middleware; open systems; software engineering; ubiquitous computing; autonomic framework; dynamic heterogeneous system; grid infrastructure; open system programming; open-world software development; pervasive computing; programming language features; publish/subscribe middleware system; service-oriented technology; software change; software introspection mechanism; software reflective mechanism; software self-adapting capability; software self-organizing capability; ubiquitous computing; Application software; Computer languages; Middleware; Open systems; Pervasive computing; Programming; Prototypes; Runtime; Standards publication; Stress; autonomic computing; grid computing; middleware systems; open-world software; polymorphism; software engineering; web services;
fLanguage
English
Journal_Title
Computer
Publisher
ieee
ISSN
0018-9162
Type
jour
DOI
10.1109/MC.2006.362
Filename
1707632
Link To Document