This article discusses one of the more important trends in current application design and development, cross platform application, which impacts your product’s ability to reach different types of audiences that use various devices. When developing your Minimal Viable Product (Minimum Viable Product), cross platform application support immediately becomes a big challenge to the problem of reaching your target audience.
Responsive design is an approach aimed at building applications that provide an optimal viewing experience, easy reading, and navigation with a minimum of re-sizing, panning, and scrolling, across a wide range of devices (from desktop computer monitors to smartphones).
As the use of mobile devices continuously grows and everyday more users are browsing with web applications from their mobile devices as well as from their desktop browsers, the need to support cross-platform applications is growing and the ability to accommodate for this lies in building a responsive design application.
Challenges in building Cross-Platform Applications
There are many challenges when developing a cross platform application but the most important are:
1 – Resolution& Layouts – Taking into account iPhone and the most popular Android devices, the range can start at 320 x 480 pixels (iPhone 3s) and at least 426dp x 320dp for Android phones. In order to support different resolutions, you will need to think about the minimal resolution that your platform is going to support and in anticipation of others, provide adjustable layouts for different screen resolutions.
2 – Screen Density – Since screen density also changes across devices, especially when it comes to using graphics and icons, all sorts of navigation elements should also be taken into account and allowances should be made to provide adjustable graphics for different screen densities.
3 – Browser Issues– Browser support and compatibility is already an issue with existing desktop browsers. The complexity of support and compatibilities between Firefox, Chrome and IE can sometimes be a burden, especially when developing web applications that need more than just backward compatibility (i.e. supporting older versions of the browsers). When getting involved with designing for Mobile devices, things get complicated when you need to support a wider variety of browsers.
4 – UEX – Mobile devices allow a different UEX experience than desktop applications. Adjusting your application so that it supports cross platform devices should include considerations about basic UEX characteristics which Mobile device support, as well as finger friendly design that accommodates for some basic kinds of finger movements.
5 – Testing – When developing a cross platform application, the testing cycle of your product will inevitably become longer. Since you are required to use different types of testing procedures across different device platforms to finally approve the application, developing for cross platform applications adds time to your development cycle.
Frameworks And Solutions For Cross Platform Development And Responsive Design
There are several basic frameworks like jQuery Mobile that are optimized for smartphone applications, which can perhaps shorten the amount of effort needed to support cross platform apps. There are many other more complex frameworks like PhoneGap that allow wider support for cross platform application development ( see also http://www.markus-falk.com/mobile-frameworks-comparison-chart/).
Before choosing the right framework to use for developing your Minimum Viable Product, you should invest some time in comparing different solutions and figure out which framework will allow you to grow your product on the long run.
Things to Consider When Developing your Minimum Viable Product
The lean process of developing your Minimum Viable Product is key to a strategy that reaches the market as quickly as possible. With a focus on the most important and needed features of your Minimum Viable Product, the aim of the Minimum Viable Product in the lean startup model is to continuously gather requirements from users while, at the same time, releasing newer versions of your product. Now, in addition to these, there is also the requirement of supporting cross-platform applications, which runs the risk of turning your effort of building your Minimum Viable Product into a more complex and expensive effort than you might have initially planned.
To keep this in check, always consider your target audience and the basic use cases that they will want included in your Minimum Viable Product. By targeting and concentrating on only the most popular devices when you first launch your Minimum Viable Product, you will be keeping your project on schedule and on budget. Saying that, this means that you need to decide what are the most effective and important devices to support when first reaching the market and, at the same time, you have to choose which is the right frameworks to build your code upon. As a way to accommodate responsive design, give some time with this consideration when you are first expanding the scope of your Minimum Viable Product so that it will be reaching a broader audience.
Cross-platform application development adds complexity and several challenges to your product. When developing your Minimum Viable Product, try to reach the market in as short of a period of time as possible, and while using responsive design approach, make sure to choose the right software framework that will support cross-platform application development. The way that you choose to design your product and whether this applies to and supports other platforms from the start can delay your Minimum Viable Product and add extensive development time and design costs to your project. Therefore, by first choosing only the most important platforms and using the right framework for development, this assures that you will be keeping your focus from the start on the opportunity to add more platforms later.