how much to pay for that app? 6 tiers of mobile developers

8
1 6 TIERS OF MOBILE DEVELOPERS WHITE PAPER Introduction So you’ve decided that you want develop a mobile app for your business. Now you need to figure out how to do it and what it should cost. Best case, you’re a great developer yourself or your business partner or a team member is, but either way, you should develop a plan and a high level business case for the resources. Note: We use the term mobile app to describe native apps, hybrid apps and html5 apps which mean that this white paper is applicable to both mobile apps and mobile websites. Before you start development One thing you’ve got to know: if you’re building a mobile app, the actual development is usually less than half of the project. Even if you use agile methodology, defining your requirements up front and following a process will pay off in the end. The activities are: Define the key objectives / success criteria for the app Agree on your target audience and based on this the target OS platforms, OS versions (which versions of iOS, Android, Windows Phone, etc) and screen sizes (e.g. starting from low end 240x320 Android devices to top end retina tablet displays) Write and prioritize the key use cases for the application WHAT TO PAY FOR A MOBILE APP 6 TIERS OF MOBILE DEVELOPERS

Upload: dmimarketing

Post on 20-Aug-2015

561 views

Category:

Technology


0 download

TRANSCRIPT

Page 1: How Much to Pay for that App? 6 Tiers of Mobile Developers

16 Tiers of Mobile Developers WHiTe pAper

IntroductionSo you’ve decided that you want develop a mobile app for your business. Now you need to figure out how to do it and what it should cost. Best case, you’re a great developer yourself or your business partner or a team member is, but either way, you should develop a plan and a high level business case for the resources.

Note: We use the term mobile app to describe native apps, hybrid apps and html5 apps which mean that this white paper is applicable to both mobile apps and mobile websites.

Before you start developmentOne thing you’ve got to know: if you’re building a mobile app, the actual development is usually less than half of the project. Even if you use agile methodology, defining your requirements up front and following a process will pay off in the end. The activities are:

Define the key objectives / success criteria for the app

Agree on your target audience and based on this the target OS platforms, OS versions (which versions of iOS, Android, Windows Phone, etc) and screen sizes (e.g. starting from low end 240x320 Android devices to top end retina tablet displays)

Write and prioritize the key use cases for the application

What to Pay for a Mobile aPP6 Tiers of Mobile Developers

Page 2: How Much to Pay for that App? 6 Tiers of Mobile Developers

What to Pay for a Mobile App

26 Tiers of Mobile Developers WHiTe pAper

Create wireframes ranging from just sketches to detailing every screen depending on the scope of the project

Design mockups of what the app should look like, including splash screens, logos, buttons, color patterns, fonts, interactions, animations and more. The detail of the designs will depend on the complexity of the project, your ambition and who does the development (e.g. if the developer is a UX specialist then less design work is required up front)

Assess the need for usability testing before, during and after the project. In some projects a complete set of mockups is produced which is tested on users to optimize flows and UI before any development starts

Identify and specify external dependencies such as content management tools, content feeds, payments, social network APIs, etc

Specify the non-functional requirements such as languages, reporting/analytics (e.g. using Flurry or Google Analytics), performance (page loading times), off-line support, error messages, quality requirements and documentation standards for the code

Create a high level system design (together with the developer) for more complex projects with external dependencies and use of 3rd party components

Identify risks and contingencies during the project

Agree on acceptance criteria for the project including test cases, target devices and final design approval

There are obviously app development projects that require considerably less up front work, but make sure it is a conscious decision if you skip tasks on the list above. Our experience from over 500 projects is that putting in the effort up front always pays off at the end—especially when it comes to budget overruns, meeting timelines and the quality of the application.

Page 3: How Much to Pay for that App? 6 Tiers of Mobile Developers

What to Pay for a Mobile App

36 Tiers of Mobile Developers WHiTe pAper

Choosing a developer—what should you pay? Quora, blogs and forums are flooded with questions and answers about mobile app development costs. Some of the responses are comprehensive but without sources or qualifications, others are simply opinions from independent developers. This has resulted in some major misconceptions about the real cost of mobile development. Here we’ll try to straighten some of these out:

First, your app will almost certainly use all of what you have budgeted—whatever you have budgeted. This isn’t a tricky way to dodge the question of what an app will cost. When you build a house, you don’t ask the contractor how much it will cost. They ask you for a budget and then tell you what you can get for your money. This is no different when developing a mobile app. You get what you pay for and contingency needs to be allowed to make sure there is a buffer as requirements sometimes need to change or new features may need to be added during the development.

To simplify, we’ve defined six tiers of app development (extended from three according to Brett Miller’s article in Custom Software by Preston) based on more than 6 years of experience and over 500 app projects including apps for some of the biggest companies in the world as well as small businesses just getting into mobile. We’ve tried all of these:

1. DIY app development tools Do it yourself (DIY) development allows anyone to develop a mobile app based on templates without the need of development skills. The advantage of this is that you can launch an app at a very low cost. But the downside is that you are very restricted by the templates and functionality and you still need to have a pretty good understanding of apps and or great designers and creative resources to develop and launch a great app.

Examples: Mobile Roadie, Swebapps, Kanchoo and AppBreeder Cost: $500+ for the tool + your own time

2. Off-shore development Most big corporations off-shore some of their development and operations today, whether it is direct or indirect through a consultant such as IBM, Accenture, Sapient, etc. The advantage for well specified IT off-shore development and production development to India and China can be a big cost saving. However, the disadvantages include longer lead times, greater overheads in communication and specification work, less proactive solutions that don’t address your local market, and high failure rates. It also takes time to learn how to manage offshoring efficiently (See: The Hidden Costs of Offshore Outsourcing in CIO Magazine). If the price seems too good to be true, then it probably is.

Examples: There are hundreds of developers in this category Cost: $15-30 per hour

Page 4: How Much to Pay for that App? 6 Tiers of Mobile Developers

What to Pay for a Mobile App

46 Tiers of Mobile Developers WHiTe pAper

3. Freelance developers Using contractors or freelancers is popular among midsize companies as they have the freedom to bring in specialists for a limited period of time without taking the risk of permanent hire. In addition to this, it is usually easier to check the references of a freelancer when hiring. The disadvantages are that projects can take a lot longer and cost more than expected, the person may disappear with all knowledge at any time, there could be a single point of failure if something goes wrong, quality and functionality are limited to the person’s own expertise and lastly, it is difficult to verify the quality of their work and ensure a quality QA/testing of the app.

Examples: Thousands of freelance mobile developers Cost: $40-50 per hour

4. In-house development Big companies such as Amazon, eBay, Google, Walmart, etc. hire, train and frequently acquire their own developers since the mobile app platform is considered a core part of their business (e.g. eBay acquiring Critical Path in Dec 2010 and Walmart picking up Ubermind in Jan 2012). The advantages of in-house development include keeping knowledge in-house, less time spent on contract negotiations and potentially lower development cost than when using third parties. The disadvantages are that recruiting and retaining skilled developers is very difficult, (salary costs are high or very high in areas such as Silicon Valley, New York or London), internal development teams often have less experience, input from other businesses and projects is limited, and frequent major project overruns can arise as there is often less accountability in internal IT departments.

Cost: Ranges from $50 to $140, depending on location (assuming US or Europe).

5. Mobile app development agencies There are hundreds of mobile app development agencies ranging from companies with 2 people to more than 100, and most are made up by people with a web development background. The advantage of these specialized agencies is that many will commit to a fixed price and timeline for projects. This, of course, reduces risks for the customer. The disadvantages are that expertise and quality varies a lot between agencies, development skills for more complex tasks such as back-end integration are limited and costs frequently rise during the project due to unplanned changes and issues.

Cost: $50-150 per hour (Note: you’ll have a range of personnel working on your project – some senior and some junior, so your aggregate rate will be a blend somewhere between $50 and 150 per hour)

6. Premium solution vendors There are a few bigger companies that have a reputation of consistently delivering mobile services and marketing campaigns with great user experience, innovation and creativity, managing complex backend integration and projects across multiple OS and territories and launching industry leading mobile services. These agencies consist of a mix of experienced digital agencies that have gone mobile and mobile specialists. The advantages are that they have processes, people, technology and quality assurance based on years of experience and their reputation doesn’t allow failure. The disadvantage is that hourly rates and minimum budget commitment will be higher.

Cost: $60-200 per hour (Note: as above, you’ll have a range of personnel working on your project – some senior and some junior, so your aggregate rate will be a blend somewhere between $60 and 200 per hour)

Page 5: How Much to Pay for that App? 6 Tiers of Mobile Developers

What to Pay for a Mobile App

56 Tiers of Mobile Developers WHiTe pAper

One last factor to consider is the reuse of code/products from other projects. E.g. if your app is a mobile shopping service then it might be worth considering working with a partner that has built an app of this kind before. Code reuse can be difficult however so there is no guarantee that it will reduce cost or timelines. Usually the experience of having done a similar app is more important than any actual code developed.

Once you’ve chosen what kind of development partner/method you want there are still four key factors that will impact the cost:

Paying a higher hourly rate doesn’t necessarily mean that the project will be more expensive in total. A great developer usually completes tasks much faster (5-10x) than an average developer and writes cleaner better code which means that it will be cheaper to maintain (Source: The Mythical Man-Month by Fred Brooks).

In summary there is no simple answer to the question “What is the cost of developing a mobile app?” The cost can range from $1000 for a DIY app to between $50,000 to $250,000 for more complex, immersive apps that require substantial integration with back-end systems.

Last but not least, when choosing the company or developer you want to work with it’s important to check their references and ensure they have the experience and the aptitude they claim. Ask for several references, contact them and make sure what they’ve worked on is relevant for you and that the developer or team you are getting actually carried out the work. Check what part of the work they carried out, what their responsiveness was like and delivery compared to timelines and budget. This will increase your chance of success a great deal. Sometimes choosing an App developer can be like choosing between ‘apples’ and ‘pears.’ Chemistry and whether you like and trust them is important.

Backend integration complexity including

maturity and documentation of

APIs

Functionality in terms of number

of features, complexity

(e.g. Augmented Reality) and

whether it has been done before

User Experience requirements can range from simple to very detailed

wireframes, advanced

interaction design and pixel perfect

design, which requires a lot of

optimization

Quality Expectations in terms of

performance, reliability, error

management and target devices to

be fully supported

1 2 3 4

Page 6: How Much to Pay for that App? 6 Tiers of Mobile Developers

What to Pay for a Mobile App

66 Tiers of Mobile Developers WHiTe pAper

Making a planBefore or after choosing the developer you need to establish a timeplan. This usually consists of 6 phases:

1. Concept development Come up with the idea/concept and define objectives and target audience

2. Scoping Produce Use Cases, Wireframes, Designs, Non-functional requirements and other pre- development activities

3. Development Developing the application in iterations, test and update scope within the budget constraints

4. Quality Assurance Testing starts as soon as the first iteration of development begins, and ends when the agreed acceptance criteria have been met by development. Final acceptance testing includes ensuring it works on the agreed target devices.

5. Appstore distribution and deployment Upload app to appstores and deploy other software as required to the live servers

6. Post-launch maintenance and updates Plan for your release plan post launch

The time each phase takes differs a lot depending on the complexity of the project, experience of the team, and the development partner. Here’s an example of an average project.

Concept development: 1 week up to any amount of time as this is what the whole app relies on

Scoping: 2-3 weeks on average

Development: 6-10 weeks on average

QA: 2 weeks after development finishes

App distribution and deployment: 1 week

Produce a resource planIt is important to plan for all resources that will be involved in the project and not only the developers. This includes Project Management, Designers, Developers, other technical resources, Marketing and potentially others such as legal and IT security could also be involved depending on the size of your organization. Also make sure you have plans for holidays, illness or resignations among the team members if the timelines are critical to you.

Concept developmentCome up with the idea/concept and define objectives and target audience

1

ScopingProduce Use Cases, Wireframes, Designs, Non-functional requirements and other pre-development activities

2

Appstore distribution and deploymentUpload app to appstores and deploy other software as required to the live servers

5

Post-launch maintenance and updatesPlan for your release plan post launch

6

DevelopmentDeveloping the application in iterations, test and update scope within the budget constraints

3

Quality AssuranceTesting starts as soon as the first iteration of development begins, and ends when the agreed acceptance criteria have been met by development. Final acceptance testing includes ensuring it works on the agreed target devices.

4

Page 7: How Much to Pay for that App? 6 Tiers of Mobile Developers

What to Pay for a Mobile App

76 Tiers of Mobile Developers WHiTe pAper

Stick to the budgetWhether it’s an internal or externally developed project you should agree on a budget for time and resources (with some buffer for changes) and stick to this. Our experience is that it’s always better to get to a point when you deliver what’s available at the time, launch or do an internal pilot with this and close the project. Then agree on a second phase with new budget and timelines. Otherwise app development projects have a tendency to go on forever as there are always things that can be improved.

If you are working with an external developer they will most likely manage changes to the scope and timeline through formal change requests which will incur additional costs. Plan for this from the beginning.

Demand quality but manage expectationsThere are no bug-free apps. You can test and test for weeks and months but there can still be bugs that you haven’t found and you won’t know for sure how your app will work until you launch it with live customers. This is not an excuse for not testing but a recommendation to have a realistic test plan. Go through the agreed acceptance criteria for the project and keep on testing until you’ve got no blocking issues for launch and your testing resources have been used up.

Quality and reliability is everything but there is obviously a huge difference between an app for a local restaurant versus a bank or retail chain with millions of customers. Customers have high expectations for big organizations but they can be a lot more flexible when dealing with a startup or small business that is trying out new things. Therefore your quality testing and allowance for known issues/bugs when you launch should reflect this. Google calls almost every product they launch a beta for the first year to manage customer expectations and many startups follow the same methodology, openly communicating to their customers that this is a starting point and that it will improve over time. The most important thing is that you are aware of the limitations and issues, that you have a plan to resolve them and that you communicate.

Launch, measure, analyze and refineFinally it’s time to reap the fruits of all your hard work. This is where the real journey starts unless it’s just a one off campaign. This is when you will find out if your app is generating revenue whether direct as a paid app or in-app payments, advertising, sales of other goods and services (e.g. Amazon or eBay), cost reductions (customer care, productivity, etc) or simply just lots of downloads to build up a customer base that you can monetize in the future (e.g. Twitter). Analyze the downloads, demographics of the users and usage patterns, read the reviews and ratings, talk about it in blogs and forums, ask customers for feedback, listen and come up with a roadmap / action plan to improve the app over time. You should at least plan for quarterly updates to make sure you support new devices and OS version upgrades.

Page 8: How Much to Pay for that App? 6 Tiers of Mobile Developers

What to Pay for a Mobile App

86 Tiers of Mobile Developers WHiTe pAper

About DMIDMI is the world’s leading provider of enterprise mobility services and solutions. We build enterprise class mobile solutions that generate results for the world’s top brands and businesses. Our mobile solutions combine the award-winning user experience design that has made us one of the top creators of consumer apps, with the deep middleware and engineering expertise that we’ve used to build and manage enterprise applications for the most demanding IT departments in the world. DMI mobility solutions improve business processes, tap new revenue streams, build customer loyalty, and increase employee productivity. And we offer a full range of Managed Services to securely set up, configure, and manage your mobile devices.

The proof:

We’ve built more than 400 mobile apps—in the past 12 months alone—for more than 150 leading organizations—like Disney, Coca-Cola, Toyota, Vodafone, P&G, The National Guard, and Universal Studios.

We offer brilliant creative and user experience: Our mobile app development group was named the Best Branded App Developer at the 2012 Mobile Entertainment Awards.

We are a Google Platform partner and Apple Consultant.

We have 500,000 devices under management for more than 100 clients, including many Fortune 500 companies—like BP, Johnson & Johnson, Sears, The Associated Press, Allergan, and more. At BP, we’re deploying 1,000 managed mobile devices each day.

We provide 24 x 7 x 365 mobile service support for more than 500,000 users. DMI is the one call our customers need to make to resolve any issue—devices, apps, infrastructure, and even carrier problems.

We offer a full range of security options that include Federal-grade hardware-based security, two-factor authentication, secure container, and sophisticated encryption solutions.

With our expertise and economies of scale, we can provide mobility management at a higher service level and on average 20% lower cost than most companies can do on their own.

Pervasive excellence is our commitment to quality service. DMI is one of only a handful of companies that is CMMI L3 appraised for both application development and services, as well as ISO 9001:2008, ISO 27001:2005, and ISO 20000-1:2011 certified. Our average D&B Open Ratings performance score from our clients is 94/100.

©2013 Digital Management, Inc. All right reserved.

DMi One Rock Spring Plaza6550 Rock Spring DrBethesda, MD 20817

DMInc.com

DMI Sales TeamU.S. Sales: 855.963.2099Int’l Sales: [email protected]

Note: Excerpts from this white paper also appear in “The Everything Guide to Mobile Apps” by Peggy Anne Salz and Jennifer Moranz