Traditional application servers such as WebSphere, WebLogic, and JBoss are dinosaurs tiptoeing through a meteor storm. Sure, IBM, Oracle, and Red Hat still have growing revenue in these brands, but the smart money should look for better ways to develop, deploy, and manage apps. The reason: cloud computing.
The availability of elastic cloud infrastructure means that you can conserve capital by avoiding huge hardware investments, deploy applications faster, and pay for only those infrastructure resources you need at a given time. Sound good? Yes. Of course there are myriad problems such as security and availability concerns (especially with the recent Amazon mishap) and others. The problem I want to discuss is that of application elasticity. Forrester defines application elasticity as:
The ability of an application to automatically adjust the infrastructure resources it uses to accommodate varied workloads and priorities while maintaining availability and performance.
I am not talking about The Donald here, thankfully. I am talking about how fervently impatient users are when it comes to website and mobile app response time. You can design a brilliant, luxurious, and intuitively interactive user experience, but if it doesn't perform well — as in response time — then the users will hate it. They don't want to wait. Why should they? They will just go somewhere else. Your job is to design and implement user experiences that are lovable and that performance spectacularly.
Application Performance Management Starts During UX Design
Forrester defines performance as:
The speed with which an application performs a function that meets business requirements and user expectations.
To insure speedy application performance, organizations should start application performance management (APM) during the application design process. Too few user experience (UX) designers understand the performance implications of their designs. But, application architects must also help UX design professionals by finding clever ways to:
They say "content is king." But, "context is kingier" when it comes to designing great smartphone and tablet mobile apps. Don't make the mistake of thinking that mobile app design is just about a smaller screen size or choosing the right development technology. Content and context are both important to designing great user experiences, but mobile amplifies context on five critical dimensions: location, locomotion, immediacy, intimacy, and device. Understand each dimension of Forrester's mobile context to design mobile apps that will make your users say "I love this app!"
Forrester LLIID: Location, Locomotion, Immediacy, Intimacy, And Device
Location. People use apps in an unlimited number of locations. And not all places are the same. A user may be in a quiet movie theater, at home in the kitchen, on a train, or in the White Mountain National Forest. Contrast this with desktop computers, stuck in places such as an office cubicle, home office, or kitchen. Laptops provide some mobility but are larger and less able to provide the immediate access of instant-on mobile devices such as smartphones, eReaders, and tablets. Location is a key dimension of context, driving different needs for users depending on where they are. Fortunately, GPS-equipped smartphones can use a geodatabase such as Google Maps to determine precise location.
Hockey god Wayne Gretzky said, "I skate to where the puck is going to be, not where it has been." For application development professionals, three megatrends show you where to skate to be more successful:
Megatrend 1: Get faster. The recession that started in December 2007 created a hunker-down mentality. The sentiment for IT became: "We need to do more with less." As we emerge from the recession, albeit in an unresounding way, the new sentiment is: "We need to get faster." The pace of business change continues to accelerate, and that in turn has intensified the need for application development professionals to deliver and change applications faster. The industrialization of application development has failed. Scrap it. You must get faster, and that means changing your process, changing your technology, and changing your organization. Software development is more akin to making a movie than to making widgets on an assembly line.