All enterprise and business applications face the challenge of “last mile personalization”. These applications are designed on the “80% Rule” which means that they do 80% of what the typical customer wants and leave the remaining 20% to customization, or have the customer do without it. Trying to deliver software that does 100% of what every customer wants is impractical, not only from a software development and maintenance cost perspective but also because customer requirements constantly change. Achieving 100% of a moving target is impractical. It is the pot of gold at the end the rainbow which no one has been able to reach. Read more
The rapid introduction of a new smartphones from leading vendors with different screen sizes and operating systems has created a dilemma for Web and SaaS application vendors. These application vendors already have existing or new customers who are buying smartphones in increasingly large numbers. Application vendors thinking about developing native apps have two choices. They can either support all popular smartphones, which is very expensive, or they can support only one or two smartphones which means that many of their customers will be unable to access their app from unsupported smartphones. Neither choice is appealing. Read more
Native apps are the rage for smartphone users today. Every smartphone user wants native apps to download, and almost every software and services vendor is craving to have a native app for their product or service. Already the market for smartphone apps is in the billions of dollars and is forecasted to be hit fifteen billions of dollars in 2013. The rage for native apps is fueled by the phenomenal, ongoing success of the Apple iPhone and the Apple AppStore, and to some extent by the success of Google Android. Thousand of application developers, ranging from small, one-man companies to large corporations, have latched on to the desire to develop the next killer app or, in the case of corporations, to make sure that their product or service do not lag behind their competitors who have jumped on to the native app bandwagon. Read more
Desktops applications designed for Personal Computers in a Microsoft-dominated era have become bloated in terms of their sheer size as well as their user interface. The availability of huge amounts of cheap memory, increasing CPU speed and large screen sizes encouraged application developers to create huge applications that aimed to provide a lot of information and functionality on one screen. The most successful example of applications in this model is Microsoft Office. This is large and powerful application. One can even argue that it is an industry on to itself. The design objective of Office is to enable everyone to do everything. Successive version of Office provided increasing functionality and the application and its user interface became more and more complex. The vast majority of Microsoft Office users only used a small fraction of its capability. That became the Microsoft model and many other vendors clamored to adopt the same model. It is not surprising that Microsoft Windows Mobile and its predecessor Microsoft Windows CE were based on a similar model to address the needs of the growing number of mobile smartphone users. Read more
Services Oriented Architecture (SOA) has become one of the most popular, if not the most popular, way for application integration. Indeed many enterprise applications use SOA as their core underpinning by exposing the services provided by their applications and then consuming, or enabling third-party applications to consume these services in a secure and meaningful way. The key to SOA is that the services can be granular, and can be consumed by other applications using Internet standards such as SOAP and XML. SOA enables companies to build compound applications that can invoke specialized services from multiple providers, instead of having to create everything from scratch.