Showing posts with label Gartner. Show all posts
Showing posts with label Gartner. Show all posts

Wednesday, July 17, 2019

LIFESPAR cloud architecture principles to follow

With more and more organisations adopting cloud technologies for their applications, I've seen the tendency to just "life and shift" architectures. Physical servers are replicated as virtual machines and the same software applications as before are run "on somebody else's computer". 
  • Latency-aware
  • Instrumented
  • Failure-aware
  • Event-driven
  • Secure
  • Parallelizable
  • Automated
  • Resource-consumption-aware

But this approach doesn't leverage many of the benefits of software-as-a-service (SaaS) or the new cloud-only components available as platform-as-a-service (PaaS). It also means that architects creating cloud-native solutions need to have a different set of principle to before.
Some of the best guidance I have seen in this area comes from Gartner, who use the acronym LIFESPAR to explain those principles to follow for designing cloud-native architectures.

So what is LIFESPAR and what does it mean to an architect?

Latency-aware:
Understand that every application needs to be designed & implemented knowing that it may not get an instant response to each request. This latency could be milliseconds, or it could be seconds, so ensure each solution elegantly deals with delays and is tested to prove it works under these conditions.

Instrumented:
Every solution and every component must generate sufficient data about their usage and ideally send this information back to a central location, so that real-time & subsequent decisions about the architecture, cost, volumes, etc. can be made. In this way, as instrumented approach supports an elastic automatically scaling system (scaling both up AND down).

Failure-aware:
Remember that things fail (hardware, processes, etc.) and that software, created by humans, is never usually bug-free. So always design solutions that wait or fail & re- in the way you need them to. Failures must also be comprehensively tested - if necessary, writing code to force failures (e.g. the Chaos Monkey). Also bear in mind that in some scenarios... latency and failure are the same thing.

Event-driven:
Applications used to developed with synchronous actions (as the performance, etc. of the target system was known). But now in a decoupled architecture, messages need be sent as events. This also simplifies scaling and makes them more resilient to failure.

Secure:
Always assume your solution will be subject to some sort of malicious activity and try to prevent it. This means restrict events and users, minimising attack surfaces and following best practice data handing and security processes.

Parallelizable:
Many small systems are usually cheaper that one large one, even in the cloud. Therefore find ways to scale-out your solution and its processing & messaging, rather than scaling-up.

Automated:
Every cloud-based component and also your overall solutions should be able to be deployed, started, stopped & reset via scripts. Remember to test this from a command line, from the beginning of development through to your Operational Acceptance testing (and even as a means of testing Disaster Recovery processes).

Resource-consumption-aware:
So, you now have almost limitless processing and storage resources at your fingertips. But you also either have your credit card charged as you use the service or are going to get an invoice for what you use very soon... Therefore, always consider using the least amount of cloud resources possible. Simplify your solution, build & burn of components & environments, automate components to start & stop only when they are needed and don't store more than you need (e.g. by sharing test data across solutions & environments).

Wednesday, December 9, 2015

Disrupt Or Get Disrupted

There's a couple of phases that have been going around in my head for the last week or so.



These are:
- If you're not part of the solution, you're part of the problem
- Change is the only constant



Both reflect my feelings about the current progress of digital transformation across a range of industries. From taxi services through to financial institutions, new models of working based upon technology and data, have now disrupted existing companies and sometimes entire markets.

So if change is happening all the time....



Who is leading your disruption?
You probably have at least one person in your organisation who is the advocate of digital change. They may be a lonely voice shouting about the need to 'embrace change', 'test and learn', ' fail forward' or 'adapt agile'. Or they may be a senior manager with the drive, staff and responsibility to push digital to the top of the agenda. either way, these people need the support of the exec team and remit (including budget) to trial new things that could mean the difference between your organisation being a Blockbuster or the next Netflix.



When will the change happen?
Most of us are among the disrupted rather than the disruptors - Only 7% of companies surveyed by Gartner in 2014 felt they were truly digital and of the remainder, only 83% felt they would be digital by 2017.

An inability or resistance to transform and adapt in an ever-changing world is a big failure these days. Nothing stays the same for very long in business and This Shit is Gonna Get Faster.



Don't be complacent
Larry Page and Sergey Brin once said "Google is not a conventional company. We do not intend to become one." Does your organisation run on apathy and complacency? If so... change get it or stand a significant chance of disruption!

Thursday, October 24, 2013

Is the future of the Chief Digital Officer at risk?

In a recent report by Gartner called "Top Industries Predicts 2014: The Pressure for Fundamental Transformation Continues to Accelerate" [link] it's predicted that nearly two-thirds of government organisations with both a CIO and chief digital officer role will get rid of one or the other. This will eventually happen because of the overlap between the two and further changes across the business.

This announcement may seem a little premature, since the role of Chief Digital Officer is only just taking shape in the minds of some organisations and their boardrooms. To therefore announce it's redundancy before it is fully embraced could be seen as just headline grabbing (or link bait).

However, I agree with this viewpoint. Furthermore I not only believe that the future of the Chief Digital Officer post is at risk, but that it should be seen as an interim position along the path to full digital adoption. In other words... if you're aiming to be a CDO in several years time, you are probably planning for the wrong future.

But let's take a small step back to the present. Where the role of Chief Digital Office is definitely needed by some public and private sector bodies, with others having already hired & found their CDO. This person should neatly sit between the roles of the Chief Marketing Officer (CMO) and Chief Information Officer (CIO), to help both on their journey forward to the creation of a vision, where digital benefits are fully utilised & integrated across both teams and further afield.

In some circles the title of CIO amusingly used to stand for "Career Is Over". However it is really the CDO who should not only assume they are out of a job eventually, but should plan for this as part of their wider responsibilities.