Friday, January 6, 2012

A 'Smart Web' Pattern for Tomorrow’s Enterprise

With over 5 billion mobile subscribers and 627 million mobile web users, projected to reach 1.5 billion by 2015, 'Mobile Platforms' are here to stay. Most Enterprises want to take advantage of these platforms to stay competitive and provide value to consumers.

Despite widespread adoption what daunts most technology teams today is the maintenance of multiple code bases across Web, Tablets and Smart phones. Web applications were developed targeting desktops and laptops as smart phones were a luxury a few years back. However, enterprises have taken note of the recent mobile wave and added support for smart phones and tablets rather than a ground-up redesign. The immediate need was to get a mobile presence out there which was accomplished using an ‘App’ or a mobile website in addition to existing assets. This adhoc solution approach leads to code fragmentation and maintenance becomes a nightmare in due course of time.

The following article discusses in detail strategies that could be employed for building mobile frameworks and apps with maximum re-usability and minimal code fragmentation: 17 Solutions to Build your own Mobile Application

Enterprises look for a development pattern that helps in the development of Web Applications and native mobile apps (iOS, Android) in a seamless manner through a single application code base. The pattern should be flexible to accommodate existing web applications. Such a pattern could be achieved by having an abstraction layer on top of mobile platforms (created using COTS Products) and integrating new code with their existing web applications.

We explored various options available in the market and zeroed in on Titanium IDE provided by Appcelerator. Titanium follows the same pattern as followed by Java, in that it’s a ‘Write once , run everywhere’ platform. It creates an abstraction layer in Javascript that helps developers generate native code for individual platforms without going through the process of maintaining individual code bases. The generated project, essentially a collection of Javascript files could be integrated with existing code base resulting in a single code base across platforms. Of course, a few tweaks are required in the build process to create customized builds for each device but that’s a one-time effort. The entire development process is seamless and bodes well for the organization in terms of maintenance and gives them extra leverage to react to changes in this ever growing market.

Selecting the right COTS Product for Mobile Development is a challenge given abundant products available in market today. Titanium IDE is based on Open standards and generates native code for mobile platforms. It provides Out-of-the-box Mobile ecosystem and connections to Enterprise data, content and processes. This results in shorter development cycles, manageable code base and code reuse across platforms. Enterprises can spend their dollars building new features and reacting better to market changes by adopting the above 'Smart Web' pattern.

Laks Sundararajan is a Solution Architect with Prolifics and a key member of highly specialized team working on IBM WebSphere Portal, Content Management and Collaboration technologies. He has led the implementation of many global projects using IBM WebSphere Portal and has extensive background in design and development of enterprise portals. He specializes in providing Enterprise SOA solutions leveraging WebSphere Portal, Content Management, Tivoli and Mashup’s. He holds Masters in Information Technology from Carnegie Mellon University and a Graduate Degree in Engineering from BITS, Pilani.