Cimdata Logo

Industry Summary Articles

Monday, April 02, 2018

Incremental Test Environment Management @DevOpsSummit

The Software Development Lifecycle (SDLC) methodology is defined by a series of software development stages. The individual stages will include, requirements analysis, design of the software, implementation or development of the software, testing of the software and continuous evolution of the software.

Testing is a critical stage of the SDLC and can determine the quality of software being released into live environments. Therefore, it is important to ensure that test environments are reliable and closely aligned to production.

Here is a list of possible trouble spots environment managers should pay attention to:

  1. Managing test infrastructure such as hardware servers, application servers, networking, firewalls, software components required for testing, build software required for testing releases etc.
  2. Managing test environments such as database clusters, UAT, pre-production and the data required for testing.
  3. Managing or monitoring Service Level Agreements (SLA).
  4. Planning and analysis of test environments.
  5. Monitoring servers and infrastructure.
  6. Environment maintenance.
  7. Effective communication between the test team and stakeholders.
  8. Bug or defect lifecycle and triage processes.

The importance of the test environment management process

In an ever-changing IT and software field, requirements shift as technology evolves. There is a complex intersection of three dimensions - cost, quality and time. Ideally, with sufficient budget and time, software teams will be able to build a high-quality product. In practice though, it's rarely the case that projects have ample budget and time. Every day, projects run over budget and into time constraints. As a result, the quality of the product is impacted.

Incremental Test Environment Management

Often, the reason for a bad quality product is that environment management isn't given high priority or the environment management process is not managed efficiently. With regulatory compliance such as Sarbanes Oxley, it's becoming important for IT to ensure that software or service is compliant with industry norms or business requirements.

Relevant problems faced by IT:

  1. Test environments differ from production environments in terms of the operating systems, configuration, software versions, patches, etc. The greater the distance between test and production, the greater the probability that the delivered product will have bugs/defects. This not only results in poor code quality, but may also lead to product failures in production or live environments.
  2. Poorly managed infrastructure assets can result in budget spikes and delayed testing processes.
  3. Poorly administered and poorly controlled environments and infrastructure assets can result in unintended consequences, poor configuration and a loss of change control.
  4. Root cause analysis of incidents and defects becomes challenging, due to the misalignment of test and production environments.
  5. Due to budget or time constraints, it's common for companies to assign the application developers as testers or for testers to directly test the code in production. This can result in a lack of accountability and poses a risk in the software development process. Sarbanes Oxley requires that IT companies maintain strict controls and accountability over their software development processes.
  6. Test teams also frequently clone or extract production data and use it for testing. This approach is time-consuming, error prone and may not meet data protection standards. Further, it isn't change-controlled and cannot be audited.
  7. Poor communication can result in misunderstanding of testing and business requirements and may result in failure to identify important defects.
  8. Bug or defect tracking tools need to be configured properly and a process needs to be in place to manage the lifecycle of bugs. It isn't uncommon for defects to be assigned to the wrong teams or people and for important information to be missing from the defects. This not only results in wasted time and money but may also trigger more defects at later stages.

Fixing bugs or defects in the early stages of the software development process is easier and more efficient than in later stages. It is also more expensive to fix bugs found in production than to fix them in earlier stages, specifically during testing when they should be brought to light. For this reason, organizations need to take test environment management very seriously.

This long list of possible issues can seem quite daunting. However.  implementing an efficient test environment management process that fits with a company's culture and stakeholder requirements can mitigate almost all of these roadblocks. For example, An e-commerce company may be building a new webpage to sell clothes online. Once the development team writes the code for the new webpage, the code is packaged and released into the test environments. Multiple test teams may have to test this component(s), across different environments, before it is approved for deployment in production, for usage by end users or customers. In order to ensure that the product is tested efficiently, test teams need to have the testing environments and other testing components pre-configured well in advance of the code release to test teams.

Further, these pre-configured assets will have to align correctly with the production/live environments, with minimal distortions and variations.  Many companies lack this process of efficiently managing the test environments, resulting in production bugs or failures, missed SLA's and poor quality of end products.

To view the original press release, please click here.

Search for Software Development Lifecycle on CIMdata.com

r
ipad background image

Featured Cimdata Reports

ipadcontent
PLM-Enabled Digital Transformation Benefits Appraisal Guide

The Guide is designed to help potential PLM users evaluate the applicability and payoffs of PLM in their enterprise, and to help existing users of PLM monitor the impact it is having on their product programs.

ipadcontent
PLM Market Analysis Reports

The PLM MAR Series provides detailed information and in-depth analysis on the worldwide PLM market. It contains analyses of major trends and issues, leading PLM providers, revenue analyses for geographical regions and industry sectors, and historical and projected data on market growth.

ipadcontent
PLM Market Analysis Country Reports

These reports offer country-specific analyses of the PLM market. Their focus is on PLM investment and use in industrial markets. Reports cover Brazil, France, Germany, India, Italy, Japan, Russia, South Korea, the United Kingdom, and the United States.

ipadcontent
Simulation & Analysis Market Analysis Report

This report presents CIMdata’s overview of the global simulation and analysis market, one of the fastest growing segments of the overall product lifecycle management market, including profiles of the leading S&A firms.

ipadcontent
CAM Market Analysis Report

This report presents CIMdata’s overview of the worldwide CAM software and services market. It also includes a discussion on the trends in the CAM industry and updates on the top CAM solution providers.