For the sake of example, let’s say a client came to us and was interested in developing a new note-taking application for iOS, arguably one of the “simplest” kinds of apps. We might spend a few days on strategy, discussing the client’s goals and reviewing potential competitors and attempting to define the minimum number of features that would be required before we can really begin testing and validating the concept. An application that meets the minimum number of feature requirements is often called a Minimum Viable Product (MVP), and is something we believe in strongly at SFCD. The more quickly you can get to a point where you have a functional prototype in your hand, the more quickly you can evaluate what you’ve built and re-prioritize your efforts based on what you learn.

Once we have a strategy and concept locked down, the app moves into pre-production, where our User Experience (UX), design and engineering teams work together to define the overall plan for the application and begin working on the foundations of the app.

The UX team defines how the app will work, enumerating its various features and exploring various scenarios. How will the notes be visualized? How will you add, edit, and delete notes? Is there search functionality? Each scenario can take several days to define, discuss and optimize, and for every scenario the team needs to establish a user flow, decide on what screens would be required to accomplish that flow, and think about how the user will navigate through them to achieve a given function. It might take several days worth of work to list all the scenarios and create wireframes—basic sketches of what screens will look like and where interactive elements should be placed. Ideally this process results in the creation of an interface which is intuitive to users while remaining as simple as possible.

At the same time the Design team begins to establish a visual language, deciding on colors, font choices, graphical elements and developing an app icon, which is almost a project in and of itself. It takes a lot of effort to make a distinctive and attractive icon that will explain the app without words. This usually starts with designers exploring a variety of visual metaphors to see which one best conveys the app’s functionality. Lots of rough, quick sketches are drawn up and their qualities and inadequacies discussed to narrow down the possibilities. The best ideas are sent to the client for review.

Meanwhile, the engineering team has been providing input at each stage of the process, evaluating architectures and technologies, pointing out potential pitfalls and evaluating the capabilities of available technologies. The final stage in pre-production is for the engineering team to plan out the project structure, likely 1-2 days for the simple notes app, taking particular care to make sure maintenance and updates to the application can be handled most effectively.

With plans in place, the project moves into the Production phase. The Design team begins to apply the visual language to each and every screen from the wireframes, defining the states of all the controls, animations, transitions, etc., while also accounting for screen size and resolution and other device-specific issues. The app icon goes through a number of draft phases before the final render is complete, and a variety of versions are hand-drawn for different icon sizes. This can be one of the most challenging and time consuming aspects of a project, as it’s impossible to resize an icon automatically without losing pixel sharpness and visual quality. Instead, the various icon sizes need to be meticulously crafted. Preparing these assets for the developers can take an additional few days of work. For our simple notes app example, the total design time would be around 10 days.

Organization is the key to delivering projects on time and on budget, and our team uses a variety of tools which helps them to automate processes and create a solid product in less time. For a simple notes application, development would likely take around 10 days, with additional time dedicated to Quality Assurance. As prototypes are produced, various teams have been rigorously reviewing the product, a process that can take a significant amount of time (another 3 days for the simple notes app), but which is absolutely essential to creating a well-polished piece of software and quashing bugs and inconsistencies before they make it to the end user.

When the client feels comfortable that the application is complete, we prepare it for submission to the app store. We take special care to create the text for the app description and to choose appropriate screenshots that clearly explain the app’s functionality to the user and demonstrate why they might want to download it. Even this final step of submitting the app to the app store can take another 1-2 days.

Let’s go back and tally up the total amount of time spent on something like a simple notes application:

Core feature set for the simple Notes application

— Write, edit, and delete text-only notes

— Date and time stamps on each note

— List view of all notes

— Search for notes

— All notes stored locally on user’s device

Time spent on a simple Notes application

Strategy & concept 2 days User experience 3 days Design 5 days Development 10 days QA 3 days Publish 2 days Total 25 days

At twenty-five days worth of work it’s clear that even a “simple” notes application is a significant undertaking. At eight hours a day, that’s two-hundred hours or 5 weeks at 40 hours a week. Companies’ rates can range between $100-250 per hour, depending on the company, their overall quality and experience level. At those rates, the cost of the simple notes application would range between $20,000-$50,000. With a design rate of $200 per hour and a development rate of $175 per hour, this app would cost approximately $37,000 if SFCD built it.