Q&A Part 1: Perfecto Mobile Talks About Mobile Development
March 30, 2015

In Part 1 of APMdigest's exclusive interview, Yoram Mizrachi, CTO of Perfecto Mobile talks about the challenges of mobile development.

APM: How is mobile app development and testing different than web and traditional app development?

YM: Development environment – When developing for web, all you need is a normal workstation and standard browser. With mobile, you need devices (which you must manage the inventory and maintenance of) attached to the workstation, either physically or through a cloud platform. As oppose to web, where your tools are the same as your target, with mobile, emulators are not always true to the real devices that are in consumers' hands.

Skill set – Native mobile app development requires a different skill set than web, especially depending on the platform – for example, developing for iOS (Objective-C or Swift) isn't the same as developing for Android (Java). While there are differences between browsers, because they all use the same language (HTML & JavaScript), and there are certain standards that all implement, it's much easier to develop for a multitude of browsers and can usually be done in parallel.

Functionality – Mobile offers many more engagements available for mobile that do not exist for web apps. Take sensors for example. There's a whole range of capabilities for mobile that involve sensors, location based, accelerometer or things like opening your hotel room door or tracking daily fitness. Plus, web browsers lack push notifications, which are arguably one of the most important features of mobile apps. With web development, push notification usually came in the form of "sending an email". With mobile, this is completely interactive and part of the overall user engagement.

APM: What factors determine success in the mobile development space?

YM: User engagement and experience is the most critical success factor. Because mobile apps feel much more personal than websites, users are giving experience much higher importance than they would with a website. Your quality is immediately reported publicly in the form of app store reviews and other social networks. This is not the case with web, where the overall quality is a much less discussed matter. If you don't have a good app, your users – or former users – will talk about it and write about it, and word will spread. Mobile is all about the user experience.

APM: What percentage of enterprises base their entire mobile software development life cycle on traditional waterfall or pre-agile practices?

YM: No more than 20 percent are strictly waterfall whereas about 80 percent practice agile, but of that agile group I estimate that 80 percent are in the beginning stages.

APM: What challenges do these enterprises face?

YM: The three biggest challenges:

Change of mindset. It's the movement from develop > quality assurance > Operations > DevOps. This means that at any given moment, you need full visibility into the product's state of quality.

Developers have to start thinking of quality first, instead of submitting hastily written code and relying on the quality assurance teams to catch their mistakes every time. Now they are the quality assurance team, as well as the development team. There's a greater sense of accountability for developers. While this may sound harsh, there is an impressive positive side effect – they're better developers that turn out better products. While it seems simplistic, attaching the original developer to a bug does encourage thorough adherence to both testing and best practices, as well as a greater focus on logical architecture and thus, fewer shortcuts that will be costly in the long run.

Finally, operations have to optimize. They need to upgrade continuously – often in 24-hour cycles, depending on the product.

APM: Is DevOps the answer to these challenges for mobile app development?

YM: Yes, with two caveats.

First, DevOps needs to become more enterprise friendly, or easily scalable, without sacrificing quality.

Secondly, in order to be able to truly implement DevOps, you need to have 95 percent of your testing automated, with the goal being that products can be released at any time without unknown bugs popping up. Manual testing cannot be part of this accelerated cycle. The mobile market environment does not allow you the time that Waterfall offered: you can't release a support for the new iPhone 6 months after its being released, this is simply not an option, so the question is not "is DevOps?" but "how DevOps?"

Read Part 2 of the Interview

The Latest

November 16, 2017

DEVOPSdigest asked experts from across the industry for their opinions on the best way to foster collaboration between Dev and Ops. Part 7, the final installment, covers IT Operations tools ...

November 15, 2017

DEVOPSdigest asked experts from across the industry for their opinions on the best way to foster collaboration between Dev and Ops. Part 6 covers DevOps and development tools ...

November 14, 2017

DEVOPSdigest asked experts from across the industry for their opinions on the best way to foster collaboration between Dev and Ops. Part 4 covers communication ...

November 13, 2017

DEVOPSdigest asked experts from across the industry for their opinions on the best way to foster collaboration between Dev and Ops. Part 4 covers more about combining Dev and Ops in teams ...

November 09, 2017

DEVOPSdigest asked experts from across the industry for their opinions on the best way to foster collaboration between Dev and Ops. Part 3 covers how to set up teams ...

November 08, 2017

Mainframes may be legacy, but they still run a lot of business. With so much in play, businesses run a great risk when practices for maintaining and developing on mainframe remain largely the same despite the rest of the organization undergoing significant change to keep pace with the latest DevOps trends ...

November 07, 2017

DEVOPSdigest asked experts from across the industry for their opinions on the best way to foster collaboration between Dev and Ops. Part 2 covers the personal interaction between Development and Operations ...

November 06, 2017

When you say "DevOps" one of the first words that comes to mind is "collaboration." But exactly how do we make this collaboration happen? This epic DEVOPSdigest list – to be posted in 7 parts over the next few weeks – intends to find the answer. DEVOPSdigest asked experts from across the industry – including consultants, analysts, organizations, users and the leading vendors – for their opinions on the best way to foster collaboration between Dev and Ops. Part 1 offers recommendations on how to get started with collaboration ...

November 03, 2017

It's 3:47am. You and the rest of the Ops team have been summoned from your peaceful slumber to mitigate an application delivery outage. Your mind races as you switch to problem solving mode. It's time to start thinking about how to make this mitigation FUN! ...

November 01, 2017

Throughout the software development and delivery process, each team plays a pivotal role in ensuring that the end result is exactly what is needed. However, all too often the software testing team, who come in towards the end of the cycle, is labeled as a bottleneck that slows down the process. But it is always important to see both sides of an argument and understand the pressures put on the testing team ...

Share this