Analysts from major research firms Gartner Inc. and IDC have recently emphasized that mobile app developers have to think differently from traditional practices or mobile app projects are at risk of falling short.
If enterprises don't change their tune on mobile development and instead stick with traditional desktop app development techniques, their efforts will fail, said Gartner analyst Van Baker (click here for report).
"Enterprise application development teams use traditional practices to define and develop desktop applications; however, most don't work with mobile app development, due to device diversity, network connectivity and other mobile-specific considerations," said Baker during a presentation to IT leaders in China. "Instead, [application development] managers should use functional, performance, load and UX testing, as well as agile development practices."
IDC analyst Al Hilwa in a recent research report (click here for report) spoke of a "mobile disruption" to which enterprises must adjust in their development efforts.
"The central problem in mobile application development is addressing the variety of platforms and devices that employees can bring into the enterprise in a productive and agile manner," Hilwa said. "Enterprises are different and negotiate the decisions around choosing these approaches differently, but all have to navigate the next decade of application revamping to accommodate the disruption caused by the mobile revolution."
Hilwa clarified his views in an interview with John K. Waters (click here for interview). Hilwa said the explosion of mobile devices in the workforce has forced enterprises to use a more strategic approach to app development, and move the efforts in-house.
"Since 2012," Hilwa said, "enterprises have begun to tackle mobility more strategically by tagging their internal custom application development teams to skill up on mobile application development and take a more systematic approach to developing suites of applications that overhaul how certain internal business divisions, especially mobile sales and field forces, operate."
Baker agreed that the wide variety of mobile form factors was a thorny issue for developers and one of the main reasons they have to change their approach, eschewing traditional desktop development techniques such as having developers sit down with users to define app requirements.
"There are several reasons these efforts don't succeed for mobile applications, even though they've worked historically," Baker said. "First, mobile apps are a new category for most users and second, mobile apps are constrained by the nature of the platform and the size of the screen, so porting the workflow of a mature desktop app is not viable," Baker said. "Finally, the experience associated with mobile devices is significantly different from that of desktop devices, including shorter session lengths and limited presentation, due to screen size constraints that affect how mobile apps need to function."
Because most user complaints about mobile apps concern the UX -- caused by a poor UI design, app workflow or app responsiveness -- developers should focus on first designing an optimal UI and then incorporating a workflow that mirrors how users really work.
"Letting the users experience what the application will look like and building the screens on the fly with the appropriate tools will ensure that the initial build of the app looks familiar to the users and is close to what they'll need once the application has been piloted or deployed," Baker said. "This alone will result in a higher chance for a successful development effort."
Hilwa also had some advice for organizations, "Because app dev tools, frameworks, and middleware aimed at enterprises are increasingly integrating HTML5 support, it will be in the best interest of enterprise developers to "embrace the Web ecosystem of skills and set up Web developer teams along with existing Java and Microsoft ecosystem developer teams."
Also, Hilwa said, "Enterprises moving from a tactical to a strategic approach to mobile app development will want to "embrace an API architecture for back-end systems." In fact, "such enterprises should begin re-architecting their back-end systems and data assets into API services before embarking on extensive mobile application building."
"Mobile apps are different," Baker concluded. "They need to be frequently revised to meet end-user expectations, and this agile development process especially requires operations to be on top of infrastructure and systems to support frequent mobile app deployments and pushed updates.
Mobile app development is clearly differnet than desktop development, but with an experanced team and good strategic plan the process can be seamless.