FAQ

1. What can you help me with?

With whatever we can. Preparing cost analysis, establishing team roles, and creating roadmaps. Defining business goals, key business values, target users, main features, and prioritizing. We can find you similar projects that are already active on the market to benchmark against. We can assist you with creating user personas, mock-ups, user stories, time frames, establishing project status, and preparing project estimation. We'll be happy to outline project specifications, prepare wireframes, details concerning integrations with external services, API documentation, and the required features list.

In terms of project development we prepare server-side architecture, front end, back end, graphic and UX design, and create back-office consoles.

We are also happy to advise our customers in terms of budgeting, scheduling, risk management, and business model creation.

2. How do I create a product with you?

If you have an idea contact us by our online form, e-mail, or phone. We'll meet and talk it over. Just be sure to prepare as much info about your idea as possible, it will smoothen the meeting and benefit further cooperation.

Finding an outsourcing company that completely meets your business needs is not that simple. But you need to know that to take on a project with a software house and cooperate effectively you have to define your goals and have a full product concept.

Here you'll find the information straight from the horse's mouth on what a good software house will ask before starting the work. Put all the information together and create a product brief to save a lot of time and money. We can guarantee you this works!

Wondering what should be in the brief? Let's start with highlighting 4 things that you can send to a software house to make it clear how your product should work.

  • The idea - The general product overview, including: goals, target users, main features, and examples of similar solutions (if available).
  • The brief should include a basic version of the specification with a defined goal, user personas, mock-ups or user stories, time frame, project status, and budget estimation.
  • The specification with all the details that a software house needs to start the development of a product immediately, should include: product goal, user personas, all user stories, wireframes, mock-ups, details concerning integrations with external services, API documentation, required features list. Writing a reliable specification requires developer's involvement and is often done during the software application development phase.
  • Mockups are a visual representation of product functionalities on each application screen. Some screens should come with a brief description, especially when it's a non-interactive mock-up. The main advantage of mock-ups is that they are clear enough for both business reps and developers. They are one of the best ways to confirm the assumptions and show them in action. Such presentations make it easy for a software house to estimate the costs and move to the product development activities faster.

Let's dive deeper into each part of the perfect brief.

1. What is the project's goal?

Preparing a brief, start by precisely defining what the software application goals are. This will make product development team understand your vision better and meet all your needs. Be as specific as possible. Try not to write something like "I need a mobile app for customer support". Be more like "I need an application to make customers check their account status by themselves, change the subscription preferences, and recharge the account on both desktop and mobile."

The next step is to characterise the main target audience, so-called user personas. The description of an ideal customer should include demographic data, personal interests, goals and challenges. To identify the needs of your audience, define 1-3 personas who will be the right recipients of your app.

When you know your potential customers you can determine how your application will solve their problems and help them achieve their goals. Let's take a look at the app example mentioned before - a 30-year-old corporate employee who has a family probably wouldn't have time to visit the cell company's store to change his mobile plan. Doing it by using a smartphone, without leaving home, is much easier, faster and way more convenient.

Wondering how to define personas for your product? Take a look at the HubSpot blog to learn the step-by-step process of creating buyer personas.

2. Define the scope of your project

OK, let's move from general to specific information.

It's time to determine exactly what you need from the software house and - to make it easier - create a specification. You can do this in various ways, but one of the fastest solutions is creating a product mockup. It could be, for instance, a visual presentation of functionalities on each application screen. Don't forget to include a short function description for every screen.

If you're looking for some useful tools (cost-free ones), see one of the Mockplus entries.

Mock-ups allow you to quickly test information architecture, navigation, and application features, even before the programming phase begins. A well-prepared specification helps the software house estimate system development costs accurately at an early stage of the project and quickly start the development process.

If you're not sure how to design mock-ups, you can create so-called user stories,which are descriptions of how a customer persona uses the product.

The basic user story template is based on the following sentence: "As a [user], I want [what?] so that [reason/value]". It's easier to understand user's needs when you put yourself in their shoes. For instance, your sentence could go like this: "As a user, I want to check my account status, so I can control my spending". For more tips on creating an effective user story, take a look at Roman Pichler's article.

What's more, you should remember to write what kind of products you need. If mobile applications are part of the system include the information regarding what platforms you are interested in - iOS, Android, or maybe both? If you want to have access to the admin panel and manage the content, than a CMS (Content Management System) should be a part of the project. Also, don't forget to mention the external integration for the product, such as payment module, etc.

You can also contact us, share the application goals and benchmark against your competitors. We will then walk you through the specification development process - from making the clickable mock-ups (linked and navigable app screens), through the API documentation, to the functional requirement specification and the first sprint backlog. To specify essential elements of your application, you can use our contact form.

3. Estimate project time

Time plays a very important role, as it defines the priorities and resources that need to be used for the project. To estimate time accurately, you need to answer the two most important questions: Do you have a specific release date for your product that you cannot exceed? When can the work on your project start?

4. Describe the current state of the project

In this section, describe the existing system components and the technology used to create them. If you're aware of the technology, you can easily select the agencies with a proper experience.

If you already have some version of the system, identify the limitations that users and system administrators can face. Try to determine product development strategies and what exactly do you expect. All this will help the software house to recommend you the right technology to create a reliable and scalable product.

5. Introduce the project team

First, determine who's the Product Owner - the most important person in the project, responsible for the final success. PO defines the vision and business objectives of the product, as well as the requirements, prepares the product backlog and connects all stakeholders with the development team.

Do you have a project manager and developers in your team? This is a very important point - a software house should know from the very beginning whether they will supplement your in-house team under your project manager or will they provide their own PM who will be responsible for communication, daily work planning, progress, potential risk tracking etc.
You should also inform the agency if there will be any additional subcontractor working on the project. It will help them determine the principles of effective collaboration and communication.

6. Define the budget

Note that if you define the budget in your brief, the software house will be able to tailor a solution to your needs. And believe us, we know that you want to know the price range before. However, you've probably made some assumptions, so it's good to share them with a software house to help them prepare a better offer. They will be able to determine the project scope and recommend the best work approach.

If all the features mentioned in the specification exceed the budget, the contractor will prioritise the work and focus on the most important functionalities in the first phase. All this to meet the product goals.

All right then, you've already defined your goals and know what you need to start an efficient cooperation with a software house. Now it's time to select the right service provider. Wondering where to start and what to focus on? Here's a handy checklist that will make choosing a software house a piece of cake. Good luck!

3. Should I create a mobile or a web app?

Both have their benefits and flaws. Mobile apps are surely more expensive but can provide you with many more data collecting, and monetization capabilities than web applications. Progressive Web Apps are a good compromise between a mobile and web app.

You read reviews and expert predictions, but you really don't know what PWA is and how will it fit your business? Or maybe you hear about progressive applications for the first time? In this article, we'll explain what are they and how do they work. We will also describe the capabilities and limitations of PWA technology, indicate when it is appropriate to apply it and explain when you should seek other tech solutions.

What is Progressive Web App?

Let's start with the definition - Progressive Web App (PWA) is a web application designed to provide the best user experience on mobile devices - similar to native applications. The main features of progressive applications include:

  • Reliability - PWA is independent of the Internet connection quality. Even in a case of network access problems, the application will not communicate that it lacks Internet connection, as e.g. Chrome browser does with its famous dinosaur. To put it simply, this is possible thanks to the so-called Service Workers, which act as agents between the progressive application, the Internet, and the cache. Some parts of the application are stored in the device cache, constantly increasing its speed, and making it available even in the absence of a network connection.

  • Speed -PWA applications are optimised to minimise the amount of downloaded data. As a result, pages load much faster, even with a low-quality Internet connection. Research conducted by Google showed that 53% of users close the page when it loads for more than 3 seconds.

  • Engage -PWA can be installed on the mobile device without having to download them from the app store. When you visit the PWA site using Android devices you will see a bar allowing you to add apps to your phone screen. The whole process takes only a few seconds. As with native applications, Progressive Web Apps display on the entire screen of the mobile device (without the address bar in the browser) and send push notifications. These features are implemented through a Web App Manifest, which specifies the application name, theme colours, and the desktop icon. Push notifications are provided by Service Workers and Web Push Notifications.

Google has developed a list of requirements that a website must fulfil to be considered PWA:

  • data is served using secure HTTPS protocol,

  • website is responsive - adjusts to the resolution of the device on which it is displayed,

  • displays at least a home page when offline,

  • it has the ability to add an icon to the main screen of the mobile device,

  • becomes ready for interaction in less than 10 seconds on a 3G connection,

  • it's optimised to operate properly on different browsers (Chrome, Edge, Firefox, Safari),

  • while waiting for the page to load, it doesn't seem like "nothing happens" - as in native applications, the next screen loading icon is displayed,

  • has a separate URL for each sub page (for easy content sharing).

In the original list we will find more good practices that are designed to provide the best user experience (however not all browsers support them in the same way). The origin of the term "progressive" should also be mentioned here. It refers to the idea of PWA, which aims to provide basic benefits on all mobile systems and mobile browsers. If the browser supports more features offered by a Progressive Web App the experience is progressively expanded.

When should you choose PWA?

Progressive Web Apps do not require writing separate code for individual mobile platforms. Their update is also very easy. Why? Because publishers don't have to go through the verification process on each platform and users don't have to download an update from the store. The entire process is a server-side operation and there are no links to App Store or Google Play as is the case with native applications. The user will receive the latest version of the application at the next launch.

Progressive Web Apps also have restrictions regarding accessing the advanced features of your phone and data (see the rest of this article for more details). For this reason, PWAs will be best for services that require frequent changes, occasional use, or those that don't use the advanced features of a mobile device.

Check industries that can successfully change a mobile site into a PWA (examples)

1. E-commerce - in online shops any improvement in usability or speed has an impact on customer conversion. Native applications provide conversion at the level of a webpage displayed on desktop, but mobile sites' performance in that regard is several times lower. Replacing a mobile site with PWA should bring significant profit. A good example of this is Alibaba, which has increased its conversion rate by 76%, and its active users increased by 14% on iOS and 30% on Android after launching their progressive app.

2. Media - news portals don't require access to advanced features of mobile devices. Quick access to interesting content is the best value for the users. The Washington Post improved content loading by 88% (compared to the traditional mobile site) after the introduction of their PWA. Forbes has reduced the page loading time from 3-12 seconds to 0.8 seconds. They also introduced a new ad format for faster mobile device loading.

3. Marketplace - services offering travel, food delivery, hotel booking, flight booking or ticket ordering. We use them irregularly so we don't necessarily want to download an application for each of these activities. An example for using PWA is Wego - a service for booking cheap flights and hotels. Introducing progressive applications reduced the full page load time for new users, changing it from 12 to 1.6 seconds and making it less than 1 second for returning users. The bounce rate decreased by 20% and conversion increased by 95% compared to the previous mobile site. Uber also introduced the PWA but didn't share the statistics yet.

4. Businesses whose target markets are developing countries - in some African or Asian countries, where Internet connection is limited in many places, data usage is very important. In this case the PWA will work well because it minimises the amount of downloaded data. Jumia Travel is a great example. Their hotel reservation platform is dedicated to serving the markets of the African continent. They managed to reduce data usage by five times, increase conversion by 33%, and reduce bounce rates by 50%.

Limitations of Progressive Web Apps

The above-mentioned restrictions on access to advanced phone features make PWA unable to fully replace native applications such as NFC or Bluetooth communication modules. Therefore, they can't be used in the Internet of Things (IoT), beacons, or software that integrates with devices such as smartwatches. There is one more factor that is not mentioned very often, but it is very important and affects the decision to create a mobile application. Native apps have access to data that browsers and progressive applications don't normally acquire - including user's phone number, contact books, calendar, and more. Of course, this is only possible after the user agrees to terms. This gives us a better chance to get to know our customers, and thus send them personalised marketing messages.

PWA on iOS is here (update 13.04.2018)

PWA is a relatively new technology that is developing fast. At the time we were writing this article Apple had Progressive Web Apps support on its roadmap. With iOS 11.3 Apple provides basic PWA service. That is why we would like to describe what are the possibilities and limitations of PWA on iOS.

What makes Progressive Web Apps different on iOS and Android is their approach towards Service Workers. Apple states "To keep only the stored information that is useful to the user, WebKit will remove unused service worker registrations after a period of a few weeks. Caches that do not get opened after a few weeks will also be removed. Web Applications must be resilient to any individual cache, cache entry or service worker being removed." https://webkit.org/blog/8090/workers-at-your-service/

Which means that if users were to abandon PWA for a couple of weeks (Apple doesn't say how many days exactly) they would have to download all the necessary files again. If you open PWA in an offline mode after that time you'll see "there is no internet" screen, which does not comply with one of the basic Progressive Web App features - offline access. It also bears the consequences for PWA future on iOS, if Web Push Notification service will be added it will stop working after users stop using an app for a few weeks.

Other limitations:

  • After navigating out of a PWA, and then returning to it, users always are navigated to the main app screen instead of the screen they were on. The same happens in case of two-step authentication apps. If you have to go to a different app to read a token, you'll also go to the main screen after you return to the PWA. It results in being unable to log-in if users don't have other devices at their disposal.
  • No Web App Banner - there is no way of in-browser notifying users that PWA is available. This results in users not knowing if visited website is a PWA. To download an app user has to click the share button and choose "Add to Home Screen".
  • The aforementioned lack of push notifications.
  • No access to Bluetooth, serial, Beacons, Touch ID, Face ID, ARKit, altimeter sensor and battery information features.
  • No access to In App Payments and many other Apple-based services

We are constantly monitoring changes in Progressing Web Apps on iOS and will update this article as the situation evolves. Despite lacking these features, PWA performance on the iOS operating system is significantly better than in the case of mobile websites.

Summary

Progressive Web App is the future of using the Internet on mobile devices. Because of the speed, reliability, and user engagement, it's definitely worth replacing your current mobile site with a progressive app. The results achieved by companies that have already implemented this technology show that it is also a profitable decision. Another advantage of PWA is easy installation. It will attract users who for some reason (e.g. the lack of space in the phone memory) were not willing to download your native application.

There is also the other side of the coin, high speed and user experience are much more important than good look and feel. Native solutions are perfectly compatible with the architecture of mobile systems and provide best quality in that regard. Web solutions, even those of the highest quality, still have their shortcomings. It doesn't change the fact that they are a great temporary solution (even final in some industries), especially if the business is primarily based on the content consumption via web or mobile-web and doesn't require advanced support or use of browser-unavailable mobile device features.

Want to know how your business can benefit from implementing PWA? Drop us a line if you are interested in a tailored solution that meets your business goals.

Originally published in Polish by NowyMarketing.

4. What do I need to know before contacting you?

Well, the most important thing to know is what you want to accomplish. Why do I need this software? What for? What should it do? Having a clear vision in mind is crucial when ordering a software application. You don't want to spend many months developing it with us without being sure of what you need.

You've been thinking about a mobile application that fully addresses market needs? Want to build the product, but there's one thing that stops you: you have no idea how to change the concept into a functional tool. Wondering where to start and what steps to take to create the application in the most effective way? Read on to learn the essentials before you ask a software house for help.

Here are the top 10 things you can't overlook before developing a mobile app. Each of these tips is based on agile development approach and focuses on business analysis. Learn about the must-know rules to make the most out of mobile.

Ready? Let's go!

1. Competitor analysis

Knowing the product concept is a great place to start, but you can't go further without doing a thorough research and analysing competitive solutions.

Here's the simplest way to do it.

One of the most effective methods is to use a well-known search engine. Google will help you find almost everything you're looking for, so just enter the right keywords in the search bar and voilà! Let's say you want to create a weight loss app, you can start your research with these keywords: 'healthy diet apps', 'best apps to lose weight', 'nutrition mobile apps' etc.

The next step is to read all the articles about similar apps without skipping the comments section. Try to find those applications in the most popular app stores and browse the ratings, reviews and user comments. Pay close attention to things that users are focusing on the most. All this will help you create the list of the most and least needed features. You will also see what features currently existing software solutions lack.

Performing such analysis is a perfect way to polish your business model, as well as to understand the pros and cons of existing applications. The more you know, the better product you will create. There's, of course, a risk that something will escape your notice, but it's a great first step, which allows you to gather proper information quickly (and it's free).

All this information also provides a huge value for the product team - they will not only know the product idea better but they will also be able to recommend some improvements straight away. Competitor analysis gives you valid knowledge and helps avoid mistakes in the early stages of your project.

2. Defining user personas

Establishing user personas for your business will make it easier to determine the application features, as well as promote the product when it's ready. User persona is a fictional representation of your ideal app user. That's why it should come with a detailed description that includes demographic data, interests, goals, and challenges matching a specific user. To identify the needs of your audience, define 1-3 personas illustrating the best recipients of your product.

Knowing your potential customers, you can determine how your app can solve their problems and help them achieve their goals. Having the weight loss example in mind, you can assume that your users' problem could be managing their meal plan and its calorific value. The solution could be provided by a mobile application featuring meal plans with recipes, a reminder to keep eating regularly etc.

Let's assume that one of the personas is a 35-year-old male working in the office, spending hours at a computer workstation. Imagine how he can use your app and benefit from it.

For instance, meals should be easy to make and the best scenario is when the user can prepare food for the whole week and easily reheat it in his office microwave. You can prepare several various scenarios, it depends on the determined goals.

Design functionalities of your application to best suit the needs of user personas. Read the blog by HubSpot to find out how to create personas (with a handy template) and what to focus on.

3. Figuring out if the world wants to buy what you have to sell

One of the ways to quickly confirm that your project meets the needs (or solves the problems) of your target audience is to create a landing page. Craft unique and brief product description and focus on benefits, not features. The thing is to show how the product solves potential customers' needs. Include a form to make it easy to leave an e-mail address for all visitors who want to stay in touch and get information e.g. about the beta testing.

The next step is to generate traffic to your site. You can do this by running Facebook ads that target specific audience. After a few days you should have a list of e-mail addresses belonging to people interested in your product. If you get the right number of leads read the next tips included in this article.

Note that collecting a group of testers who are even willing to pay for your product is a strong argument for a potential investor. See how the companies like Dropbox, Buffer or AirBnb used this approach -> click.

Are you afraid that someone will steal your idea? Rest easy, you don't have to put all the product details on the landing page. All you need to do is show examples of your mobile app interface and convey how your potential users can benefit from using it. Still, you're the only person that has a complete product vision and knows its development strategy.

If you're not yet convinced to run a landing page, and are still concerned about someone stealing your project, find a market research agency. This solution doesn't have to be expensive at all, and it can significantly help to confirm the needs of your target audience. To stay assured that your ideas are protected, sign an NDA (Non-Disclosure Agreement) with the agency.

It's also good to discuss the idea with people you trust - especially if they possess business experience. To organise your ideas and keep the research results in one place, you can use Lean Canvas, a modified version of well-known Business Model Canvas.

4. Choosing the right app monetisation strategy

OK, you've conducted a market analysis and you already know that your idea solves a real problem of a specific target audience. You're sure they will want to download the app, pay for it and make in-app purchases. Now it's time to decide how to make money using the app.

There are four basic ways to monetise mobile applications and your choice should depend on the category your app belongs to. Here are the most common models:

  • Freemium - Customers can use the basic version for free, but with some limitations. There are extra, paid features in the application that improve its usability. This model is commonly used for apps that boost productivity, sports apps and games.

  • Paid app - Users are charged for the initial download. Paid applications are usually ad-free. This model is mostly used for mobile games, educational apps and mobile tools.

  • Ad-supported apps - Users don't pay either for downloading the app or extra features. The revenue is generated by users that click the ads displayed in the application. This type of monetisation is commonly used in social, entertainment, news, and gaming applications.

  • In-App Purchases - Users are using an app for free, but also have the option to pay for extra items in games, movies, e-books or music tracks - depending on the app content.

If you want to know more about what model to choose and how to determine the price of your application this article might help.

5. Goal setting

When you're contacting the software house, tell them about all the necessary application features and, above all, define its purpose clearly. It will make understanding your vision and creating a plan to make the product that fully meets your needs much easier for the product team.

There are similar solutions on the market already? That's even better; show them to your team and explain how your product will differ from the competition. The more details, the better. This will help them understand the subject, plan the application development process and evaluate its scale.

6. Product specification

Another thing that should be included in a product brief prepared for an agency is a product specification. It can be delivered in many forms, but one of the best ways is to create an application mock-up, which is a visual presentation of app functionalities on each of its screens. The screens should come with a brief description containing the main goals. If you're looking for useful tools that will help you create mock-ups, read one of the Mockplus entries.

Mock-ups are the best way to quickly test information architecture, app navigation and functionalities before the programming phase. You'll have everything to make a complete specification for a software house. This will help them accurately estimate the costs associated with application development.

Don't know how to design mock-ups or have no time for that? You can create so-called user stories. It's like telling about your application from a user perspective to describe how the user (persona) utilises the product.

A user story idea is based on a single sentence identifying user's need, such as the following: "As a [user], I want [what?] so that [reason/value]". Putting yourself in user's shoes makes it easier to understand their needs. For instance, you can say: "As a new user I want to register an account and be able to save my workout sessions". To know more on how to create an effective user story read Roman Pichler's entryon that topic.

Make sure you have general description of the app functionalities and then focus on the details. A specification prepared that way and a short workshop organised by the software house make it much easier to estimate project costs.

You can also contact us to share the app idea and benchmark against your competitors. We will then walk you through the entire specification development process - from preparing application screens linked together as clickable mock-ups, through API documentation, to functional requirement specification and the first sprint backlog. Use our form to identify and specify all the essential elements of your app.

7. Figuring the costs

Having an idea for a reliable software application is a great start but implementation presents a whole different issue. Besides, what about the costs? The answer is the ever-annoying "it depends". We can, however, estimate the costs based on our experience over the years.

For now on we can say that preparing the first version of a single application with basic functionality (so-called MVP - Minimum Viable Product) for one platform, costs about $30.000. The work could be divided into two months, but remember that good software houses are basing their work on the Agile approach so you pay just for the effectively worked hours (the work is split into so-called sprints).

Your budget should include such things as development and maintenance, servers, marketing and customer service. Note that it's important not to ignore marketing expenses. Keep in mind that the amount you'll spend on promoting your app should be close to development costs.

The best way to determine project viability is to estimate revenue. You can do this by analysing your competitors - find out how many times and how often their application was downloaded. This data and the right monetisation model is what you need to easily calculate revenue using the App Revenue Calculator.

Note: When calculating profit margins, keep in mind the app store charge commission that can reach up to 30% of revenue.

8. Choosing the right agency

When choosing a software house to work with pay close attention to their experience and approach towards working with a client. An experienced company employs Agile Methodology and Time & Materials pricing model (read more about Agile and T&M) while creating an innovative product. This approach allows you to pay only for the performed work and to avoid getting a non-functional product.

Remember that the software house should provide you with final cost estimation. Usually in the initial phase there is no sufficient data, so it's surely impossible to determine a specific price. But you should consider given price as a reference point to track and control the expenses on an ongoing basis.

What's more, if you don't have a specification prepared, the agency should offer you proper workshops and an application design, which stays in line with your business goals and the best UX practices. You should also pay attention to the technology stack (software and programming languages used for application development). It's good when, apart from creating mobile applications, the company can also design web apps. This is important when you need an admin panel for your application.

Before you make a final decision check out the agency's portfolio, their references and ratings (e.g. on clutch.co). Make sure you don't forget to ask for the CVs of the team members who will be working on your product.

Finally, keep in mind that the software house, that is confident in their knowledge and the quality of their services, should offer you a free trial. If, for any reason, a cooperation doesn't work out, you can usually terminate the contract after two weeks.

9. Promotional strategy

Even the best products will not succeed without a proper promotion. It is important to know the target audience before implementing the app. First, create a website and define the USP (Unique Sales Proposition) - it could be one sentence explaining what your app is and what it stands for.

Remember about the ASO (App Store Optimization), which is a process of improving the visibility of your app and make it rank higher in an app store's search results. At this point it's important to research your competition again to get a full picture of their activity. It will help you get noticed on the market.

It's important to make a step-by-step plan to have a ready-to-use product before launching it in an app store. Some say that marketing expenses should be comparable to development costs. This is not a major rule, but there is a proverb: "You have to spend money to make money". Agency that specialises in mobile app marketing should help you determine your budget. Wondering what to focus on? Here's a list of mistakes to avoid prepared by Kissmetrics.

10. Development and maintenance

Launching a new product on the market is just a first step in the whole process. Now it's time to focus on implementing your strategy, measuring the effects, as well as learning, and quickly and effectively responding to changing situation. You'll need to constantly improve the product, so it's wise to ask a software house for help with prioritising and turning the MVP into a final product. A well-experienced team will know how to use reporting and analysis tools to get the best results.

As you can see, making a functional application is a process that is almost impossible to run without a detailed specification which will also make it easy to estimate the costs accurately. Remember that to keep ahead of the competition you'll also need a good strategy.



5. Do I need to be tech-savvy to cooperate with you and order a software application?

You certainly do not have to be a software development expert, that's what we're here for :) We welcome your experience in that matter if you happen to have any, but are prepared to guide you through the whole process and explain everything. Focus on your needs and we'll deliver what you require.

6. How much time will it take for you to make my app?

You start a pretty big IT project and you have to answer the questions coming from the board, investors, and other stakeholders. One of which is undoubted: "How much will it cost?" Assuming that you have a precise project specification in the form of a set of screens, flow, and a technical description (API documentation, cases, and user scenarios), the exact project evaluation may take a team several hours, or even days, and it doesn't mean that they made a correct estimate. This is caused by the nature of IT projects, which are usually extremely complex and depend on many factors. Experienced IT managers agree on this - you need a budget, not an estimation.

This article covers the approach to project budgeting in Agile methodology that depends on business goals and resources your organization has. You'll also learn how to manage such a process and what you can do in order to reduce the risk and convince the stakeholders.

Important takeaway points:

  • Don't estimate, just budget -set a cost level that will allow you to make the right decisions,

  • Change your way of thinking - from "How much does it take to create a product" to "How many resources do I have and when do I need them",

  • Prepare a budget in 4 steps - choose the type of decision you want to make, select 2-3 vendors, specify the budget, and set priorities,

  • Manage risk -create the most project-hazardous functions first, schedule an MVP and then monitor your budget on a regular basis.

You need a budget, not an estimation

According to a survey conducted by the Harvard Business Review, 17% of IT projects exceed costs by 200%.

This is due to the desire to make an exact estimate for the entire project before starting work. In the case of large projects, this process takes many days and, unfortunately, is often ineffective. Why? Because the contractor is not able to predict all risks in advance. If you decide to start a project, you don't need to know the exact price, but you need to have a rough cost estimation. Moreover, accurate estimation works against the agile approach to project management, as it eliminates its most important advantage - flexibility, which is increasingly important due to changes in user needs and technology.

The total cost of agile projects is a ballpark estimate, and we understand it by budgeting. Accurate estimation of particular project components (tasks) takes place at the stage of creating a backlog when high-level assumptions such as hotel search engines break down into significantly smaller components (task & stories), which are then estimated by the developers. So, before each sprint, you get a list of functions and their evaluation. You'll find more information about the Agile methodology in our article "Fixed Price vs Time & Materials: How to Build a Risk-free Product".

Do not require pricing if you don't have a specification

Exact pricing requires a detailed specification. Your team together with the project contractor should go through a series of workshops that will produce a set of product mock-ups, functionality description, system architecture, info about integration with other applications and suppliers, and API documentation. The whole process will take several weeks and at the end of it, you should have full technical documentation with a precise valuation prepared.

Don't want to spend so much time on planning and wish to immediately start the project? First, define business objectives that your future product has to meet. Think about what problem it is going to solve, how will it meet your target audience's needs and what benefits will it bring. This will allow the team to create a list of features, and visualize and test them during a Scoping Session or a Design Sprint.

If you want to utilize the full potential of the Agile methodology you need to change your thinking. You should change your initial question from "How much will this cost?" to "When do I want it and how many resources do I have for launching the product?". Don't be afraid to tell the software house about the budget you have. Giving the contractor information about your budget helps prioritize the next work stages and aids the contractor in delivering the highest possible value within the given budget.

If your potential contractors find that your budget is not enough to deliver the product that meets your needs they will definitely inform you about this. Remember that the first version of the product doesn't have to have all the features you've come up with. Some of them may be attractive but will be less important for the users. A fast product launch is crucial for it provides you with user feedback and allows continuous product improvement based on the customer's opinion. In short, done is better than perfect.

Remember that estimating an IT project with a poor specification is not possible. Don't ask a software house for pricing if you are not ready for it. Nevertheless, require a budget - the software house is the right place to ask for it

How to budget a project?

Time to move on to budgeting (not estimation!) of your project. Software house should guide you through this process. It can be split into four steps:

1. Ask the right questions

Before you start any cost evaluation, you should consider what you want to know. Without determining the questions both valuation and budgeting will be a waste of time. What questions should be asked?

  • Am I financially ready to start a project within the next 2-3 months?

  • Do I possess all necessary assets and am essentially prepared to launch a project within the next 2-3 months?

  • What do I need to make a final decision?

  • Are all the functions that are identified, carefully thought out, and necessary?

Don't go to the next section without defining the questions you want to ask!

2. Choose a few suppliers to talk to (two or three should be enough)

You probably think that the more contractors you ask and the more deals you get, the better the decision you'll make. That's only partly true. Talking to too many suppliers will consume a lot of your energy and attention. You will talk about general issues with each of them instead of gaining new knowledge from every meeting. Secondly, if you don't have exact specifications, comparing the offers you receive from suppliers will not be possible. Each of them will have its own criteria, which will be used during the offer preparation stage, and that makes it impossible to compare them 1:1. For this reason, when selecting project contractors, focus on analyzing the projects in their portfolio that are similar in scale or complexity to your idea. You'll find more tips on how to choose the software house here.

3. Prepare a budget plan

If you make a strategic decision, use the "from the general to the particular" approach. Start with a level of detail that is sufficient to determine the approximate cost and make a decision to start the project. To better understand this process, we will use an example of a CRM system that uses AI to analyze sales. The main components of this product are:

  • sales module,

  • marketing module,

  • the customer service module,

  • the analytical module uses AI.

Based on the above list we are not able to estimate the cost of product development. So, we have to go down a level. Let's divide the sales module into detailed segments:

  • sales opportunities,

  • sales funnel,

  • contacts,

  • tasks,

  • analytical panel,

  • sales planning.

Our team is experienced in building similar software functions, so we can estimate that sales opportunities, funnel, contacts, and tasks range from 1000 to 1200 hours of work to make, an analytical panel from 300 to 400h, and sales planning from 350 to 450h. All values include back-end and front end.

However, we still can't say how much the whole system will cost. If we stick to the example above and estimate the price of the remaining 3 modules by multiplying the number of hours by the hourly rate (let's say $50/h) we get the following result:


7. How do you guarantee product quality?

We evaluate the result after every two weeks, we test our work (we conduct both development and acceptance tests), we present it to you, and we apply your feedback so you know you get what you are paying for. 

8. How can I be sure you work on my project as much as you declare?

We thoroughly monitor our developers and control how much time they spend on each task down to the exact minute. We use Harvest software and Redmine to track the time spent on your project.

9. I want to be involved in the app development process, do you have a problem with that?

Not at all! We want you to be sure you'll receive the product you desire. From the planning stage to each finished version, we invite you to evaluate and improve our work. Our philosophy is to work with the client, not merely finish given tasks. We are always ready to listen and communicate.

10. Why should I choose you and not hire my own software development team?

Hiring your own software developers can be a really smart choice, however, the recruitment process is time-consuming and the costs of keeping an in-house programming team are very high. You'll probably need to employ your own software engineers sooner or later but hiring us can help you save a lot of money and time (which is basically the same in a business project.

11. What happens after you finish my app?

Hopefully, the app is exactly what you dreamed of :) But apart from delivering a finished product, we are happy to provide you with technical support and app maintenance should you need it. After all, we know our work inside out. Of course, if you want to maintain the app by yourself the source code and all technical data are at your disposal, but even in that case, feel free to contact us if you need any help

12. Are you able to double the size of the team involved in the project if the need arises?

Whether you want to expand your product or create a completely new one simultaneously, and then again focus only on one of your projects, we are always ready to adapt to your requirements. If the work is less intense team size can be reduced. When improvements need to be implemented fast, we can quickly assign additional team members to speed up each phase of the development process. 

13. Will development include the creation of prototypes and demo versions that I can try out?

We would not call it exactly a demo version but using Agile Methodology compels us to create operating software as soon as possible and later just add the next features along the process. Therefore, you'll be able to examine and test your software very early.  

14. Will my observations concerning the prototypes be factored into the final version?

Of course. Thanks to the Agile Methodology we are able to iterate the project during its development and include your feedback to improve the product as it is being created.

15. Can the software be upgraded in the future as new technology becomes available?

Of course! We are always happy to improve, upgrade and further develop our work.

16. What if I come to you with a product that I want to improve?

We'll be more than happy to help you with that. Beginning with a UX Audit (if applicable) through improving your system architecture and adding new features.

17. Will a project manager be assigned to me as a contact person? Will this contact person be available throughout the time the software is being developed?

Yes. All our customers are assigned a liaison that serves as their guide and information source throughout our whole cooperation.

18. Will my liaison send me a progress report on a daily basis detailing the work that has been completed? What other pieces of information will they update me on? Will the progress report include a plan for the next sprint?

We send you a report every two weeks (i.e. after each sprint, when the next version of the software is completed) or every month if you prefer. The report includes info on what we plan to achieve in the next sprint. Apart from that, you are welcome to contact us any time either in person, via Skype, phone, e-mail or live chat. During work hours we usually answer after no more than few minutes.

19. My product is very complex and innovative, I'm dealing with many legacy systems and complicated tech structures in my company. Will the app be compatible with our technology and perform despite those difficulties?

When it comes to preparing an IT project there is no place for half measures. We prepare a Proof of Concept. It is a product development technique that helps us examine if the concept is feasible to realize from a tech and business perspective and gives us an idea of how the product should be developed. 

20. How much do you charge?

It depends on many things: project scope, time spent on the project, and technological issues. We know it sounds vague but it's simply honest. Remember that each software project is different, especially if you had a particularly original idea. We do not want to give you an unrealistic estimate, instead, we want to provide you with the best quality possible within your budget.

21. What is your experience?

We have more than 10 years of business experience. We've worked with and completed projects for leading retailers, international food and drink companies, start-ups, real estate, telecommunications, fashion companies, and many, many more.

We are experienced in creating Android, iOS Mobile apps, Web and IoT apps, augmented reality, e-learning, and CRM systems and constantly improving our skills!

22. What technology do you use?

For the back-end, we use PHP, Python, Django, and Node.js. For the front-end, we use HTML/CSS, Java Angular.js, and React.js. For mobile, we use Kotlin and Swift.

23. Are there any reasons why you chose those particular technologies?

Back-end

We use Python because it works well when it comes to Rapid Application Development, which gives the developers a lot of possibilities when it comes to prototyping, allows them to take advantage of ready-to-use components, and speeds up the development process. Indeed - the first results are visible almost immediately.

Django is a powerful web framework supported by a large and active community, not to mention substantial documentation. It makes it fast and easy to build advanced web apps with less code.

Node.js is suitable for building fast and scalable apps that use the same code for both servers- and client-side.

Front-end

React.js is a library. We use it because it is perfect for a wide range of projects, fast iterations, implementations, prototyping and creating a proof of concept. It's simple and scalable.

We choose Angular.js when it comes to enterprise projects. It's a framework best suited for CRMs, CMS' and other sophisticated apps and systems.

24. Do you have any testimonials from satisfied customers?

Absolutely! Take a look at what our clients have to share about our cooperation.

25. Could you please send me some CVs of your team to have a look at their skills and working experience?

Of course! Please contact us by our contact form or e-mail and we'll send you complete info regarding our team members' experience.

26. Do you provide any services apart from Software Development?

Yes, we can also help you with Product Design and Digital Transformation Strategy.

Product Design

During the product design phase, we focus on understanding your idea and how it can be effectively realized. We begin with workshops that help us find out what are your needs and expectations. We also prepare market and competition analysis as well as point you towards the best solutions.

All this allows us to create prototypes that will enable collecting feedback from potential users and perfect our mock-ups throughout the entire process.

Digital Transformation

Digital transformation is an organizational change of approach, which leads to more agile and data-driven decision making, as well as optimizing and digitizing core business processes. The purpose is to work better and more effectively while providing more value to customers at the same time. To help you achieve this we combine our tech, product development, and business skills. Our customers receive market analysis regarding the latest technological trends occurring in their line of business as well as innovative digital product conceptualizations and prototypes that will help validate those concepts and evaluate risk.

If you have any questions that we haven't covered here, or if you would like to discuss how we can help your organization, contact us!


Create your website for free! This website was made with Webnode. Create your own for free today! Get started