Separating computation, coordination and configuration

Luís Andrade, J. L. Fiadeiro (Lead / Corresponding author), João Gouveia, Georgios Koutsoukos

Research output: Contribution to journalArticlepeer-review

23 Citations (Scopus)


We present methodological and technological solutions for evolving large-scale software systems. These solutions are based on many years of research and experience in developing systems in one of the most volatile application domains-banking. We discuss why 'promising' software development techniques, such as object-oriented and component-based approaches, on their own, cannot meet the challenges and objectives of software development today, and propose a three-layered architectural approach based on the strict separation between computation, coordination and configuration. We present a set of modelling primitives, design principles and support tools through which such an approach can be put effectively into practice, and discuss how it promotes a more 'dynamic' approach to software evolution. Finally, we make comparisons with related work.

Original languageEnglish
Pages (from-to)353-369
Number of pages17
JournalJournal of Software Maintenance and Evolution
Issue number5
Early online date30 Oct 2002
Publication statusPublished - 30 Oct 2002


  • Architectures
  • Coordination
  • Dynamic configuration
  • Modelling
  • Separation of concerns
  • Software evolution
  • Tools

ASJC Scopus subject areas

  • Software


Dive into the research topics of 'Separating computation, coordination and configuration'. Together they form a unique fingerprint.

Cite this