Mobile based enterprises architecture using Axis 2
Article Metadata
Contents |
Introduction
Today's enterprise computing world will not be complete if mobile devices and mobility is not considered as one of the component for design. Several challenges are faced by enterprise computing world while incorporating mobile devices in designs. One of the aspect of mobile based enterprise architecture is lightweight client development. The client developed on mobile has to be lightweight keeping the limited resources in mind. Hence the mobile client always has to be used as presentation layer or tier. At the business layer any enterprise technology can be used, most popular is Web Services. Web services makes the overall design extensible and manageable.
Architecture
The overall architecture can be visualized as a two tier architecture initially having mobile client(presentation layer) and Web service(business layer) along with a data store if any.
Mobile Client
The mobile client can be developed using several available platforms. Symbian or J2ME can be used for that purpose. The main capabilities required are web service accessibility. Symbian has a framework for accessing web services but it has to go long way so as to be used confidently in an enterprise application. The reasons are several one of the main reason is lack of automation tools and complexity. J2ME has a profile to help this. The mobile device mainly required to talk to web service. If overall situation is considered and if a simple and easy to go design is expected then Axis becomes an obvious choice as a web service to work with any mobile platform for two major reasons
# Axis web service can be accessed like a web page using a post / get http request from any mobile device # Axis web services are easy and open source.
Axis Web Service
Axis web service can developed using Axis 2 framework which is free and can be hosted in any j2ee container
Mobile Client and Web Service Communication
Usually web service clients communicate with the web service using SOAP over http, but this demands for SOAP processing capabilities for client. If mobile device uses the SOAP processor it may become unnecessary heavy since most of the time it processes lot of unwanted information too.
XML parser to parse SOAP
Instead of using SOAP processor the response collected by mobile device can be parsed using any suitable XML parser. This approach will let the developer select only that part of SOAP packet which is important. On Symbian, one can use CParser and on J2ME one can go for kxml.
Lightweight Web Service API
To keep the mobile client lightweight the web service API can be developed in such a way that it returns only relevant information, thus keeping XML parser less busy.
Feasibility
Developing enterprise application using this mobile based design and architecture is quite feasible. The main aspect is the network reliability and availability, with the availability of 3G networks and invent of 4G networks, accessing the enterprise servers from mobile clients is going to be quite reliable and fast.
Summary
Thus the mobile devices can play major role in tomorrow's enterprise applications. The lightweight mobile clients will help making the enterprise application accessible from variety of devices without having any special requirement. Axis web service framework may speed up the development of such designs, since it doesn't demand any special capabilities from the mobile client.


I recategorized this article from categories "Mobile Design" and "Mobile Design Patterns", into "Architecture/Design". Terms design and design patterns is used both to refer to SOFTWARE design by software architects, as well as UI design by designers. The intent of the category "Mobile Design" is to address Designers, whereas category "Architecture/Design" is geared towards SOFTWARE design and software architects. This article is rather addressing software design and software design patterns.
jaaura 18:53, 25 May 2009 (EEST)