John Schmidt of Informatica argues that the digital transformation of an organisation is better supported by focussing on the organisation's data, rather than its IT applications. An application-centric approach structures an organisation's IT by the applications, each of which has a business owner and defined functions. This works as long as these functions remain separate. But when more processes are moved online, when the processes become more complex and involve multiple business areas, the emphasis needs to shift away from the individual applications, to the processes and the data that they use.
I agree with this point of view. Software development (of individual programs) moved to this approach a long time ago, primarily with the introduction of object-oriented programming. Basing the structure of programs around the data elements, rather than the processes, made it easier to change the processes. A data-centric approach to architecture is taking the same approach on a larger scale.
The difficulty can be in explaining the advantages to the business areas. In software development, the choice of program structure is an internal matter for the programmers to decide. In architecture, the decision is more visible, because it is often the business areas who pay for, and choose, the IT applications that we deploy. So we need materials to explain why this is a good idea, using non-technical language (or "speaking human", as a colleague put it). I don't have an easy answer for this, but I'm working on it.
My thanks to Ian Anderson for alerting me to John's post, via the UCISA EA mailing list.
I agree with this point of view. Software development (of individual programs) moved to this approach a long time ago, primarily with the introduction of object-oriented programming. Basing the structure of programs around the data elements, rather than the processes, made it easier to change the processes. A data-centric approach to architecture is taking the same approach on a larger scale.
The difficulty can be in explaining the advantages to the business areas. In software development, the choice of program structure is an internal matter for the programmers to decide. In architecture, the decision is more visible, because it is often the business areas who pay for, and choose, the IT applications that we deploy. So we need materials to explain why this is a good idea, using non-technical language (or "speaking human", as a colleague put it). I don't have an easy answer for this, but I'm working on it.
My thanks to Ian Anderson for alerting me to John's post, via the UCISA EA mailing list.
Comments