Over a million developers have joined DZone.
{{announcement.body}}
{{announcement.title}}

Top Three Challenges in Enterprise Mobile App Development in 2015

DZone's Guide to

Top Three Challenges in Enterprise Mobile App Development in 2015

· Mobile Zone
Free Resource

Download this comprehensive Mobile Testing Reference Guide to help prioritize which mobile devices and OSs to test against, brought to you in partnership with Sauce Labs.


countdown-157713


Enterprises are adopting mobile technologies at an unprecedented rate. As Business News Daily recently reported, 1.3 billion workers will go mobile by 2015, and with that massive number, the need for enterprise mobile apps can only skyrocket.


With that increase, many mobile app developers will be called upon to create internal mobile enterprise apps. These apps have many requirements and considerations that differ from the typical app destined for the public app stores. In this article, we will take the top three challenges and share some tips on how to meet these challenges:


  1. Security
  2. User Interface
  3. Choosing a Development Technology


Security

This subject leads our “Top 3” ranking because of its indisputable importance. Here’s a short list of security tips:

  • Authentication
    This is probably the most vulnerable place in the app because of the need to provide user credentials, such as login and password. In the shortened time available in rapid development, it’s really challenging to implement a secure authentication routine from scratch. Integration with the enterprise’s LDAP directory is usually required to ensure proper authentication, and it also offers the convenience of single-sign-on (SSO) across all enterprises apps.
  • Server-side validation
    It’s easier and more reliable to implement important checks and validations on the server, rather than on the client side. Such an approach has two advantages: app performance will not be slowed down by complex validations, and the logic will be always be up-to-date because of its on a central server — bug fixes, including security fixes, can be applied immediately without the need to update the app itself, because all the logic is on the server.
  • Encrypting data
    It’s always a good idea to keep all sensitive data encrypted, especially if it will be stored on the mobile device. This is usually accomplished with a secure container that protects the enterprise apps in cases where devices are lost or compromised.

It’s also important to remember that security is a flexible thing. The need for it directly depends on the type of app. For example, enterprise apps like mobile shops or bank apps with bill pay need to be secured more strongly than informational apps.

User Interface

Enterprise apps are typically used by employees within the organization, so, for these apps, functionality will beat out “beauty” in importance almost every time. This isn’t to say certain fundamentals shouldn’t be met – aesthetics will always be important – but most often, in the case of enterprise apps, excellent usability comes before aesthetic concerns. People are using enterprise apps to be better at their jobs, and they will more deeply appreciate an app for making their job easier than for how trendy it looks.

The key to creating a successful enterprise app is to emphasize intuitiveness. One way to do this is through the use of icons. Icons can be a great foundation for creating a useful and natural mobile UI. Use them to immediately explain a button’s functionality.

Also, don’t forget that you can override hardware buttons (for example, Home, Back, or Menu buttons). Doing this can add more intuitiveness to your app navigation. For example, in mobile browsers, the “back” button will navigate you to the previously visited page. It’s become intuitive – when you press a back button in any context, you expect to be taken to the last page you visited. You can incorporate this kind of intuitiveness into your app via those hard buttons.

Choosing Between HTML5 vs. Native

Choosing which development technology to use can be a real challenge, under any circumstances, but there are special considerations with enterprises. For many enterprises, there is a growing backlog of smaller, internally facing apps that need to be built quickly and efficiently.Before deciding what the best approach is let’s look at the technology approaches.

The two main approaches are native and hybrid/HTML5. Both have their pros and cons.

Obviously, if your app is targeting only iOS, and you have the budget, time and skills, it can be built as native, with the help of Objective C (or Swift) to gain more performance and total access to native features. This is a really rare situation, however, because of Bring your Own Device (BYOD) policies. You should anticipate the need to support a variety of mobile devices.

Meanwhile, HTML5 is constantly gaining momentum and becoming increasingly popular. Gartner, Inc., a leading information technology research and advisory firm, recently confirmed this trend by going on record to say that 90% of all enterprise apps in 2015 will be HTML5 or Hybrid and only 10% will be native.

So, for these enterprise apps, all the benefits of HTML5 in terms of cost, time-to-market, and portability across platforms overshadow the diminishing advantages of native development.

For more on the HTML5 vs. Native debate, take a look at this article, published earlier this year.

Originally posted on the Appery.io blog.


Analysts agree that a mix of emulators/simulators and real devices are necessary to optimize your mobile app testing - learn more in this white paper, brought to you in partnership with Sauce Labs.

Topics:
java ,opinion ,mobile ,enterprise mobile apps

Published at DZone with permission of Max Katz, DZone MVB. See the original article here.

Opinions expressed by DZone contributors are their own.

{{ parent.title || parent.header.title}}

{{ parent.tldr }}

{{ parent.urlSource.name }}