Enterprise Mobility

Enterprise Mobile Strategy

Mobile space is rife with the advent of new Smartphone OS like the iOS and Android OS. The changing business landscape demands enterprises to respond to market changes and customers’ needs more rapidly. This is compelling them to take strategic mobile initiatives aimed at increasing an enterprise’s productivity.


Recently a Sybase Survey by Kenton Research highlighted that this year 21% of IT Managers surveyed are looking to introduce 20+ Mobile Applications into their organizations.


Enterprise app development has the potential to improve all parts of the business, including monitoring the effectiveness of your sales team, creating inspiring brochure ware for your customers, reporting on faults within the production line, understanding the financial health of each department or saving on printing costs. Think of a problem and there’s an app that can be developed internally to help resolve that issue.


An Enterprise Mobility Strategy should encompass both internal-facing as well as external-facing applications.

Common Internally Deployed Applications

  • Dashboard consisting of Key performance indicators (KPI)
  • Business Intelligence is the major area covered under internally deployed application.
  • Access and Capture data.
  • Performance based training helps make the understanding of the apps much clear.
  • Easy access to the apps, anytime and anywhere.
  • Streamlining the information flow.
  • Increasing process throughout.

Common Externally Targeted Apps

  • Create brand awareness through brochures/flyers.
  • Constant exposure in branding.
  • Recognize the right kind of revenue streams.
  • Processing new transactions.
  • Interactive experience gained through marketing process.
  • Helps in replacement of manual procedure.
  • Consumer empowerment.

Here are few core components that need to be defined for defining an overall Enterprise Mobile App Development strategy:

  • What are the business drivers for your Enterprise Mobility initiatives?
  • Is it going to be Internal Targeted or External Customer facing application or both?
  • Mobile Hardware and Platform support.
  • Select the right framework – Mobile Native Application, Mobile Web Application or Hybrid App
  • Mobile Web Services for Mobility
  • Mobile Data Security & Deployment
  • Mobile Device Management.

Enterprise Mobile Architecture

Determining the best architecture for your Enterprise Mobile Applications is the most hotly debated topics between Enterprise Software Architects. With multiple devices and Mobile platforms available from Apple, Microsoft, Google, Blackberry it is very important to understand whether you need Platform Specific or Cross Platform Application.

Platform Specific Mobile Application

Even though there are certain specific areas where device specific applications are appropriate, it is usually more advisable to build your application which is platform specific rather than device specific. Both Apple and Android provides design guidelines for creating "universal" applications. In other words you can create an iOS application that will work fine on both iPhone and iPad and similar can create Android application that works on Android Mobile Phone as well as on Tablet devices.

Figure: Creating Platform specific Application that works on both Mobile or Tablet Device

Though you might just need to support one platform today it is noticed that as the time went along, may organizations have ended up in a position wherein there is a need to support multiple platforms. It is very important for organization to determine if there will be such a need in future and if so cross-platform mobile architecture is still a good choice.

Cross-Platform Mobile Applications

If you want to support multiple platforms from day one or might have a need to do so in future, Cross Platform Mobile Application Architecture should be examined to determine if this will be appropriate choice for your project.

Figure: Cross-Platform Mobile Application Architecture

While majority of code base and logic between cross platform applications there is always need to change the user-interface depending on the Mobile devices you are planning to support.

Depending on your situation there may be several mobile architectures: Native Mobile Application, Hybrid Mobile Application or Mobile Web App approaches that might fit your business. In coming sections we have identified advantages and disadvantages for each Mobile Architectures.

Native Mobile Application

Native applications are the applications which are installed, compiled and executed on Mobile devices. For various Enterprise Mobile development needs, native application provides framework and platform to deliver necessary performance and user experience.

Native application is build using Object-C on iPhone & iPad devices or by using JAVA / Google SDK for Android devices.


How we have addressed this Expertise

  • An Enterprise iPad Product Catalog App

    An Enterprise iPad Product Catalog App for Bosch Rexroth.

    Learn More
  • Radar Detection Application

    Productivity on the drive – check out the red light cameras!

    Learn More
  • Award Winning Android Application

    Award Winning Android Application, where end users can connect Android & Home phones via Bluetooth enabled device- PhoneLynx BT215i.

    Learn More
  • iPad App for Auto Industry

    View Product Brochure and Process Claims via Enterprise iPad Application.

    Learn More
  • A Product Catalogue on the iPad

    An application that brings product catalogues on the iPad.

    Learn More

Advantages    Disadvantages

  • Offline Access - One of the biggest advantages of native application is that native apps do not need to be connected to internet to use your application.
  • Native Applications can make use of all the libraries available in SDK – Camera, Geolocation, Address book, Device Integration, Augmented Reality, Near Field Communication and many more.
  • Native Applications have more Richer and Immersive Experience than Mobile Web Application
  • Flexible Synchronization – Native apps can be configured to periodically sync with various back-end data sources which can be very helpful in no connectivity zone and can reduce data costs, while roaming.
  • Push Capabilities – Native Apps can use Push Notification Technology available on many Mobile devices to automatically update data rather than relying on the user to log into the web application.

Mobile Web Application

These days more and more companies are building Mobile Websites which are slightly scaled down versions of their main website optimized for small screens. Mobile Web Apps are similar in certain aspect, except that with the use of HTML5 and CSS3 one can create mobile-device-centric user interfaces as you can see in below examples:


With iOS devices like iPhone, iPad, iPod and Android –based products all coming up with powerful Web Browsers, Mobile Web Applications are getting more popular day by day.


Mobile Web Applications works in similar way like how your website works, i.e., you load the content of the page when the user requests to view that page. Here are few advantages and disadvantages of using Mobile Web Application Architecture:

Advantages    Disadvantages

  • Since Web Apps can be updated and managed just on web server, there is no need to manage different builds, manage distribution and installation and update client side applications.
  • With beautiful crafted HTML5 and CSS3 transitions user can get highest possible browsing experience on all platforms.
  • HTML5 can also take advantage of some of the native features such as location based services, offline caching, etc.
  • No need to change your existing infrastructure, build processes or development capabilities. The Mobile app work and functions "as is" like your Website Application.

Hybrid Mobile Application

Hybrid app development uses best of both worlds – employing native capabilities as well as HTML5 capabilities. A hybrid application is a native, downloadable application that runs some of major of its user interface in the embedded browsing component


With Industry heavyweights like Apple, Google and now Microsoft (from Windows Mobile 8) all supporting HTML5, it makes lot of sense for business to adopt the technology as soon as they can. One of the main reasons why Business users were reluctant of adapting HTML5 is its limitation of accessing native device features. But by using Hybrid Mobile Application framework it is possible to access all native features in your application. Accessing Mobile native features is not the only difference between mobile web apps and hybrid apps. Another important difference is that Hybrid Apps are distributed via App stores – that means you can actually download and install hybrid apps – instead of just browsing.



Advantages    Disadvantages

  • Hybrid applications are programmed using familiar technologies for programmers, but can be packaged as native application using tools such as PhoneGap.
  • Hybrid Applications can be distributed via App store and installed on devices – like native apps.
  • There are numerous toolkits available such as jQuery Mobile, Sencha Touch, dojox.mobile, etc that are fully compatible with Hyrbid Mobile App development model.
  • Development cost it bit less than native apps.
  • Code can be leverage between different platforms (Apple iOS, Android OS, Microsoft Mobile, etc) to certain extend.
Quick Comparison Chart
 

Show me the Right Way? Web App, Native App, Hybrid App, Think Client?

Now that you have a better picture on selecting a single platform v/s cross platform application, the next step is to determine other dimensions of Mobile Application Architecture – selecting web app vs. native apps vs. hybrid apps. Each of these architectures presents its own strengths and weaknesses. It is important to weigh their advantages and disadvantages so that you can select the best approach for your Mobile Application.


eMarketer recently published a very informative chart of mobile vs. native application market share depending on the usage:

Mobile Internet Tasks for which US Smartphone Users Use a
Mobile App vs Browser, 2011

Mobile Web Services

Integrating a mobile application with back-end system is often difficult and a long process. This is not said to discourage business on development efforts, but to help them understand that a proper planning is a key for success of the project.


First of all you will have to make fundamental Mobile Architectural Decisions. There are 2 primary protocols available for developing Mobile Web Services: SOAP and REST.


SOAP

SOAP is a protocol specification for exchanging structured information (as shown in diagram below) in the implementation of Web Services

REST

The acronym REST stands for Representational State Transfer, this basically means that each unique URL is a representation of some object. You can get the contents of that object using an HTTP GET, to delete it, you then might use a POST, PUT, or DELETE to modify the object (in practice most of the services use a POST for this).

Each of those two frameworks has its own features and shortcomings.

  SOAP REST
Advantages » easy to consume (XML)
» development tools
» built-in error handling (faults)
» built-in type checking
» extensible
» standardized
» lightweight
» human readable results
» easy to build
» closer in philosophy and design
   to the web
Disadvantages » more difficult
» heavyweight
» verbose
» harder to develop
» tied to HTTP
» lack of standards support for security,
   policy, reliable messaging, etc.
» assumes a point-to-point
   communication model

Question is which type of web services to implement and consume for an Enterprise mobile application.

For this we have laid out a quick way to find out the best Web Services Protocol for your Mobile application depending on your business needs.

  • EASE OF IMPLEMENTATION AND MAINTANENCE
    Winner: SOAP (As it is older technology and hence widely available in Enterprises)
  • HEAVYNESS/LIGHTNESS
    Winner: REST (REST is definitely lightweight compare to SOAP and one can easily implement and consume JSON service which matters a lot for mobile applications.)
  • CACHING
    Winner: REST (Since HTTP based / Rest-ful APIs can be consumed using simple GET requests, intermediate proxy servers / reverse-proxies can cache their response very easily. On the other hand, SOAP requests use POST and require a complex XML request to be created which makes response-caching difficult.)
  • SECURITY
    Winner: SOAP/REST (Both SOAP and REST have equal advantages and disadvantages in security area)

CONCLUSION

REST-based services are more adequate and preferred choice for iOS and Android Mobile App development needs. If you are developing web-services from .scratch you should consider using REST-based services for your Mobile project. If you already have SOAP based services ready you should evaluate if they are lightweight, and there are no issues in caching and proxy generation for consumption. If that's the case SOAP based services can be used in this case.

Mobile UI Design

The logic of providing simple, optimum and effective user interface to the technological devices is known as User Interface Design.


User Interface Design of a mobile application grows and evolves on a continuous basis. To be modern and contemporary, it is important to keep an eye on new trends, new resources available, and new techniques that can be implemented. Along with being updated, it is also necessary to try new things or methods at own risks which can help to come up with new original ideas and implementations.


Nowadays, as we all know that a mobile device is very important in everybody’s life not only as a communication device but also for day to day work. People are totally dependent on mobile devices for their regular business related or personal activities. Similarly, the significance of UI design in mobile can be imagined.


In order to do UI designing successfully, it is significant to first to identify and understand the requirements of an application and users. User centered designing once done appropriately helps in cutting down the costs and also it is useful to increase the amount of user satisfaction and productivity.


Mobile UI Principles

  • The interface should be easy to use from the very first time the user interacts with it
  • In a perfect User interface, user should never be allowed to commit mistakes
  • The interface should be simple, and unnecessary functionality should be avoided
  • The visual design and the layout should be easy and uncluttered
  • Visibility of the important information should be maximum
  • Users should be always in control of the interface
  • The navigation should always be narrow and shallow
  • The vertical scrolling should be minimized as much possible and horizontal scrolling should be avoided
  • Useful and interactive error messages should be provided to users
  • It should be ensured that the system response time is fast
  • Wizards should be used to simplify complex interactions

The stages of User centered design are


1) Analysis of User requirement:

Ensuring that the connection between the backend system and the server is done properly and secured enough is very important.

2) Conceptual Design, Prototypes, and Evaluation:

It is necessary to make sure that data exposure and replication is as fewer as possible throughout the communication stack.

3) Design and Implementation:

The communication happening through wired or wireless networks from the devices is secured or not. It is important to check with the security of communication channels.

4) Conducting Usability Evaluation:

Ensuring security of encrypted device resident data is also important.

5) Launch and Maintenance:

Application security is also equally necessary ensuring proper application permissions are taken; data access related security is properly done; etc. It involves use of various software, hardware, and procedural methods to protect the mobile apps from the external threats.

Mobile Application Development

Mobile technology is becoming increasingly important in today's world. Softweb Solutions prides itself in providing for cutting edge Mobile App Development solutions for various platforms like Apple iOS, Android OS, Blackberry and Windows7 Phone.

IPhone & iPad Application Development

Softweb Solutions offers custom solutions for consumer Mobile Apps development for the iPhone and the iPad. The Apps are developed into various categories like Utility, Social Networking Apps, Location Based Services, Media and Entertainment and others.

Android application development

As an early adopter of technology, Softweb Solutions has become a well-known entity in Google Android application development industry. We have an excellent team who can develop complex Android applications from scratch.

HTML5 Based App Development

Softweb works with the Sencha Touch framework, built specifically to leverage HTML5, CSS3 and JavaScript for the highest level of power, flexibility and optimization. It makes specific use of HTML5 to deliver components like audio and video, as well as a local Storage proxy for saving data offline. We have made extensive use of CSS3 in our style sheets to provide the most robust styling layer possible.

Blackberry application development

Being one of the reputed mobile solutions providers, we offer comprehensive solutions for BlackBerry Development, BlackBerry Software Development and BlackBerry Applications for radical tools. Our BlackBerry professionals have thorough knowledge of J2ME and MDS technologies. They also create BlackBerry compatible websites which best project your company in the market.

Windows 7 Phone Development

Softweb Solutions develops high-end windows applications using its expertise of Windows 7 Phone SDK. We have a group of talented developers who have excellent knowledge of Windows Mobile SDK, Visual Studio (Integrated Development Environment (IDE), .NET Compact Framework and SQL Server Mobile Edition thereby, ensuring the best results to the clients.

Data Security

Data Security points out to make sure that data is kept safe from corruption and access to it is rightfully controlled. It is a critical issue to secure the important information that may include – client information, payment related information, personal files, or bank account details.

Securing data on mobile devices is very important.
The key security criteria to be considered are


1) Data Transmission Security:

Ensuring that the connection between the backend system and the server is done properly and secured enough is very important.

2) Operational Data Security:

It is necessary to make sure that data exposure and replication is as fewer as possible throughout the communication stack.

3) Security of Communication Channel:

The communication happening through wired or wireless networks from the devices is secured or not. It is important to check with the security of communication channels.

4) On-Device Data Security:

Ensuring security of encrypted device resident data is also important.

5) Application Security:

Application security is also equally necessary ensuring proper application permissions are taken; data access related security is properly done; etc. It involves use of various software, hardware, and procedural methods to protect the mobile apps from the external threats.

6) Authorization and Authentication:

It is important to make sure that secure verification of user identity and roles is being performed for the security of data.

7) Remote Administration:

This includes – ensuring central IT control over access, policies and profiles of apps and users on the device.

Data Security should be performed with proper overall planned strategy and risk assessment that enables to identify the risks involved. Once planning and risk assessment is done, the data security system should be bought into action immediately.

A good effective Data Security System involves a combination of proper technical measures, effective physical security, and a well knowledgeable staff.

Some common security measures necessary to be taken care of are:

  • Regular back up of the data should be taken and multiple backup copies should be stored safely
  • When the mobile device is left alone, password protection system should be always activated
  • Protecting the mobile device from any kind of physical damage to secure the data in it

Securing the data efficiently involves many steps and it is very time consuming too. But it is always better to secure data efficiently than actually losing the important data.

Deployment Planning

The deployment planning is an essential step in the Enterprise Mobility Strategy. Basically the users want iPhones, iPads, and Android devices to fasten the activities and so, the IT Department needs to manage application delivery and security. And the Management tools need to give both what they want.


Softweb Solutions partners with the enterprises in evaluating different integration scenarios where the App Deployment can take place particularly in the secured enterprise environment. Enterprise Mobile App deployment need to given additional thought, on the same lines as the Enterprise Solutions. The various scenarios where in Deployment planning is needed are

The various scenarios where in Deployment planning is needed are:

  • Microsoft Exchange ActiveSync
  • Standards-based Servers
  • Virtual Private Networks
  • Wi-Fi
  • Digital Certificates
  • Security Overview
  • Mobile Device Management

Mobile Device Management

Allowing access to the enterprise applications like the Corporate Mail, Calendar, Project Management and Business Dashboard applications will be important for enhancing productivity of the employees. With the advent of Mobility, the need is to seamlessly extend the access on to employee owned devices or company provided devices. Enterprises need to maintain the integrity and security of the Enterprise Resources along with allowing easy access to smart phones of the users. Softweb Solutions offers solution that provides IT Administrators full control over how and when can the mobile devices access the critical systems, applications and information.


Softweb MDM is bringing Mobile Device Management (MDM) services into its end-to-end mobile management solution to its clients. The service remotely secures and manages corporates’ iOS, Android, BlackBerry, Windows and Symbian devices.

In a three step process, Softweb seamlessly secures the
Data and Resources on the Mobility Devices


Enforce Policy

Softweb MDM limits your liability making sure your employees use their mobile devices within the bounds of your corporate policies. You can manage the devices by enrolling new devices, acquiring end-user policy acceptance, distributing pre-set profiles to new devices, rejecting rooted / jail-broken devices etc.

Manage Asset

Softweb MDM service enables management of your mobile fleet wherever they move. It allows actions like, tracking devices; managing application catalogues for each user group, alerting users to possible roaming challenges etc.

Secure Information

Softweb MDM can keep your company data safe on your mobile devices. It can remotely enforce passcode, lock devices, restore devices to factory settings, wipe sensitive data from compromised devices, do call barring and even disable device features like Bluetooth, Wi-Fi etc.