By Topic

An Era of Change-Tolerant Systems

Sign In

Cookies must be enabled to login.After enabling cookies , please use refresh or reload or ctrl+f5 on the browser for the login options.

Formats Non-Member Member
$31 $13
Learn how you can qualify for the best price for this item!
Become an IEEE Member or Subscribe to
IEEE Xplore for exclusive pricing!
close button

puzzle piece

IEEE membership options for an individual and IEEE Xplore subscriptions for an organization offer the most affordable access to essential journal articles, conference papers, standards, eBooks, and eLearning courses.

Learn more about:

IEEE membership

IEEE Xplore subscriptions

1 Author(s)
Bohner, S. ; Virginia Tech., Blacksburg

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.

Published in:

Computer  (Volume:40 ,  Issue: 6 )