In 2013, APMdigest published a list called 15 Top Factors That Impact Application Performance. Even today, this is one of the most popular pieces of content on the site. And for good reason – the whole concept of Application Performance Management (APM) starts with identifying the factors that impact application performance, and then doing something about it. However, in the fast moving world of IT, many aspects of application performance have changed in the 3 years since the list was published. And many new experts have come on the scene. So APMdigest is updating the list for 2016, and you will be surprised how much it has changed.
Part 4 of this list covers the application itself.
20. APP COMPLEXITY
The top factor that impacts application performance today is application complexity. Modern day applications are spidery, with thousand of possible optimization points. It's a huge amount of complexity to deal with. It becomes very hard to predict performance ahead of time, and to understand the implications of a software change. Companies need to have real data derived from real-life test scenarios, and need to measure true end-to-end key performance indicators (KPIs) affecting the user experience.
Founder and CEO, Nouvola
21. APP DESIGN
The top factor that impacts application performance is the architecture of the application itself. Often times you see this when an application is moved or migrated to another environment. For example, the impact of a "chatty" application can be hidden or mitigated on a high speed local LAN, but once moved to the cloud, the slower telecom speeds expose this design flaw in the form of high latency.
Research VP, IT Operations, Gartner
Application design/architecture/complexity is the top factor that impacts application performance. It can be quite difficult to mitigate the effects of poor design, even with a great deal of additional work. Poorly designed applications may suffer from poor performance even with relatively low traffic.
Founder and CEO, Apica
Developing apps while looking only from a functionality perspective is one of the most fundamental mistakes in developing applications. You should design your application also from a performance perspective if you want to make sure you deliver a good application. Do this right from the start of the project and you will deliver a much better application. Ignoring this and trying to optimize the performance afterwards is very expensive and doesn't deliver the correct results.
Online Performance Consultant and Founder of Blue Factory Internet
Application architecture – which is part science and part art. There are definitely MANY factors we see impact performance, everything from infrastructure to poor coding to a badly designed database. But fixing these implementation aspects of a poorly architected application can be like chasing your tail, and bad design decisions can haunt you for the life of the application. Applications are complex, often comprised of shared services and deployed on shared infrastructure. The science is in understanding the relationships and interactions between the various components, and the art is in doing so without sacrificing user experience.
SVP Delivery, SOASTA
22. APP DESIGN: NEW FEATURES
Applications that perform well have to be built effectively and tested meticulously. As such, the biggest impact on application performance is new features. As developers introduce new code, overall performance is affected. Due to schedule pressures, there is often no time remaining to optimize performance. Balancing the demands of time to market and application performance is a requirement for all members of the development, ops, and executive teams.
Director of Engineering, Sencha
23. APP DESIGN: LATENCY
Ignoring latency in application design: Chatty applications that require significant communication or synchronization with other components over a network need to be designed with WAN latency in mind. Multi-step communication over the network may work fine in a low-latency LAN environment, but it can become a critical time bottleneck over a higher-latency WAN or over the Internet. Add cloud services with worldwide distribution to this mix, and you have a recipe for disaster.
Kimberley Parsons Trommler
Product Evangelist, Paessler AG
24. APP DESIGN: IO PATH
The top factor affecting distributed/clustered applications performance is the inability to secure an entire application IO path from compute to storage – leading to unpredicted performance and incapability to guaranty SLA. This often also results in a poor man's solution – underutilized servers reflected in siloed applications' resources to guarantee availability, usually in a multi-tenant environment. Containers reflect the next generation virtualization solution designed to take on significant chunk of the challenge. By taking a holistic application centric approach, IO path from compute to storage resource availability can be guaranteed amongst other entire application lifecycle ops.
VP of Products, Robin Systems
25. APP DESIGN: BUGS
There are many different types of software bugs, all of which can impact software performance. For C/C++ programmers, common bugs include execution state corruption, data structure corruption, race conditions, deadlocks and memory leaks. These bugs can appear regularly in software development. However, they can also appear intermittently, thus unintentionally getting into shipped products. These types of bugs cause the biggest headaches for software vendors, who have to attempt to reproduce an issue their customer is experiencing but often without the issue appearing on the vendor's test systems. In each case, programmers are unaware of, or misunderstood, their contract with the rest of the system. Fundamentally, even in well-developed software, bugs occur because people don't understand what their software really does.
26. APP DESIGN: SECURITY
I think application performance is a huge subject but with what the world of software is going through today a lot has to do with security. I believe that the ability to deliver applications which have been developed with security in mind from the start will have a significant impact on the final delivery. An application which is developed with security in mind has less chance to expose user's personal data and therefore less chance of being taken down by the vendor. High programing quality is not only the speed but also the quality of the code and quality includes secure code.
Cyber Security Evangelist, Checkmarx
Read Top Factors That Impact Application Performance 2016 - Part 5, the final installment of the list of top factors that impact application performance.
IT professionals tend to go above and beyond the scope of their core responsibilities as the changing business landscape demands more of their attention, both inside and outside of the office, according to the Little-Known Facts survey conducted by SolarWinds in honor of IT Professionals Day ...
Digital video consumption is viral and, according to a new study released by IBM and International Broadcasting Convention (IBC), more than half of the 21,000 consumers surveyed are using mobiles every day to watch streaming videos, and that number is expected to grow 45 percent in the next three years ...
No technology that touches more than one IT stakeholder, no matter how good and how transformative, can deliver its potential without attention to leadership, process considerations and dialog. In this blog, I'd like to share effective strategies for AIA adoption ...
Enterprise IT environments are becoming more heterogeneous and complex, with fragmentation permeating cloud infrastructure, tooling and culture, according to a survey recently conducted by IOD Cloud Technologies Research in partnership with Cloudify ...
One area that enables enterprises to reduce complexity and streamline operations is their virtual desktop infrastructure (VDI). Virtualization is a linchpin of digital transformation and effectively optimizing an enterprise's VDI is essential to moving forward with digital technologies. Delivering the best possible VDI performance means taking a fresh look at what "desktop" means today. The endpoint, or desktop, now can be a physical thin client, a software-defined thin client, a traditional laptop, a phone or tablet. To reduce operational waste and achieve better performance across the desktop environment, consider these five actions ...
In incident management, we often overlook the simple things in favor of trying to do too much, too soon. Why not make sure we've done the fundamentals properly? ...
The Input/Output Operations per Second (I/O) capabilities of modern computer systems are truly a modern wonder. Yet no matter how powerful the processors, no matter how many cores, how perfectly formed the bus architecture, or how many flash modules are added, somehow it never seems to be enough ...
By taking advantage of performance monitoring, IT and business decision makers can gain better visibility into their cloud and application performance. Dedicated performance monitoring has become essential for providing visibility into all areas of application performance and keeping the business running optimally ...
There may be no more critical emerging technology for IT organizations in the digital age than advanced IT analytics (AIA) — most commonly called “operational analytics.” It is with this in mind that EMA is launching what we believe is the first ever buyer's guide for AIA adoption ...