DocumentCode
1002265
Title
An Era of Change-Tolerant Systems
Author
Bohner, Shawn
Author_Institution
Virginia Tech., Blacksburg
Volume
40
Issue
6
fYear
2007
fDate
6/1/2007 12:00:00 AM
Firstpage
100
Lastpage
102
Abstract
Software complexity is the degree to which software is difficult to analyze, understand, or explain. As society increasingly depends on software, the size and complexity of software systems continues to grow making them progressively more difficult to understand and evolve. This trend has dramatically accelerated in recent years with the advent of Web services, agent-based systems, autonomic and self-healing systems, reconfigurable computing, and other advances. Software´s complexity has compounded in both volume (structure) and interaction (social) as the Internet has enabled delivering software functionality as services. Yet, most technologies that we use to develop, maintain, and evolve software systems do not adequately cope with complexity and change. Traditionally, software engineers respond to complexity by decomposing systems into manageable parts to accommodate the sheer number of elements and their structure. However, the Internet and the emergence of software as services have led to a new kind of complexity.
Keywords
Web services; fault tolerant computing; object-oriented programming; software architecture; software metrics; Internet; Web services; agent-based system; autonomic self-healing system; change-tolerant system; reconfigurable computing; service-oriented architecture; software engineering; software functionality; software system complexity; software system decomposition; Algorithm design and analysis; Assembly; Computer networks; Data flow computing; Distributed computing; Embedded computing; Embedded software; Pervasive computing; Software tools; Web services; change-tolerant systems; service-oriented architectures; software technologies;
fLanguage
English
Journal_Title
Computer
Publisher
ieee
ISSN
0018-9162
Type
jour
DOI
10.1109/MC.2007.191
Filename
4249827
Link To Document