Software development is a complex process. Estimating the cost of a software project is not an easy task and more often than not the actual cost of development goes above the projected price point. This is the basic nature of software development, simply because of the sheer number of variables involved in the whole development process.
While there are challenges involved, we try to be as flexible as possible to accommodate the requirements and work with the budget available alongside our clients. There are various development processes and based on our experience we have come up with different types of pricing.
Fixed Price development
We typically apply fixed pricing for small projects that require a short turnaround time and are not likely to take more than a couple of weeks to develop. Although it does completely depend on the type of project and the technical requirements; something minor at first glance may turn out to be technically challenging. Having a very good idea of what you would like to achieve and the specific feature set of your project help in such situations.
- Defined budget and time
If we are able to determine the requirement with reasonable accuracy, we can offer a clear project plan with an estimation of the cost and length of the project. With the project plan you will receive project milestones, specification, scope and stages of payment.
With a fixed contract both we and the client go into the project knowing exactly what will be developed and when and how it will be delivered. This helps us to manage our clients’ expectations and it also helps our clients to understand the total cost of the project and the likely time period it will take to be completed.
- Locked Down specifications
A fixed contract is dependent on the fact that the system specification and feature set have been locked down as clearly as possible. Only then can we estimate an appropriate delivery time and estimate a cost of the project. We go into a contract knowing exactly what needs to be delivered. These locked down requirements / feature sets will also help us draw the milestones.
Once a contract is in effect, if new requirements need to be implemented or the existing feature set altered then we will draw up another smaller contract to include this work and change the delivery time estimation and cost accordingly. We try to be as flexible as possible with our clients and are happy to draw up such smaller contracts multiple times during the project life-cycle as and when required to improve continually.
Most of the custom developed projects are hard to estimate as requirements change with time and every project is unique and different. We are a strict, agile company which means we understand that longer projects require flexibility and that is exactly what we deliver with this development process. Agile is an industry standard software development method which is employed in bigger projects as the requirements are often not clear to begin with. It is too risky and time consuming to try and gather all the requirements for a bigger project at the beginning.
- Iterative approach and early feedback
Following this methodology, we break the project down into various stages. Each of these stages typically last for two to three weeks and are referred to as “sprints”, as per Agile methodology. After every sprint we do a showcase and a releasable codebase is available to the client. This means you will be able to see the product running at whichever stage we are in within the whole project life-cycle allowing you to get a real taste of how the whole system is being developed and seeing how the project is progressing. This approach enables you to confirm if your requirements are being met at an early stage in the project life-cycle. You can then provide feedback to help us make alterations if required.
- You control development
One of the major benefits of Agile is control. Due to the nature of such development, you get complete control over the progress of the development of the project throughout the life-cycle. This means you get to choose and / or alter the feature set, requirements and their priorities after each sprint.
This can be used as an advantage because you can cherry pick the features you would like to proceed with, which means you always get the best possible implementation as per your requirements.
- Learn more about our Development process.
- Learn more about our Web Development service.
- Learn more about our Mobile Apps Development service.
How much will my project cost?
At TechnologyC we try to provide custom solution to all our clients, based on their specific requirements. This means we are unable to provide a guide pricing for projects. We prefer to sit down with clients and discuss their requirements as well as understanding what they are trying to achieve at the end of the project.
We would like to understand your business and day to day operation to come up with a solution that works best for you.
Project Maintenace cost
Project maintenance can be a tricky business. A regular maintenance charge can vary depending on the complexity of the project. Typically we charge a set maintenace fee for smaller projects -
- Web Solution - £100 to £250 per month depending on the solution (We take care of hosting, domain management, security updates and management, minor bug fixes, adherence to IP laws and terms and conditions, updates to content and infrastructure and also other important web tool upgrades.)
- App Solution - £250 to £400 per month depending on the solution (We take care of AppStore and Play Store developer profile management, security updates and management, adherence to Apple and Google terms and conditions, SDK updates, issues investigation, minor bug fixes.)
- Backend Solution - £250 to £500 and above per month depending on the solution (We take care of hosting, SDK updates, security updates and management, issues investigation, minor bug fixes, adherence to IP laws and terms and conditions, and infrastructure and tool upgrades.)
We agree on a dedicated maintenance contract for each project and specific contract terms get defined based on the complexity of the project.
Please note - Substantial changes to existing system is not covered under the "Maintenance" contract. We will need to agree on a new contract to develop such changes. This includes major bug fixes once the project goes to production.