18 Ways to Ensure Application Performance Before Rollout - Part 3
February 13, 2015

APMdigest asked experts from across Application Performance Management (APM) and related markets for their recommendations on the best ways to ensure application performance before app rollout. This final set of six recommendations covers topics including the development environment and deployment.

Start with Part 1 of this list

Start with Part 2 of this list

13. REPLICATION OF REAL-WORLD PRODUCTION CONDITIONS

Understand the logical complexity of your application, especially round trips at various levels of abstraction. Test the most logically complex components with production-like latency, reasonably complex inputs, and realistic load. Ideally, use the same profiling tool you would use in production, and make sure it can find meaningful problem correlations at scale. A top methods list will only show you where your time went processing your synthetic load.
Joe Rustad
Manager, Software Development & Architecture, Dell Software

Networked delivered applications are pervasive in todays businesses and its essential that we give developers and testers environments that that are "fit for the purpose" i.e. they accurately reflect the network an application is expected to run in - this ensures a much more robust application is produced and can substantially shorten the delivery time. Developers and testers can utilize industry standard tools such as Network Emulators which replicate the target networks and network conditions, eliminating any unwanted surprises when a new application is rolled out into the production environment.
Jim Swepson
Pre-sales Technologist, iTrinegy

14. CONTAINER TOOLS

Container tools provide the easiest, most effective and secure approach for ensuring application performance prior to rollout – not to mention, most affordable. An added level of virtualization that conveniently packages everything together, containers enable DevOps to decouple applications from underlying hardware and IT infrastructure, which among other things, make apps highly portable, as well as easier to share, test, deploy, fine-tune for performance and manage.
Don Boxley
CEO and Co-Founder, DH2i

15. BI-MODAL IT

Operations teams should adopt a bi-modal IT structure to optimize application release cycles and updates. A bi-modal structure focuses on increasing the application performance, speed and agility of operations, allowing for scaling applications and businesses without creating a shadow IT environment. By utilizing containerization to provide independent work spaces, applications can be optimized to increase performance. A bi-modal IT structure allows for a smooth development and deployment process from the onset.
Charlie Key
Founder of Modulus, a Progress company

16. COLLABORATION AND COMMUNICATIONS INFRASTRUCTURE

Investing time into developing a coherent Collaboration and Communications Infrastructure (CCI) plan that outlines a set of procedures and policies for IT and end-users to follow is vital to ensuring top service performance. Having a CCI strategy in place will enhance enterprise IT collaboration capabilities and help assure the performance and availability of collaboration and communications services in the production environment.
Mike Segal
Director of Solutions Marketing, NetScout Systems

17. APPLICATION DIAGNOSTICS

Developers must go beyond instrumenting their apps to provide diagnostics like crash reporting, service monitoring, and transaction trace.
Mike Marks
Chief Product Evangelist, Aternity

18. INCREMENTAL DEPLOYMENT

Successful rollouts are all about manageability. First, deploy in phases (vs. a big bang approach), so you can learn as you go and change course as needed, including rolling back. Next, and complementary to the phased rollout, have key performance metrics from production environment against which you can compare in the pre-production environment and during each step of the deployment. For todays complex application systems, this is best accomplished with cross-tier transaction response times. The ability to compare application performance snapshots before and after deployment is also extremelly helpful.
Anand Akela
Director, APM Product Marketing, AppDynamics

Consider deploying the application to a limited number of test users in each site to get some preliminary testing done. Set expectations for how the application should perform and give users adequate time to acclimate and validate the new application as part of their workflow. How are users receiving the new application? What is the user experience like? Are there any issues that need to be resolved immediately?
Bruce Kosbab
CTO, Fluke Networks

Bruce Kosbab Blog: 9 Key Performance Considerations for App Rollouts

Author

Pete Goldin

The Latest

June 23, 2017

Why Agile? DEVOPSdigest asked the experts for their opinions on what are the most important advantages of being Agile. Part 3 covers how Agile enables you to grow and adapt to change ...

June 21, 2017

Why Agile? DEVOPSdigest asked the experts for their opinions on what are the most important advantages of being Agile. Part 2 is all about speed ...

June 19, 2017

Earlier this year, DEVOPSdigest featured a list of expert opinions on the essential steps to become agile. Now that we have an idea on how to achieve agility, however, we have to consider why. What's the payoff? With this question in mind, DEVOPSdigest asked the experts — including analysts, consultants and vendors — for their opinions on what are the most important advantages of being Agile ...

June 15, 2017

In the development community, creating additional efficiency through improved collaboration has been prevalent for some time. But despite the head start on the rest of the corporate world when it comes to collaboration, many organizations function today as they did 15-20 years ago. Since time is money in the tech world, outdated collaboration is a huge missed opportunity ...

June 14, 2017

Given the efforts we put in these days to deconstructing monolithic applications, and using distributed microservices to make us more agile, the potential for app performance to take a nosedive because of unseen (and unanticipated) network congestion and outages is only getting greater. There is help at hand, though, in the form of new ways to program network awareness directly into your code ...

June 12, 2017

What if you discover a fatal error or an exploit in your app? What if your app is down during a crucial time? As a developer, how you react to a crisis can mean the difference between minor blip and an embarrassing or costly company blunder. Here's a crisis management plan to get things right when they go wrong ...

June 08, 2017

Recently, the results from SmartBear Software's annual survey, the State of Code Review 2017: Trends & Insights into Dev Collaboration were released. One point I found interesting is that it suggests only 66 percent of organizations can get releases out on time. Why are the other 34 percent struggling to get releases out the door? ...

June 06, 2017

Today's app development landscape is competitive and expensive. Thousands of apps are released each month, and user acquisition and retention are costing app developers millions. User abandonment is one of the main battles of every app developer — as every lost user means another wasted investment ...

June 05, 2017

Developers love using containers to build, run and ship applications in a flexible and simple way. However, the technology has received backlash for not being as secure as other (traditional) methods, such as Virtual Machines (VMs). Securing containers and securing VMs requires a completely different process. Below are four key differences between securing containers versus securing VMs ...

May 31, 2017

DevOps results in improvements in software delivery performance, according to a new first-of-its-kind study by CA Technologies to quantify the benefits for companies that combine DevOps methodologies with Cloud-based tools and delivery mechanisms ...

Share this