Cross-platform App Development Frameworks: An Aspirin for Developer Headaches

4 09 2012

One of the biggest challenges facing enterprise mobile app developers today is designing and developing apps across multiple platforms. In 2011, having a mobile strategy was imperative as the “consumerization of IT” and “BYOD” trends pervaded. As a result, enterprises now must shift their mobile strategies to support multiple mobile devices and platforms or else, lose the power to manage all the various devices within their environment.

Some companies can focus on developing apps for just one device type or mobile OS if the devices were company-issued, but this is becoming less and less the case. Businesses and brands must support more than one device or risk backlash from select employees for not supporting their non-supported devices. Keep in mind – as prevalent as the iPhone seems to be, Android has been caught up in popularity.

Cross-platform app development frameworks are becoming critical tools for developers because they’re designed to lessen the time and resources that developers or development teams has to allocate to creating apps for iOS, Android, BlackBerry, Windows Phone and beyond. By not spending excess time and effort creating apps to apply for different devices and mobile OSs, they can focus on what matters most – end user experience.

However, since each cross-platform development tool is unique and exhibits diverse features, capabilities and behaviors, developers will face increased challenges and opportunities designing successful device- and OS-agnostic mobile apps.

I recently spoke on a panel at Mobile+Web DevCon and my fellow panelists and I got into a discussion about the pros and cons of using cross-platform app development frameworks.

The Pros:

  • Reuseable Codes: Rather than having to write the specific action or sequence for each platform, a developer can just write the code once and then reuse those bits in later projects or on other platforms.
  • Plugins: Most cross-development frameworks offer easy access to plugins and modules that can easily integrate with other services and tools.
  • Easy for Web Developers: Most cross-platform frameworks are dynamic and simple for web developers to jump in and use, because many of these frameworks support HTML5 and CSS3.
  • Reduced Development Costs: This is perhaps the biggest advantage because it allows companies and brands to get an app onto other platforms without having to invest in a separate developer or team.
  • Support for Enterprise and Cloud Services: In addition to plugins and modules for specific functions, most frameworks also have the option to directly integrate with cloud services, including Salesforce.com, AWSBox.net and others.
  • Easy Deployment: Deploying apps is much faster in a cross-platform scenario because it’s easier to incorporate one development code onto multiple devices. This is especially true with many of the new cloud-based tools that various frameworks are starting to push out.

The Cons:

  • The Framework Might Not Support Every Feature of an OS or Device: If, for example, Google, Apple or Microsoft adds a new feature, the framework being used will need to be updated to support those new functionalities.
  • You Can’t Always Use Your Own Tools: Most frameworks want users to use their own development tools and suites, and that can mean that a developer has to forgo his or her own preferences and use something else, even something unfamiliar.
  • Code Might Not Run as Fast: The cross-compilation process can sometimes be slower because it may take longer to load than native tools.
  • High-End Graphics and 3D Support is Often Limited: Fortunately, game-centric development platforms, like Unity, are here to help fill in those gaps.

When considering the pros and cons of app development, Josh Clark, Interaction Design guru, states that app design is one of the major factors cross-platform developers need to be aware of — whether they use a framework or not. Designing an app for the iPhone is different than designing one for a tablet; the UI and UX conventions are different, and touch points and menus work in different ways.

In addition to app design, it’s also important to factor in who the app is being developed for. This pertains to anything from the mobile web apps to e-publications to native apps.

Certainly a couple of years back, developers could quite safely shoot for iOS first, think about Android later and ignore everything else.  Now, there are many more options, and although its pros and cons are almost equivalent in nature, taking a cross-platform approach to mobile app design and development appears to be the wave of the future for app developers.

Regardless of which platform, if not all, you’re developing for, app testing will still be one of the most critical steps of the app development lifecycle. Just because an app works fine on iOS doesn’t mean it’ll work just as well on Android devices. Likewise, just because an app works fine on an emulator doesn’t mean it’ll work fine on a real device. So, test early, test often, and on real devices to ensure the quality of the app. A trend I’m realizing is that end-users are becoming very unforgiving about buggy apps which are, quite frankly, synonymous with “revenue- and reputation-killer.” App development is a hot industry and the market is saturated with app developers, so being blasé about app quality is not an option.

About the Author

Leila Modarres is the Head of Marketing at Keynote DeviceAnywhere which offers mobile app lifecycle management solutions. Visit www.keynotedeviceanywhere.com for more details.

Advertisements




ALM Systems Extend Mobile Reach With DeviceAnywhere

6 06 2011

The rise of smartphones, tablets and other mobile devices for business use has been a point of tension for some organizations in the past, especially within professions where “desk presence” was traditionally used to measure productivity. However, according to the latest Mobile Workforce Report by Visage Mobile, this viewpoint could be outdated, as employees are now thinking about work even during their personal downtime more than ever, thanks in large part to their smartphones.

Mobile is no longer a nice-to-have but a strategic asset that can be tied back to business objectives  and ultimately impact the bottom line. As a result, companies are now looking to roll out these technologies on an unprecedented scale and quality control is at the top of the IT department’s agenda.

As a result, DeviceAnywhere is proud to announce its latest extension for Rational Quality Manager 3.0.1 at IBM Innovate 2011 in Orlando, Florida. The deep integration of DeviceAnywhere’s Test Automation for Smart Devices™ and IBM Rational Quality Manager 3.0.1 provides a holistic approach for mobile enterprise app test management and execution.

The Test Automation for Smart Devices integration to Rational Quality Manger enables users to:

  • Test native and web apps on any device. Whether developing an internal or external facing app, businesses need to ensure compliance, performance and functionality before mass-rollout. Using the combination of Rational Quality Manager 3.0.1 and Test Automation for Smart Devices, users are able to create, implement and schedule automated tests on any mobile device or tablet. With rigorous automation, errors can be detected early, saving significant costs associated with bug fixes and performance issues that may be otherwise detected by end-users. Leveraging DeviceAnywhere’s patented technology, there are no limitations. All complex device features, such as accelerometer, swiping and pinching are supported.
  • Leaner, simplified, yet powerful, testing processes. Manual testing is a resource intensive activity. Test automation provides a much leaner way to ensure software quality while saving costs associated with redundant testing; freeing up valuable resources to focus on product innovation. Users of DeviceAnywhere Test Automation for Smart Devices have been shown to reduce testing time on average by 70-80%* compared to manual processes. Using the integration with Rational Quality Manager, users are able to achieve further time savings by creating structured scripts into high-level, device-independent test cases and low-level test steps (actions) that are implemented across chosen devices.
  • End-to-end management. Whether it is a standalone mobile project or a mobile product developed alongside existing assets, effective tracking is essential for any IT project. With Test Automation for Smart Devices, for each test case executed, all testing steps and proofs (screenshots, videos) are passed back to Rational Quality Manager for tracking and reporting to ensure projects are on track. Any issues can then be quickly identified, whether in the back office or on actual devices, and quickly assigned and tracked using a single management console. This improves bug resolution, time to market and ultimately return on investment.

The integration to Rational Quality Manager also enables DeviceAnywhere customers to transform their mobile application software delivery through use of IBM Rational’s Collaborative Lifecycle Management solution to enable active collaboration and end-to-end traceability.

If the latest market report from Gartner is any indication, the pervasiveness of smartphones and the commonality of always being connected will only increase. According to the research firm, a total of 427.8 million mobile communication devices were shipped during the first quarter of 2011, 24 percent of which were smartphones. IBM and DeviceAnywhere are subsequently working together to help developers, QA managers, engineers and business analysts take control of the mobile opportunity and bring quality mobile applications to market faster than ever before.

To learn more about this integration and our presence at Innovate 2011, please check out the full press release here.