Welcome!

@DevOpsSummit Authors: Elizabeth White, Pat Romanski, Liz McMillan, Yeshim Deniz, SmartBear Blog

Related Topics: @DevOpsSummit, Linux Containers, Containers Expo Blog

@DevOpsSummit: Blog Post

Continuous Performance Validation | @DevOpsSummit #DevOps #ContinuousDelivery

Evaluate the continuous performance validation process

If you've been following along with the happenings here at Neotys, you know that we've recently pioneered Continuous Performance Validation (CPV), a process that enables teams to produce faster applications, deliver new features and enhancements in less time and simplify interactions across Dev, QA, Ops and business stakeholders.

Whenever a company presents a new concept to the industry, you might be inclined to only think of it as the next batch of marketing mumbo jumbo designed to sell you software you don't need. While it's wise to remain skeptical of burgeoning initiatives, it's also wise to, at the very least, explore concepts for yourself to determine if they could potentially improve your testing activities and application's performance.

While some of you may have already looked into Continuous Performance Validation, we'd like to take this opportunity to discuss the concept in more detail and explain why it works for organizations using process and practices like agile, DevOps, continuous integration, continuous development, and automated testing.

Hopefully, this article will allow you to sufficiently evaluate the Continuous Performance Validation process and the potential benefits it can provide to both your testing team and organization as a whole.

At Its Core, What Is Continuous Performance Validation?
Let's start by breaking down the phrase: what is performance validation and why should you do it continuously?

Performance validation involves checking the performance at every stage to prove that the performance is at the level you desire (this level being your predetermined SLAs). Validation requires that performance is meeting or exceeding the levels you previously set.

Continuous performance validation requires that teams test, monitor and improve performance at every stage of the application development lifecycle, from development to production, utilizing automated and collaborative tooling.

User expectations of application performance have never been higher. As a result, it is absolutely essential for organizations to validate performance continuously throughout the SDLC. Doing so will allow for the early identification and rectification of coding errors and other performance issues that can become much more expensive and bothersome to resolve later in the cycle.

How to Successfully Conduct Continuous Performance Validation
At the foundation of Continuous Performance Validation lies building blocks, or a set of performance test scenarios that sit alongside more traditional functional unit tests. Starting with components tests at the API level and progressing to system-wide business use cases that mimic how users actually use your app, these testing scenarios can be utilized throughout the development process so you can evaluate performance early and often, all along the way.

Development Stage:

During this stage, optimize individual components to test. Utilize a performance testing tool like NeoLoad to test API, web services and microservices - even if your app doesn't have a GUI yet. NeoLoad will help you integrate with a CI server, enabling the execution of performance unit tests on every build. This will not only allow you to spot performance regressions early, but it will also ensure that service-level agreements are met in each build.

Pre-Production Stage:

Here, also using NeoLoad, conduct system-wide testing with realistic conditions. You can leverage your unit test library to build more complex scenarios that include network virtualization and device/browser simulation. With Neotys' hybrid cloud load generation platform, you also have the ability to add a layer of geographic realism to your tests.

Production Stage:

In production, you'll want to validate performance for live users. With NeoSense, you can proactively monitor service-level agreements 24×7, run synthetic users alongside real users and monitor for the same test cases you used in pre-preproduction.

Throughout the Lifecycle:

With these load testing and performance monitoring tools, you will be able to collaborate throughout the entire software development lifecycle. Collaboration capabilities include:

  • Neotys Team Server for sharing designs and results
  • Reusable test scenario components
  • Exportable reports
  • Shareable dashboards
  • Notifications to 3rd party tools

Continuous Performance Validation is a powerful process for web and mobile applications that need to perform. If you'd like to start delivering faster application and new features in less time, join us for our live webinar on Wednesday, April 27, 2016 at 3:00 p.m. ET: 3 Keys to Continuous Performance Validation: Automate, Collaborate, Reuse

More Stories By Tim Hinds

Tim Hinds is the Product Marketing Manager for NeoLoad at Neotys. He has a background in Agile software development, Scrum, Kanban, Continuous Integration, Continuous Delivery, and Continuous Testing practices.

Previously, Tim was Product Marketing Manager at AccuRev, a company acquired by Micro Focus, where he worked with software configuration management, issue tracking, Agile project management, continuous integration, workflow automation, and distributed version control systems.

@DevOpsSummit Stories
DevOpsSummit New York 2018, colocated with CloudEXPO | DXWorldEXPO New York 2018 will be held November 11-13, 2018, in New York City. Digital Transformation (DX) is a major focus with the introduction of DXWorldEXPO within the program. Successful transformation requires a laser focus on being data-driven and on using all the tools available that enable transformation if they plan to survive over the long term. A total of 88% of Fortune 500 companies from a generation ago are now out of business. Only 12% still survive. Similar percentages are found throughout enterprises of all sizes.
For better or worse, DevOps has gone mainstream. All doubt was removed when IBM and HP threw up their respective DevOps microsites. Where are we on the hype cycle? It's hard to say for sure but there's a feeling we're heading for the "Peak of Inflated Expectations." What does this mean for the enterprise? Should they avoid DevOps? Definitely not. Should they be cautious though? Absolutely. The truth is that DevOps and the enterprise are at best strange bedfellows. The movement has its roots in the tech community's elite. Open source projects and methodologies driven by the alumni of companies like Netflix, Google and Amazon. This is a great thing for the evolution of DevOps. It can be alienating for Enterprise IT though. Learning about Netflix and their simian armies, or Facebook and their mind-melting scale is fascinating. Can you take it back to the office on Monday morning though?
For organizations that have amassed large sums of software complexity, taking a microservices approach is the first step toward DevOps and continuous improvement / development. Integrating system-level analysis with microservices makes it easier to change and add functionality to applications at any time without the increase of risk. Before you start big transformation projects or a cloud migration, make sure these changes won’t take down your entire organization.
Learn how to solve the problem of keeping files in sync between multiple Docker containers. In his session at 16th Cloud Expo, Aaron Brongersma, Senior Infrastructure Engineer at Modulus, discussed using rsync, GlusterFS, EBS and Bit Torrent Sync. He broke down the tools that are needed to help create a seamless user experience. In the end, can we have an environment where we can easily move Docker containers, servers, and volumes without impacting our applications? He shared his results so you can decide for yourself.
The Jevons Paradox suggests that when technological advances increase efficiency of a resource, it results in an overall increase in consumption. Writing on the increased use of coal as a result of technological improvements, 19th-century economist William Stanley Jevons found that these improvements led to the development of new ways to utilize coal. In his session at 19th Cloud Expo, Mark Thiele, Chief Strategy Officer for Apcera, compared the Jevons Paradox to modern-day enterprise IT, examining how the Internet and the cloud has allowed for the democratization of IT, resulting in an increased demand for the cloud and the drive to develop new ways to utilize it.