Asking for a price estimate
When you decide to outsource the development of your application, it is important to find a company which is not just a team of coders but a reliable partner. That’s why you look for a company with a good reputation, a number of successful projects, good references and – most importantly – the one which will understand your needs. In simple terms, this would be enough to choose the best software development company to work with. But it’s not. Because when you choose some companies which seem to perfectly fit your needs, it’s time to ask for the estimated cost of the service. And here is where it gets tough.
Estimating a project is a complex action and it takes some time to put everything together. And even then, the estimate can be not completely accurate. That’s why when we ask for an estimate, we get offers with a broad range of different prices. To get a competent price estimate, you should know what an estimate includes and what it really takes to make an app.
What does an estimate include?
Price estimation for the web or mobile applications requires well-defined assumptions. Usually, we are asked about something unique. Every unique detail – design or a feature – translates into a certain amount of time and talent of a specialist. That means that before estimating the price, we need to evaluate every project and calculate the main stages of its development. It’s much easier if the requirements are presented within a functional specification. But it happens sometimes that the client who is asking for an estimate does not have such documentation. Our role is then to help them to clarify their needs and requirements.
Requirement collection is performed by a User Story Mapping session. During User Story Mapping, we acquire information about all the required functions. Notation of the requirements should be clear, transparent and most importantly – easy to understand. Estimation includes all aspects of the final product, so it will be easier to estimate the price more precisely when we have well-defined requirements. As a Client, you don’t want just a piece of software, you want a functional product – right?
What factors influence the cost of developing an app?
The cost of developing an application can be different according to many factors. The most obvious differences influencing this cost are the level of developers’ skills, developers’ experience, and the average hourly rate. But as various software development companies use different ways to estimate the price, it’s not that simple – the final calculation can be based on many other factors. The bad news is that it’s not that clear what the good estimate should include.
As the estimation consists of a number of factors, the first quote which the client gets is rarely the price that actually covers all the services which will be needed during the process of product development. There are a few fixed points which should be taken into account when we prepare the estimate:
- Consultations, research. This includes all the cost of brainstorming, User Story Mapping and precise description of the application.
- UX Prototypes/Mockups. All the costs related to creating drafts which will allow for a precise definition of requirements.
- Design – costs related to graphic design.
- Development. This includes all the actual development work necessary to create a working application.
- The creative process and quality standards. They have a significant effect on the final cost of the project. In many cases, this is the most costly element and it is the largest share of the project. Usually, the cost of quality works like code review, unit test, automatic tests, are counted in the price, but sometimes this type of cost is estimated separately.
- Project management. A project manager is always needed, but he does not always have to work full-time.
- Tasks which may appear during the project lifecycle. As some tasks may appear during its lifecycle, their cost is not always included in the estimated price of a project. If the product owner is not able to collect the requirements by himself (as it requires some specialistic knowledge of the field), he (or she) should be prepared to bear some additional cost.
- Costs of infrastructure and implementation in the production environment.
- Communication and customer service. Development of the applications using Agile software development (such as Scrum) requires setting up appointments between the customer (Product Owner) and the development team, and up-to-date communication.
- Guarantee – costs related to the warranty services.
- Licenses and the copyright laws. If the application uses software of some external companies (like libraries or tools) which are paid, it will also impact the final cost of a project.
Each software development company estimates the projects in their own way. Usually, the cheapest offer is not the best one. The promises to build the web or mobile applications in 2 weeks are also quite doubtful. When collecting the offers, always check what exactly is included in the estimate.
If you want to check how much it would cost to develop your application with us – schedule a skype call or drop us a line!