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

Technology Roadmapping

Technology Roadmapping

In today's rapidly evolving digital landscape, businesses must plan carefully to stay ahead of technological shifts. A Technology Roadmap is a critical tool for organizations looking to make informed decisions about their technological investments and align their IT...

What is Test Data Management? An In-Depth Explanation

What is Test Data Management? An In-Depth Explanation

Test data is one of the most important components of software development. That’s because without accurate test data, it’s not possible to build applications that align with today’s customers’ exact needs and expectations. Test data ensures greater software security,...

PreProd Environment Done Right: The Definitive Guide

PreProd Environment Done Right: The Definitive Guide

Before you deploy your code to production, it has to undergo several steps. We often refer to these steps as preproduction. Although you might expect these additional steps to slow down your development process, they help speed up the time to production. When you set...

Introduction to Application Dependency Mapping

Introduction to Application Dependency Mapping

In today's complex IT environments, understanding how applications interact with each other and the underlying infrastructure is crucial. Application Dependency Mapping (ADM) provides this insight, making it an essential tool for IT professionals. This guide explores...

What is Smoke Testing? A Detailed Explanation

What is Smoke Testing? A Detailed Explanation

In the realm of software development, ensuring the reliability and functionality of applications is of paramount importance. Central to this process is software testing, which helps identify bugs, glitches, and other issues that could mar the user experience. A...

What is a QA Environment? A Beginners Guide

What is a QA Environment? A Beginners Guide

Software development is a complex process that involves multiple stages and teams working together to create high-quality software products. One critical aspect of software development is testing, which helps ensure that the software functions correctly and meets the...