Large-scale complex IT systems

Ian Sommerville*, Dave Cliff, Radu Calinescu, Justin Keen, Tim Kelly, Marta Kwiatkowska, John McDermid, Richard Paige

*Corresponding author for this work

Research output: Contribution to journalArticlepeer-review


Society depends on complex IT systems created by integrating and orchestrating independently managed systems. The incredible increase in scale and complexity in them over the past decade means new software-engineering techniques are needed to help us cope with their inherent complexity. The key characteristic of these systems is that they are assembled from other systems that are independently controlled and managed. While there is increasing awareness in the software engineering community of related issues, the most relevant background work comes from systems engineering. The interacting algos that led to the Flash Crash represent an example of a coalition of systems, serving the purposes of their owners and cooperating only because they have to. The owners of the individual systems were competing finance companies that were often mutually hostile. Each system jealously guarded its own information and could change without consulting any other system.

Original languageEnglish
Pages (from-to)71-77
Number of pages7
JournalCommunications of the ACM
Issue number7
Publication statusPublished - Jul 2012

Bibliographical note

© ACM, 2012. This is the author's version of the work. It is posted here by permission of ACM for your personal use. Not for redistribution. The definitive version was published in Communications of the ACM, VOL 55, ISS 7, July 2012


Dive into the research topics of 'Large-scale complex IT systems'. Together they form a unique fingerprint.

Cite this