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.
The requirements of an APM tool are now much more complex than they've ever been. Not only do they need to trace a user transaction across numerous microservices on the same system, but they also need to happen pretty fast ...
Performance monitoring is an old problem. As technology has advanced, we've had to evolve how we monitor applications. Initially, performance monitoring largely involved sending ICMP messages to start troubleshooting a down or slow application. Applications have gotten much more complex, so this is no longer enough. Now we need to know not just whether an application is broken, but why it broke. So APM has had to evolve over the years for us to get there. But how did this evolution take place, and what happens next? Let's find out ...
There are some IT organizations that are using DevOps methodology but are wary of getting bogged down in ITSM procedures. But without at least some ITSM controls in place, organizations lose their focus on systematic customer engagement, making it harder for them to scale ...
If you have deployed a Java application in production, you've probably encountered a situation where the application suddenly starts to take up a large amount of CPU. When this happens, application response becomes sluggish and users begin to complain about slow response. Often the solution to this problem is to restart the application and, lo and behold, the problem goes away — only to reappear a few days later. A key question then is: how to troubleshoot high CPU usage of a Java application? ...
Operations are no longer tethered tightly to a main office, as the headquarters-centric model has been retired in favor of a more decentralized enterprise structure. Rather than focus the business around a single location, enterprises are now comprised of a web of remote offices and individuals, where network connectivity has broken down the geographic barriers that in the past limited the availability of talent and resources. Key to the success of the decentralized enterprise model is a new generation of collaboration and communication tools ...
To better understand the AI maturity of businesses, Dotscience conducted a survey of 500 industry professionals. Research findings indicate that although enterprises are dedicating significant time and resources towards their AI deployments, many data science and ML teams don't have the adequate tools needed to properly collaborate on, build and deploy AI models efficiently ...
Digital transformation, migration to the enterprise cloud and increasing customer demands are creating a surge in IT complexity and the associated costs of managing it. Technical leaders around the world are concerned about the effect this has on IT performance and ultimately, their business according to a new report from Dynatrace, based on an independent global survey of 800 CIOs, Top Challenges for CIOs in a Software-Driven, Hybrid, Multi-Cloud World ...
APM tools are your window into your application's performance — its capacity and levels of service. However, traditional APM tools are now struggling due to the mismatch between their specifications and expectations. Modern application architectures are multi-faceted; they contain hybrid components across a variety of on-premise and cloud applications. Modern enterprises often generate data in silos with each outflow having its own data structure. This data comes from several tools over different periods of time. Such diversity in sources, structure, and formats present unique challenges for traditional enterprise tools ...
Today's organizations clearly understand the value of digital transformation and its ability to spark innovation. It's surprising that fewer than half of organizations have undertaken a digital transformation project. Workfront has identified five of the top challenges that IT teams face in digital transformation — and how to overcome them ...