The Test Environment Pizza
by Niall Crawford (Enov8 Director/CTO)
I had an “interesting” chat with a potential client this week. The conversation started normally with myself and my colleague going through the benefits of our Test Environment & Release Management solution, and then continuing to a “show and tell”. However, I could tell the client was somewhat distracted and had something “greater” on their mind.
So, I probed slightly & the vision became apparent:
“We want our Projects to Self-Service the Test Environments”
“OK”, I said, “can you provide me an example of which Environment?”
“Yes … A Test Environment for Payments”?
“OK”, I said, “a bit like ordering a Pepperoni Pizza online?”
“Yes, that’s right” said the client enthusiastically.
“OK! Stop the bus”, I said, “Three simple questions”
“Question ONE, do you know what your Payments Environment & Systems looks like?”
Answer: “Not really, we have some Spreadsheets & Wiki documents but they might be out of date”.
“Question TWO, are your current Infra, Data & Applications operations documented?”
Answer: “It depends on the team, I believe some do and some probably don’t”.
“Question THREE, can you currently create this platform from an Automate Script?”
Answer: “I think the Infrastructure guys have some Recipes & Scripts for MS SQL”.
Note: The latter answer amused me as there were about 150+ components, including Mainframe.
I find it somewhat crazy today, that IT Management and supposed “Subject Matter Experts” are suggesting this kind of nonsense and suggesting it seriously. I mean, sure if your environment and systems are simple enough you could offer complete automation and self-service. But they probably aren’t! Instead they probably consist of a complex web of components, relationships, processes and architectures that are poorly understood and out of date.
If an organization wants to establish Self Service Test Environment Management, then I’d offer this: “Understand your ingredients & learn how to cook first”. It might sound a bit boring. But it is 101 Environments Management. You can never expect to automate or self-service that which you don’t understand.
Do you ever wonder why the environment preparation or releases take so long? After all, the company just invested “zillions” on a whole bunch of great tools and a cloud framework.
So, you have decided you’re going to implement a Scaled Agile Framework (SAFe) and promote a continuous delivery pipeline by implementing “Agile Release Trains”…
It goes without saying, that the backbone of all organizations today is digital and independent of the end-products you provide, there is an inherent need to drive your features and solutions from conception to production…
I am continually ‘un-amazed’ when I go into large organizations and look at their ‘DevOps’ strategy. At a team level, it’s invariably no different to what we were doing back in the late 90’s…
The intention of environment synthetics is to provide ‘high-level of confidence’ applications (your system instances e.g. UAT Home Loan System) and their underlying component services…
DevOps & DevOps at Scale is little a bit like comparing the building of Sand Castles on a Beach to Town Planning. Here are 5 practices to promote as a way of preparing for a DevOps at scale capability…