You sometimes have to deal with bad apples in your staff, or with customers who won't pay. You may be able to sniff them out early. How do you do this with IT? How do you “nip” issues before they occur and costs before they are incurred? How do you do Lean IT?
The likelihood of design flaws, vulnerabilities and bugs in a system increases with its complexity. It also increases the farther away we go from the system’s core. Yet, the highest risks lie at the edges of the system, in the "synapses" through which it interoperates with other systems and with users.
System designers have no control over other systems and their evolution through time. This makes each system a threat to other systems within the network perimeter and in the cloud. This is how a Windows® update can "brick" your printers or an Azure® DevOps hosted agent update can wreck your software deployment plans.
This is true for each piece of hardware and firmware, and for each operating system, driver, peripheral, middleware, and application. The most infamous expressions of this are resource contention and conflicting dependencies (aka DLL hell).
So my solution is simple:
- Stick to the uncomplicated, tried and proven, shun bells and whistles and only use the core functionalities of a system. Then,
- Contain your systems in silos to prevent each from disabling another, so that a module can easily be replaced without impacting operations.
On the server side, this is achieved through virtualization and strict adherence to the aforementioned one-server/one-job principle. Virtual servers can move from hardware host to hardware host, irrespective of CPU family or generation, on premises or in the cloud. They handle all the server workload. Everything is virtualized.
On the client side, the “modularization” is achieved through easily swappable PC's and laptops via Azure® Entra (formerelly Azure AD), and via Azure Virtual Desktop which allow users to login into their personal computer as they would in a website, from any hardware type or location. Find and defuse the time bombs hidden in your IT infrastructure.