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

March 23, 2017

Mature development organizations ensure automated security is woven into their DevOps practice, early, everywhere, and at scale, according to Sonatype's 2017 DevSecOps Community Survey ...

March 21, 2017

When it comes to food, we all know what's considered "good" and what's "bad". We can all understand this simple rule when eating. But for many, when it comes to software development, simple rules and advice from nutritional labels aren't always there for us ...

March 20, 2017

Monitoring and understanding what software is really doing, and maintaining good levels of software quality is increasingly important to software vendors today. Even a minor bug is capable of shutting down whole systems, and there is a real risk that development cycle pressure competes with quality assurance best practices ...

March 16, 2017

More than half (54 percent) of IT professionals surveyed indicate they have no access to self-service infrastructure, according to a new DevOps survey of 2,000 IT industry executives by Quali.This means that more than half of respondents take a ticket-based approach to infrastructure delivery, impacting productivity and increasing time to market ...

March 15, 2017

Driven by the adoption of cloud and modernization of application architectures, DevOps practices are fast gaining ground in companies that are interested in moving fast – with software eating everything - between "write code and throw it across the wall" to creating more pragmatic mechanisms that induce and maintain operational rigor. The intent behind DevOps (and DevSecOps) is quite noble and excellent in theory. Where it breaks down is in practice ...

March 13, 2017

There might be many people across organizations who claim that they’re using a DevOps approach, but often times, the “best practices” they’re using don’t align with DevOps methodologies. They can say what they do is “DevOps”, but what we’ve found is that many are actually not following basic agile methodology principles, and that’s not DevOps ...

March 09, 2017

The velocity and complexity of software delivery continues to increase as businesses adapt to new economic conditions. Optimizing and automating your deployment pipelines will dramatically reduce your lead times and enable you to deliver software faster and with better quality. Here are three more most common areas that generate the longest lead times ...

March 08, 2017

Every enterprise IT organization is unique in that it will have different bottlenecks and constraints in its deployment pipelines. With that being said, there are some common problem areas that typically produce the longest lead times in your software delivery process. Here are the most common areas that generate the longest lead times ...

March 06, 2017

The findings of an independent survey of IT leaders, application developers and database administrators, conducted by IDG Research for Datical, indicate that database administrators are unable to keep up with the pace and frequency of database changes caused by the accelerated pace of application releases, thus creating a bottleneck and delaying digital transformation initiatives. An overwhelming number of databases administrators (91 percent) and application development managers (90 percent) cited database updates as the cause for application release delays ...

March 02, 2017

A "Boost Caboose" is a secondary engine pulled on a trailer for the explicit purpose of increasing the output of the primary engine. In many ways, DevOps is its own form of Boost Caboose for application of agile methodologies within the modern software factory and SDLC/ADLC processes ...

Share this