Essential Guide

Mobile development guide: Testing, requirements and security

A comprehensive collection of articles, videos and more, hand-picked by our editors

'Team mobile' takes shape

Enterprise software groups redefine themselves as 'team mobile,' as apps for smart phones and tablets take precedence over Web and desktop projects.

In software organizations everywhere, groups of developers and testers are coming together to form "team mobile."

Coined by me, the term "team mobile" nicely captures the key conclusion I've drawn in the course of reporting a series of articles on mobile development and testing. The mainstreaming of mobile applications has profound implications for enterprise development teams. Accustomed to working on Web and desktop projects, team members must now quickly master the new design, coding and testing challenges -- and the compressed timeframe -- that enterprise mobile applications demand.

Genefa Murphy, HP Genefa Murphy, HP

"The people being tasked to build mobile apps are the same people who worked on desktop and Web apps," said Todd Anglin, executive vice president for mobile toolmaker Telerik, based in Sofia, Bulgaria. "For the last 20 years they dealt with one platform, one form factor. Now, with mobile, all that is gone."

In this article, experts outline four key technology and cultural shifts occurring as mobile app development moves into the enterprise and "team mobile" takes shape:

  • HTML5 and JavaScript development align well with "team mobile" skill sets.
  • Mobile takes top priority, followed by Web and desktop projects.
  • Field testing on many different mobile devices is the new normal.
  • User experience skills, once peripheral, are a crucial skill for "team mobile" developers.

Why are mobile teams taking shape now?

For many organizations, the earliest enterprise mobile apps were essentially marketing projects. Designed to build brand awareness and alert customers about upcoming sales, for example, outside agencies typically developed these simple apps. That meant they remained far afield from enterprise development teams, said Genefa Murphy, director of product management and user experience for HP Software. "A lot of people outsourced their first mobile apps. They were simple, task-based systems, often designed for marketing events."

By contrast, mobile applications emerging today are true enterprise applications, in that they connect to key company databases and legacy systems, Murphy said. "You have to have an understanding of the back end in order to develop the front end that users see on their mobile devices." Early mobile apps didn't require that skill set, added Nathan Clevenger, chief technology officer for iFactr Inc., a St. Paul, Minn.-based firm that sells mobile tools for Microsoft developers. "They just were brochure-ware. They were built so companies could say, 'Yup, we have a mobile app.'"

HTML5 and JavaScript: A good fit for "team mobile"

Since the first mobile apps emerged, the question of which technologies would dominate mobile development has been an ongoing debate. The debate is far from over, but some mobile experts point to HTML5 and JavaScript as the most promising approach. They are singling it out more from a cultural than a technological standpoint. Enterprise developers are broadly familiar with these technologies, said Michael Gilfix, director of enterprise mobile at IBM. "They already possess Web skills, and now they are repurposing them for mobile."

HTML5 has been criticized as too slow, compared to a native approach, which lets developers take better advantage of mobile device features, such as the GPS and the camera. But "a native SDK for every mobile platform" can be too costly and time consuming to be practical, said Anglin. The native approach requires developers to create a separate app version for each mobile device, he added.

Cross-platform mobile development tools offer another alternative. From a single codebase, they generate code that is then compiled to different mobile operating system platforms. But fine-tuning that codebase for each mobile device is not trivial. "You still end up writing a lot of platform-specific code," said Clevenger.

Mobile first, then desktop

Settling on HTML5 and JavaScript as a mobile development technology of choice has another advantage. "HTML technology is a way to address reuse and ensure consistency by sharing code between desktop and mobile apps," IBM's Gilfix said. "You want to be able to write the biz logic and share it with other platforms," added iFactr's Clevenger.

A native SDK for every mobile platform can be too costly and time consuming to be practical.

HP's Murphy agreed that HTML and JavaScript make sense for enterprise mobile apps, enabling developers to share that codebase with desktop apps. She offered an example of an application for submitting employee expenses, which runs on a mobile device and as well the desktop. The desktop version allows employees to enter detailed descriptions of the expense, Murphy said. "But the mobile version lets them take a picture of the receipt and enter just the basics: the amount of the expenditure, the location, what [the lunch meeting] was about." The mobile version demands developers adopt what Murphy calls "the notion of a minimum viable product. It's a big change from 'the big app' mindset."

For team mobile, testing is a whole new ballgame

As "team mobile" comes together, testers face challenges that simply did not exist with desktop or Web applications. Mobile apps run on different devices and operating system versions, and they are deployed under a wide range of connectivity conditions that testers simply cannot replicate in traditional environments. Mobile teams are meeting those challenges in a variety of ways. "Some are outsourcing testing projects," said Murphy. Others are getting up to speed on mobile test strategies, such as using analytics to determine which devices to test on and where to deploy field testers. "With mobile apps, teams have to take a more strategic approach to testing than ever before," iFactr's Clevenger said.

User experience skills crucial for "team mobile" members

User experience (UX) skills aren't essential for developers of desktop and Web apps. But as enterprise mobile teams take shape, the ability to design the right experience for users of mobile devices is crucial. "With mobile, there is more focus on design and usability," HP's Murphy said. As enterprise development groups redefine themselves as mobile teams, they are acquiring UX skills by learning basic usability techniques and by engaging mobile usability experts to train team members, she said. Mobile developers must abandon the desktop app mentality, added Telerik's Anglin. "They are used to throwing things on the user interface and waiting to see what sticks." Enterprise mobile apps demand that software pros acquire a lot of new skills, he said. "But it's a fun space. They are working on what's next, not on what is last."

Is "team mobile" taking shape where you work? Tell us about it. Follow on @SoftwareTestTT

This was first published in March 2013

Pro+

Features

Enjoy the benefits of Pro+ membership, learn more and join.

Essential Guide

Mobile development guide: Testing, requirements and security

1 comment

Oldest 

Forgot Password?

No problem! Submit your e-mail address below. We'll send you an email containing your password.

Your password has been sent to:

-ADS BY GOOGLE

SearchSOA

TheServerSide

SearchCloudApplications

SearchAWS

SearchBusinessAnalytics

SearchFinancialApplications

SearchHealthIT

Close