The Test Environment Pizza
10
JULY, 2017
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.

Relevant Articles

What is Data Driven Testing? An Introductory Guide

What is Data Driven Testing? An Introductory Guide

Compared to about 100 years ago when I was a junior test engineer, software testing has evolved far beyond running a handful of manual test cases.  As systems grow more complex, testers and developers need approaches that ensure coverage, accuracy, and...

What is a Software Release? A Comprehensive Explanation

What is a Software Release? A Comprehensive Explanation

More than ever, delivering high-quality software efficiently is crucial for businesses. One term that frequently comes up in this context is "software release." But what exactly is a software release, and why is it so important? Defining Software Release A software...

Lower vs Upper Environments Explained and Compared

Lower vs Upper Environments Explained and Compared

In the dynamic world of software development, where speed, precision, and quality are non-negotiable, the effective management of IT and test environments is the linchpin that determines the success of projects. Environments serve as the critical stages where...

Deployment Strategies: 7 to Consider and How to Choose

Deployment Strategies: 7 to Consider and How to Choose

It’s common to hear people referring to their deployment strategy as “DevOps,” but that’s not quite accurate. DevOps is a philosophy and culture, while deployment strategies are more narrowly focused on the actual steps used to deploy software. A deployment strategy...

A Detailed Guide to Test Data in Auditing

A Detailed Guide to Test Data in Auditing

Test data plays an important role in the world of auditing, yet it is not always well understood. There’s nuance here that’s important to understand.   When auditors need to assess whether financial systems, applications, or controls are working as intended,...

Using Production Data for Software Testing

Using Production Data for Software Testing

In the world of software development, testing is an essential process that ensures the quality and reliability of a product before it is released to the public. However, traditional testing methods often rely on artificial or simulated data, which can lead to...