Designing for interoperability and portability
Portability and interoperability should be driven by use and business cases – not for the pure sake of portability or interoperability. In IT-systems there are four levels that define portability of systems: data, applications, platforms, and infrastructure, following the Architecture Development Method (ADM) of TOGAF.
Data represents information in such form that it can be processed by computers. Data is stored in storage that is accessible to computers.
Applications is software that performs actions that are triggered by business requests.
Platforms support the applications.
Infrastructure is a collection of computation, storage, and network resources. Computation can also refer to cloud computing including virtual machines, containers and serverless functions.
One important note that we have to make at this point, is that cloud computing does cause the effect of ‘blurring’ in the demarcation of infrastructure, platforms...