Enterprises want to provide mobile apps for their employees and/or customers, but they often don't know why or how to build one. They just know they should have a mobile app.
"Companies come to us and ask us to build an iPhone app," said Anthony Franco, president and co-founder of design firm EffectiveUI, in a phone interview. "We ask why and they don't have a good answer."
EffectiveUI has built apps for Adobe, Boeing, FedEx, Level3, Microsoft, National Geographic, and TIAA-CREF, among others.
Franco said that what's missing in the enterprise space is an overall mobile strategy and an understanding of how an app will help both users and the company offering the app.
[Find out more about the next major mobile device, Amazon's Kindle Fire tablet.]
To complicate matters, he said there also isn't an established method for choosing the right development tools for the job.
1. Ask Why: Start with why. Franco said that it's critical for companies to ask why they want a mobile app and why it will help the end user. Without clearly defined goals, projects often flounder.
Evan Geerlings, VP of mobile at Trailer Park, an app design firm that has worked with major companies like American Express, Dell, and Warner Bros., said that savvy clients often have the "why" question answered but that less sophisticated ones may not have thought things through.
"Some need us to hold their hands and guide them about why we're suggesting an app or mobile Internet site," he said in a phone interview.
2. Ask How: The rationale for creating an app and the identification of its value to users can help answer how the app should be created.
Franco said there are three primary approaches: building native apps, using a development framework, and building Web apps. It can be a bit more complicated than building a hybrid mobile app that combines Web code and native code.
Brook Molla, chief software architect at EffectiveUI, said native code tends to be the best choice when performance is critical.
"If you're doing processor-intensive app development, that's when you want native apps," he said. "The pauses you might experience with frameworks might not be acceptable user experience."
Development frameworks or tools, however, often allow for faster development. Geerlings said his company had recently used Ansca Mobile's Corona SDK to create Dolphin Tale: Fling a Fish, a mobile app for iOS and Android that was launched in conjunction with the release of Warner Bros. Pictures' "Dolphin Tale" movie.
"Increasingly, clients [are] looking for us to build things quicker and cheaper than in native code," he said. "That's where tools like Corona come into play."
While acknowledging that developers can do more in native code--development frameworks generally only implement a subset of native mobile operating system APIs--Geerlings said that frameworks allow you to be on multiple platforms faster and at a lower cost. He estimated that Corona SDK enabled his company to complete Dolphin Tale: Fling a Fish in about half the time that the project would have taken in native code. But, he said, that assumes we're talking about a unique project. A native app that relies on template code can be completed very quickly.
Geerlings also praised EachScape, a seller of native code modules for Android and iOS that can be dropped into place like building blocks.
Molla said his firm didn't have a favorite development framework, but was familiar with a variety of them. He mentioned Adobe's various mobile development tools, Appcelerator Titanium, Corona SDK, and PhoneGap. But there are many more: appMobi, Gideros, haXe, Moai, Mo Sync, Rhodes, Tiggr, and Unity3D, to name a few.
"The tools are merging and becoming more competitive," he said. "It's still the Wild West."
Geerlings said that clients sometimes insist on the usage of certain tools.
As for Web technologies, Franco said that the more complex an app is, particularly if it relies on a complex business process, the more likely it is that the app should be a Web app. "It's maintaining one set of code rather than disparate sets of code on different devices," he said. "You lose control on native apps."
Web apps make a lot of sense for businesses, particularly when they're just presenting data from internal systems.
3. Ask About Maintenance: Franco and Geerlings both observed that clients often think about apps like media buys rather than projects that require long-term attention and maintenance. And that can present problems because app users have come to expect that apps are maintained and refreshed.
"There are not a lot of organizations thinking about an ecosystem, rather than an app," said Franco.
"Our clients are still trying to wrap their heads around that paradigm, that these apps are evergreen and have to be supported," said Geerlings.
For development companies, this is a trend with an upside. Geerlings said that deals often involve ongoing app maintenance fees.
4. Ask How Apps Fit Your Infrastructure: Franco said it's important for companies to understand that often what they want is not so much an app as a service. Sometimes that means a cloud backend is necessary.
But Franco said that his firm's clients often can't move their internal infrastructure into the cloud. "The cloud is generally for standalone apps that don't tie into things," he said. "For hardcore business apps, we're not seeing the cloud that much."
Businesses need to think about apps as extensions of their infrastructure rather than discrete projects, he suggested.
5. Ask Whether It's Simple Enough: Franco's final word of advice is to design software for your mom. "The age of the geek is over," he said. "Software development used to be done for power users." Thanks to Apple's iPad and the consumerization of IT, novice users are setting the expectations for user experience.
Simple software is easy to imagine, but Franco insists it's hard to create. "The gap between people who do it well and those who do it poorly is going to widen," he said.
If only there were an app for that.