SemperCon is a web and mobile application development company but we’ve got a little different model than most pure development firms.
We don’t tend to do a lot of project work as our objective is to think longer term and partner with our clients acting as their development team. As a result, we typically begin to our work with mobile applications while they are still in the idea or concept stage.
As we start to talk through the early design issues we’re typically asked by our clients, ‘what mobile operating system do you recommend?’. This of course is a very important question for us as developers and today it’s a fairly complicated question due to the fragmentation in the mobile industry with many competing platforms, operating systems and technologies all fighting for developer’s attentions i.e. SMS, iPhone, Blackberry, Android, Symbian, HP/Palm, WinMobile, Brew, etc..
Despite the need to answer the core technology questions and to weigh the merits of one platform versus another, we have learned that there are several key, non-technical questions that need to be answered before you can properly address OS issues and other technical details. These non-technical decision data points are:
1. Anticipated target market (who is your customer, what phones do they have),
2. Business model (how do you plan to make money, paid app, ads, enterprise etc)
3. Development budget (how much can you afford to spend).
We consistently find that after addressing and answering these key questions, the field of choices is narrowed down significantly, leaving one or two platforms as viable options.
An example of a case where the target market heavily influenced the choice of mobile technology would be our work with Mobile Attainment’s Success Advisor, mobile “training reinforcement” service. Keith Cox, Mobile Attainment’s CEO, explained to us that they had to be able to work with a very wide range of phones, both old and new, to hit their diverse target market. Today the best approach to hit nearly all phones is to use SMS messaging so we worked with them to design a custom content management web application that used SMS texting at the mobile interface. This allowed Mobile Attainment to deliver training messages to nearly all phones and address the broadest possible market.
Sometimes it’s the business model that carries the most influence in your platform decision, as was the case with another client application. The client had an older, WAP-based application which had an existing base of subscription customers who now wanted an updated application to run on newer, primarily Blackberry smartphones. Since billing and collecting wasn’t an issue and due to Blackberry’s wide range of phones with varying screen sizes and different OS versions; we recommended and developed a Mobile Web application that provided an improved UI with richer graphics and ‘trackball’ controls, while also working with most new smartphone browsers.
In today’s market, budget is always an important aspect of a new design. We recently started a new mobile application for another client that tied back into an existing calendar web app. We started by discussing the target market which was identified as all smartphones with web-access, and also concluded that the initial business model was to be based on a “paid app” (advertising model maybe later after getting some traction).
These market/model data points could point us a number of directions ( Apple, Android, RIM or Palm), but we decided that to keep the initial costs down while we figured out what the customer really wanted, we could get the most bang for the development buck by going with Apple iPhone. We came to this decision based on the fact that; 1. Apple has a strong development platform which we’re very familiar with, 2. the iPhone iOS hits all flavors of iPhone, plus the iTouch and now the iPad which combined represent nearly 100M devices, 3. the iTunes app store makes it very easy to quickly offer a paid application and collect revenues. So we recommended starting with an iPHone application, testing the market, and moving on from there.
Note that we have found that developing and launching an application with one platform first, does make a significant positive impact on the time required to launch the same application on another platform. The process of designing the application, defining the UI screen by screen, working out backend communication issues and writing an initial test plan represents a large percentage of the total work involved. While the actual code development is critical and not trivial, once you’ve completed an application for one platform, moving to a second platform (assuming it’s supported by a leading edge development environment) will take considerably less time than the initial project.