Fernando Machado Píriz's Blog

Posts about digital transformation, enterprise architecture and related topics

Archive for December 2016

Digital Transformation Foundation: “Software Defined Everything” and “Everybody Codes”

leave a comment »

There seems to be an agreement on digital transformation being less about technology and more about business design and a customer centric culture. Obviously it’s not about digital technology: DVDs, as its own name implies, are digital movie containers as opposed to analog videotapes or photochemical films, but wasn’t until Netflix added video on demand via the Internet to the DVDs physical delivery business, that they became a reference on digital transformation.

As George Westerman et al. put clearly in this book -or in this article summary-, it’s the transformational management intensity, i.e. how much top managers are betting on digital transformation, what separates digiratis -digital literates- from the crowds. Nevertheless, companies still need to think on the foundation for their digital transformation, and precisely there is where digital platforms come into place; of the other way around, a digital platform won’t make your company to digitally transform, but can’t transform without one.

What’s that platform? It’s whatever makes frictionless to combine incumbents and partners into your business and for you to participate in others businesses “to execute [your organization’s] digital business strategy”, accordingly to Gartner.

A while ago hardware machines were a physical thing; now we have hardware virtualization by software and then we have virtual machines. Also a while ago we had physical arrays of spinning hard disk drives, and now we have software defined storage; we had physically connected cables, routers, switches, firewalls, etc. and now we have software defined networks; and the list goes on up to big things like software defined datacenters or down to small things like software defined chips, or more precisely field-programmable gate arrays.

Even the IoT devices very common in many digitally transforming businesses can change their behaviors based on the software they run; the dumbest the device, the longer their battery life, less their capability of running sophisticated software or even to run software at all; but put for example a field gateway behind it, connect it to the cloud, and then you have your software defined IoT too.

These platforms have another interesting characteristic: in order to achieve the agility and easiness of adaptation, they embrace change and make changing easier. The [business] rules that control the behavior of the applications running on these platforms can be changed in a declarative way -as opposed to imperative or algorithmic-, eventually through a graphical use interface managed by some business user, not a programmer. It’s declarative, but it’s still giving orders to a computer to do thing, so it’s still programming or coding.

The end user who does acceptance testing doesn’t necessarily use the application itself anymore to see if it works as expected. They won’t do that fast enough and won’t do it as much times as it takes to deliver changes on a daily basis -or even more frequently-. Then the only way is to ask them to declaratively specify how to do the tests instead of doing the testing by themselves. Once again, it’s declarative, but it’s still coding.

So we have end users coding, either by adapting applications running on platforms to do new or different things or by make sure the applications work as they want, we have also more people coding: operators.

Operators now do write scripts to do repetitive tasks. It’s faster, and most importantly, it’s less error pone: once scripts works, they don’t forget steps or make mistakes as human operators sometimes do if they’re tired or in a hurry, stressed by a deadline.

And programmers have always coded; so now everybody codes.

So that’s for me what a platform implies for digital transformation: “software defined everything” and “everybody codes”. And again, this won’t make your organization to digitally transform, but it’s very unlikely that you can transform without one. I’m fortunate enough to have a computer science and software development background; it’s easier for me to understand and to explain to my customers this foundation for digital transformation.

Written by fernandomachadopiriz

December 30, 2016 at 5:14 pm